MD5生成器
MD5可对任何输入数据(文本、文件或数据流)生成128位(对应32个十六进制字符)的摘要值。尽管自2004年起该算法在密码学场景中已被攻破,但它仍是快速完整性校验的标准工具(如软件包下载校验、重复数据消除的指纹识别,以及某些场景下的git blob命名)。您只需粘贴文本或上传文件,该生成器即可在本地返回十六进制摘要值,无需上传任何数据。
如何生成 MD5 哈希值
-
1
选择输入
用于输入任意字符串的文本框,或支持最大约2 GB文件的文件选择器。
-
2
该工具在本地计算 MD5
文件以分块方式进行流式处理,因此大文件不会占用过多内存。
-
3
读取十六进制摘要
32个十六进制字符,即标准的MD5表示形式。
-
4
复制或比对
与预期的哈希值(如软件包作者发布的MD5值)进行比对,或复制下来留存记录。
MD5是什么(以及不是什么)
- 确定性。 同一输入始终产生相同的128位输出。
- 固定长度。 无论输入数据大小如何(一个字节还是一吉字节),均生成32个十六进制字符。
- 单向性。 给定一个MD5摘要值,无法将其逆向还原为原始输入(仅对存在彩虹表的极短输入例外)。
- 作为密码学哈希已被攻破。 碰撞可被轻易构造。切勿在以下场景中使用 MD5:
- 密码存储(请使用 bcrypt、scrypt、Argon2)。
- 数字签名(请使用 SHA-256 或 SHA-3)。
- TLS证书签名(现代浏览器已拒绝)。
- 任何攻击者可能利用的、涉及安全的完整性声明。
MD5仍然适用的场景
- 非对抗性完整性校验。 确认文件在传输过程中未损坏。
- 去重处理。 对存储系统中相同的数据块进行指纹识别。
- 对低更新频率的静态资源进行ETag生成。
- 缓存键与内容寻址哈希。
实例演示
| 输入文本 | MD5摘要 |
|---|---|
| (空字符串) | d41d8cd98f00b204e9800998ecf8427e |
a |
0cc175b9c0f1b6a831c399e269772661 |
abc |
900150983cd24fb0d6963f7d28e17f72 |
The quick brown fox jumps over the lazy dog |
9e107d9d372bb6826bd81d3542a419d6 |
The quick brown fox jumps over the lazy dog.(结尾句点) |
e4d909c290d0fb1ca068ffaddf22cbd0 |
请注意,仅一个字符(末尾的句点)就彻底改变了整个摘要,这就是所谓的“雪崩效应”。
MD5与SHA系列算法对比
| 算法 | 输出长度 | 是否已被碰撞攻破? | 当前典型用途 |
|---|---|---|---|
| MD5 | 128位 | 是(2004年) | 完整性校验、重复数据消除、ETag |
| SHA-1 | 160位 | 是(2017年) | 遗留用途;新项目应避免使用 |
| SHA-256 | 256位 | 否 | TLS、代码提交、通用密码学 |
| SHA-3 | 224–512位 | 否 | SHA-2的现代替代方案 |
| BLAKE3 | 256位 | 否 | 快速替代SHA-2的方案 |
常见问题
不可以。MD5算法在现代GPU上极易被暴力破解,且自2004年起已被攻破。请使用专门的密码哈希函数:Argon2、scrypt或bcrypt。
对于普通完整性校验(下载是否完成):安全;对于对抗性完整性校验(是否有人将文件替换为恶意版本):不安全,应使用SHA-256。
不会。哈希处理通过 WebCrypto 和类型化数组在您的浏览器中执行。文件始终不会离开您的设备,这在处理私密数据或受保密协议约束的内容时尤为重要。
现代浏览器能够轻松处理约2GB的流式输入数据。对于体积极大的文件(数十GB),使用md5sum或openssl dgst -md5等命令行工具进行哈希处理效果更佳。
规范并未规定大小写。大多数Unix工具输出小写字母,而部分Windows工具输出大写字母。比对时需将两侧统一为相同的大小写形式。
相关工具
Base64 文件编码器
将任意文件(PDF、ZIP、图片、可执行文件)编码为 Base64 文本,用于嵌入 JSON、邮件、YAML 或 data URI。在浏览器本地运行,无需上传。
加密标识符
粘贴密文或哈希值后,系统会显示可能使用的算法或编码方式:MD5、SHA、bcrypt、AES、RSA、Base64等。
校验和验证器
计算任意文本的 MD5、SHA-1、SHA-256、SHA-384、SHA-512 或 CRC32 校验和,并与预期值比较,获得明确的匹配或不匹配结果。
以太坊兑美元转换器
按实时 ETH/USD 汇率或您自己输入的汇率,将以太坊(ETH)兑换为美元。查看任意数量的 ETH 对应多少美元。
CSR 生成器
生成 PEM 格式的证书签名请求及对应的 RSA 私钥。指定通用名称、组织字段和密钥大小(2048、3072 或 4096 位)。
SSL 证书生成器
完全在浏览器中生成自签名 SSL/TLS 证书和 RSA 私钥。自定义 Common Name、SAN 和有效期,导出为 PEM。
此工具还提供其他语言版本
- MD5-Generator [DE]
- Générateur MD5 [FR]
- MD5-generator [SV]
- MD5 생성기 [KO]
- MD5-generator [NL]
- مولّد MD5 [AR]
- Generador de MD5 [ES]
- Generator MD5 [ID]
- MD5ジェネレーター [JA]
- เครื่องสร้างค่า MD5 [TH]
- Bộ tạo MD5 [VI]
- Generator MD5 [PL]
- Gerador de MD5 [PT]
- MD5 Üreticisi [TR]
- MD5 Generator [EN]
- Generatore MD5 [IT]
- Генератор MD5 [RU]