MD5/SHA 哈希生成器

输入文本或选择文件,立即算出 MD5、SHA-1、SHA-256 等哈希值,用于校验文件是否被改动。

一句话结论:MD5 = 32 位十六进制;SHA-1 = 40 位;SHA-256 = 64 位;哈希单向不可反解。

MD5/SHA 哈希生成器怎么用

不需要注册或登录:输入文本,或选择一个文件,勾选要计算的算法,哈希值会实时算出,点任意一行即可复制。

计算在你的浏览器本地完成,输入的文本与选择的文件都不会上传。下方说明了各算法的输出长度、MD5 与 SHA-1 为何不能再用于安全场景,以及"MD5 解密"到底是怎么回事。

需要逐条对照?查看MD5 / SHA 哈希算法对照表(完整数据表)

MD5 在线加密、SHA256 在线计算、文件哈希校验,说的其实是同一件事:给一段文字或一个文件算出一串固定长度的「指纹」。同一份内容算出的哈希值永远一样,内容改一个字符,哈希值就完全不同,所以它常被用来核对文件有没有损坏、有没有被人动过手脚。

需要先说清楚:哈希是单向的,算出去就回不来。网上所谓「MD5 解密」并不是真的把哈希还原,而是拿现成的字典去比对,只对简单口令有效。下面把算法、长度和常见用途一并讲清。

哈希不是加密:为什么算出去的哈希收不回来

加密是一把锁配一把钥匙,用钥匙锁上、再用钥匙打开;哈希则像把一本书压成一张指纹卡——过程不可逆,拿到指纹也拼不回原书。哈希函数把任意长度的输入压成固定长度的输出,而且是多对一的:不同内容理论上可能得到同一个哈希,但要故意造出两份不同内容、哈希却相同的数据,难度极高(这就是抗碰撞)。正因为收不回来、又对改动敏感,哈希才适合做校验,而不是做保密。

五种常见算法的输出长度,一眼记牢

哈希值通常用十六进制表示,位数由算法决定:MD5 是 128 位,写成 32 位十六进制;SHA-1 是 160 位,40 位;SHA-256 是 256 位,64 位;SHA-384 是 384 位,96 位;SHA-512 是 512 位,128 位。记住这个对应关系,看到一串哈希就能大致判断它用了哪种算法——32 位多半是 MD5,40 位是 SHA-1,64 位是 SHA-256。位数越长,理论上越难被暴力破解或碰撞。

MD5 和 SHA-1 为什么不能再用于安全场景

MD5 和 SHA-1 都已被证实存在碰撞:可以人为构造出两份内容不同、哈希值却相同的数据。这意味着攻击者有可能在不改变哈希的前提下替换掉原始内容,所以它们不再适合用在数字签名、证书、口令存储这类安全场景,这类场景应改用 SHA-256 及以上。MD5 和 SHA-1 并非一无是处,用在校验文件完整性、判断内容是否重复、生成缓存键这些不涉及对抗的场景里仍然够用,但要有意识地把它们和安全场景分开。

「MD5 解密网站」到底在做什么

哈希不可逆,那「MD5 解密」是怎么做到的?答案是查表。有人把常见口令(比如 123456、password)预先算好哈希,存成巨大的对照表,也就是彩虹表;你在解密网站输入一串 MD5,它其实是在表里反查有没有对应的明文,查到就显示,查不到就无解。所以它只能还原那些简单、常见的口令,一个足够复杂的口令根本查不到。这也从侧面说明:口令存储不能只做一次哈希,而要加盐并多次迭代,让查表失去意义。

下载文件后,怎么用哈希核对有没有损坏或被改

很多软件、系统镜像在下载页会附一个 SHA-256 值。你下载完文件后,用工具算出它的哈希,和官方公布的值逐位对照:完全一致说明文件完整、没被动过;不一致则可能是下载中断损坏,也可能被人替换过,务必不要运行。实际操作中,长哈希值肉眼比对容易看花,建议直接复制两段文本做比较。我们帮朋友排查过一次:他装的工具安装包哈希对不上,重新下载后才发现第一次的包在网络传输中损坏了,装上去一直报错,换了完整包就正常了。

该选哪种算法:校验、去重、签名分开看

按用途挑就不会错:校验文件是否损坏、判断两段内容是否相同、给缓存生成键,MD5 或 SHA-256 都可以,追求速度用 MD5、追求更稳妥用 SHA-256;涉及数字签名、证书、口令存储,必须用 SHA-256 及以上,绝不能用 MD5 或 SHA-1。至于 CRC32 这类算法,它算的是校验和,只用来发现传输错误,不属于密码学哈希,不能用来防篡改。

参考资料

常见问题

MD5 能解密还原吗?

不能。哈希是单向的,无法从哈希值反推出原文。MD5 解密网站实际是查彩虹表比对,只对常见简单口令有效,复杂口令查不到。

MD5 和 SHA-256 有什么区别?

主要是输出长度和安全性:MD5 输出 128 位(32 位十六进制),SHA-256 输出 256 位(64 位十六进制)。MD5 已被证实存在碰撞,不宜用于安全场景;SHA-256 目前仍安全。

同一个文件算两次哈希会一样吗?
会。只要文件内容一模一样,用同一种算法算出的哈希就完全相同;内容改动哪怕一个字符,结果也会彻底不同。
哈希可以用来加密文件吗?
不能。哈希不可逆,算出的值无法还原成原文件。要加密文件请用加密工具;哈希只适合做完整性校验、去重和缓存键。
SHA-1 还能用吗?
校验文件完整性这类不涉及对抗的场景还能用,但数字签名、证书、口令存储等安全场景已不应再使用 SHA-1,应改用 SHA-256 及以上。

本工具在你的浏览器本地运行,输入的数据不会上传服务器 · 最后更新:2026-10-08

内容与数据的核对流程见 内容审核与更新流程,计算依据见 换算与计算依据。