Comment l'entropie de la phrase secrète est calculée
La formule log2, des exemples concrets pour les trois listes EFF, ce que coûte un acrostiche et pourquoi un indicateur de force de site Web n'est pas d'accord avec cette page.
L'entropie mesure le processus, pas le mot de passe
Un seul mot de passe n'a pas d'entropie. L’expression « bonne agrafe de batterie de cheval » n’est ni forte ni faible en soi – ce qui compte, c’est comment elle a vu le jour. Si une machine tire uniformément quatre mots d’une liste de 7,776, il s’agit d’un résultat parmi environ 3.7 millions de millions de résultats également probables. Si quelqu'un l'a choisi parce qu'il l'a vu dans un dessin animé, c'est l'un des rares, et aucune arithmétique n'y change rien.
Ainsi, chaque figure de ce site décrit le générateur et ses paramètres, dans l'hypothèse où un attaquant connaît ces paramètres et en est réduit à deviner les tirages aléatoires. Cette hypothèse est la plus conservatrice. La liste, le nombre de mots, la plage de longueurs, le séparateur et la règle de cas sont tous publiés sur cette page, donc les traiter comme secrets gonflerait chaque nombre ici.
La formule
Pour un choix fait uniformément parmi N possibilités équiprobables, l'entropie est de log2(N) bits. Chaque choix indépendant ajoute ses propres bits, donc k indépendants tire du même pool de N donnent :
bits = k × log2(N)
C’est tout le calcul d’une phrase secrète. La base de journal 2 est ce qui transforme « combien de possibilités » en « combien de bits », et les bits sont pratiques car chaque bit supplémentaire double le travail auquel un attaquant est confronté. Soixante-dix bits, c'est deux fois plus dur que soixante-neuf, et environ mille fois plus dur que soixante.
La même formule couvre un mot de passe à caractères aléatoires, avec N la taille du jeu de caractères et k la longueur : vingt caractères tirés d'un ensemble de 80 donnent 20 × log2(80), soit environ 126 bits.
Exemples travaillés pour les trois listes
La longue liste EFF contient 7,776 mots. log2(7,776) fait environ 12.925, donc chaque mot contient environ 12.9 bits. Six mots donnent 6 × 12.925, environ 77.5 bits – la valeur par défaut sur cette page et la propre recommandation de l'EFF pour cette liste. Sept mots donnent environ 90.5, huit environ 103.4.
Les deux listes restreintes contiennent 1,296 mots. log2(1,296) fait environ 10.34, donc six mots donnent environ 62 bits, sept environ 72.4 et huit environ 82.7. C'est pourquoi les listes courtes veulent un ou deux mots supplémentaires pour correspondre au mot long.
Cinq mots de la longue liste donnent environ 64.6 bits – presque exactement la même chose que six mots d’une liste courte. Les deux voies menant à une force donnée sont véritablement interchangeables ; choisissez celui qui produit les mots que vous trouvez plus faciles à saisir.
Quel est l'effet de la plage de longueur sur la silhouette
La longueur minimale et maximale des mots filtre la liste avant qu'un mot ne soit dessiné, donc N dans la formule est le nombre de mots qui survivent au filtre, et non la taille du fichier. La page recalcule cela à mesure que vous modifiez la plage et affiche le nombre de survivants, de sorte que le chiffre d'entropie concerne toujours le pool réellement utilisé.
Il s'agit d'un petit effet pour les plages sensibles et d'un effet important pour les plages extrêmes. En limitant la longue liste à des mots d'exactement quatre lettres, il reste quelques centaines de candidats, faisant passer chaque mot d'environ 12.9 bits à environ 8 - ce qui transforme une phrase secrète de six mots d'environ 77 bits en environ 48. La page le montrera et, à ce stade, elle vous demandera d'élargir la gamme ou d'ajouter des mots.
Ce qu'ajoutent les options de séparateur et de casse
Un séparateur fixe n'ajoute rien. Si chaque espace est un trait d'union, un attaquant qui connaît les paramètres placera également des traits d'union dans chaque espace ; ils n’ont pas le choix de deviner.
L'option de séparateur aléatoire est différente. Chaque espace prend indépendamment l'un des cinq caractères, donc chaque espace ajoute log2(5), environ 2.32 bits. Une phrase secrète de six mots comporte cinq espaces, ce qui représente environ 11.6 bits supplémentaires – un réel gain, et la page le compte.
La même logique s’applique au cas. Inférieur, supérieur, majuscule et alterné sont des règles fixes et n'ajoutent rien. La casse aléatoire lance une pièce indépendante par mot, ce qui ajoute exactement un bit par mot : six bits sur une phrase secrète de six mots. Cela aussi est compté.
Il convient de noter à quel point ces sommes sont modestes. La casse aléatoire et les séparateurs aléatoires ajoutent ensemble environ 17 bits à une phrase secrète de six mots, tandis qu'un septième mot ajoute environ 13 à lui seul et est beaucoup plus facile à retenir. L'ajout de mots est presque toujours le meilleur levier.
Que coûte un acrostiche
Avec un acrostiche, chaque mot n'est plus tiré de l'ensemble — il est tiré des mots commençant par la lettre que vous avez spécifiée. La formule devient donc une somme plutôt qu'un produit : le total est log2 du pool pour la première lettre, plus log2 du pool pour la seconde, et ainsi de suite.
Les lettres sont très inégalement réparties. Dans la longue liste EFF, limitée aux mots de cinq à neuf lettres, le pool commençant par s est plusieurs fois plus grand que le pool commençant par j, et beaucoup plus grand que le pool commençant par x. Un acrostiche de six lettres donne donc un chiffre quelque part en dessous de six fois la valeur par mot sans contrainte, et la distance en dessous dépend entièrement des lettres que vous avez choisies.
La page fait cette somme pour les lettres exactes que vous tapez, ce qui est le seul moyen de donner un nombre honnête. Si l'une de vos lettres n'a aucun mot derrière elle dans la liste et la plage de longueur actuelles, elle indique quelle lettre plutôt que d'échouer silencieusement.
L'acrostiche n'est pas non plus un secret. Supposons qu’un attaquant connaisse les initiales qui forment le nom de votre chien, car c’est le genre de chose qu’on devine.
Transformer les bits en temps, honnêtement
Les estimations de temps sur cette page supposent une attaque hors ligne à un billion de suppositions par seconde contre une base de données de mots de passe volés, et que la moitié des possibilités doivent être essayées avant que la bonne n'apparaisse. Ces hypothèses sont énoncées partout où une heure apparaît, car une estimation temporelle sans elles n'a aucun sens.
Un billion de suppositions par seconde est un chiffre délibérément dur. C'est la bonne région pour un matériel dédié attaquant une fonction de hachage rapide et mal choisie. Un site utilisant correctement un hachage de mot de passe moderne est plusieurs fois plus lent à attaquer, et tout formulaire de connexion en ligne est encore plus lent d'un facteur plusieurs milliards, puisque chaque tentative est une requête réseau que le serveur peut limiter.
C’est pourquoi les chiffres sur cette page sont volontairement pessimistes. Si l’estimation indique qu’une recherche prendrait beaucoup plus de temps que quiconque, le chiffre réel contre un service géré avec compétence est encore plus long.
Pourquoi l'indicateur de force d'un site Web dit quelque chose de différent
La plupart des indicateurs de force notent les caractères devant eux, car c'est tout ce qu'ils ont : ils ne voient jamais comment le mot de passe a été généré. Ils récompensent les classes de caractères mixtes, punissent la répétition et se comparent souvent à des dictionnaires de mots de passe courants. Contre un mot de passe inventé par l'homme, cela constitue une heuristique raisonnable, et c'est la seule chose qu'un formulaire peut faire.
Il évalue mal une phrase secrète générée, exactement pour la mauvaise raison. Six mots de dictionnaire en minuscules avec des espaces entre eux ressemblent, selon une heuristique de comptage de caractères, exactement à la chose contre laquelle il est conçu pour avertir - même si les mots ont été tirés au hasard et que le résultat est plus fort que presque tout ce que le compteur applaudirait.
Lorsqu'un compteur et cette page ne sont pas d'accord sur une phrase secrète générée ici, la page décrit le processus et le compteur décrit l'apparence. Ni l’un ni l’autre ne ment ; ils mesurent des choses différentes, et un seul d’entre eux sait d’où viennent les mots.
Qu'arrive-t-il à ce que vous générez
ToolAcre génère des mots de passe localement dans votre navigateur. Pour les environnements très sensibles, vérifiez que votre navigateur, votre appareil et votre système d'exploitation sont fiables avant d'utiliser un générateur de mots de passe Web.
- Chaque phrase secrète et mot de passe est généré dans l’onglet de votre navigateur, par le propre générateur de nombres aléatoires cryptographiques de votre navigateur. Aucun serveur n'est impliqué une fois la page chargée.
- Rien de généré ici n'est envoyé à ToolAcre. La politique de sécurité du contenu de ce produit restreint la page à sa propre origine, de sorte que le navigateur lui-même bloque toute tentative d'envoi de données ailleurs.
- Rien n'est écrit dans le stockage local, le stockage de session, un cookie, une base de données intégrée au navigateur, la barre d'adresse ou la console du navigateur. Le rechargement le supprime ; la fermeture de l'onglet le supprime.
- Il n'y a pas de compte, pas de connexion, pas de script d'analyse et pas de script publicitaire. Les seuls fichiers téléchargés sont les listes de mots statiques.
- Aucun historique n'est conservé. Une nouvelle génération remplace la valeur et la précédente n'est pas récupérable.
Questions
Combien de bits suffisent ?
Pour un compte ordinaire derrière un gestionnaire de mots de passe, tout ce qui dépasse environ 70 bits dépasse toute estimation réaliste. Pour les quelques phrases secrètes qui protègent tout le reste (le gestionnaire lui-même, votre appareil, votre courrier électronique), visez plus haut, autour de 90 bits ou plus, soit sept ou huit mots de la longue liste.
Pourquoi l’ajout d’un mot est-il plus utile que l’ajout d’un symbole ?
Un mot de la longue liste multiplie le nombre de possibilités par 7,776, soit environ 12.9 bits. Un symbole ajouté à une position fixe le multiplie par un, car l'attaquant sait qu'il est là. Seuls les choix réellement aléatoires comptent.
La page compte-t-elle l'option de casse aléatoire dans la figure ?
Oui, à raison d'un bit par mot, car chaque mot est un tirage au sort indépendant. Les règles de cas fixes sont comptées pour zéro, car un attaquant qui connaît la règle peut l'appliquer lui-même.
Pourquoi la moitié de l'espace clé est-elle utilisée dans les estimations de temps ?
Car en moyenne, une recherche exhaustive trouve la réponse à mi-chemin. L'utilisation de l'espace de clés complet surestimerait le temps d'un facteur deux, ce qui constitue une erreur d'arrondi à ces échelles, mais toujours dans le mauvais sens.
77 bits est-il suffisant compte tenu de la vitesse à laquelle les ordinateurs deviennent ?
Le coût de deviner double avec chaque bit supplémentaire, donc l'arithmétique favorise fortement le défenseur. Les risques réalistes liés à une phrase secrète de 77 bits ne sont pas dus au calcul brut : il s'agit du phishing, des logiciels malveillants sur votre appareil, de la réutilisation sur plusieurs sites et d'un service qui l'a stockée négligemment. Ce sont des choses auxquelles il convient de prêter attention.
Limites
- L'entropie est une limite supérieure de la difficulté de deviner, et non une prédiction de la manière dont un compte sera réellement compromis. La plupart des comptes sont perdus à cause du phishing, de la réutilisation et des violations de bases de données plutôt que des devinettes.
- Les chiffres supposent que la source aléatoire est sonore. Cette page utilise le générateur cryptographique du navigateur et refuse de s’exécuter sans lui, mais elle ne peut pas auditer ce générateur depuis l’intérieur de la page.
- Les estimations de temps dépendent entièrement d’un taux de supposition supposé. Le taux utilisé ici est volontairement sévère et peut être erroné dans les deux sens pour un attaquant particulier.
- Le calcul suppose que chaque mot est dessiné indépendamment et uniformément. Cela surestimerait la force si ce n'était pas vrai, c'est pourquoi le générateur dessine avec remplacement plutôt que de supprimer les mots qu'il a déjà utilisés.
- Aucun chiffre d’entropie ne justifie qu’une phrase secrète soit réutilisée, écrite dans un endroit non sécurisé ou tapée sur une machine compromise.