Générateur de mots de passe

Mots de passe et phrases de passe aléatoires robustes.

À propos de cet outil

Générez des mots de passe aléatoires avec les caractères de votre choix, ou des phrases de passe à base de mots, plus faciles à taper. Tout repose sur le générateur aléatoire cryptographiquement sûr du navigateur, et la robustesse estimée est indiquée en bits.

Mode d’emploi

  1. Choisissez Caractères aléatoires ou Phrase de passe.
  2. Définissez la longueur ou le nombre de mots, et les caractères à inclure.
  3. Observez l’estimation de robustesse en bits se mettre à jour.
  4. Copiez un mot de passe, ou cliquez sur Générer pour en obtenir une nouvelle série.

Questions

Quelle longueur pour un mot de passe ?
Visez au moins 16 caractères aléatoires, soit environ 100 bits, ou une phrase de passe d’au moins 10 mots générée par cet outil. Au-delà d’environ 80 bits, c’est bien plus que ce qui peut être deviné. Un gestionnaire de mots de passe peut le retenir pour vous.
Que signifient les bits de robustesse ?
Elle mesure le nombre de tentatives dont un attaquant aurait besoin : chaque bit supplémentaire double le travail. Elle suppose que le mot de passe a été généré aléatoirement, ce qui est le cas ici.
Les mots de passe sont-ils stockés ou envoyés quelque part ?
Non. Ils sont générés dans votre navigateur avec crypto.getRandomValues et disparaissent à la fermeture de la page.
Phrase de passe ou caractères aléatoires ?
Les phrases de passe sont plus faciles à taper et à retenir, par exemple sur un téléphone ou une télévision. Les caractères aléatoires concentrent plus de robustesse en moins de caractères. L’indicateur de robustesse montre exactement combien de bits chaque réglage vous apporte.
Pourquoi les caractères ambigus sont-ils évités ?
Des caractères comme l, 1, I, O, 0 et o se confondent facilement quand un mot de passe est lu à voix haute, recopié depuis un papier ou saisi depuis un autre écran. Les éviter réduit légèrement le jeu de caractères et coûte environ 0,1 bit par caractère. Désactivez l’option si le mot de passe sera toujours collé.
Comment générer une clé d’API ou un token secret aléatoire ?
Choisissez Caractères aléatoires avec uniquement des lettres et des chiffres, pour que la clé ne pose pas de problème dans les en-têtes, les URL et les fichiers de configuration, et réglez la longueur sur 32 ou plus. Cela donne bien plus de 180 bits. En ligne de commande, openssl rand -hex 32 fait le même travail. Stockez ces clés sous forme hachée si votre serveur n’a besoin que de les vérifier.
Des majuscules et un nombre rendent-ils une phrase de passe plus robuste ?
Mettre une majuscule à chaque mot n’apporte rien, car c’est toujours fait de la même façon. Le nombre aléatoire ajoute environ 9 bits pour une phrase de six mots : jusqu’à 100 valeurs dans l’une des sept positions possibles. Un mot de plus ajoute environ 8,7 bits : les deux apportent donc à peu près autant, et un mot supplémentaire est souvent plus facile à saisir.

Comment calcule-t-on la robustesse d’un mot de passe en bits ?

Pour un mot de passe généré aléatoirement, la robustesse est égale à la longueur multipliée par le log2 du nombre de caractères possibles. Les minuscules, les majuscules, les chiffres et les 27 symboles proposés ici forment 89 caractères, soit environ 6,5 bits chacun : 20 caractères donnent donc environ 130 bits. Éviter les caractères ambigus retire six caractères et coûte environ 0,1 bit par caractère. La formule ne vaut que pour des mots de passe aléatoires, jamais pour ceux inventés par une personne.

Les phrases de passe fonctionnent de la même façon avec des mots. La liste de mots utilisée ici compte 422 mots courts : chaque mot ajoute donc environ 8,7 bits, et six mots donnent environ 52 bits. C’est moins par mot que la liste Diceware classique de 7 776 mots, qui donne 12,9 bits chacun : utilisez donc davantage de mots pour atteindre la même robustesse. L’indicateur fait ce calcul pour vous à mesure que vous modifiez les réglages.

Pourquoi mon mot de passe généré est-il refusé ou pose-t-il problème ?

Certains sites limitent la longueur à 16 ou 20 caractères, ou refusent certains symboles comme les guillemets, les espaces ou les chevrons. Réduisez la longueur à la limite du site, ou désactivez Symboles et allongez le mot de passe de quelques caractères pour compenser. Chaque lettre ou chiffre supplémentaire ajoute presque 6 bits : 22 caractères alphanumériques battent donc 20 caractères avec symboles.

Les symboles posent aussi problème en dehors des sites web. Dans un shell, $ et ! entre guillemets doubles sont interprétés : entourez donc ces mots de passe de guillemets simples. Dans un fichier .env, # peut ouvrir un commentaire et $ peut déclencher une expansion de variable. Dans une URL de connexion à une base de données, @, : et / cassent l’analyse, sauf si vous les encodez en pourcent avec l’outil Encodage, décodage et analyse d’URL. Se limiter aux lettres et aux chiffres évite tout cela.

Recommandations du NIST sur les mots de passe : ce qui compte vraiment

NIST SP 800-63B, la recommandation du gouvernement américain que suivent de nombreuses entreprises, fait passer la longueur avant la complexité. Sa révision de 2025 exige au moins 15 caractères quand le mot de passe est le seul facteur, 8 avec une connexion multifacteur, et la prise en charge d’au moins 64 caractères. Elle recommande aussi d’abandonner les règles comme « un symbole et un chiffre », de cesser d’imposer des changements de mot de passe réguliers et de bloquer les mots de passe présents dans les listes de fuites.

En pratique : un mot de passe aléatoire unique pour chaque compte, conservé dans un gestionnaire de mots de passe, plus un second facteur partout où c’est proposé. Utilisez une longue phrase de passe pour les quelques secrets que vous devez saisir, comme le mot de passe maître du gestionnaire. Si vous développez vous-même la connexion, stockez les mots de passe avec Argon2id ou bcrypt. Les hachages rapides comme SHA-256 du Générateur de hachages conviennent pour les sommes de contrôle, pas pour stocker des mots de passe.

Quelque chose ne fonctionne pas, ou un résultat semble faux ? Signaler un problème avec cet outil