MD5 与 SHA 哈希值计算
计算文本或文件的 SHA 和 MD5 哈希值。
或计算文件哈希
哈希是数据的简短指纹:相同的输入总是得到相同的哈希值,任何改动都会得到不同的哈希值。输入文本或拖入任意大小的文件,即可一次得到它的 MD5、SHA-1、SHA-256、SHA-384 和 SHA-512 哈希值——可以用来核对下载的文件与官方公布的校验值是否一致,或者比较文件而无需把它们发送到任何地方。一切都在浏览器中计算,你的文本和文件不会离开设备;免费,无需注册。
如何计算哈希值
- 输入或粘贴文本后点“计算文本哈希”,或拖入任意大小的文件(也可以点击选择)。
- 五种哈希值会同时显示:MD5、SHA-1、SHA-256、SHA-384 和 SHA-512。
- 把哈希值与你拿到的校验值进行比对,或用各自的“复制”按钮复制任意一个值。
功能
- 一次计算 MD5、SHA-1、SHA-256、SHA-384 和 SHA-512
- 支持文本(按 UTF-8 计算)或任意文件,大小不限
- 大文件每次读取 4 MB,内存占用很小,并显示进度
- 每个值都可一键复制
- 在浏览器中通过 WebAssembly 计算
隐私安全吗?
是的。文本和文件在浏览器中通过 WebAssembly 计算哈希,不会上传任何内容,所以你可以放心为私密文档和超大文件计算哈希,而无需把它们发送到任何地方。
常见问题
如何用校验值核对文件?
拖入文件,把对方给出的算法(通常是 SHA-256)对应的哈希值与公布的值进行比对:如果每个字符都一致,文件就与发布的完全相同。hex 哈希值不区分大小写。
应该用哪种算法?
用 SHA-256,除非对方给出的是其他算法的校验值。MD5 和 SHA-1 用来发现意外改动没有问题,但不适合安全用途:人们可以故意制造出 MD5 或 SHA-1 哈希值相同的不同文件。
能计算大文件的哈希吗?
能。文件每次读取 4 MB,所以即使是几 GB 的文件也只占用很少的内存,过程中还会显示进度。
为什么文本的哈希值和命令行算出来的不一样?
通常是换行符造成的。文本会按输入的原样以 UTF-8 计算,与大多数命令行工具相同,但 echo 会在末尾加一个换行符:请用 echo -n 或 printf 来计算相同的字节。开头或结尾多一个空格,哈希值也会改变。
可以用 SHA-256 存储密码吗?
不可以。MD5 和 SHA-256 这类快速哈希不适合用于密码,因为攻击者每秒可以尝试数十亿次猜测。请用 bcrypt 或 Argon2 这类慢速密码哈希来存储密码。