📍FakeAddrGen
#开发者工具

Hash 生成器

在线 SHA-256 / SHA-512 / SHA-384 / SHA-1 哈希计算工具。 实时更新 · 支持十六进制和 Base64 输出 · 100% 本地运行 · 数据不上传。

SHA-256SHA-512SHA-384SHA-1(不推荐)十六进制输出Base64 输出多算法对比本地计算
SHA-256 Hash 值256 · 64 字符
请输入文本
Ad

算法对比

算法输出位数十六进制长度安全状态常见用途
SHA-116040已弃用Git 对象 ID(兼容旧版)
SHA-25625664推荐TLS、JWT、API 签名、区块链
SHA-38438496推荐TLS 1.3、高保证应用
SHA-512512128推荐密码哈希流程、大文件校验
仅供开发测试和学习使用。请勿单独使用 SHA-256 或 SHA-512 在生产环境中存储用户密码——应使用 bcrypt、scrypt 或 Argon2id 等专用密码哈希算法。SHA-1 已被弃用,不应用于新的安全应用场景。

常见问题

SHA-256 是什么?适合哪些场景?

SHA-256(安全哈希算法 256 位)是 SHA-2 家族的核心成员,输出 256 位(32 字节)的哈希值,显示为 64 个十六进制字符。它是目前部署最广泛的安全哈希算法。适用场景:数据完整性校验、数字签名、API 请求签名(如 AWS 签名 V4)、区块链交易 ID、Git commit 从 SHA-1 迁移后也支持 SHA-256 模式。所有新应用都建议选择 SHA-256 或更强的算法。

SHA-256 和 SHA-512 有什么区别?

SHA-512 输出 512 位(64 字节)哈希值,对应 128 个十六进制字符,是 SHA-256 的两倍长度。在 64 位 CPU 上,SHA-512 通常比 SHA-256 更快,因为 64 位寄存器可以并行处理更多数据。两者安全性对当前威胁模型均足够,SHA-512 适合对碰撞空间有更高要求的场景(如大文件校验、长期归档)。

为什么 SHA-1 被标记为「已弃用」?

SHA-1 输出 160 位哈希值,已被证明存在碰撞漏洞——2017 年研究人员成功演示了 SHA-1 碰撞攻击(SHAttered 项目)。主流浏览器、CA 机构和软件平台已停止接受 SHA-1 数字证书和代码签名。目前仅可用于无安全要求的校验场景(如 Git 对象 ID 兼容),新应用必须使用 SHA-256 或以上。

Hex 和 Base64 输出格式有什么区别?

两种格式代表同一份二进制哈希数据。Hex(十六进制)使用 0-9 和 a-f 共 16 个字符,每字节变为 2 个字符,是开发者调试最常用的格式。Base64 使用 64 个字符编码,体积比 Hex 小约 25%,常用于 HTTP Authorization 头、JWT Token、以及某些 API 返回值。两者可以互相转换,存储内容完全等价。

这个工具安全吗?我的数据会上传到服务器吗?

完全安全。本工具通过浏览器内置的 Web Cryptography API(window.crypto.subtle)在本地计算哈希,不会将任何输入数据发送到服务器。即使断开网络,工具依然可以正常使用。所有计算均在您的设备上完成。

能直接用 SHA-256 来存储用户密码吗?

不建议。SHA-256 等哈希算法设计目标是「快速」,这在密码存储场景中恰恰是弱点——攻击者可以用 GPU 每秒计算数十亿次哈希进行暴力破解或字典攻击。密码存储应使用专为此设计的慢哈希算法:bcrypt、scrypt、或 Argon2id,它们通过增加计算成本和内存占用让暴力破解不可行。

HMAC 和普通 SHA-256 有什么区别?

HMAC(Hash-based Message Authentication Code)是在 SHA-256 等哈希算法基础上加入密钥的消息认证码算法,格式为 HMAC-SHA256(key, message)。普通 SHA-256 只对数据本身计算摘要,任何人拿到数据都能验证;HMAC 需要持有密钥才能生成或验证,常用于 API 签名(如 Stripe webhook 签名、JWT HS256)、双方认证等场景。