Cela dépend du caractère aléatoire de votre mot de passe.
Si vous choisissez un mot de passe dans la liste suivante :
"?e&ye&ga!ruaa!na!e%ta!e%rc#Iod$woH"2245
aSBsb3ZlIHlvdSBLaXJzdGVuIFNoZWxieSBHdXllcg==
Alors vous avez exactement 1 bit
d'entropie (c'est soit le premier mot de passe, soit le second).
C'est là que vous lisez le Bande dessinée XKCD que Dave a lié .
Mais je peux faire quelques suppositions sur votre mot de passe :
"?e&ye&ga!ruaa!na!e%ta!e%rc#Iod$woH"2245 (40 characters)
On dirait que vous utilisez un alphabet de :
- majuscule
A-Z
(26 glyphes)
- minuscule
a-z
(26 glyphes)
- chiffres latins
0-9
(10 glyphes)
- un jeu limité de ponctuation (en supposant les 30 symboles d'un clavier de 101 touches)
Cela représente un alphabet de 92 caractères.
Plus d'informations sur en supposant que que tous vos mots de passe ont 40 caractères, cela vous donne :
92^40 = 3.56+E78
ou 3,5 quinvigintillions des mots de passe possibles.
Pour convertir cela en bits
vous le faites :
ln(92^40) / ln(2) = 260.94 bits
C'est en supposant que votre attaquant devra forcer le mot de passe.
Si nous ne voulons que des informations, le nombre de bits est en fait beaucoup plus faible, car vous avez utilisé un alphabet beaucoup plus court :
original: "?e&ye&ga!ruaa!na!e%ta!e%rc#Iod$woH"2245
rearranged: aaaaacdeeeegnoorrtuwyHI2245""?&&!!!!%%#$
alphabet: acdegnortuwyHI245"?&!%#$ (24 characters)
Effectuer le même calcul :
ln(24^40) / ln(2) = 183.4 bits
En réalité, il y a moins d'informations parce que je peux voir que chaque fois que vous tapez un mot de passe e
il est suivi d'un symbole :
Nous remplaçons donc e&
avec le symbole h
et e%
avec le symbole i
:
original: "?hyhga!ruaa!na!ita!irc#Iod$woH"2245 (36 characters)
rearranged: aaaaacdghhiinoorrtuwyIH2245""?!!!!#$
alphabet: acdghinortuwyIH2245"?!#$ (24 characters)
Ce qui réduit le contenu de l'information à :
ln(24^36) / ln(2) = 165 bits
Et j'ai remarqué que chaque !
est précédé d'un a
et suivi d'une lettre :
Remplacement de a!
con k
:
original: "?hyhgkruaknkitkirc#Iod$woH"2245 (32 characters)
alphabet: acdghiknortuwyIH2245"?#$ (24 characters)
Réduire les bits à ln(24^32)/ln(2) = 146.7
.
Cela ne fait que réduire le nombre de bits requis pour l'encodage, étant donné que nous déterminons les contenu informatif du message.
Ces astuces n'aident pas un attaquant, qui ne peut généralement pas supposer que tous les mots de passe ont ces séquences connues.
Mais il existe certaines heuristiques qui peuvent être programmées dans un algorithme de recherche par clé. Les gens qui essaient de taper au hasard tapent souvent les mêmes choses. Par exemple, j'obtiens souvent une collision en tapant au hasard :
adfadsfadsf
ainsi que 18 400 autres résultats de Google.
Mon mot de passe le plus sûr est composé de 57 caractères, avec un alphabet de 27 caractères ( a-z
, ), qui se situe à 266 bits
( ln(27^56) / ln(2) = 266.27
).
D'autre part, il est onze mots. Il y a environ 2^11
mots courants de la langue anglaise. Ça donne :
(2^11)^11 = 2.66E36 passphrases => ln((2^11)^11)/ln(2) = 121 bits
C'est bien moins que les 266 bits que l'on pourrait supposer au hasard d'un mot de passe de 57 caractères.
Je pourrais ajouter un bit si je choisis entre :
- espaces entre les mots
- aucun espace entre les mots
0 votes
L'attaquant connaît-il la structure générale du mot de passe, par exemple uniquement des caractères ASCII, des chiffres uniquement à la fin, toutes les lettres minuscules et une quasi alternance de lettres et de caractères spéciaux ?
0 votes
Pas toutes les minuscules ;) et non l'attaquant ne changerait pas la structure, elle est basée sur une phrase simple et facile à retenir avec quelques changements de base qui sont cohérents.
0 votes
Voir aussi security.stackexchange.com/questions/6499/
0 votes
Maintenant que vous l'avez posté ici, il est assez facile à pirater :).