跳到主要内容
uencoder

MD5

MD5 是 Ronald Rivest 设计的 128 位加密哈希函数,因碰撞攻击已被证明不安全,仅用于校验和等非安全场景。

用途

提供快速的消息摘要用于完整性校验,但因碰撞攻击已不适用于安全场景。

机制

将输入按 512 位块处理,维护 128 位状态(4 个 32 位字)。每块经 4 轮共 64 步非线性变换(F/G/H/I)更新状态。输出最终 128 位状态。碰撞可在秒级构造。

用例

  • 文件下载校验和(非安全)
  • ETag 缓存键
  • 遗留系统校验(非安全)
  • 教学示例(哈希原理)

示例

  • 输入
    hello
    输出
    5d41402abc4b2a76b9719d911017c592

    128 bits = 32 hex characters

常见错误

Using MD5 to store passwords or make digital signatures
Use SHA-256 or bcrypt

相关词条

相关工具

参考链接