MD5 - Algorithme de calcul d'un hashcode (condensat, empreinte) d'un message ou, en informatique, du contenu d'un fichier. Représentation unique en quelques caractères, utilisée en cryptographie. Permet de manipuler le code (recherches...) sans manipuler la donnée codée.
Sommaire (montrer / masquer)
|
---|
|
MD5 a été inventé par Ronald Rivest en 1991.
MD5 (Message Digest 5) est une fonction de hachage cryptographique (un algorithme) qui permet d'obtenir l'empreinte numérique (hashcode - condensat) d'un fichier. Cette empreinte est, en théorie, unique, et jamais deux contenus ne peuvent produire le même condensat. Corrolaire : le condensat d'un contenu devrait être une signature unique de ce contenu.
La montée en puissance des ordinateurs et des capacités des disques durs permet, depuis le début des années 2000, de lancer des attaques par dictionnaire sur les condensats MD5 qui sont désormais considérés comme trop faibles en ce domaine.
L'émergence de techniques comme les tables arc-en-ciel (Rainbow Tables), permettent de décrypter (remonter du condensat au contenu qui l'a généré), très rapidement, un hashcode (condensat) MD5.
Des logiciels permettent, depuis 2004, de créer des collisions complètes MD5 à la demande (obtenir un même condensat à partir de plusieurs contenus différents).
En 2007, Marc Stevens, Arjen K. Lenstra et Benne de Weger produisent deux exécutables (.exe) aux condensats MD5 identiques mais aux comportements différents.
2007 Démonstration de collisions MD5
2007 Visualisation d'une collision MD5
En 2009, Didier Stevens crée un outil permettant de recopier un code d'authentification (signature Authenticode - signature dite " de confiance ") d'un fichier à un autre ayant le même MD5.
2009 Playing With Authenticode and MD5 Collisions
MD5 -
Collision (même
condensat pour deux fichiers différents) et copie valide d'une
signature Authenticode de l'un à l'autre
MD5 n'est plus considéré comme un condensat fiable dans l'identification unique de contenus courts (type Mots de passe). MD5 reste un calcul de signatures relativement fiable pour les empreintes de contenus volumineux et peut encore être utilisé pour vérifier l'intégrité d'un fichier (l'auteur / émetteur du fichier originel calcule et publie le condensat MD5 du fichier - le récepteur du fichier recalcul le condensat MD5 et le compare au condensat d'origine - la concordance permet d'avoir une assez forte présomption que les deux fichiers sont identiques, sachant que des Collisions peuvent être produites de plus en plus rapidement par l'évolution des techniques et l'augmentation des vitesses de calcul). Par exemple :
On utilisera ce calcul de condensat pour vérifier qu'un téléchargement s'est bien passé, pour autant que le fichier téléchargé soit accompagné de son condensat d'origine (fiable, émis par l'auteur authentique du fichier téléchargé).
Un dispositif de contrôle d'intégrité calculera la totalité des condensats des fichiers système d'un ordinateur et les comparera aux condensats officiellement calculé par les éditeurs (Microsoft, Adobe, etc. ...). Un fichier système dont le condensat est inconnu devra faire l'objet d'investigations (par exemple une confrontation à une collection d'antivirus, comme VirusTotal) et / ou son exécution dans une sandbox pour analyse de son comportement).
Toutefois, puisque des logiciels permettant de fabriquer des collisions MD5 existent, ne permettant plus d'assurer qu'il y a unicité de contenu à partir d'empreintes identiques, on préfèrera utiliser d'autres algorithmes de condensats, comme SHA-256 ou Whirlpool qui, à ce jour (juillet 2020), ne sont pas (encore) attaqués.
Aidez et soutenez Assiste – autorisez quelques publicités et cliquez dessus.
|
L'algorithme MD5 a été mis au point par [1] Ronald Rivest en 1991 (il améliore l'algorithme MD4).
Un calcul de condensat MD5 a été quasi universellement utilisé, en cryptographie, pour chiffrer les mots de passe.
Aidez et soutenez Assiste – autorisez quelques publicités et cliquez dessus.
|
Aidez et soutenez Assiste – autorisez quelques publicités et cliquez dessus.
|
Fonction de hachega | Création | Créateur | Nombre de bits du hash | Notes | Obsolette - pas sûr (collisions) |
---|
CRC-1 | 1957 - évoqué dans Cyclic Codes for Error Detection de Peterson, W. W. and D. T. Brown.. | | | N'est pas une fonction de hachage, mais 1 CRC (Calcul de Redondance Cyclique). CRC-32 a été imbécilement utilisé par le prétendu antivirus Viguard et à conduit à sa disparition et la faillite de son développeur et de son distributeur (outre d'autres embrouilles). |
CRC-16 | | |
CRC-32 | | |
MD2 | 1989 | Ronald Rivest (MIT) | 128 | Attaque possible, même si pas utilisée. | Plus sûr. |
MD4 | 1990 | Ronald Rivest (MIT) | 128 | |
|
MD5 | 1991 | Ronald Rivest (MIT) | 128 | |
|
MD6 | 2008 | Ronald Rivest (MIT) avec un groupe. | 512 | Calcul extrêmement rapide d'immenses nombres de hashs en parallèle sur d'immenses fichiers. Arbre de Merkle et NLFSR. | |
SHA-0 | 1993 | NSA | 160 | Famille de 6 fonctions de hachage comprenant : SHA-256 opérant sur des mots de 32 bits SHA-512 opérant sur des mots de 64 bits. SHA-224 et SHA-384 SHA-512/256 et SHA-512/224
| Collisions suspectes volontairement permises par la NSA. 1ère découverte de collision complète par Antoine Joux (cryptologue français) en août 2004. |
SHA-1 | 1995 | NSA | 160 | | 2019 - Risque (actuellement théorique) Juillet 2022 - les signatures SHA-1 dans les certificats, depuis longtemps considérées comme n'étant plus suffisamment sécurisées, ne sont plus prises en charge. |
SHA-2 | 2001 | NSA | SHA-224 - 224 SHA-256 - 256 SHA-384 - 384 SHA-512 - 512 SHA-512/224 - 224 SHA-512/256 - 256
| Famille de six fonctions de hachage avec des digests (valeurs de hachage) de 224, 256, 384 ou 512 bits: SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA-512/256 . | Résistent aux collisions |
SHA-3 Anciennement nommé Keccak | 2015 | Guido Bertoni, Joan Daemen, Michaël Peeters et Gilles Van Assche | SHA3-224 - 224 SHA3-256 - 256 SHA3-384 - 384 SHA3-512 - 512 SHAKE128 - d (arbitraire) SHAKE256 - d (arbitraire)
| Famille de six fonctions de hachage basées sur RadioGatún, du même groupe d'auteurs, présenté en août 2006. Se propose de remplacer MD5, SHA-0 et SHA-1 et leurs attaques avérées ou possibles. | Résistent aux collisions |
SHA-256 | 2001 | NSA | 256 | Il est conseillé universellement d'abandonner MD5 et SHA-1 au profit de SHA-256, principalement dans le hachage des mots de passe, même si cela occupe plus le processeur et rend les bases de données d'identifiants/mots de passe plus volumineuses. | Résistent aux collisions |
Aidez et soutenez Assiste – autorisez quelques publicités et cliquez dessus.
|
Finalité d'un condensat et réputation d'un algorithme de calcul de condensats
La réputation de l'algorithme de calcul d'un hashcode (calcul d'un condensat - fonction de hachage) est de ne jamais produire deux hashcodes identiques si les objets (fichiers) contiennent la moindre différence. La fonction de hachage doit donc produire une clé unique d'identification d'une donnée unique (calcul homogène).
Aidez et soutenez Assiste – autorisez quelques publicités et cliquez dessus.
|
Les outils les plus simples de calcul de hashcodes, et de très loin, sont ceux qui s'installent en tant que « propriété » additionnelle d'un fichier dans l'explorateur de fichiers de Windows.
SummerProperties
SummerProperties ajoute un onglet « CheckSums » aux propriétés d'un fichier, dans l'explorateur de fichiers de Windows, et propose 4 algorithmes de hashcodes : CRC-16, CRC-32, MD5 et SHA-1.
SummerProperties est gratuit, mais, bien qu'encore fonctionnels, les algorithmes qu'il propose ne sont plus suffisants :
On laisse tomber SummerProperties.
Voir SummerProperties.
HashTab
HashTab ajoute un onglet « Hachages » aux propriétés d'un fichier, dans l'explorateur de fichiers de Windows, et propose 30 algorithmes de hashcodes : (Adler32; Blake2sp; Btih; CRC-32; CRC-64; ED2K; Gost; Keccak-224; Keccak-256; Keccak-384; Keccak-512; MD2; MD4; MD5; Ripemd-128; Ripemd-160; Ripemd-256; Ripemd-320; SHA-1; SHA-256; SHA-256 base 64; SHA-384; SHA-512; SHA3-224; SHA3-256; SHA3-384; SHA3-512; TTH; Tiger; Whirlpool). Ce produit est gratuit.
Voir HashTab.
VT Hash Check (VirusTotal Hash Check)
VT Hash Check ajoute une propriété (sous le nom de Check File Hash) aux fichiers, dans l'explorateur de fichiers de Windows. VT Hash Check calcule un hashcode d'un fichier désigné par l'utilisateur, selon l'algorithme choisi parmi les 3 proposés (MD5, SHA-1, SHA-256 [recommandé]) et soumet instantanément ce hashcode au service multiantivirus gratuit en ligne VirusTotal(70 antivirus simultanés en juillet 2020).
Vous êtes vivement incités à installer VT Hash Check (gratuit; sous Windows).
Voir VT Hash Check (VirusTotal Hash Check).
Aidez et soutenez Assiste – autorisez quelques publicités et cliquez dessus.
|
Réputation des fonctions de hachage
On voit souvent, en matière de sécurité informatique, principalement avec les services d'analyses antivirus, qu'il ne faut pas/plus identifier le contenu d'un fichier avec certaines fonctions de hachage (hashcodes, condensats, Empreinte cryptographique), dont les fonctions MD5 et SHA-1, car les créations de collisions, les attaques en force brute ou les utilisations de tables Arc-en-ciel permettent de casser l'unicité du condensat ou de remonter à son contenu crypté. Le tableau suivant, établi par les auteurs de Whirlpool (dernière version de ce tableau le 7 novembre 2017), donne l'état de l'art des principales fonctions de hachages et leurs poursuites de résistance ou leurs échecs aux attaques.
Symboles :
Le symbole est utilisé pour désigner une attaque qui a été conduite avec succès pour casser une fonction de hachage (par exemple, en produisant explicitement une collision), ou si la complexité de l'attaque est si faible qu'il ne serait pas difficile de la conduire avec les technologies actuelles.
Le symbole indique une rupture théorique (plus rapide que les attaques par force brute ou les attaques par le paradoxe des anniversaires) ou une indication explicite des auteurs de la fonction qu'il faut l'éviter.
Le symbole signifie que la conception de la fonction ou une version réduite de celle-ci a été analysée par des tiers, repoussant les limites des techniques de cryptanalyse connues sans indiquer de faiblesse dans la conception complète.
Table 1 : Caractéristiques de quelques fonctions de hachages choisies
Nom | Ref. | Version | Auteur(s) | Taille du bloc | Taille du condensat | Tours | Attaque(s) |
---|
AR | AR92 | 1992 | ISO | ? | ? | ? | DK93 |
Boognish | DGV92a | 1992 | Daemen | 32 | up to 160 | NA | D02 |
Cellhash | DGV91 | 1991 | Daemen, Govaerts, Vandewalle | 32 | up to 256 | NA | ? |
FFT-Hash I | S91 | 1991 | Schnorr | 128 | 128 | 2 | BGG92, DBGV91 |
FFT-Hash II | S92 | 1992 | Schnorr | 128 | 128 | 2 | V92 |
FSB | AFS05 | 2005 | Augot, Finiasz, Sendrier | 336, 680, 1360 | 320, 400, 480 (†) | NA | ? |
GOST R 34.11-94 | G94 | 1990 | Government Committee of Russia for Standards | 256 | 256 | NA | ? |
HAS-160 | TTA05 | 2005 | Telecommunications Technology Association | 512 | 160 | 4×20 | ? |
HAVAL | ZPS92 | 1994 | Zheng, Pieprzyk, Seberry | 1024 | 128, 160, 192, 224, 256 | 3×32, 4×32, 5×32 | WFLY04, RBPV03, KP00, KBPL05 |
LASH-n (n = 160, 256, 384, 512) | BPSSS06 | 2006 | Bentahar, Page, Saarinen, Silverman, Smart | 4×n | n | NA | ? |
MAA (‡) | ISO88 | 1988 | ISO | 32 | 32 | NA | PRO97 |
MAELSTROM-0 | GBR06 | 2006 | Gazzoni Filho, Barreto, Rijmen | 1024 | up to 512 | 10 | ? |
MD2 | K92 | 1989 | Rivest | 512 | 128 | 18 | M04, RC95 |
MD4 | R90 | 1990 | Rivest | 512 | 128 | 3×16 | WLFCY05, WFLY04, D98, KBPL05 |
MD5 | R92 | 1992 | Rivest | 512 | 128 | 4×16 | K06, S06, K05a, K05b, WY05, WFLY04, D96, KBPL05 |
N-Hash | MOI90 | 1990 | Miyaguchi, Ohta, Iwata | 128 | 128 | ? 8 | BS91 |
PANAMA | DC98 | 1998 | Daemen, Clapp | 256 | unlimited | NA | RRPV01, DV07 |
Parallel FFT-Hash | SV93 | 1993 | Schnorr, Vaudenay | 128 | 128 | 5 | ? |
RADIOGATÚN[w] (default: w = 64) | BDPvA06 | 2006 | Bertoni, Daemen, Peeters, van Assche | 3×w | unlimited | NA | ? |
RIPEMD | RIPE92 | 1990 | The RIPE Consortium | 512 | 128 | 4×16 | WLFCY05, WFLY04, D97 |
RIPEMD-128 | DBP96 | 1996 | Dobbertin, Bosselaers, Preneel | 512 | 128 | 4×16 | ? |
RIPEMD-160 | DBP96 | 1996 | Dobbertin, Bosselaers, Preneel | 512 | 160 | 5×16 | ? |
SHA-0 | NN91 | 1991 | NIST/NSA | 512 | 160 | 4×20 | WYY05, WFLY04, CJ98 |
SHA-1 | NN02 | 1993 | NIST/NSA | 512 | 160 | 4×20 | WYY05, R04, BC04 |
SHA-1-IME | JP05 | 2005 | Jutla, Patthak | 512 | 160 | 80 | ? |
SHA-224 | NN02 | 2004 | NIST/NSA | 512 | 224 | 64 | HPR04 |
SHA-256 | NN02 | 2000 | NIST/NSA | 512 | 256 | 64 | HPR04 |
SHA-384 | NN02 | 2000 | NIST/NSA | 1024 | 384 | 80 | HPR04 |
SHA-512 | NN02 | 2000 | NIST/NSA | 1024 | 512 | 80 | HPR04 |
SMASH | K05 | 2005 | Knudsen | 256 | 256 | NA | PRR05 |
Snefru-n (n = 128, 256) | M90 | 1990 | Merkle | 512-n | n | ? 8 | BS93 |
StepRightUp | D95 | 1995 | Daemen | 256 | 256 | NA | RRPV01 |
Subhash | DGV92b | 1992 | Daemen | 32 | up to 256 | NA | ? |
Tiger | AB96 | 1996 | Anderson, Biham | 512 | 192 | 3×8 | KL06, MPRYW06 |
WHIRLPOOL | BR00 | 2000 | Barreto, Rijmen | 512 | 512 | 10 | ? |
Name | Ref. | Version | Author(s) | Block Size | Digest Size | Rounds | Attack(s) |
---|
(†) Par sa propre nature, FSB (Fast Syndrome-Based) est moins résistant à la recherche de collision que les attaques par le paradoxe des anniversaires. Pour cette raison, sa taille de résumé (condensat) doit toujours être supérieure à deux fois la sécurité de bit souhaitée.
(‡) MAA est un code d'authentification de message (MAC - Message Authentication Code) plutôt qu'une fonction de hachage. Il a été inclus ici en raison de son importance dans le cadre de la norme ISO 8731-2.
Table 2 : Stratégies de conception générales, analyses et attaques
Categorie | Autheur(s) | Ref. |
---|
Design | Damgård Gauravaram, Millan, Dawson, Viswanathan Lucks Merkle | D89 GMDV06 L04 M89 |
Analyses | Black, Rogaway, Shrimpton Mironov, Zhang Preneel, Govaerts, Vandewalle
| BRS02 MZ06 PGV93 |
Attaques | Hoch, Shamir Joux Kelsey, Schneier Kohno, Kelsey
| HS06 J04 KS05 KK06 |
Références
- [AB96] R. Anderson, E. Biham, "Tiger: A Fast New Hash Function", Fast Software Encryption -- FSE'96, LNCS 1039, Springer (1996), pp. 89--97.
- [AFS05] D. Augot, M. Finiasz, N. Sendrier, "A Family of Fast Syndrome Based Cryptographic Hash Functions", LNCS 3715, Springer (2005), pp. 64--83.
- [AR92] ISO N179, "AR Fingerprint Function", working document, ISO-IEC/JTC1/SC27/WG2, International Organization for Standardization, 1992.
- [BC04] E. Biham, R. Chen, "Near-Collisions of SHA-0", Advances in Cryptology -- Crypto'2004, LNCS 3152, Springer (2004), pp. 290--305. Updated version.
- [BDPvA06] G. Bertoni, J. Daemen, M. Peeters, G. van Assche, "RadioGatún, a belt-and-mill hash function", Second NIST Cryptographic Hash Workshop, Santa Barbara, USA, August 24--25, 2006.
- [BGG92] T. Baritaud, H. Gilbert, M. Girault, "F.F.T. hashing is not collision-free", Advances in Cryptology -- Eurocrypt'92, LNCS 658, Springer (1992), pp. 35--44.
- [BPSSS06] K. Bentahar, D. Page, J. H. Silverman, M.-J. O. Saarinen, N. P. Smart, "LASH", Second NIST Cryptographic Hash Workshop, Santa Barbara, USA, August 24--25, 2006.
- [BR00] P. S. L. M. Barreto, V. Rijmen, "The Whirlpool Hashing Function", First open NESSIE Workshop, Leuven, Belgium, November 13--14, 2000.
- [BRS02] J. Black, P. Rogaway, and T. Shrimpton, "Black-Box Analysis of the Block-Cipher-Based Hash-Function Constructions from PGV", Advances in Cryptology -- CRYPTO'2002, LNCS 2442, Springer (2002), pp. 320--335.
- [BS91] E. Biham and A. Shamir, "Differential cryptanalysis of Feal and N-Hash", Advances in Cryptology -- Eurocrypt'91, LNCS 547, Springer (1991), pp. 1-16.
- [BS93] E. Biham and A. Shamir, "Differential Cryptanalysis of the Data Encryption Standard", Springer (1993).
- [CJ98] F. Chabaud and A. Joux, "Differential Collisions in SHA-0", Advances in Cryptology -- Crypto'98, LNCS 1462, Springer (1998), pp. 56--71.
- [D95] J. Daemen, " Cipher and Hash Function Design, Strategies Based on Linear and Differential Cryptanalysis", Doctoral dissertation, Katholiek Universiteit Leuven, 1995.
- [D89] I. B. Damgård, "A Design Principle for Hash Functions," Advances in Cryptology -- Crypto'89, LNCS 435, Springer (1989), pp. 416--427.
- [D96] H. Dobbertin, "The Status of MD5 after a Recent Attack", CryptoBytes2:2 (1996), pp. 1--6.
- [D97] H. Dobbertin, "RIPEMD with Two-Round Compress Function is Not Collision-Free", Journal of Cryptology10:1 (1997), pp. 51--70.
- [D98] H. Dobbertin, "Cryptanalysis of MD4", Journal of Cryptology11:4 (1998), pp. 253--271.
- [D02] J. Daemen, personal communication, 2002 (if you are curious, it merely states that Boognish is "certainly weak").
- [DBGV91] J. Daemen, A. Bosselaers, R. Govaerts, J. Vandewalle, "Collisions for Schnorr's Hash Function FFT-Hash", Advances in Cryptology -- Asiacrypt'91, LNCS 739, Springer (1993), pp. 447--480.
- [DBP96] H. Dobbertin, A. Bosselaers, and B. Preneel, "RIPEMD-160, a strengthened version of RIPEMD", Fast Software Encryption -- FSE'96, LNCS 1039, Springer (1996), pp. 71--82.
- [DC98] J. Daemen and C. Clapp, "Fast Hashing and Stream Encryption with PANAMA", Fast Software Encryption -- FSE'98, LNCS 1372, Springer (1998), pp. 60--74.
- [DGV91] J. Daemen, R. Govaerts, and J. Vandewalle, "A Framework for the Design of One-Way Hash Functions Including Cryptanalysis of Damgård's One-Way Function Based on Cellular Automata", Advances in Cryptology - Asiacrypt'91, LNCS 739, Springer (1993), pp. 82--96.
- [DGV92a] J. Daemen, R. Govaerts, and J. Vandewalle, "Fast Hashing Both in Hard- and Software", ESAT-COSIC Report92-2, Department of Electrical Engineering, Katholieke Universiteit Leuven, April 1992.
- [DGV92b] J. Daemen, R. Govaerts, and J. Vandewalle, "A Hardware Design Model for Cryptographic Algorithms", European Symposium on Research in Computer Security - ESORICS, 1992, pp. 419--434.
- [DK93] I. B. Damgård, and L. R. Knudsen, "The breaking of the AR Hash Function", Advances in Cryptology -- EUROCRYPT'93, LNCS 765, Springer (1994), pp. 286--292.
- [DV07] J. Daemen, G. van Assche, " Producing Collisions for Panama, Instantaneously, Fast Software Encryption -- FSE'2007, LNCS 4593, Springer (2007), pp. 1--18.
- [G94] Government Committee of Russia for Standards, "Information technology. Cryptographic Data Security. Hashing function.", GOST R 34.10-94, Gosudarstvennyi Standard of Russian Federation, 1994. See also " Using the GOST R 34.10-94, GOST R 34.10-2001 and GOST R 34.11-94 algorithms with the Internet X.509 Public Key Infrastructure Certificate and CRL Profile, Serguei Leontiev, 2005.02.08.
- [GBR06] D. L. Gazzoni Filho, P. S. L. M. Barreto, V. Rijmen, "The Maelstrom-0 Hash Function", VI Brazilian Symposium on Information and Computer Systems Security -- SBSeg'2006.
- [GMDV06] P. Gauravaram, W. Millan, E. Dawson, K. Viswanathan, "Constructing Secure Hash Functions by Enhancing Merkle-Damgård Construction", Cryptology ePrint Archive, Report 2006/061.
- [HPR04] P. Hawkes, M. Paddon, G. G. Rose, "On Corrective Patterns for the SHA-2 Family", Cryptology ePrint Archive, Report 2004/207.
- [HS06] J. J. Hoch, A. Shamir, "Breaking the ICE - Finding Multicollisions in Iterated Concatenated and Expanded (ICE) Hash Functions", Fast Software Encryption -- FSE'2006, LNCS 4047, Springer (2006), pp 179--194. Preliminary version.
- [ISO88] ISO Standard 8731-2, 1988. More information can be found here.
- [J04] A. Joux, "Multicollisions in Iterated Hash Functions. Applications to Cascaded Constructions", Advances in Cryptology - Crypto'2004, LNCS 3152, Springer (2004), pp. 306--316.
- [JP05] C. S. Jutla and A. C. Patthak, "A Simple and Provably Good code for SHA Message Expansion", First NIST Cryptographic Hash Workshop, Gaithersburg, USA, October 31 -- November 01, 2005. Full version: C. S. Jutla and A. C. Patthak, "Provably Good Codes for Hash Function Design", Selected Areas in Cryptography - SAC'2006, LNCS , Springer (2007), to appear.
- [K92] B. Kaliski, "The MD2 Message-Digest Algorithm", RFC 1319 (1992).
- [KS05] J. Kelsey, B. Schneier, " Second Preimages on n-Bit Hash Functions for Much Less than 2n Work," Advances in Cryptology - Eurocrypt'2005, LNCS 3494, Springer (2005), pp. 474--490.
- [K05a] V. Klima, "Finding MD5 Collisions -- a Toy For a Notebook", Cryptology ePrint Archive, Report 2005/075.
- [K05b] V. Klima, "Finding MD5 Collisions on a Notebook PC Using Multi-message Modifications", Cryptology ePrint Archive, Report 2005/102.
- [K06] V. Klima, "Tunnels in Hash Functions: MD5 Collisions Within a Minute", Cryptology ePrint Archive, Report 2006/105.
- [K05] L. R. Knudsen, "SMASH - A Cryptographic Hash Function", Fast Software Encryption - FSE'2005, LNCS 3557, Springer (2005), pp. 228--242.
- [KBPL05] J. Kim, A. Biryukov, B. Preneel, S. Lee, "On the Security of Encryption Modes of MD4, MD5 and HAVAL", Cryptology ePrint Archive, report 2005/327.
- [KK06] T. Kohno, J. Kelsey, " Herding Hash Functions and the Nostradamus Attack", First NIST Cryptographic Hash Workshop, Gaithersburg, USA, October 31 -- November 01, 2005. Full version: Advances in Cryptology -- Eurocrypt'2006, LNCS 4004, Springer (2006), pp. 183--200.
- [KL06] J. Kelsey, S. Lucks, " Collisions and Near-Collisions for Reduced-Round Tiger", Full version: Fast Software Encryption -- FSE'2006, LNCS 4047, Springer (2006), pp. 111--125.
- [KP00] P. Kasselman, W. Penzhorn, "Cryptanalysis of Reduced Version of HAVAL", Electronics letters, Vol. 36, No. 1, January 2000, pp. 30--31.
- [L04] S. Lucks, "Design Principles for Iterated Hash Functions", Cryptology ePrint Archive, report 2004/253.
- [M89] R. C. Merkle, "One Way Hash Functions and DES", Advances in Cryptology - Crypto'89, LNCS 435, Springer (1989), pp. 428--446.
- [M90] R. C. Merkle, "A Fast Software One-Way Hash Function", Journal of Cryptology3:1 (1990), pp 43--58.
- [M04] F. Muller, " The MD2 Hash Function Is Not One-Way," Advances in Cryptology - Asiacrypt'2004, LNCS 3329, Springer (2004), pp. 214--229.
- [MOI90] S. Miyaguchi, K. Ohta, and M. Iwata, "128-bit hash function (N-hash)", NTT Review, vol. 2 (no. 6), Nov. 1990, pp. 128--132.
- [MPRYW06] F. Mendel, B. Preneel, V. Rijmen, H. Yoshida, D. Watanabe, "Update on Tiger", Progress in Cryptology -- INDOCRYPT'2006, LNCS 4329, Springer (2006), pp. 63--79.
- [MZ06] I. Mironov, L. Zhang, "Applications of SAT Solvers to Cryptanalysis of Hash Functions", Theory and Applications of Satisfiability Testing -- SAT 2006, LNCS 4121, Springer (2006), pp. 102--115.
- [NN91] NIST/NSA, "FIPS 180" (superseded by FIPS 180-1 and FIPS 180-2). See also NIST's Secure Hashing site.
- [NN02] NIST/NSA, "FIPS 180-2: Secure Hash Standard (SHS)", August 2002 (change notice: February 2004). See also NIST's Secure Hashing site.
- [PGV93] B. Preneel, R. Govaerts, J. Vandewalle, "Hash Functions Based on Block Ciphers: A Synthetic Approach", Advances in Cryptology - Crypto'93, LNCS 773, Springer (1990), pp. 368--378.
- [PRO97] B. Preneel, V. Rijmen, and P. van Oorschot, "Security analysis of the Message Authenticator Algorithm (MAA)", European Transactions on Telecommunications, Vol. 8, No. 5 (Sept./Oct. 1997), pp. 455--470.
- [PRR05] N. Pramstaller, C. Rechberger, V. Rijmen, "Smashing SMASH", Cryptology ePrint Archive, report 2005/081.
- [R90] R. L. Rivest, "The MD4 Message Digest Algorithm", Advances in Cryptology - Crypto'90, LNCS 537, Springer (1990), pp. 303--311.
- [R92] R. L. Rivest, "The MD5 Message Digest Algorithm", RFC 1321 (1992).
- [R04] V. Rijmen, "Update on SHA-1", Topics in Cryptography -- CT-RSA'2005, LNCS 3376, Springer (2005), pp. 58--71.
- [RC95] N. Rogier, P. Chauvaud, "The compression function of MD2 is not collision free", Selected Areas in Cryptography -- SAC'95, Ottawa, Canada, May 18--19, 1995 (workshop record).
- [RIPE92] Research and Development in Advanced Communication Technologies in Europe, "RIPE Integrity Primitives: Final Report of RACE Integriy Primitives Evaluation (R1040)", RACE, June 1992.
- [RRPV01] V. Rijmen, B. Van Rompay, B. Preneel, J. Vandewalle, "Producing Collisions for PANAMA", Fast Software Encryption - FSE'2001, LNCS 2355, Springer (2002), pp. 37--51.
- [RBPV03] B. Van Rompay, A. Biryukov, B. Preneel, J. Vandewalle, " Cryptanalysis of 3-pass HAVAL", Advances in Cryptology - Asiacrypt'2003, LNCS 2894, Springer (2003), pp. 228--245.
- [S91] C. Schnorr, "FFT-Hash, An Efficient Cryptographic Hash Function", Crypto'91 rump session, unpublished manuscript, 1991.
- [S92] C. Schnorr, "FFT-Hash II, efficient cryptographic hashing", Advances in Cryptology - Eurocrypt'92, LNCS 658, Springer (1992), pp. 45--54.
- [S06] M. Stevens, "Fast Collision Attack on MD5", Cryptology ePrint Archive, report 2006/104.
- [SV93] C. Schnorr, S. Vaudenay, "Parallel FFT-Hashing", Fast Software Encryption - FSE'93, LNCS 809, Springer (1994), pp. 149--156.
- [TTA05] Telecommunications Technology Association, "TTAS.KO-12.0011/R2: Hash Function Standard - Part 2: Hash Function Algorithm Standard (HAS-160)", December 2005.
- [V92] S. Vaudenay, "FFT-Hash-II is not yet Collision-free", Advances in Cryptology - Crypto'92, LNCS 740, Springer (1993), pp. 587--593.
- [WFLY04] X. Wang, D. Feng, X. Lai, H. Yu, "Collisions for Hash Functions MD4, MD5, HAVAL-128 and RIPEMD", Cryptology ePrint Archive, Report 2004/199.
- [WLFCY05] X. Wang, X. Lai, D. Feng, H. Chen, X. Yu, " Cryptanalysis of the Hash Functions MD4 and RIPEMD", Advances in Cryptology -- Eurocrypt'2005, LNCS 3494, Springer (2005), pp. 1--18.
- [WY05] X. Wang, H. Yu, " How to Break MD5 and Other Hash Functions", Advances in Cryptology -- Eurocrypt'2005, LNCS 3494, Springer (2005), pp. 19--35.
- [WYY05] X. Wang, Y. L. Yin, H. Yu, "Collision Search Attacks on SHA1", research summary, 2005.
- [ZPS92] Y. Zheng, J. Pieprzyk, and J. Seberry, "HAVAL - a one-way hashing algorithm with variable length of output", Advances in Cryptology - Auscrypt'92, LNCS 718, Springer (1993), pp. 83--104.
MD5 - Algorithme de calcul d'un hashcode (condensat)
↑ [01] Ronald Linn Rivest Connu pour : algorithmes à clé secrète RSA, algorithmes de chiffrement par blocs, à clé de longueur variable : RC2, RC4, RC5, RC6, algorithmes de fonction de hachage cryptographique MD2, MD4, MD5, MD6 et le procédé cryptographique « signature de cercle » (« signature d'anneau », « Ring signature »). (Archive)