哈希生成器
生成任意文本的 SHA-1、SHA-256 和 SHA-512 哈希值。
如何使用 哈希生成器
- 输入或粘贴你的文本。
- 复制你需要的哈希值。
关于 哈希生成器
哈希是数据的一种固定长度指纹。相同的输入总是产生相同的输出,一个字符的改动就会产生完全不同的结果,而且你无法从哈希值反推出原始文本。在这里粘贴任意文本,页面会同时返回三种哈希值——SHA-1、SHA-256 和 SHA-512——均为小写十六进制形式,基于你输入内容的 UTF-8 字节计算得出。它们非常适合用于校验和、缓存键、去重,以及验证文件或消息在传输过程中是否保持不变。
这三种哈希都由你浏览器内置的 Web Crypto API 生成,因此你的文本永远不会离开页面。浏览器只暴露 SHA 系列算法,这也是为什么我们的 MD5 和 bcrypt 工具要在服务器端计算哈希、需要把你的文本发送过去处理的原因;而 全哈希生成器会一次性运行所有支持的算法。
这里有两点需要诚实提醒。SHA-1 在抗碰撞性上已被攻破,绝不应该用于签名或安全校验——它只适合用于兼容旧系统。而且这些都不是密码哈希:它们被设计得很快,而这恰恰是存储密码时最不该有的特性,存储密码应该使用 bcrypt 或 Argon2 这类故意设计得很慢的算法。原则上,永远不要把真实密码粘贴到任何在线哈希工具中,包括本工具。
常见问题
这个页面能生成哪些算法?
SHA-1、SHA-256 和 SHA-512,三者会基于同一输入同时生成,均以小写十六进制形式显示。
这里支持 MD5 吗?
本页面不支持。它完全在你的浏览器内运行,而浏览器通过 Web Crypto API 只暴露 SHA 系列算法。请改用我们的 MD5 哈希生成器,它会在服务器端计算哈希。
我能把哈希值还原回原始文本吗?
不能。哈希在设计上是单向的。较短或常见的输入有时可以通过与预先计算好的查询表进行比对来猜出,但哈希值本身不包含任何返回原文本的途径。
我的文本会离开浏览器吗?
本页面不会。三种哈希值都由你的浏览器在本地计算,不会上传任何内容。我们的 MD5、CRC32 和 bcrypt 页面则不同:它们会把你的文本发送到服务器,由服务器计算哈希后立即丢弃,不做存储也不做记录。
我可以用 SHA-256 来存储用户密码吗?
不应该这样做。SHA 系列算法运算速度很快,这会让获取了你数据库的攻击者每秒尝试数十亿次猜测。请改用 bcrypt 或 Argon2 这类刻意设计得较慢的密码哈希算法。

