Comment ça marche
Un mot de passe fort, c'est un mot de passe qu'un attaquant ne peut pas deviner en pratique. La mesure formelle standard est l'entropie, en bits, qui compte combien de mots de passe possibles auraient pu être générés sous les mêmes règles. Entropie = longueur × log2(taille_pool_caractères). Un mot de passe de 12 caractères en minuscules uniquement (26 options par position) a 12 × log2(26) ≈ 56 bits d'entropie. Ajoutez majuscules, chiffres et symboles (~94 options), et 12 caractères passent à 12 × log2(94) ≈ 79 bits. L'écart est énorme : 56 bits = ~72 quadrillions de possibilités ; 79 bits = ~600 sextillions. À 1 billion d'essais/s (GPU haut de gamme grand public sur un hash rapide), 56 bits tombent en ~20 h ; 79 bits prennent ~19 000 ans. À retenir : longueur et variété se composent toutes deux exponentiellement.
L'entropie évoluant linéairement avec la longueur et seulement logarithmiquement avec le pool, la longueur est le levier le plus efficace. Ajouter un caractère à un 12-caractères tout imprimable ajoute ~6,5 bits (~100× plus dur) ; passer de minuscules seules à minuscules + majuscules + chiffres ajoute ~24 bits (~16M×), mais une seule fois. Sur les sites qui le permettent, 16+ caractères depuis le pool complet (~94) atteignent ~105 bits et sont considérés « incassables » face à tout attaquant réaliste, y compris adversaires étatiques avec fermes massives. Le NIST SP 800-63B recommande 8+ caractères pour les comptes généraux et 12+ pour la haute sécurité ; les utilisateurs avertis devraient viser plus haut.
Notes pratiques. (1) Le vrai aléatoire compte. Un mot de passe « qui a l'air aléatoire » inventé soi-même ne l'est pas — les humains se concentrent sur certaines lettres, mots et substitutions (« S@m » au lieu de « Sam ») que les crackers ont profilés. L'API crypto.getRandomValues du navigateur (utilisée par cet outil) produit une sortie cryptographiquement aléatoire, vraiment uniforme. (2) Ne réutilisez jamais. Le plus gros risque réel est le credential stuffing : un mot de passe à 50 bits d'un site fuité testé contre votre banque. Utilisez un gestionnaire avec un mot de passe maître long (25+ pour passphrase, 16+ pour aléatoire) et laissez-le générer un unique par site. (3) La mémorisation compte moins qu'on ne croit. Avec un gestionnaire vous ne mémorisez que le maître ; le reste peut être 30+ caractères de pur bruit. Pour le maître, la liste Diceware de l'EFF donne ~13 bits par mot — une passphrase de 5 mots type « correct horse battery staple bishop » donne ~65 bits, facile à retenir, très solide.
La formule
longueur est la longueur en caractères. taille_pool est le nombre de caractères possibles par position, déterminé par les classes activées. Le « /2 » dans l'estimation reflète qu'en moyenne l'attaquant trouve à la moitié de l'espace de recherche.
Exemple de calcul
- Générer un mot de passe de 16 caractères avec minuscules + majuscules + chiffres + symboles (pool de 94).
- Entropie = 16 × log2(94) = 16 × 6,554 ≈ 105 bits.
- À 1 billion (10^12) essais/s sur un hash rapide, temps attendu = 2^105 / 2 / 10^12 ≈ 6,4×10^20 s, soit ~2×10^13 ans — des ordres de grandeur au-delà de l'âge de l'univers.
- Pour comparer : 8 caractères en minuscules font 8 × log2(26) ≈ 38 bits, cassables en 2^38 / 2 / 10^12 ≈ 0,14 s. La même longueur avec classes complètes fait 8 × log2(94) ≈ 52 bits → ~2 250 s (~37 min). La longueur compte plus que la variété de classes.
Questions fréquentes
Ce générateur est-il sûr ? Où vont les mots de passe ?
Tout est généré dans votre navigateur via window.crypto.getRandomValues — une source aléatoire cryptographiquement sûre intégrée aux navigateurs modernes. Rien n'est envoyé sur le réseau, journalisé, stocké ou transmis à un serveur. Vérifiez en ouvrant les outils dev (onglet Réseau) pendant la génération : zéro requête. La page est servie en statique, donc même si nos serveurs étaient compromis, le générateur tournerait toujours localement chez vous. Pour la paranoïa maximale, générez sur un appareil hors ligne ou inspectez le code source avant. L'API crypto du navigateur est la même primitive qui fait tourner TLS, les gestionnaires de mots de passe et les signatures — aussi sûre que toute opération crypto courante à laquelle vous faites déjà confiance.
Quelle longueur mon mot de passe doit-il avoir ?
Pour la plupart des comptes : 16 caractères du jeu complet (~105 bits) est confortablement sûr contre tout attaquant réaliste aujourd'hui et à horizon prévisible. Comptes jetables : 12 caractères suffisent (~79 bits). Mot de passe maître du gestionnaire : 20+ caractères ou passphrase Diceware 5-7 mots. Sites avec restrictions de classes (« doit contenir 1 maj, 1 chiffre, 1 symbole »), le calculateur en tient compte — générez plus long pour compenser l'entropie effective réduite. Évitez les longueurs absurdes (50+) si pas besoin : elles génèrent des frictions UX (autofill, copies) sans gain de sécurité significatif au-delà de ~100 bits.
Et les passphrases au lieu de caractères aléatoires ?
Excellentes pour la mémorisation avec une entropie solide si bien générées. La liste Diceware longue de l'EFF (~7 800 mots anglais courants) donne ~12,9 bits par mot tiré uniformément au hasard. Cinq mots = ~65 bits (sécurité modérée), sept = ~90 bits (très fort, équivalent à 14 caractères aléatoires), neuf = ~115 bits (paranoïaque). Critique : les mots doivent être tirés vraiment au hasard, pas choisis par vous. Les « phrases mémorables » auto-sélectionnées se concentrent sur mots, chansons, citations et patterns grammaticaux exploités par les crackers (le fameux « correct horse battery staple » de XKCD ne marche que parce que les mots ont été tirés aux dés, pas choisis). Les outils comme la page Diceware de l'EFF ou les gestionnaires avec générateur de passphrase font ça correctement. Inconvénients : plus longues à taper, plus d'erreurs, et beaucoup de sites plafonnent la longueur sous ce qu'exige une phrase de 7+ mots. Utilisez-les pour le maître et les comptes qui les autorisent ; ailleurs aléatoire.