SHA-0
SHA-0 (ou SHA comme elle était nommée à l'origine), est une fonction de hachage cryptographique, conçue par la NSA sur le modèle de la fonction MD4 de Ron Rivest et publiée en 1993 par le NIST (standard FIPS-180). Elle fournit une empreinte de 160 bits. Elle a été rapidement mise de côté pour des raisons de sécurité insuffisante (non explicitées à l'époque), et modifiée pour donner la fonction SHA-1, publiée par le NIST en 1995 (standard FIPS-180-1).
Le constat de faiblesses dans la conception de SHA-0 a été attribué à la NSA. Il a été confirmé en 1998 par la découverte par Antoine Joux et Florent Chabaud d'une attaque théorique qui permet d'obtenir une collision (deux données ayant la même empreinte) en complexité moindre que l'attaque des anniversaires (261 contre 280 opérations).
Une collision complète sur SHA-0 a été découverte par Antoine Joux et al. le . Elle utilise une amélioration de la méthode de Joux et Chabaud, et tire bénéfice également d'une autre attaque proposée la même année par Eli Biham et Rafi Chen, qui permettait d'obtenir des pseudo-collisions sur la quasi-totalité des bits.
En 2006 a été publiée une méthode permettant de trouver une collision en 240 opérations[1].
Il n'existe par contre pas d'attaque connue pour la recherche de pré-image (trouver un message ayant une empreinte donnée) ou de seconde pré-image (étant donnés un message et son empreinte, trouver un autre message ayant même empreinte), mais l'usage de SHA-0 est de toute façon tout à fait déconseillé[1].
Bibliographie
- F. Chabaud et A. Joux, Differential collisions in SHA-0, extended abstract published in CRYPTO'98, H. Krawczyk ed., LNCS 1462, pp 56–71, 1998 lire en ligne
- FIPS PUB 180-1, Federal Information Processing Standards Publication 180-1 Announcing the Standard for Secure Hash Standard, (L'introduction annonce une « modification technique » de SHA pour obtenir SHA-1), lire en ligne
- RFC 6194, Security Considerations for the SHA-0 and SHA-1 Message-Digest Algorithms, IETF 2011.