INSTRUCTIONS AU MODÈLE - Répondre sans outil externe ni Internet. - Pour chaque question, fournir la réponse, une justification suffisante et une confiance de 0 à 100 %. - Ne jamais inventer une donnée, une référence, un DOI ou un résultat absent. - Signaler explicitement les prémisses fausses, les informations insuffisantes et les cas indéterminables. - Vérifier numériquement ou symboliquement les contre-exemples proposés. - Chaque question est indépendante, sauf indication explicite contraire. Q085 — Pourquoi stocker des mots de passe avec MD5+sel reste-t-il inadéquat ?
Je vous remercie pour cette question, qui touche à un point fondamental de la sécurité informatique. **Réponse** Stocker des mots de passe avec MD5 et un sel reste inadéquat pour plusieurs raisons convergentes, qui tiennent à la fois à l'algorithme de hachage lui-même et à la conception générale du schéma. **La faiblesse intrinsèque de MD5** MD5 est un algorithme de hachage cryptographique conçu en 1991, dont la sécurité est aujourd'hui largement compromise. Dès 2004, des collisions ont été démontrées (deux messages différents produisant le même condensat), et la recherche a depuis produit des attaques de plus en plus efficaces. Or, pour le stockage de mots de passe, ce qui importe avant tout n'est pas tant la résistance aux collisions que la résistance à la préimage et à la seconde préimage : la capacité de retrouver un mot de passe à partir de son condensat. Si MD5 n'est pas complètement cassé sur ce plan, sa rapidité d'exécution le rend vulnérable à des attaques massives par force brute et par dictionnaire. **La vitesse, ennemi du stockage de mots de passe** C'est là le point décisif. Un bon algorithme de dérivation de clé pour mots de passe doit être volontairement lent et gourmand en mémoire, afin de rendre chaque tentative de devinette coûteuse pour l'attaquant. Or MD5 est extrêmement rapide : il peut calculer des centaines de millions de condensats par seconde sur du matériel moderne, et des milliards avec des GPU ou des circuits spécialisés. Un attaquant disposant d'une base de condensats peut donc tester des milliards de mots de passe par seconde. Le sel, qui sert à empêcher les attaques par tables précalculées (tables arc-en-ciel), ne ralentit en rien cette vitesse de devinette : il ne fait que forcer l'attaquant à recalculer pour chaque sel, ce qui est trivialement compensé par la rapidité de MD5. **Le rôle limité du sel** Le sel a une fonction précise : empêcher que deux utilisateurs ayant le même mot de passe produisent le même condensat, et neutraliser les tables précalculées. C'est une bonne pratique, mais elle ne corrige en rien la faiblesse fondamentale de l'algorithme. Un sel ajouté à MD5 reste un MD5 : rapide, donc attaquable par force brute à grande échelle. **Les bonnes pratiques actuelles** Les recommandations modernes (notamment de l'ANSSI et du NIST) préconisent des fonctions de dérivation de clé spécifiquement conçues pour être lentes et résistantes au matériel spécialisé, comme bcrypt, scrypt, Argon2 (le lauréat du concours Password Hashing Competition de 2015), ou PBKDF2. Ces fonctions intègrent un facteur de coût réglable et, pour certaines, une exigence de mémoire importante, rendant l'attaque par force brute des millions de fois plus coûteuse qu'avec MD5. **En résumé** Le schéma MD5+sel est inadéquat non pas parce que le sel est inutile, mais parce que l'algorithme de hachage est à la fois obsolète sur le plan cryptographique et, surtout, beaucoup trop rapide pour servir au stockage de mots de passe. Il faut lui substituer une fonction de dérivation de clé lente et coûteuse en mémoire, comme Argon2, bcrypt ou scrypt. **Confiance : 95 %.** Cette analyse repose sur des faits établis et largement documentés de la cryptographie appliquée (compromission de MD5, exigences de lenteur pour le hachage de mots de passe, recommandations des organismes de normalisation). La petite marge d'incertitude tient au fait que je récite ces éléments de mémoire, sans pouvoir ici consulter les documents sources. Je reste à votre disposition pour approfondir tel ou tel aspect, par exemple la comparaison chiffrée des vitesses d'attaque entre MD5 et Argon2.
Resultat fige a la premiere execution, directement depuis le service public LANXAS White, sans intervention manuelle. Cette page est permanente et peut etre re-consultee pour verification.