Cyber Security Academy · Leçon

Hachage des mots de passe : bcrypt, Argon2, PBKDF2

Découvrez pourquoi le stockage en clair est dangereux et comment le hachage salé protège les mots de passe.

Leçon 2 sur 413 étapes

Hachage des mots de passe : bcrypt, Argon2, PBKDF2 est une leçon Cyber Security Academy gratuite sur CoddyKit. Ceci est la leçon 2 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 Cyber Security Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Cyber Security Academy comprend 4 leçons au total.

Pourquoi ne pas stocker les mots de passe en clair ?

Stocker les mots de passe en clair est catastrophique : une seule compromission de base de données expose tous les comptes. Les mots de passe doivent être traités par une fonction à sens unique avant leur stockage, afin que même l’accès à la base de données ne révèle pas le mot de passe d’origine.

Qu’est-ce que le hachage ?

Une fonction de hachage convertit une entrée de longueur quelconque en une sortie de longueur fixe. La même entrée produit toujours la même sortie, mais il est impossible de retrouver l’original à partir de l’empreinte. Exemples : SHA-256, bcrypt, Argon2.

Pourquoi ne pas utiliser SHA-256 pour les mots de passe ?

Les fonctions de hachage à usage général comme SHA-256 sont conçues pour être rapides. Un attaquant peut calculer des milliards d’empreintes SHA-256 par seconde sur un GPU, ce qui rend le cassage par force brute réalisable.

Le hachage des mots de passe nécessite des fonctions lentes et coûteuses.

Salage

Un sel est une valeur aléatoire ajoutée à chaque mot de passe avant le hachage. Il garantit que deux utilisateurs ayant le même mot de passe obtiennent des empreintes différentes, ce qui empêche les attaques par tables arc-en-ciel et le cassage par lots. Le sel est stocké avec l’empreinte (il n’est pas secret).

# Conceptual salt example
hash = bcrypt("password" + random_salt)

bcrypt

bcrypt a été conçu en 1999 spécifiquement pour le hachage des mots de passe. Il possède un facteur de coût configurable qui contrôle la lenteur du hachage. À mesure que le matériel s’améliore, augmentez le facteur de coût pour maintenir la sécurité.

Un facteur de coût de 12 est courant aujourd’hui : le hachage prend environ 250 ms sur un CPU moderne.

PBKDF2

PBKDF2 (fonction de dérivation de clé basée sur un mot de passe 2) applique une fonction de hachage (par exemple HMAC-SHA256) de nombreuses fois (itérations). Davantage d’itérations signifie un traitement plus lent et une meilleure sécurité. Cette méthode est recommandée par NIST et utilisée par WPA2 pour les mots de passe Wi-Fi.

Argon2

Argon2 a remporté la compétition de hachage des mots de passe en 2015. Il s’agit de la norme moderne. Ses paramètres sont configurables :

  • Coût en temps — nombre d’itérations
  • Coût en mémoire — RAM nécessaire (limite l’accélération par GPU)
  • Parallélisme — nombre de fils d’exécution

Utilisez Argon2id pour la plupart des applications.

Tables arc-en-ciel

Une table arc-en-ciel est une table de recherche précalculée associant une empreinte à du texte en clair. Sans salage, un attaquant qui possède l’empreinte peut la retrouver instantanément dans la table. Le salage rend les tables arc-en-ciel inutiles, car chaque empreinte est unique.

Techniques de cassage des mots de passe

Méthodes courantes de cassage hors ligne :

  • Attaque par dictionnaire — essayer les mots de passe courants et leurs variantes
  • Force brute — essayer toutes les combinaisons de caractères
  • Fondée sur des règles — appliquer des règles de modification au dictionnaire (ajouter une année, mettre une majuscule, utiliser des caractères leet)
  • Outils : Hashcat, John the Ripper

Choisir le bon algorithme

Ordre de préférence pour les nouvelles applications :

  1. Argon2id — meilleure résistance au cassage par GPU/ASIC
  2. bcrypt — largement pris en charge et éprouvé
  3. PBKDF2 — approuvé par NIST et requis dans certains contextes de conformité

N’utilisez jamais MD5, SHA-1 ou SHA-256 sans salage pour les mots de passe.

Processus de vérification

Lorsqu’un utilisateur se connecte :

  1. Récupérer le hachage et le sel stockés pour l’utilisateur
  2. Hacher le mot de passe soumis avec le même sel et le même algorithme
  3. Comparer le hachage obtenu au hachage stocké (comparaison à temps constant)
  4. Ne jamais déchiffrer — effectuer uniquement une comparaison

Vérification rapide : hachage des mots de passe

Quel algorithme de hachage des mots de passe est considéré comme la meilleure pratique actuelle et a remporté le concours Password Hashing Competition ?

Récapitulatif de la leçon

Les mots de passe doivent être stockés sous forme de hachages, et non en texte clair. Les algorithmes rapides comme SHA-256 ne conviennent pas — utilisez des fonctions de hachage lentes pour les mots de passe : Argon2id (à privilégier), bcrypt ou PBKDF2. Utilisez toujours un sel aléatoire pour chaque mot de passe afin d’empêcher les attaques par tables arc-en-ciel. Ne créez jamais votre propre cryptographie — utilisez des bibliothèques éprouvées.

Gratuit pour commencer

Apprends Cyber Security 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
76
Leçons
303

Questions Fréquemment Posées

La leçon « Hachage des mots de passe : bcrypt, Argon2, PBKDF2 » est-elle gratuite ?

Oui — le texte complet de « Hachage des mots de passe : bcrypt, Argon2, PBKDF2 » 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 Cyber Security Academy, passe à CoddyKit PRO. Le cours Cyber Security Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Hachage des mots de passe : bcrypt, Argon2, PBKDF2 » ?

Découvrez pourquoi le stockage en clair est dangereux et comment le hachage salé protège les mots de passe. Tu pratiques Cyber Security 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 Cyber Security Academy ?

Aucune expérience préalable n'est requise. Cyber Security 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 2 sur 4.

Combien de temps prend la leçon « Hachage des mots de passe : bcrypt, Argon2, PBKDF2 » ?

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 Cyber Security Academy ?

Oui. Chaque leçon Cyber Security 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. Robustesse et règles des mots de passe
  2. Hachage des mots de passe : bcrypt, Argon2, PBKDF2
  3. Authentification multifacteur
  4. Bourrage d’identifiants et pulvérisation de mots de passe
← Retour à Cyber Security Academy