文件示例
选择或拖入文件,可以一次多个
安装包、镜像、压缩包、文档都行,大文件也没问题;也可以把文件拖到页面任何位置
要计算的算法
需要几个算几个,同一个文件只读一遍。粘贴的校验值用到了没勾选的算法,会自动补算。
计算方法、依据和限制
- MD5 按 RFC 1321,SHA-1、SHA-256、SHA-512 按 FIPS 180-4(NIST)。算法是本页自己实现的“流式”版本:文件一块一块读入,边读边算,所以可以处理远大于内存的文件。浏览器自带的 SubtleCrypto 做不到流式,所以没有用它。
- 每次打开页面,会先用标准向量(空串、
abc)自检一遍;开发时还对照了 RFC/NIST 的全部公布向量、“一百万个 a”和超过 232 比特的长文件。 - MD5 和 SHA-1 已被证明可以人为构造碰撞,只适合发现下载损坏,不能证明文件没被恶意替换。需要防篡改请用 SHA-256 或 SHA-512,并确认校验值来自官网等可信渠道。
- 只有 64 位的校验值可能是 SHA-256,也可能是 SHA3-256、BLAKE2s 等其他算法,本页按最常见的 SHA-256 判断;如果比对不一致,先确认官网写的是哪种算法。
- 文件在计算过程中被改动或移动,会提示读取中断。计算速度取决于电脑和算法,通常 MD5 最快、SHA-512 最慢;手机上会明显慢一些。
文本哈希 示例
换行符