Sécurité des mots de passe : Comment générer, stocker et auditer des mots de passe forts
Réponse rapide
Générez des mots de passe aléatoires de plus de 16 caractères avec notre générateur de mots de passe, ne les réutilisez jamais et stockez-les dans un gestionnaire de mots de passe. Sur le serveur, hachez avec bcrypt (facteur de travail 12+), scrypt ou Argon2id – jamais MD5 ou SHA-256. Violations d'audit via le k-anonymat de Have I Been Pwned API. Ne transmettez ni n’enregistrez jamais de mots de passe en clair.
Introduction
Les mots de passe faibles, réutilisés et mal stockés sont à l’origine de la majorité des piratages de comptes. Ce guide résout quatre problèmes concrets : (1) générer des mots de passe avec suffisamment d'entropie pour résister à la force brute, (2) hacher les mots de passe avec un KDF lent au lieu d'un hachage rapide, (3) éviter la réutilisation entre les services et (4) auditer les informations d'identification divulguées. Chaque solution est exploitable et soutenue par des outils.
Pas à pas
-
Générer un mot de passe à haute entropie
Utilisez le générateur de mot de passe pour créer un mot de passe de plus de 16 caractères mélangeant des caractères supérieurs, inférieurs, des chiffres et des symboles. Entropie = log2(charsetSize^length); un alphabet de 16 caractères de 94 symboles donne environ 105 bits, ce qui est impossible en force brute même à 10 ^ 12 suppositions/seconde.
-
Ne réutilisez jamais les mots de passe entre les services
La réutilisation d’un mot de passe signifie qu’une seule violation compromet tous les comptes qui le partagent. Générez un mot de passe unique par service et stockez-le dans un gestionnaire de mots de passe (Bitwarden, 1Password, KeePassXC). Le mot de passe principal est le seul dont vous devez vous souvenir : faites-en une longue phrase secrète.
-
Hachez les mots de passe avec un KDF lent sur le serveur
Ne stockez jamais de mots de passe avec MD5, SHA-1 ou SHA-256 brut : ils sont trop rapides et les GPU peuvent essayer des milliards par seconde. Utilisez bcrypt avec un facteur de travail 12+, scrypt avec N=2^17 ou Argon2id avec 64 Mo de mémoire. Ces KDF sont délibérément lents et nécessitent peu de mémoire pour vaincre les attaques GPU/ASIC.
-
Utilisez un sel pour vaincre les tables arc-en-ciel
Un sel est une valeur aléatoire unique par mot de passe, ajoutée ou combinée avant le hachage. Il garantit que des mots de passe identiques produisent des hachages différents, ce qui rend les tables arc-en-ciel précalculées inutiles. bcrypt et Argon2 génèrent et intègrent le sel automatiquement – ne lancez pas le vôtre.
-
Audit des mots de passe violés
Avant d'accepter un mot de passe, vérifiez-le par rapport au Have I Been Pwned API en utilisant le protocole k-anonymity : envoyez uniquement les 5 premiers caractères du hachage SHA-1, recevez la liste des suffixes correspondants et comparez localement. Cela ne révèle jamais le mot de passe complet du API.
Exemples
Mot de passe généré fort (16 caractères, entropie ~ 105 bits)
Saisir: Longueur 16, toutes les classes de personnages
Sortir: K9$mP2#vL7@nQ4!x (aléatoire, unique, jamais réutilisé)
Phrase secrète pour un mot de passe principal (mémorisable + fort)
Saisir: 4 mots communs aléatoires
Sortir: correct-horse-battery-staple (~44 bits but easy to remember; use 5-6 words for ~60+ bits)
hachage bcrypt d'un mot de passe (facteur de travail 12)
Saisir: mot de passe123 avec bcrypt coût 12
Sortir: $2b$12$N9qo8uLOickgx2ZMRZoMy.MrqKQp7vqB4V1e5sTq7vqB4V1e5sTq (sel + coût + hachage intégré)
Problèmes courants
- Utilisation de MD5 ou SHA-256 pour le hachage de mot de passe : les deux sont des hachages rapides. Un GPU moderne calcule environ 10 milliards de SHA-256/s, déchiffrant un mot de passe de 8 caractères en quelques minutes. Utilisez toujours bcrypt, scrypt ou Argon2id.
- Réutilisation d'un mot de passe sur plusieurs sites : une violation sur le site le plus faible entraîne la fuite du mot de passe de chaque site. Générez des mots de passe uniques et stockez-les dans un gestionnaire.
- Stockage des mots de passe en clair ou cryptage réversible : en cas de fuite de la base de données, chaque compte est instantanément compromis. Le hachage est unidirectionnel et irréversible : même le serveur ne peut pas récupérer l'original.
- Faible facteur de travail dans bcrypt : le coût 4 était correct en 2002 ; en 2026, l'utilisation coûte 12+ (environ 4096 itérations). Re-hachez lors de la connexion pour mettre à niveau les anciens hachages sans forcer la réinitialisation du mot de passe.
Conseils
- Visez au moins 100 bits d'entropie pour les comptes de grande valeur, soit 16 caractères aléatoires d'un alphabet de 94 symboles ou 6 mots de dés aléatoires.
- Activez l'authentification à deux facteurs (TOTP ou clé matérielle) pour chaque compte qui la prend en charge : un mot de passe fort ne suffit pas à lui seul si le mot de passe est hameçonné.
- Utilisez l'option « exclure les caractères ambigus » de notre générateur de mots de passe (0/O, 1/l/I) lorsque les mots de passe seront lus à haute voix ou saisis à partir d'une impression.
- Effectuez une rotation des mots de passe uniquement après une violation confirmée, et non selon un calendrier fixe : la rotation forcée conduit les utilisateurs à adopter des modèles prévisibles comme Spring2026 !.