Calcolo dell'entropia della password?

21

Ogni volta che guardo l'entropia della password, l'unica equazione che io abbia mai visto è E = log 2 (R L ) = log 2 ( R) * L, dove E è l'entropia della password, R è l'intervallo di caratteri disponibili e L è la lunghezza della password.

Mi chiedevo se esistessero equazioni alternative per il calcolo dell'entropia, che determinano le password deboli nell'equazione. Ad esempio, password con caratteri sequenziali ( 0123456789 ), frasi comuni ( logmein ), parole ripetute ( happyhappy ) o parole con numeri aggiunti ( password1 ) riceverebbero un grado di entropia inferiore a causa delle loro varie carenze .

Esiste una simile equazione? Se è così, è comunemente usato nel campo della sicurezza, o le persone tendono ad attenersi alla "equazione standard"?

    
posta Moses 03.10.2012 - 19:04
fonte

3 risposte

24

Esistono equazioni per quando la password viene scelta in modo casuale e uniforme da un determinato set; vale a dire, se il set ha dimensione N allora l'entropia è N (per esprimerla in bit, prendi il logaritmo in base-2 di N ) .

Ad esempio, se la password è una sequenza di esattamente 8 lettere minuscole, in modo tale che tutte le sequenze di 8 caratteri minuscoli potrebbero essere state scelte e nessuna sequenza doveva essere scelta con una probabilità maggiore di qualsiasi altra, quindi l'entropia è N = 26 8 = 208827064576 , ovvero circa 37,6 bit (perché questo valore è vicino a 2 37,6 ).

Una formula così bella funziona solo finché si verifica una casualità uniforme e, ammettiamolo, la casualità uniforme non può verificarsi nel cervello umano medio. Per le password scelte dall'uomo, possiamo fare solo stime in base ai sondaggi (dare un'occhiata a che per alcuni puntatori).

Ciò che deve essere ricordato è che l'entropia qualifica il processo di generazione della password , non la password stessa. Per definizione, le applicazioni di "password meter" e i siti Web non vedono il processo, solo il risultato e restituiscono in modo uniforme risultati scadenti (ad esempio, ti diranno che "BillClinton" è una buona password). Quando il processo è in-cervello, tutto va bene.

(Genero le mie password con un computer, non con la testa, e incoraggio le persone a fare lo stesso.)

    
risposta data 03.10.2012 - 19:17
fonte
10

Joseph Bonneau dell'Università di Cambridge ha svolto ricerche approfondite nell'area delle password scelte dall'utente. In un articolo recente (PDF) Bonneau ha proposto di utilizzare "metriche statistiche per password individuale forza ". In questo articolo descrive

several possible metrics for measuring the strength of an individual password or any other secret drawn from a known, skewed distribution. In contrast to previous ad hoc approaches which rely on textual properties of passwords, we consider the problem without any knowledge of password structure. This enables rating the strength of a password given a large sample distribution without assuming anything about password semantics

Quando parliamo di entropia di una password, siamo davvero interessati a quanto sia difficile indovinarlo. Il documento di Bonneau descrive come questo può essere misurato sulla base di informazioni statistiche sulle password effettive.

    
risposta data 03.10.2012 - 19:45
fonte
6

Da un punto di vista matematico puramente combinatorio 0123456789 non è meno debole di qualsiasi altra stringa di 10 caratteri. Le equazioni a cui ti riferisci si basano sulla matematica combinatoria.

Tuttavia, da un punto di vista statistico è più debole perché le persone lo usano comunemente perché è più facile da ricordare, quindi gli hacker che costruiscono dizionari di password comuni includono quelli in primo luogo e in quanto tale è probabile che sia una delle prime password che l'hacker incrina. perché è vicino all'inizio della lista per lui da provare. Potresti creare equazioni leggermente più complesse o semplicemente dire, beh, dato che hai usato solo cifre numeriche anche se permetto di più, ho intenzione di calcolare la forza usando solo cifre numeriche come set di caratteri. Ciò consentirà di stimare i problemi statistici ma non corrisponderà perfettamente alla situazione reale.

Si potrebbe anche verificare effettivamente un dizionario di cracking della password e controllare se la parola è lì e quanto vicino è la parola più simile, ma questo dà solo una forza basata su quel particolare dizionario e un altro utente malintenzionato userebbe un dizionario diverso.

    
risposta data 03.10.2012 - 19:17
fonte

Leggi altre domande sui tag