MD5 加密生成器
免费在线MD5加密生成器,支持字符串和文件MD5计算,批量处理字符串,16位/32位输出,纯前端本地计算,数据安全无忧。
32 位 MD5
点击计算
16 位 MD5 (取中间)
点击计算
文件 MD5
选择文件后计算
批量结果
点击批量加密按钮
Ad Space
MD5 算法简介
MD5(Message-Digest Algorithm 5)是由罗纳德·李维斯特(Ron Rivest)于 1991 年设计的一种广泛使用的加密哈希函数,可产生 128 位(16 字节)的哈希值。它是 MD4 算法的改进版本,设计之初用于数字签名和数据完整性校验。
MD5 的特点
- 定长输出:无论输入多长,输出始终是 128 位(32 位十六进制字符)
- 单向性:理论上无法从哈希值反推出原始输入
- 雪崩效应:输入的微小变化会导致输出的巨大变化
- 快速计算:计算速度快,适合处理大量数据
MD5 的安全性
MD5 的安全性已被广泛质疑:
- 2004 年,王小云等人证明了 MD5 存在碰撞攻击(即找到两个不同的输入产生相同的哈希值)
- 2008 年,研究者利用 MD5 碰撞伪造了 SSL 证书
- 2012 年,火焰(Flame)病毒利用 MD5 碰撞攻击进行了代码签名伪造
安全建议:密码存储请使用 bcrypt、Argon2 等专门的密码哈希算法;数字签名请使用 SHA-256 及以上版本。
MD5 的常见用途
- 文件完整性校验:检查下载的文件是否完整或被篡改
- 数据去重:通过 MD5 值快速判断两个文件/数据是否相同
- 非安全场景的唯一标识:如缓存键、短哈希等
- 遗留系统兼容:某些老旧系统仍在使用 MD5
与其他哈希算法的对比
| 算法 | 输出长度 | 安全性 | 速度 |
|---|---|---|---|
| MD5 | 128 bits | ❌ 已被破解 | ⚡ 快 |
| SHA-1 | 160 bits | ⚠️ 理论可破 | ⚡ 快 |
| SHA-256 | 256 bits | ✅ 安全 | ⚡ 快 |
| SHA-512 | 512 bits | ✅ 安全 | 🐢 较慢 |
| bcrypt | 可变 | ✅ 极安全 | 🐢🐢 故意慢 |
常见问题
MD5 是什么? ▼
MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,能产生 128 位(16 字节)的哈希值,通常以 32 位十六进制字符串表示。它由 Ron Rivest 于 1991 年设计。
MD5 加密可逆吗? ▼
不可逆。MD5 是单向哈希函数,无法从哈希值反推原始内容。但由于 MD5 碰撞攻击已被证明可行,且存在大量彩虹表(rainbow table)可查询常见字符串的 MD5 值,因此不适合用于安全场景。
16 位 MD5 和 32 位 MD5 有什么区别? ▼
16 位 MD5 其实是 32 位 MD5 去掉前 8 位和后 8 位,取中间的 16 位。这是国内某些系统的习惯用法,并非标准。安全性比 32 位更低。
MD5 还安全吗? ▼
MD5 已被认为是不安全的。2004 年中国密码学家王小云证明了 MD5 存在碰撞攻击。MD5 不应再用于密码存储、数字签名等安全场景。但用于文件完整性校验(检查文件是否被篡改)、数据去重等非安全场景仍然有效。
文件 MD5 校验有什么用? ▼
文件 MD5 校验用于验证文件的完整性。下载文件后计算其 MD5 值,与官方提供的值对比,如果一致则说明文件未被篡改或损坏。常用于软件下载、系统镜像等场景。