Zum Inhalt springen
uencoder

Merkle-Damgård Construction

Die Merkle-Damgård-Konstruktion ist der klassische Rahmen für iteratives Hashing: Die Nachricht wird in Blöcke zerlegt und durch die Kompressionsfunktion f verkettet: h_i=f(h_{i-1}, m_i).

Zweck

Erweitert eine Kompressionsfunktion mit fester Eingabelänge zu einem Hash mit beliebiger Eingabelänge — die zugrunde liegende Struktur von MD5/SHA-1/SHA-2.

Mechanismus

Die Nachricht wird (mit Längenkodierung) auf ein Vielfaches der Blocklänge gepolstert; vom Startwert h_0=IV wird h_i=f(h_{i-1}, m_i) iteriert und h_n ausgegeben. Schwächen: Length-Extension-Angriffe und Multikollisionen.

Anwendungsfälle

  • Grundlage von MD5/SHA-1/SHA-2
  • Design iterativer Hashes
  • Kryptografie-Lehre

Verwandte Tools

References