反馈途径·目前大家有任务反馈可以直接发我邮箱:lyfs814@163.com陆续上线高价值工具,敬请期待! 欢迎使用蜗牛工具箱·新工具持续上线中,欢迎收藏关注。如有建议欢迎反馈! 反馈途径·目前大家有任务反馈可以直接发我邮箱:lyfs814@163.com陆续上线高价值工具,敬请期待! 欢迎使用蜗牛工具箱·新工具持续上线中,欢迎收藏关注。如有建议欢迎反馈!
v1.0 · 已上线中英双语纯客户端

MD5 加密MD5 Hash

输入文本实时计算 MD5 摘要,32 位 / 16 位四种格式逐行复制,UTF-8 中文不乱码,与 md5sum / PHP md5() 结果一致。核对密文、校验内容、调试签名更快。数据全程不上传。

本周使用—·收藏102·版本v1.0.0·最后更新今天·完全免费
MD5 · RFC 1321·字符9·实时计算
哈希已生成
输入UTF-8 · 1 行
输出32 位 / 16 位 · UTF-8
32 位 · 小写
8098c596ca7e6846dba63dca7eaaddd8
32 位 · 大写
8098C596CA7E6846DBA63DCA7EAADDD8
16 位 · 小写
ca7e6846dba63dca
16 位 · 大写
CA7E6846DBA63DCA

16 位 = 32 位去掉前 8 位取中间 16 字符,两者内容等价。

计算

工具介绍

3 段详细说明

MD5 计算是面向开发者与普通用户的一站式 MD5 摘要工具。输入任意文本,立即得到 32 位(128 bit)标准摘要,并同时给出 32 位大写、16 位大小写三种常用变体,逐行一键复制,核对密码密文、校验内容一致性更快。

算法基于 RFC 1321 纯前端实现(MD5 不在浏览器 Web Crypto API 支持范围内),完整兼容 UTF-8,中文、emoji 均按字节正确编码,与 Linux md5sum、PHP md5() 等主流实现结果完全一致。

所有计算都在浏览器内存中完成,输入内容不上传任何服务器。支持边输入边实时出结果、⌘+↵ 快捷键执行、断网可用,适合核对数据库密文、验证接口签名、生成文件指纹等高频场景。

基础知识 · MD5 摘要

RFC 1321 · 128 bit

MD5(Message-Digest Algorithm 5)是输出 128 位摘要的密码学哈希函数。理解以下 6 个要点,就能正确、安全地使用它:

1digest固定 128 位摘要
不管输入 1 个字还是 100 MB 文本,输出永远是 128 bit,即 32 个十六进制字符(4 bit / 字符)。这就是「指纹」的含义:长度固定、内容唯一指向原文。
2one-way单向不可逆
由原文算摘要极易(微秒级),由摘要反推原文在数学上不可行。彩虹表只是「常见短串 → 摘要」的查表,加了盐的复杂原文无法还原。
3avalanche雪崩效应
原文改动任意 1 个比特,摘要约一半的位会翻转。md5("abc") 与 md5("abd") 的结果完全不同且无规律,因此能敏感地发现内容被篡改。
4collision碰撞已被攻破
2004 年王小云团队给出构造性碰撞方法,2012 年 flame 病毒利用伪造证书实战验证。签名、证书场景已弃用 MD5,改用 SHA-256 及以上。
5rfc 1321出处与流程
1992 年由 Ron Rivest 发布于 RFC 1321。流程:填充至 512 bit 整数倍 → 按 512 bit 分组 → 4 轮共 64 步压缩 → 级联 4 个 32 位寄存器 A/B/C/D 得到摘要。
6salt & slow hash密码存储的正确姿势
MD5 速度太快,不适合直接存密码。正确做法:每用户随机盐 + 慢哈希(bcrypt / scrypt / argon2)。老系统迁移时保留 MD5 字段加「加盐重算」灰度升级。
安全使用速记
核对结果认准 32 位小写 (md5sum / MySQL MD5() / Python hashlib 默认风格),大写只是显示差异、内容等价。
echo -n "abc" | md5sum —— Linux 下验证:注意 -n 去掉行尾换行,否则结果不同(多算了一个 \n 字节)。
MySQL SELECT MD5('abc')、PHP md5('abc')、Python hashlib.md5(b'abc').hexdigest() 均返回 900150983cd24fb0d6963f7d28e17f72,可互验。
编码坑:中文先确认 UTF-8 还是 GBK;Windows 命令行 certutil -hashfile 文件 MD5 可校验文件,注意文件本身是否带 BOM。

使用说明

4 步快速入门
1
粘贴文本
把待计算的文本贴到左侧输入框,或点击「示例」一键填充
2
自动计算
输入即实时计算,右侧同时给出 32 位 / 16 位四种格式结果
3
选格式
按目标系统要求选用小写或大写;16 位常用于老系统密码字段
4
复制带走
每行右侧按钮单独复制,或点「复制」一键带走 32 位小写

使用场景

5 个真实案例
01核对密码密文

老系统把密码以 MD5 存库,比对用户输入的 MD5 是否与库里字段一致。

02文件内容指纹

对文本内容生成摘要,对比传输前后 MD5 是否一致,快速发现内容被篡改。

03接口签名调试

复现 sign=md5(参数+密钥) 拼接规则,排查第三方 API 验签失败问题。

04缓存 Key 生成

把长 URL / 长文本压缩成固定 32 字符 Key,用作缓存索引或去重标识。

05测试数据构造

为批量测试账号生成确定性假密码密文,同一输入永远得到同一结果。

常见问题

10 个问答
MD5 是什么?有什么用?

MD5(Message-Digest Algorithm 5)是一种输出 128 位(32 个十六进制字符)摘要的哈希算法。任意长度输入都会得到固定长度的「指纹」,常用于一致性校验、缓存 Key、老系统密码比对等场景。

MD5 能解密吗?

不能。MD5 是单向哈希,数学上不可逆。网上所谓「MD5 解密」是拿着彩虹表反查常见短字符串,复杂原文(加随机盐)无法还原。本工具只做正向计算。

我的输入会上传到服务器吗?

不会。MD5 计算完全在浏览器内存中完成,输入内容不上传任何服务器。可断网使用,关闭网络后再打开仍能正常使用。

32 位和 16 位 MD5 什么关系?

16 位是 32 位去掉前 8 位、取中间 16 位的简写形式(即第 9 到 24 个字符),内容上完全等价,只是老系统(如 Discuz!)习惯存短格式。两者互转无需重新计算。

为什么同样的中文,算出来的 MD5 和别人不一样?

大概率是编码不同:本工具按 UTF-8 字节计算,若对方按 GBK / GB2312 编码,同一句话结果不同。中文环境对接老系统时请先确认对方编码。

结果和 Linux md5sum / PHP md5() 一致吗?

一致。本工具严格按 RFC 1321 实现,UTF-8 输入下与 md5sum、PHP md5()、Python hashlib.md5、Java MessageDigest MD5 等主流实现完全相同,可放心互验。

大写还是小写?为什么两种都给?

标准输出是小写(md5sum 风格),部分 Windows 工具与老系统用大写。两者只是大小写差异、内容等价,本工具四种格式同时给出,按目标系统复制即可。

MD5 还安全吗?能用来存密码吗?

MD5 作为完整性校验仍在使用,但已被证明存在碰撞攻击,不建议新系统用它存密码。新项目请用 bcrypt / scrypt / argon2 等慢哈希;已有老系统建议逐步迁移并加盐。

支持多大的文本?文件能算吗?

文本建议 ≤ 10 MB,前端计算毫秒级完成。本工具面向文本输入;大文件校验建议在本地命令行用 md5sum / certutil 处理。

结果可以一键复制吗?

可以。输出区每行右侧有独立复制按钮;点底部「复制」按钮一键复制 32 位小写结果。

相关工具

编码加密分类

数据来源

隐私优先
算法:严格按 RFC 1321 纯 TypeScript 实现(MD5 不在浏览器 Web Crypto API 支持范围内),零第三方依赖、无 WASM。输入经 TextEncoder 按 UTF-8 编码后逐字节计算,中文 / emoji 不乱码,与 md5sum 等主流实现结果一致。
隐私声明:所有计算均在浏览器内存完成,输入内容不上传任何服务器。本工具不记录任何输入、不埋任何分析点。可断网使用,关闭网络后再打开仍能正常使用。