MD5 (techniquement appelé MD5 Message-Digest Algorithm) est une fonction de hachage cryptographique dont le but principal est de vérifier qu'un fichier n'a pas été modifié.
Au lieu de confirmer que deux ensembles de données sont identiques en comparant les données brutes, MD5 le fait en produisant une somme de contrôle sur les deux ensembles, puis en comparant les sommes de contrôle pour vérifier qu'elles sont identiques.
MD5 a certains défauts, il n'est donc pas utile pour les applications de chiffrement avancées, mais il est parfaitement acceptable de l'utiliser pour les vérifications de fichiers standard.
Utilisation d'un vérificateur MD5 ou d'un générateur MD5
Microsoft File Checksum Integrity Verifier (FCIV) est une calculatrice gratuite qui peut générer la somme de contrôle MD5 à partir de fichiers réels et pas seulement de texte. Consultez notre article sur la façon de vérifier l'intégrité des fichiers dans Windows avec FCIV pour savoir comment utiliser ce programme en ligne de commande.
Un moyen simple d'obtenir le hachage MD5 d'une chaîne de lettres, de chiffres et de symboles consiste à utiliser l'outil Miracle Salad MD5 Hash Generator. De nombreux autres existent également, comme MD5 Hash Generator, PasswordsGenerator et OnlineMD5.
Lorsque le même algorithme de hachage est utilisé, les mêmes résultats sont produits. Cela signifie que vous pouvez utiliser une calculatrice MD5 pour obtenir la somme de contrôle MD5 d'un texte particulier, puis utiliser une calculatrice MD5 totalement différente pour obtenir exactement les mêmes résultats. Cela peut être répété avec chaque outil qui génère une somme de contrôle basée sur cette fonction de hachage.
Histoire et vulnérabilités de MD5
MD5 a été inventé par Ronald Rivest, mais ce n'est qu'un de ses trois algorithmes.
La première fonction de hachage qu'il a développée était MD2 en 1989, qui a été conçue pour les ordinateurs 8 bits. Bien qu'il soit toujours utilisé, MD2 n'est pas destiné aux applications nécessitant un haut niveau de sécurité, car il s'est avéré vulnérable à diverses attaques.
MD2 a ensuite été remplacé par MD4 en 1990. MD4 a été conçu pour les machines 32 bits et était beaucoup plus rapide que MD2, mais il a également été démontré qu'il présentait des faiblesses et est maintenant considéré comme obsolète par l'Internet Engineering Task Force.
MD5 est sorti en 1992 et a également été conçu pour les machines 32 bits. Il n'est pas aussi rapide que MD4 mais il est considéré comme plus sûr que les implémentations précédentes de MDx.
Bien que MD5 soit plus sûr que MD2 et MD4, d'autres fonctions de hachage cryptographique, comme SHA-1, ont été suggérées comme alternative, car il a également été démontré que MD5 présente des failles de sécurité.
Carnegie Mellon University Software Engineering Institute a ceci à dire à propos de MD5:
Les développeurs de logiciels, les autorités de certification, les propriétaires de sites Web et les utilisateurs doivent éviter d'utiliser l'algorithme MD5 à quelque titre que ce soit. Comme des recherches antérieures l'ont démontré, il doit être considéré comme cryptographiquement cassé et inadapté à une utilisation ultérieure.
MD6 a été proposé au National Institute of Standards and Technology comme alternative à SHA-3. Vous pouvez en savoir plus sur cette proposition ici.
Plus d'informations sur le hachage MD5
Les hachages MD5 ont une longueur de 128 bits et sont normalement affichés dans leur équivalent en valeur hexadécimale à 32 chiffres. Cela est vrai quelle que soit la taille du fichier ou du texte.
Voici un exemple:
- Texte brut: Ceci est un test.
- Valeur hexadécimale: 120EA8A25E5D487BF68B5F7096440019
Lorsque plus de texte est ajouté, le hachage se traduit par une valeur totalement différente mais avec le même nombre de caractères:
- Texte brut: Ceci est un test pour montrer que la longueur du texte n'a pas d'importance.
- Valeur hexadécimale: 6c16fcac44da359e1c3d81f19181735b
En fait, même une chaîne avec zéro caractère a une valeur hexadécimale de d41d8cd98f00b204e9800998ecf8427e, et l'utilisation même d'un seul point donne cette valeur: 5058f1af8388633f609cadb75a75dc9d.
Voici quelques exemples:
Checksum | Texte brut |
bb692e73803524a80da783c63c966d3c | Lifewire est un site Web technologique. |
64adbfc806c120ecf260f4b90378776a | …!… |
577894a14badf569482346d3eb5d1fbc | Le Bangladesh est un pays d'Asie du Sud. |
42b293af7e0203db5f85b2a94326aa56 | 100+2=102 |
08206e04e240edb96b7b6066ee1087af | supercalifragilisticexpialidocious |
Les sommes de contrôle MD5 sont conçues pour être irréversibles, ce qui signifie que vous ne pouvez pas regarder la somme de contrôle et identifier les données entrées d'origine.
Par exemple, même si a= 0cc175b9c0f1b6a831c399e269772661 et p= 83878c91171338902e0fe0fb97a8c47a, combinant les deux pour faire ap produit une somme de contrôle totalement différente et sans rapport: 62c428533830d84fd8bc77bf402512fc, qui ne peut pas être séparé pour révéler l'une ou l'autre des lettres.
Cela étant dit, de nombreux "décrypteurs" MD5 sont annoncés comme étant capables de décrypter une valeur MD5.
Cependant, ce qui se passe réellement avec un décrypteur, ou "convertisseur inversé MD5", c'est qu'ils créent la somme de contrôle pour de nombreuses valeurs, puis vous permettent de rechercher votre somme de contrôle dans leur base de données pour voir s'ils ont une correspondance qui peut vous montrer les données d'origine.
MD5Decrypt est un outil en ligne gratuit qui sert de recherche inversée MD5, mais il ne fonctionne que pour les mots et expressions courants.
Voir Qu'est-ce qu'une somme de contrôle ? pour plus d'exemples et quelques façons gratuites de générer une valeur de hachage MD5 à partir de fichiers.