ToolboxAgent

MD5编码/哈希

在线MD5哈希生成工具,支持文本和文件的MD5哈希计算,32位十六进制输出

或上传文件计算MD5哈希

点击或拖拽文件到此处

使用说明

  1. 1 在输入框中输入文本,或上传文件
  2. 2 点击"计算MD5"按钮
  3. 3 查看32位MD5哈希值,点击复制

相关工具

关于此工具

MD5 是一种生成 128 位(32 个十六进制字符)哈希值的算法,对同一输入始终产生相同的输出,且即使原文只改动一个字符,哈希值也会完全不同。本工具在浏览器端完成计算,数据不上传服务器,适合敏感内容的本地哈希计算。

典型使用场景:下载文件后对比官方提供的 MD5 校验值,验证文件是否完整或被篡改;数据库存储用户密码时(配合盐值)生成摘要;接口签名中对参数排序拼接后计算 MD5 验证请求合法性;以及快速生成字符串的唯一指纹用于缓存键。

需要注意,MD5 已被证明存在碰撞漏洞(两个不同的输入可能产生相同哈希),不应单独用于密码哈希存储(推荐 bcrypt/Argon2)或数字签名。但在文件完整性校验和非安全关键的指纹场景中,MD5 依然高效实用。

常见问题

MD5 加密和 MD5 哈希是一回事吗? +

不是。MD5 是哈希算法,不是加密算法。加密可以解密还原原文,而哈希是单向的,理论上无法从 MD5 值逆推原文。通常所说的「MD5 加密」实为哈希,MD5 值一旦生成便无法解密,只能穷举或查彩虹表碰撞。

为什么网上的「MD5 解密」工具能还原原文? +

这些工具本质上是彩虹表查询,即预先计算了大量常见字符串的 MD5 并建立映射数据库。只要你的原文足够常见(如简单密码、常见词汇),就能查到对应原文。复杂随机密码无法被这类工具还原。

同样的文本,为什么不同工具计算出的 MD5 不同? +

最常见原因是字符编码不同(UTF-8 vs GBK)或行尾符不同(\n vs \r\n)。中文文本在 GBK 和 UTF-8 下字节序列不同,MD5 结果也不同。本工具统一使用 UTF-8 编码,与 Linux 命令行 echo -n 'text' | md5sum 一致(注意去掉行尾符)。

文件 MD5 校验的具体步骤是什么? +

先到官方网站下载文件及其官方 MD5 值,上传文件到本工具计算 MD5,将结果与官方值逐字符对比。若完全一致,说明文件未被修改;若不一致,文件可能在传输中损坏或被植入恶意代码,建议重新下载。

MD5 输出的 32 位和 16 位有什么区别? +

标准 MD5 输出 32 个十六进制字符(128 位)。16 位 MD5 是取 32 位结果的中间 16 位字符(第 9 到 24 位),是非标准的截断方式,碰撞概率更高,安全性更低。部分旧系统使用 16 位 MD5 以节省存储,本工具默认输出标准 32 位。