字符数:6
32位 (小写)
e10adc3949ba59abbe56e057f20f883e
32位 (大写)
E10ADC3949BA59ABBE56E057F20F883E
16位 (小写)
49ba59abbe56e057
16位 (大写)
49BA59ABBE56E057
纯前端计算,您的文本与文件均不会被上传至服务器,100% 保护数据隐私。

什么是 MD5?它的原理解析

MD5(Message-Digest Algorithm 5,信息摘要算法第五版) 是一种被广泛使用的密码散列函数,可以产生出一个 128 位(16 字节)的散列值(hash value),通常以 32 位十六进制字符串的形式呈现。

它由著名的密码学家罗纳德·李维斯特(Ronald Rivest)设计,并在 1992 年公开。无论你输入的是一个简短的单词,还是一部 10GB 大小的电影,MD5 算法都能将其计算生成一个固定长度的、独一无二的“数字指纹”。

为什么选择 火火小工具 在线 MD5 哈希计算工具?

01纯前端内存级流式计算,支持 16 位/32 位大小写瞬时生成,零服务器延迟
02HTML5 FileReader 本地分块流式读取,GB 级大文件秒级校验,文件绝不上传
03自带海量弱密码反向碰撞检索库,直观演示 MD5 碰撞原理与加盐安全防护
04严格遵循 RFC 1321 国际规范,同时附带 SHA-256 对照,满足现代工程校验

MD5 的核心特点

长度固定

无论输入的信息有多长或多短,输出的 MD5 散列值长度总是固定的 128 位(通常表示为 32 个字符的十六进制串)。

不可逆性(单向性)

由于 MD5 是一种哈希算法而非加密算法,理论上你无法通过一段 MD5 值反向推算出原始的信息内容。这就是为什么它常被称为“摘要”而不是“加密”。

雪崩效应

输入信息的哪怕一个微小改变(例如修改了一个标点符号或者一个像素),输出的 MD5 值就会发生剧烈且不可预测的变化,完全面目全非。

极易计算

给定任意长度的数据,通过计算机程序可以非常容易且快速地计算出其 MD5 值,适合用于大文件的快速校验。

如何使用本 MD5 加密工具?

  • 1
    文本/字符串 MD5 计算切换到“文本加密”标签页。在输入框中输入你需要加密的内容(如密码、账号、任意文字),下方会自动实时生成对应的 32位和 16位(大小写)MD5 哈希值,点击“复制”按钮即可使用。
  • 2
    MD5 碰撞解密(新)切换到“碰撞解密”标签页。输入 16位或 32位的 MD5 密文,系统会在本地内置的常见弱密码库中进行比对。如果命中则直接显示明文,100% 保护您的查询隐私。
  • 3
    文件 MD5 计算与校验切换到“文件计算”标签页。点击上传区域或将本地文件直接拖拽进去。系统会在您的浏览器本地读取文件并极速计算,无需上传文件到服务器,几秒钟内即可获取文件的 MD5 指纹,方便校验文件完整性。

常见问题 (FAQ)

1. 为什么说 MD5 并不是真正的“加密”算法?
加密算法(如 AES、DES、RSA)是可逆的,必须能通过私钥/密钥精确还原回明文;而 MD5 属于单向散列摘要函数(Cryptographic Hash Function),它将任意长度的数据压缩映射为固定的 128 位(16 字节)哈希值,在此过程中丢失了原始长度与大部分信息,因此理论上根本不存在数学逆运算。
2. 16 位 MD5 与 32 位 MD5 的本质区别是什么?
标准 MD5 计算出的输出长度始终为固定的 128 bit(转换为十六进制后为 32 个字符)。业界常说的“16 位 MD5”并不是另一种算法,而是直接截取 32 位标准哈希字符串的中间部分(即第 9 位至第 24 位,共 16 个字符),常用于早期数据库短主键或简化校验。
3. 网上常说的“MD5 解密”究竟是什么原理?
所谓的“MD5 解密”本质上是“反向查表碰撞”或“彩虹表(Rainbow Table)检索”。安全服务商预先将数十亿常用弱密码(如 123456、admin、password)及其 MD5 值建立海量索引库。当您输入一个 MD5 值时,系统只是在字典库中反向查询是否有记录,并不是真正通过算法公式还原。
4. MD5 现在还安全吗?存储用户密码推荐用什么?
在密码存储与数字签名领域,纯 MD5 已经不再安全,容易受到彩虹表与 GPU 暴力秒级破解。现代系统推荐使用慢速加盐哈希算法(如 bcrypt、PBKDF2、Argon2)或至少采用 SHA-256 + 随机盐;而在非安全对抗场景(如大文件下载完整性校验、数据库分表 Hash、缓存 Key 生成),MD5 依然极为高效好用。
5. 什么是密码“加盐(Salt)”?为什么能防御破解?
加盐是指在用户原始密码前后拼上一段不可预测的随机字符串(例如 md5(password + salt))。这使得即使用户设置了最简单的 123456,最终计算出的哈希值也极为复杂,彻底使攻击者预先准备好的通用彩虹表和字典库失效,大幅提高暴力猜解的计算成本。
6. 什么是哈希碰撞(Collision)?
哈希碰撞是指“两份完全不同的输入数据,计算出了完全相同的 MD5 哈希值”。2004 年中国密码学家王小云教授团队公布了快速构造 MD5 碰撞的方法,证明了攻击者可以人为构造两份内容不同但 MD5 相同的可执行文件,这也是安全行业放弃将 MD5 作为高安全级别数字证书的原因。
7. 文件 MD5 校验的原理是什么?有什么用途?
文件 MD5 是将整个文件当作字节流进行整体哈希计算,生成该文件独一无二的“数字指纹”。常用于:1. 下载软件/ISO 系统镜像后核对是否传输损坏或被植入木马;2. 云盘实现“秒传”功能(若服务器已有相同 MD5 文件则直接引用);3. 磁盘重复文件去重排查。
8. 使用本工具计算大文件 MD5,文件会被上传到服务器吗?
100% 本地极速计算,绝不上传任何文件。本工具利用 HTML5 FileReader 分块流式读取 API,直接在您的浏览器内存中逐块计算哈希值,无任何网络流量传输,即便几百 MB 的文件也能在数秒内计算完成,充分保护您的隐私文件与数据安全。