MD5 et SHA-1

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche

Portail > Algorithmes

MD5 et SHA-1 sont deux fonctions de hachage historiques, aujourd'hui cassées pour la résistance aux collisions. Cette page les regroupe car elles partagent le même statut : à proscrire de tout usage de sécurité, mais utiles à reconnaître dans le legacy.

MD5

  • Condensé de 128 bits, construction Merkle-Damgård.
  • Collisions triviales : on génère des collisions en quelques secondes, y compris à préfixe choisi.
  • Conséquences réelles : faux certificat d'autorité forgé par collision, et abus dans le malware Flame pour signer du code comme légitime.

SHA-1

  • Condensé de 160 bits, également Merkle-Damgård.
  • Collision pratique démontrée en 2017 (SHAttered, deux PDF de même empreinte), puis collisions à préfixe choisi (« SHA-1 is a Shambles »).
  • Retiré des certificats publics et des signatures depuis le milieu des années 2010.

Pourquoi ils sont cassés

Leur résistance aux collisions théorique (264 pour MD5, 280 pour SHA-1, par l'attaque des anniversaires) est déjà faible, et des attaques cryptanalytiques la réduisent encore drastiquement. La préimage reste plus coûteuse, mais cela ne suffit pas : la forge de documents repose sur les collisions.

Où on les rencontre encore

  • Sommes de contrôle non sécuritaires (vérifier un téléchargement contre une corruption accidentelle, pas contre un adversaire).
  • Identifiants internes hérités (ex. SHA-1 dans d'anciens systèmes de gestion de version, en cours de migration).

Dans ces cas, leur usage est tolérable uniquement s'il n'y a aucune hypothèse de sécurité. Dès qu'une garantie d'intégrité ou d'authenticité est en jeu, migrer.

Que faire

Algorithme Problème Remplacer par
MD5 Collisions triviales (préfixe choisi) SHA-256
SHA-1 Collisions pratiques (SHAttered) SHA-256 / SHA-3

Points clés à retenir

  • MD5 (128 bits) et SHA-1 (160 bits) sont cassés pour les collisions (préfixe choisi inclus).
  • Forge réelle de certificats/documents → aucun usage de sécurité.
  • Tolérables seulement comme sommes de contrôle non sécuritaires héritées.
  • Migrer vers SHA-256 (ou SHA-3).

Voir aussi

Fonctions de hachage — Portail
Fondamentaux Principe et propriétés · Constructions · Attaques génériques
Algorithmes MD5 et SHA-1 · SHA-2 · SHA-3 et SHAKE · RIPEMD-160 · Whirlpool · BLAKE2 et BLAKE3
Applications Usages · Hachage de mots de passe