在线MD5加密工具

在线MD5加密工具

16 位小写
16 位大写
32 位小写
32 位大写
MD5 加密 清除

关于MD5加密工具

输入任意内容,四种格式同时出现:32 位或 16 位、大写或小写。其实它们是同一个哈希,16 位只是 32 位截了中间一段,一些老系统还在这么用。

MD5 对任意输入生成固定的 128 位指纹。同样的文本永远得到同样的哈希,改一个字母,整个哈希都会变。

现在还能用的地方

  • 校验下载的文件和发布的校验和是否一致
  • 缓存 key、去重,这种没人攻击你的场景
  • 某些老接口就是要求 MD5

不该用的地方

密码。MD5 快是它的设计目标,而密码哈希恰恰要慢。显卡一秒能试上百亿次,你读过的那些泄露库里的明文密码基本都是这么撞出来的。后端该用 bcrypt 或 argon2。

防篡改签名也不行:MD5 的碰撞 2004 年就能人为构造,作为安全函数它早就退役了。

关于中文

哈希按 UTF-8 字节计算,Linux 的 md5sum 也是这么干的,两边能对上。但如果有一方用 GBK 编码同一段文字,哈希会不同而文本看起来一样。「哈希对不上又找不到原因」时,先查编码,再查末尾空格,再查对方有没有加盐。

常见问题

MD5 安全吗?

当校验和、缓存 key 用没问题。当密码哈希或签名不行:2004 年起就能人为构造碰撞,而且它的速度对攻击者是优势。

为什么有个 16 位的?

32 位哈希中间的 16 个十六进制字符。一些老系统只存这一段,新系统别这么干。

为什么和另一个系统的哈希对不上?

按顺序查三样:输入末尾有没有换行或空格;中文的编码是 UTF-8 还是 GBK;对方系统有没有加盐。

我输入的内容会被上传吗?

不会。哈希在浏览器里算,什么都不发送、不存储。

同类工具

编码解码 查看全部 ›