Merkle-Damgård Construction
La construction de Merkle-Damgård est le cadre classique du hachage itératif : le message est découpé en blocs et chaîné par la fonction de compression f : h_i=f(h_{i-1}, m_i).
Objectif
Étend une fonction de compression à longueur d'entrée fixe en un hachage à entrée de longueur arbitraire — la structure sous-jacente de MD5/SHA-1/SHA-2.
Mécanisme
Le message est complété à un multiple de la longueur de bloc (avec encodage de la longueur) ; depuis la valeur initiale h_0=IV, on itère h_i=f(h_{i-1}, m_i) et on émet h_n. Faiblesses : attaques par extension de longueur et multicolisions.
Cas d’usage
- Fondement de MD5/SHA-1/SHA-2
- Conception de hachages itératifs
- Enseignement de la cryptographie