Cryptology Academy · Leçon

Pourquoi SHA-256 seul échoue pour les mots de passe

Comprenez les tables arc-en-ciel, la vitesse de la force brute et le salage.

Leçon 1 sur 413 étapes

Pourquoi SHA-256 seul échoue pour les mots de passe est une leçon Cryptology Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Cryptology Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Cryptology Academy comprend 4 leçons au total.

Bienvenue

Stocker les mots de passe de manière sécurisée est l’un des sujets les plus mal compris de la sécurité. Dans cette leçon, nous comprenons pourquoi les hachages rapides comme SHA-256 sont totalement inadaptés aux mots de passe.

Ce qui se passe lorsque les bases de données fuient

Les fuites de bases de données se produisent constamment. En 2024, RockYou2024 a divulgué 10 milliards de mots de passe. Si les mots de passe de vos utilisateurs sont stockés de manière récupérable, les attaquants les retrouveront.

Stockage naïf avec SHA-256

Mauvaise pratique : hashed = sha256(password) store(username, hashed) Problèmes : (1) sha256 est extrêmement rapide, (2) le même mot de passe produit toujours le même hachage (absence de sel), (3) des tables arc-en-ciel existent pour les mots de passe courants.

Attaque par table arc-en-ciel

Une table arc-en-ciel est une correspondance précalculée entre des hachages et des mots de passe pour des millions de mots de passe courants. SHA-256('password') produit toujours le même hachage. Recherche dans la table : déchiffrement instantané de la plupart des mots de passe.

Rôle du sel

Sel = octets aléatoires ajoutés au début du mot de passe avant le hachage. hash = sha256(salt + password) Chaque utilisateur reçoit un sel unique. Les tables arc-en-ciel deviennent inutiles : l’attaquant doit effectuer une recherche exhaustive pour chaque utilisateur séparément.

Mais le sel seul ne suffit pas

Un GPU moderne calcule 10 milliards de hachages SHA-256 par seconde. Même avec des sels uniques, un attaquant disposant de hachages divulgués peut trouver par force brute des mots de passe de 8 caractères en quelques minutes.

Le problème de la vitesse

SHA-256 a été conçu pour être rapide, notamment pour l’intégrité des fichiers, TLS, etc. La vitesse est un ennemi lorsqu’il s’agit de hacher des mots de passe. Nous avons besoin d’algorithmes volontairement lents et résistants à la force brute.

Étirement de clé

L’étirement de clé applique la fonction de hachage des milliers de fois : for i in range(100000): h = sha256(h). Cela ralentit à la fois l’attaquant et le défenseur, mais l’avantage matériel reste du côté de l’attaquant.

Fonctions à forte consommation mémoire

Les hacheurs de mots de passe modernes exigent de grandes quantités de RAM, et pas seulement des cycles de CPU. Les GPU disposent de moins de RAM par cœur que les CPU. La forte consommation mémoire d’Argon2 neutralise les avantages des GPU et des ASIC.

Erreurs courantes

À ne pas faire : - sha256(password) - sha256(salt + password) sans itérations - md5(password) (ou tout autre MD5) - Chiffrer les mots de passe (ils peuvent être déchiffrés) - sha256(sha256(password)) (toujours rapide)

Que faut-il utiliser à la place

Utilisez : bcrypt (le plus largement déployé), Argon2id (recommandé par OWASP, à forte consommation mémoire), PBKDF2-SHA256 (conforme à FIPS, acceptable). Tous trois sont volontairement lents et intègrent un sel par conception.

Vérification rapide

Pourquoi SHA-256 ne convient-il pas au hachage des mots de passe, même lorsqu’un sel est utilisé ?

Récapitulatif

SHA-256 ne convient pas aux mots de passe. Nous allons ensuite étudier bcrypt, l’algorithme qui rend volontairement le hachage lent et résistant au matériel.
Gratuit pour commencer

Apprends Cryptology Academy avec un tuteur IA — gratuit

Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.

Cours
67
Leçons
261

Questions Fréquemment Posées

La leçon « Pourquoi SHA-256 seul échoue pour les mots de passe » est-elle gratuite ?

Oui — le texte complet de « Pourquoi SHA-256 seul échoue pour les mots de passe » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Cryptology Academy, passe à CoddyKit PRO. Le cours Cryptology Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Pourquoi SHA-256 seul échoue pour les mots de passe » ?

Comprenez les tables arc-en-ciel, la vitesse de la force brute et le salage. Tu pratiques Cryptology Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Cryptology Academy ?

Aucune expérience préalable n'est requise. Cryptology Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.

Combien de temps prend la leçon « Pourquoi SHA-256 seul échoue pour les mots de passe » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Cryptology Academy ?

Oui. Chaque leçon Cryptology Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Pourquoi SHA-256 seul échoue pour les mots de passe
  2. bcrypt : algorithme et facteur de coût
  3. Argon2 : hachage de mots de passe exigeant en mémoire
  4. PBKDF2 et choix du bon algorithme
← Retour à Cryptology Academy