Ouvrir le menu principal

Wikipédia β

MD4, pour Message Digest 4, est un algorithme de hachage conçu par le professeur Ronald Rivest du Massachusetts Institute of Technology en 1990. La taille de la signature est de 128 bits. L'algorithme a été abandonné au profit du MD5 après la découverte de faiblesses dans sa conception[1]. D'autres attaques encore plus efficaces ont suivi, notamment par Hans Dobbertin du service du chiffre allemand et l'équipe chinoise à l'origine de l'attaque sur MD5[2]. À ce titre, le MD4 ne peut en aucun cas être considéré comme cryptographiquement sûr puisque des collisions peuvent être générées avec un nombre d'opérations de l'ordre de opérations. Cette magnitude est très faible en comparaison des nécessaires pour une attaque des anniversaires.

Sommaire

ExemplesModifier

Voici la signature en MD4 obtenue sur une phrase :

MD4(« Wikipedia, l'encyclopedie libre et gratuite ») = b94e66e0817dd34dc7858a0c131d4079

UtilisationModifier

Le MD4 est utilisé pour chiffrer les mots de passe en NTLM par Microsoft.

MD4 est aussi utilisé dans plusieurs applications de traitement de fichiers, afin d'obtenir un hashcode un peu plus rapidement que MD5.

Exemple de collisionModifier

Soit : k1 = 839c7a4d7a92cb5678a5d5b9eea5a7573c8a74deb366c3dc20a083b69f5d2a3bb3719dc69891e9f95e809fd7e8b23ba6318edd45e51fe39708bf9427e9c3e8b9 et k2 = 839c7a4d7a92cbd678a5d529eea5a7573c8a74deb366c3dc20a083b69f5d2a3bb3719dc69891e9f95e809fd7e8b23ba6318edc45e51fe39708bf9427e9c3e8b9 ; Alors k1 ≠ k2, pourtant MD4(k1) = MD4(k2) = 4d7e6a1defa93d2dde05b45d864c429b

RéférencesModifier

  1. Bert den Boer, Antoon Bosselaers: An Attack on the Last Two Rounds of MD4. Crypto 1991: 194–203
  2. Xiaoyun Wang, Xuejia Lai, Dengguo Feng, Hui Chen, Xiuyuan Yu: Cryptanalysis of the Hash Functions MD4 and RIPEMD. Eurocrypt 2005: 1–18

Voir aussiModifier

BibliographieModifier

  • Hans Dobbertin, 1998. Cryptanalysis of MD4. J. Cryptology 11(4): 253–271
  • Hans Dobbertin: Cryptanalysis of MD4. Fast Software Encryption 1996: 53–69

Liens externesModifier