L'idea di base
Sì, il concetto che stai circolando è "quante possibili password esistono sotto queste regole?", che è formalmente chiamato "Spazio della password".
La formula per capire quanto è grande lo spazio della password per un determinato set di regole è abbastanza semplice:
(num_allowed_symbols) ^ (password_length)
I tuoi esempi:
-
Password di 16 caratteri composta solo da lettere minuscole in inglese : ci sono 26 caratteri bassi, quindi:
26 ^ 16 = 4.4x10 ^ 22 possibili password
-
Password di 8 caratteri composta da lettere inglesi di entrambi i casi, cifre numeriche e caratteri speciali : dipende da quanti caratteri speciali permetti, ma diciamo 26 lowers + 26 uppers + 10 digits + 16 specials = 78 characters
, quindi
78 ^ 8 = 1.4x10 ^ 15 possibili password
-
Unicode : supponiamo ci sono circa 100.000 caratteri unicode validi. Quindi hai solo bisogno di una password di 5 o 3 caratteri (rispettivamente) per abbinare gli spazi password di lowers
e lowers, uppers, digits, specials
.
ma prima siamo troppo eccitati per questi numeri ...
Dove diventa reale
Il numero di password sopra riportato è utile solo come misura di sicurezza se è possibile scegliere tutte le password possibili. Nella mia esperienza questo non è vero poiché graycat123
è una password molto più comune di h&9R#d3*ng
(o ǨΞᾃЯ ҉ℒⵞ௵ޘ↡╤
se si utilizza l'intero spazio Unicode, ma non chiedermi come digitarla su una tastiera Android !)
Questo molto rapidamente entra nella psicologia e nelle abitudini dell'utente e spesso vediamo le statistiche come questo :
SplashData estimates almost 10% of people have used at least one of the 25 worst passwords on this year’s list, and nearly 3% of people have used the worst password, 123456.
Questo è il motivo per cui vedi sempre più siti Web che forniscono "misuratori di forza password" accanto alla casella Cambia password, che controllano la tua password rispetto agli elenchi comuni, alla ricerca di parole del dizionario, alla ricerca di schemi di tastiera, ecc. misura molto migliore della forza della password rispetto alla lunghezza perché, beh, le persone sono cattive nella scelta delle password.
Molto meglio usare un gestore di password e lasciare che una macchina scelga la tua password in modo che h&9R#d3*ng
sia tanto probabile quanto graycat123
. Se desideri password che puoi ricordare, una buona opzione è quella di creare password utilizzando il trucco diceware .