← 返回工具箱

MD5 摘要

MD5 & HMAC · 编解码与安全

纯本地计算 MD5 与 HMAC-MD5 摘要,支持中文与任意密钥;校验文件指纹、对接老接口签名时常用。

输入文本
MD5 摘要 · 纯 JS 本地计算
大小写分隔前缀后缀
HMAC-MD5
MD5 不是加密算法,仅用于数据完整性校验与旧系统兼容;签名场景请优先使用 HMAC 或 SHA-2 系列。

>_ 使用指南 · GUIDE

纯本地计算文本的 MD5 与 HMAC-MD5 摘要:普通 MD5 直接生成;HMAC 模式输入密钥,生成带密钥的签名值——对接一些老系统的接口签名(如支付回调验签、开放平台鉴权)时会遇到。

支持中文与任意字符(按 UTF-8 处理),结果以 32 位十六进制输出,一键复制。整个计算在浏览器本地完成,密码、密钥不经过网络。再强调一次安全边界:MD5 已不适用于安全敏感的新场景,它在这里服务于存量系统对接与校验类需求。

>_ 常见问题 · FAQ

Q1 · MD5 能解密吗?

不能。MD5 是单向哈希,原理上不可逆。所谓「MD5 解密网站」只是拿海量常见字符串的哈希做查询(彩虹表),简单密码能「查」到,复杂密码查不到——这恰好说明被查出来的是弱密码,而不是 MD5 被破解了。

Q2 · 「32 位 MD5」是什么?还有 16 位的吗?

MD5 输出固定 128 位,十六进制表示就是 32 个字符。所谓「16 位 MD5」只是取 32 位串的中间 16 个字符(第 9–24 位)的截断写法,一些老系统这么用。两种表示对应同一摘要,校验时注意对方要的是哪种口径。

Q3 · 用 MD5 存用户密码安全吗?

不安全,现代标准已弃用。原因:计算太快(GPU 每秒可算上百亿次),简单密码极易被彩虹表/暴力破解破解。正确做法是 bcrypt/scrypt/argon2 这类慢哈希 + 加盐算法。如果维护老系统被迫兼容 MD5,至少加盐,并规划迁移。

Q4 · HMAC-MD5 和普通 MD5 有什么区别?

普通 MD5 任何人都能对任意内容计算;HMAC 是带密钥的哈希:不知道密钥就无法伪造签名。接口鉴权用 HMAC——双方共享密钥,请求方对参数算签名、服务端用同样密钥验证。即便如此,新系统仍建议选 HMAC-SHA256,HMAC-MD5 只用于对接老接口。

Q5 · 怎么验证下载文件的 MD5?

本工具面向文本;整个文件用配套的「文件哈希校验」工具——拖入文件本地计算,与发布方公布的 MD5/SHA 值比对。注意 MD5 已有构造碰撞的公开方法,安全敏感的文件校验(如安装包)优先看 SHA-256。

嵌入代码

把下面的代码复制到你的网页,即可将本工具嵌入为 iframe(自动隐藏导航与页脚)。

高度px
此工具在你的浏览器本地运行,输入内容不会上传。按 Ctrl K 可随时切换到其他工具。