Merkle-Damgård Construction
Merkle-Damgård 构造是迭代哈希的经典框架,将消息分块后用压缩函数 f 链式迭代:h_i=f(h_{i-1}, m_i)。
用途
将固定输入长度的压缩函数扩展为任意长度哈希,是 MD5/SHA-1/SHA-2 的基础结构。
机制
消息填充至块长度倍数(含长度编码),初始值 h_0=IV,迭代 h_i=f(h_{i-1}, m_i),输出 h_n。弱点:长度扩展攻击、多碰撞。
用例
- MD5/SHA-1/SHA-2 基础结构
- 迭代哈希设计
- 密码学教学