MD5加密
计算文本的 MD5 值。
这个工具能做什么
这个工具做的事情很单纯:把你在输入框里填的任意文本,按 MD5 算法算出一段固定长度的摘要值,输出 32 位十六进制字符串。不管原文是一个字还是几万字,结果长度都一样。它解决的是「需要一个内容指纹」的场景——你想确认两份数据是否完全相同、想给一段内容生成一个短小固定的标识、或者想核对别人给你的校验值对不对,都不必逐字节比对,在线算一遍 MD5 对比结果即可。整个计算在浏览器本地完成,文本不会上传到服务器。
MD5 全称 Message Digest Algorithm 5,输出的是 128 位(16 字节)散列值,习惯用 32 个十六进制字符表示。它先把文本按某种字符编码(通常是 UTF-8)转成字节序列,做长度填充后切成 512 位的分组,再经过四轮共 64 步的位运算逐块压缩,最终汇成那 128 位摘要。这个过程是确定性的:同样的输入永远得到同样的输出,改动一个字符,结果会大面积变化,也就是所谓的雪崩效应。但它是单向的——从摘要几乎无法反推原文,因为哈希把任意长度的信息压进了固定的 128 位,原文信息已经不可逆地丢失了。
最常见的用法是文件校验。比如你从镜像站下载一个安装包,页面上往往附了一串官方 MD5 值,把下载后的文件算一遍 MD5 生成结果,和官方值对上了,基本能确认文件在传输中没被截断或篡改。另一个典型场景是接口签名:很多开放平台要求你把请求参数按规则拼成字符串、再拼上密钥,算出 MD5 作为 sign 字段传给服务端,服务端用同样规则重算比对,以此防止参数在中途被改动。此外像给缓存 key、给去重逻辑生成一个定长指纹,用 MD5 计算也很顺手。
有几点容易踩坑。第一,「MD5 加密」是习惯叫法,严格说它是摘要/哈希而不是加密,没有对应的解密——网上那些「MD5 解密」站,本质是拿海量常见字符串预先算好结果做反查(彩虹表),只能命中弱口令这类高频原文,并不是真的还原。第二,MD5 早已被证明能构造碰撞,安全强度不足,别再用它裸存用户密码,存口令应改用 bcrypt、argon2 这类加盐慢哈希。第三,结果和编码强相关:同一句中文,用 UTF-8 和 GBK 算出的 MD5 完全不同,末尾多个换行或空格也会变;如果你发现和后端算的对不上,先核对编码和有没有多余字符。标准输出是小写十六进制,大写只是显示形式,值是一样的。
MD5加密是一个免费的在线工具,打开网页就能用,不用下载也不用注册。平时大家搜的“md5加密”、“md5在线”、“md5计算”,说的都是这个。
常见使用场景
- 校验下载文件是否被篡改或截断
- 给接口请求参数生成签名防篡改
- 快速比对两份文本内容是否完全一致
- 为缓存键生成定长的内容指纹
- 核对官方给出的文件 MD5 值
使用方法
- 把内容粘贴到输入框(生成类工具直接设置选项)。
- 按需要选择选项,点操作按钮。
- 结果出现在下方,点「复制结果」即可带走。