使用步骤
- 选择「文本」直接输入,或选择「文件」并选取任意大小的文件。
- 勾选需要的算法,默认已选 MD5、SHA-1、SHA-256、SHA-512。
- 需要带密钥的哈希时,勾选 HMAC 并输入密钥。
- 校验下载文件时,把官网公布的校验值粘贴到「比对」框,一致的那一行会被标记出来。
参数说明
- MD5 / SHA-1
- 速度快,至今仍广泛用于文件校验,但已不再安全:攻击者可以构造出哈希相同的两个输入。不要用于签名或存储密码。
- SHA-256 / SHA-512
- SHA-2 家族,是完整性校验、数字证书、区块链的标准选择。
- SHA-3 / BLAKE2 / BLAKE3
- 较新的算法。BLAKE3 在软件实现中比 SHA-2 快很多;SHA-3 是 NIST 标准,内部结构与 SHA-2 完全不同。
- HMAC
- 带密钥的哈希,用于 Webhook 和 API 请求签名,例如 GitHub、Stripe 的 Webhook 都使用 HMAC-SHA256;微信支付 V2 的签名也支持 HMAC-SHA256。
各算法的输出长度
| 算法 | 输出 | 十六进制长度 |
|---|---|---|
| MD5 | 128 位 | 32 |
| SHA-1 | 160 位 | 40 |
| SHA-256 / SHA3-256 / BLAKE3 | 256 位 | 64 |
| SHA-384 | 384 位 | 96 |
| SHA-512 / SHA3-512 / BLAKE2b | 512 位 | 128 |
示例
abc 的 SHA-256 值是:
ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad
在终端里得到同样的结果:Linux 用 echo -n abc | sha256sum,macOS 用 echo -n abc | shasum -a 256,Windows PowerShell 可用 Get-FileHash 计算文件哈希。
常见问题
怎么校验下载文件是否完整?
选择「文件」并选中下载的文件,把官网上公布的校验值粘贴到「比对」框。显示「一致」就说明文件与发布者计算时的文件完全相同。
文件会上传吗?
不会。浏览器以 4MB 为单位分块读取文件并在本地计算,即使是几 GB 的系统镜像也不会离开你的电脑。
哈希值能反推出原文吗?
不能,哈希是单向的。但简短或常见的输入(比如 123456)可以通过查表找到,所以存储密码必须使用加盐的慢哈希算法(bcrypt、Argon2),而不是直接 MD5 或 SHA-256。
为什么算出来和其他工具不一样?
通常是输入不同:末尾多了换行、有空格,或者文本编码不同(UTF-8 与 GBK 的中文字节不同)。本工具按输入内容的 UTF-8 字节计算。命令行里 echo 会自动加换行,要用 echo -n。
哈希和 HMAC 有什么区别?
任何人都能计算公开数据的哈希;HMAC 还需要密钥,因此可以证明消息来自持有密钥的一方,并且没有被篡改。
隐私说明
本工具完全在浏览器中运行,文件和文本都在你的设备上处理,不会上传到我们的服务器。