MD5 SHA Hash Generator
Generate hashes
Generate hashes 在您的浏览器中本地运行
About the
哈希生成器可在浏览器中计算任何文本的 MD5、SHA-1、SHA-256 和 SHA-512 摘要,并同时显示所有四个内容,以便您可以对它们进行比较。哈希是一种固定长度的指纹:相同的输入总是给出相同的输出,并且更改一个字符会产生完全不同的摘要。这使得它对于验证下载和再现系统期望的值非常有用。它显然不是加密,因为哈希值无法逆转,并且 MD5 和 SHA-1 不再被认为可以安全地抵御故意碰撞攻击。
Where people use the
- 根据已发布的校验和验证下载的文件。
- 复制 API 签名所需的哈希值。
- 检查字符串的两个副本是否字节相同。
- 了解单个字符的变化如何改变整个摘要。
How to use the
- 1
输入文字
将任何内容粘贴到整个文档,从单个单词到整个文档。空格和大写是输入的一部分,因此额外的空格会改变结果。
- 2
生成
所有四个摘要均同时计算。 MD5 在 JavaScript 中本地运行; SHA 系列使用浏览器自己的 crypto.subtle 实现。
- 3
与公布值进行比较
校验和完全匹配或不匹配。不存在部分匹配,也不存在容忍。
- 4
复制您需要的摘要
每行都有自己的复制按钮,因此您无需重新阅读列表即可获得正确的算法。
提示和最佳实践
- 切勿使用简单的哈希值作为密码;使用加盐的、缓慢的密钥派生函数。
- 将算法与其他系统的期望相匹配;如果请求 MD5,正确的 SHA-256 仍然是错误的。
- 当校验和不匹配时,请注意尾随换行符。
常见问题
哈希值可以反转吗?
不会。摘要会丢弃信息:SHA-256 将任意长的输入压缩为 256 位。唯一的返回方法是猜测输入并进行比较,这就是为什么散列不是加密并且不能用于存储可恢复的秘密。
MD5 使用安全吗?
不是为了安全。针对 MD5 的实际碰撞攻击已经存在多年,SHA-1 碰撞也已被公开证明。 MD5 仅用于非对抗性校验和、旧版兼容性或匹配旧系统已生成的值。对于任何与安全相关的内容,请使用 SHA-256 或 SHA-512,对于密码,请使用 bcrypt、scrypt 或 Argon2 加盐。
为什么我的哈希值与下载页面上的哈希值不匹配?
几乎总是因为输入不同。尾随换行符、不同的行结尾或文件开头的 BOM 都会更改摘要。散列确切的字节,而不是重新输入的副本。
文件校验和与此有何不同?
该工具会对您粘贴的文本进行哈希处理。文件校验和对磁盘上的原始字节进行哈希处理。对于大文件,请使用 sha256sum 等命令行工具,而不是粘贴内容。
文本是否发送到服务器?
不会。MD5 是在 JavaScript 中计算的,SHA 系列使用浏览器的 Web Crypto API,因此输入永远不会离开您的设备。这就是为什么您可以安全地散列您正在测试的凭据。
哈希长度是什么意思?
每个算法都是固定的:MD5 为 32 个十六进制字符,SHA-1 为 40 个,SHA-256 为 64 个,SHA-512 为 128 个。更长的摘要意味着更大的输出空间,但其本身并不是更强的保证。