本工具计算什么
MD5 将一段原始字节映射成 128 位摘要,通常写成 32 个十六进制字符。当旧版下载清单、测试用例或既有接口明确要求 MD5 时,可以用它复现结果。相同字节总是得到相同摘要,但摘要不是可逆编码,也不包含可供恢复原文的信息。
首页以 MD5 为主结果,单条文本还会同时提供 SHA-256 和 SHA-512。它们是不同算法,而不是 MD5 的其他显示形式。对方发布的是 MD5,就应使用 MD5 比较,不能因为另一个结果更长而直接替换。十六进制字母的大小写只影响显示,不改变摘要字节。
MD5 不再适合数字签名或要求抗碰撞的安全任务。从不可信渠道同时取得文件与校验值,两者可能被一起替换。不要把密码粘贴到这里当作“加密”:本工具不提供加密,也不是安全的密码存储方案。
可核对的示例
UTF-8 · abc · MD5
900150983cd24fb0d6963f7d28e17f72
如何计算与比较
- 在输入文本中粘贴需要计算的内容,或点击示例加载
abc。工具按 UTF-8 编码计算,保留输入中的空格和换行。 - 单条文本模式下,不超过 64 KiB 的非空输入会在停止输入片刻后自动计算。计算空字符串或更大的文本时,请点击生成哈希。修改输入后,旧结果会立即清除。
- 如需核对已保存的文件,请切换到文件校验,确认算法后选择或拖入文件。文件模式会读取原始字节并自动开始计算。
批量处理时,勾选每行独立计算,选择是否包含空行,再点击生成哈希。逐行模式不会自动计算。CRLF、LF 和 CR 仅用于分隔记录,不计入各行摘要;重复行保留各自的原始行号。
将完整的十六进制参考值粘贴到比较预期值(可选),再点击核对。比较时忽略字母大小写和首尾空白,但不接受内部空格或错误长度。复制会保留完整结果。TXT、CSV 导出包含输入标识、算法和摘要,不包含原始文本或密钥。
限制、隐私与下一步
文本上限为 10 MiB;逐行模式最多接受 10,000 条记录,按过滤空行前的数量计算。文件队列最多 50 个文件,每个不超过 1 GiB,按 2 MiB 分块依序读取。这些限制用于控制浏览器资源占用,不保证每部手机都能快速处理最大输入;必要时可取消计算。计算在浏览器中完成,正常的页面和资源请求仍会发送到托管服务器。
核对旧版下载清单中的 MD5
先确认发布版本、平台和文件名,再下载原始文件。切换到文件校验并选择 MD5,直接计算下载的文件,不要先用编辑器打开后另存。压缩包和解压后的文件是不同的字节序列;清单列的是压缩包,就应核对压缩包本身。
md5sum 清单的一行通常包含摘要和文件名。比较框只粘贴其中 32 位十六进制摘要,不要把文件名一起贴进去。导出记录时另外保留参考来源和版本。如果发布者同时提供 SHA-256,应使用 SHA-256 独立核对,不能拿两种算法的结果互相比较。
复现一次末尾换行造成的差异
先主动计算空文本,再分别计算 abc 和末尾带一个 LF 换行的 abc。三者是不同输入。逐行模式会排除分隔换行,所以这个实验要在单条文本模式下进行。
MD5 / 空 UTF-8 输入:
d41d8cd98f00b204e9800998ecf8427e
MD5 / abc:
900150983cd24fb0d6963f7d28e17f72
MD5 / abc + LF (61 62 63 0a):
0bee89b07a248e27c83fc3d5951213c1
MD5 不匹配时先查这些问题
| 现象 | 原因 | 处理方式 |
|---|---|---|
| 参考值里带着文件名 | 清单记录不是纯摘要 | 只复制其中 32 个十六进制字符。 |
| 文字看起来一样,MD5 却不同 | 末尾换行、BOM 或编码改变了字节 | 计算实际保存的文件,或还原准确的 UTF-8 输入。 |
| 对方只给了 16 位 MD5 | 可能使用了某种截取约定 | 索取完整 32 位值,不要自行补零。 |