哈希计算与校验工具
输入文本或拖入文件,点击「计算」即可得到一张五种算法的结果表:十六进制与 Base64 并排显示,每行都能单独复制,即使你手上只有其中一种写法的校验值也能直接比对。
待计算的文本
待计算的文件
尚未选择文件。
或把文件拖到这个框里
| 算法 | 十六进制 | Base64 | 复制 |
|---|---|---|---|
| MD5 | — | — | |
| SHA-1 | — | — | |
| SHA-256 | — | — | |
| SHA-384 | — | — | |
| SHA-512 | — | — |
MD5 是历史遗留的校验和,已被证明存在碰撞。请不要用它保存密码,也不要用它对抗攻击者做完整性校验。
使用方法
- 先选来源:保持「文本」并输入内容——停止输入约四分之一秒后五行结果会自动重算;或切换到「文件」选择要计算的文件,也可以直接把文件拖到右侧方框中。
- 想要立刻得到结果就点击「计算」。表格会列出五行摘要,状态行同时告诉你本次输入共多少字节——校验值对不上时,先看这个字节数。
- 按你手头的写法比对:多数公开的校验值用十六进制,SRI 或二进制场景常用 Base64。确认无误后点击该行的「复制」取出结果。
- 需要重来时点击「清空」,或切换来源。「文本 / 文件」的选择会被记住,下次打开仍然保持。
常见问题
应该选哪种算法?
如果是你自己新做一次校验,用 SHA-256:它是目前的默认选择,兼容性最好,摘要长度也适合写进配置文件。SHA-384 和 SHA-512 强度更高但很少必要,输出更长。MD5 与 SHA-1 都已被证明存在碰撞攻击,只适合用来核对别人已经公布出来的旧校验值,不要用来在对抗环境下证明文件未被篡改,更不要用来保存密码。保存密码必须使用刻意做慢、带盐的函数,例如 Argon2id、scrypt、bcrypt 或 PBKDF2;SHA-256 的设计目标是尽可能快,在这里恰恰是最坏的性质。
为什么提示 SHA 系列不可用?
SHA 系列来自浏览器的 Web Crypto 接口,而该接口只在安全来源下开放,也就是 https:// 或 localhost。若页面走的是普通 http:// 地址,浏览器会直接关闭它,此时页面仍会给出 MD5(这一行由页面内自带的实现计算,不依赖该接口),并明确告知其余摘要不可用。改用 https:// 打开本页面,或开发时在 localhost 上访问,五行摘要就会全部填充。
我的文件会被上传吗?
不会。文件由浏览器读入内存并在本页完成摘要,页面不会把你的内容发起任何网络请求——页面加载后断网再算一次即可验证。需要权衡的是内存而非隐私:超过约 25 MB 的文件会一次性读入,所以工具会先给出提示,需要你再次点击「计算」确认。超大体积的压缩包在浏览器标签页里可能很慢甚至失败,这类场景更适合使用命令行工具。