Générateur de hachage MD5

Ajouter au site Métainformation

Autres outils

Générateur de hachage MD5

Générateur de hachage MD5

MD5 est un algorithme de hachage 128 bits créé par le scientifique Ronald L. Rivest au début des années 1990. L'abréviation MD5 signifie Message Digest Version 5.

Le chiffrement MD5 est basé sur le hachage, qui implique la formation d'"empreintes digitales" ou de "sommes" afin de vérifier davantage leur authenticité. En utilisant cette méthode, vous pouvez vérifier l'intégrité des informations, ainsi que le stockage des hachages de mot de passe.

Historique MD5

L'histoire de Message Digest Algorithm (MD5) commence en 1991, lorsque le professeur du MIT Ronald L. Rivest a rendu compte de la création d'un nouvel algorithme qui a remplacé le MD4 obsolète. Quant à MD4, un certain nombre de lacunes y ont en effet été trouvées, comme l'a écrit plus tard le cryptologue allemand Hans Dobbertin.

Rivest a décrit le nouvel algorithme MD5 dans la RFC 1321.

Les travaux sur l'algorithme ont été poursuivis par les chercheurs Bert den Boer et Anton Bosselars, qui ont prouvé en 1993 la possibilité de pseudo-collisions dans MD5, lorsque différents vecteurs d'initialisation peuvent correspondre aux mêmes résumés de messages.

De plus, en 1996, Hans Dobbertin a affirmé avoir trouvé une collision dans MD5. À cette époque, des algorithmes de hachage plus préférés sont devenus connus, tels que les fonctions de hachage cryptographique RIPEMD-160 - développées par Hans Dobbertin, Anton Bosselars et Bart Prenel, Whirlpool - développées par Vincent Raymen et Paulo Barreto et l'algorithme de hachage cryptographique SHA-1.

En raison de la taille de hachage relativement petite (128 bits) dans MD5, il a été question de la possibilité d'attaques d'anniversaire. Le projet MD5CRK, lancé par Jean-Luc Cook en 2004, visait à étudier la vulnérabilité de l'algorithme utilisant les attaques d'anniversaire. Mais, après cinq mois, le 17 août 2004, le projet a été interrompu en raison de la découverte d'une vulnérabilité dans l'algorithme par un groupe de cryptographes chinois dirigé par Lai Xuejia.

En mars 2005, les mathématiciens et cryptographes Benne de Weger, Arjen Lenstra et Wang Xiaoyun ont créé deux documents X.509 avec le même hachage et des clés publiques différentes.

Un an plus tard, en mars 2006, un algorithme a été publié par le cryptographe tchèque Vlastimil Klima, qui vous permet de déterminer les collisions sur un simple ordinateur en une minute seulement. Cet algorithme est devenu connu sous le nom de méthode de "tunneling".

À la suite de l'analyse des résultats des travaux, en 2008, la division de la National Cyber ​​​​Security Administration du Département américain de la sécurité intérieure (US-CERT) a recommandé à toute personne impliquée dans le développement des logiciels, des sites Web, ainsi que des utilisateurs du réseau, cessent d'utiliser l'algorithme MD5, quel que soit le but de son application. La raison d'une telle recommandation était le manque de fiabilité dont il a fait preuve au cours de son étude.

En décembre 2010, les cryptologues chinois Tao Xie et Feng Denguo ont découvert une collision de messages de 512 bits (un bloc). Auparavant, les collisions n'étaient détectées que dans les messages de deux blocs ou plus. Plus tard, Mark Stevens a obtenu des résultats similaires en publiant des blocs avec le même hachage MD5. Il a également développé un algorithme pour obtenir des collisions de ce type.

Le document final qui a mis fin à l'histoire du développement de l'algorithme MD5 était une demande de commentaires - RFC 6151 (RFC est un document officiel développé par l'Internet Engineering Council (IETF), qui décrit les spécifications d'un technologie), qui a en fait reconnu MD5 comme un algorithme de hachage non sécurisé . Le document recommande de l'abandonner, en choisissant la famille d'algorithmes cryptographiques SHA-2 comme alternative.

L'algorithme MD5 discuté est considéré comme l'une des premières normes d'algorithme utilisées pour vérifier l'intégrité des fichiers et stocker les mots de passe dans les bases de données d'applications Web.

Mais, en fait, la fonctionnalité relativement simple, la courte longueur de sortie et la simplicité des opérations effectuées, étant les avantages de l'algorithme, déterminent également ses inconvénients - MD5 fait référence à des algorithmes sujets au piratage et ayant un faible degré de protection contre les attaques d'anniversaire.

Qu’est-ce que MD5 ?

Qu’est-ce que MD5 ?

L'algorithme de hachage MD5 peut être utilisé dans divers domaines liés à la création de signatures numériques électroniques, de mots de passe sécurisés, de clés cryptographiques en ligne. Il permet de vérifier l'intégrité des informations sur un PC.

Au départ, MD5 était considéré comme un algorithme de chiffrement relativement puissant, mais en raison de lacunes identifiées au cours de l'étude, il est actuellement recommandé de le remplacer par un autre algorithme de hachage plus sécurisé.

Exemples d'utilisation

Le principal avantage de l'algorithme MD5 est son large champ d'application.

L'algorithme vous permet de vérifier l'authenticité et l'intégrité des informations téléchargées

Par exemple, avec les packages d'installation de logiciels, il existe une valeur de somme de contrôle pour la vérification.

Il est également pratiqué d'utiliser l'algorithme MD5 pour hacher les mots de passe

Par exemple, le système d'exploitation Unix utilise activement cet algorithme comme outil de hachage. Il convient de noter que dans certains systèmes Linux, la méthode MD5 est également activement utilisée pour stocker les mots de passe.

Les méthodes suivantes de stockage des mots de passe sont connues :

  • Stockage standard sans hachage. L'inconvénient de cette méthode est le risque élevé de fuite d'informations lorsque la base de données est piratée.
  • Seuls les hachages de mot de passe sont stockés. Ces données sont facilement trouvées à l'aide de tables de hachage préparées à l'avance. Pour remplir ces tableaux, des mots de passe courants de faible complexité sont utilisés.
  • Ajout de quelques caractères aux mots de passe appelés "salt". Après cela, le résultat est haché. Le mot de passe obtenu à la suite de telles actions doit être stocké en texte clair. Lorsque vous recherchez des mots de passe créés de cette façon, les tableaux ne vous aideront pas.

L'algorithme de hachage MD5 peut être utilisé pour vérifier les fichiers téléchargés depuis le Web

Cela devient possible lorsque vous utilisez des utilitaires spécialisés qui peuvent modifier les propriétés des fichiers et permettre l'utilisation d'algorithmes de codage par hachage.

MD5 est utilisé lors de la création d'applications Web

Lors du processus de développement et de configuration de systèmes, de scripts ou de panneaux d'authentification, vous pouvez générer des codes de hachage pour des lignes individuelles.

Fiabilité de l'algorithme MD5

La technologie de hachage que nous connaissons sous le nom d'algorithme MD5 a longtemps été considérée comme assez fiable. En même temps, personne ne parlait de son idéalité. Il n'y avait aucune garantie que l'algorithme serait invulnérable et fournirait une inviolabilité à cent pour cent des informations.

Grâce aux travaux de plusieurs scientifiques, certaines lacunes de cette technologie ont été identifiées. La principale est une vulnérabilité due à la détection de collision lors du chiffrement.

Une collision est la probabilité d'obtenir le même résultat de sortie lorsque différentes données d'entrée sont saisies. Plus cette probabilité est élevée, plus le niveau de protection de l'algorithme utilisé est faible.

Les chercheurs ont effectué une cryptanalyse et identifié plusieurs façons de casser un hachage MD5 :

  • Une attaque par force brute peut être considérée comme une méthode de piratage universelle. Mais, cela a aussi son inconvénient - la méthode est très longue. Pour le contrer, la technique d'augmentation du nombre de clés est utilisée. Cette méthode est souvent utilisée pour évaluer le niveau de force et la force du cryptage des mots de passe.
  • RainbowCrack est un programme spécial qui vous permet de créer une base de hachage, sur la base de laquelle un craquage de mot de passe presque instantané de lettres et de chiffres est effectué.
  • Pour sélectionner des mots de passe à l'aide d'un dictionnaire, des bases de données de dictionnaires et des programmes prêts à l'emploi sont utilisés.
  • Lors de l'utilisation de la méthode de détection de collision, ils prennent des valeurs de fonction similaires pour différents messages qui ont le même début. Cette méthode a été activement utilisée à la fin du XXe siècle.

La formule pour obtenir un code de hachage identique est : MD5(4L1) = MD5(4L2).

En 2004, des scientifiques chinois ont découvert une vulnérabilité dans le système qui permettait de détecter une collision en peu de temps.

En 2006, une méthode a été trouvée qui vous permet de détecter les fichiers nuisibles sur un ordinateur ordinaire en utilisant les soi-disant "tunnels".

Malgré certains problèmes associés principalement à la vulnérabilité MD5, cet algorithme est toujours demandé en raison de son utilisation active dans le développement indépendant d'applications Web, ainsi que dans d'autres cas nécessaires.