Quali sono i possibili metodi per calcolare l'entropia della password?

5

Ho notato che ci sono tonnellate di domande e risposte sull'entropia della password su questo forum, alcuni addirittura suggeriscono formule per calcolarlo. Nessuno ha risposto alla mia domanda esatta.

Quali sono i metodi possibili o comunemente usati per calcolare entropia della password ?

Ad esempio KeePass sta utilizzando un metodo per calcolare un tipo di entropia della password. Come lo calcolano?

Sono cose come modelli ripetitivi o combinazioni prevedibili / facili in qualche modo incluse in quei metodi?

    
posta Bob Ortiz 19.06.2016 - 01:19
fonte

4 risposte

6

Il metodo appropriato per calcolare l'entropia della password consiste nell'esaminare il metodo di generazione della password, valutare la quantità di entropia coinvolta nel metodo di generazione della password e valutare quanta parte di tale entropia di input viene preservata da il metodo di codifica. Ad esempio, lanciare un dado <6> leale a 6 facce una volta genera circa 2,5 bit di entropia (nota che è una domanda aperta se i dadi della vita reale sono o meno giusti).

I misuratori di forza della password non sono entropici calcolatori , stimano la quantità massima di entropia possibile contenuta in una stringa eseguendo analisi statistiche sulla password, in base alla password comunemente utilizzata metodi di generazione e cracking. In tutti i casi, lo stimatore di entropia può essere abbastanza grande. Mentre lo stimatore di entropia può essere buono per rilevare ovviamente una password debole, non è un buon modo per determinare se una password è buona o meno.

Una stringa dall'aspetto casuale può contenere poca entropia, ad esempio lo SHA1 di una lettera ASCII contiene solo entropia di 7 bit; ma la maggior parte dei metri di password potrebbe pensare che sia una password solida.

    
risposta data 19.06.2016 - 17:32
fonte
4

L'entropia dei dati dipende dall'osservatore: non esiste una misurazione assoluta dell'entropia. È persino discutibile se qualcosa nell'universo sia o meno casuale, e la "casualità" (o, più precisamente, legata all'entropia, l'imprevedibilità ) è la fonte o l'entropia.

L'imprevedibilità è il termine operativo: difficile da prevedere per qualcuno.

Se si usa il Mersenne Twister, ad esempio, conoscere il seme della sequenza casuale predice perfettamente l'intera sequenza - quindi la password "casuale" è composta da 64 bit di entropia (se si utilizza la versione a 64 bit, cioè ).

Se usi i dadi, l'entropia deriva dal numero di volte in cui hai tirato i dadi e il gioco è fatto.

Sfortunatamente, quando diventa una "password", la fonte di entropia è oscurata.

Ad esempio: un codice sicuro a tre valori in cui ogni valore è nell'intervallo [0,99] ha 3*log2(100) bit di entropia. Fino a quando non avrai appreso che hanno selezionato una parola di 6 caratteri e utilizzato una tastiera del telefono per trasformarla in numeri, e ora l'entropia è log2(numberOfSixLetterWords) .

In breve, le ipotesi utilizzate per creare una password sono così fondamentali per la sua entropia e così oscurate dall'aspetto immediato della password che in realtà non puoi stimarla ; puoi sempre ottenere un limite superiore dell'entropia della password.

    
risposta data 19.06.2016 - 02:06
fonte
2

KeePass descrive alcuni di ciò che considerano qui , ed è descritto con maggiori dettagli a pagina 18 di questo eccellente articolo:

Carnavalet, Xavier De Carné De e Mohammad Mannan. "Una valutazione su larga scala dei misuratori di forza password ad alto impatto." Transazioni ACM su sicurezza informatica e di sistema (TISSEC) 18.1 (2015): 1.

Sarebbe troppo lungo per parafrasare, ma sì, repeating patterns and predictable/easy combinations sono inclusi nella combinazione dei più importanti calcolatori di forza password, incluso KeePass '. Si basano su qualcosa che chiamano un static entropy encoder che potrebbe essere qualcosa di semplice come un codice Huffman utilizzato per comprimere i dati.

    
risposta data 19.06.2016 - 02:33
fonte
2

L'entropia di una password è una dichiarazione quantitativa sulla distribuzione di probabilità di tutte le possibili password Per semplificare, pensa a una distribuzione di probabilità come regola che, data una password, restituisce la probabilità che quella password sia quella scelta.

Quindi non è possibile inserire un numero nell'entropia di una password a meno che non si parta da un modello che indica la probabilità relativa di due possibili password. E il problema dei conti laici sull'entropia della password, che senza dubbio avete riscontrato, è che di solito non riescono a spiegare chiaramente quali supposizioni stanno facendo riguardo alla distribuzione.

Qui c'è un'altra serie di complicazioni che si riferisce al punto di iAdjunct che "l'entropia dei dati dipende dall'osservatore": possiamo fare una distinzione tra la "vera" distribuzione delle password (che deriva da come effettivamente scegli password) e la distribuzione "presunta" (la distribuzione che l'attaccante ritiene segue). Un sacco di consigli di password (cattivi) là fuori si basano sull'idea di utilizzare regole di generazione di password "insolite" in modo che la tua password sia un valore anomalo nella distribuzione reale o quella che gli hacker scelgono.

Ma la soluzione più semplice è quella di aggirare tutto ciò scegliendo le password in base a una serie di regole che danno abbastanza entropia anche se l'attaccante conosce le regole (una versione di Principio di Kerckhoffs ). Molte delle risposte (altamente raccomandate!) Alle seguenti due domande sottolineano questo punto:

Quindi, se segui quel consiglio, allora l'entropia delle tue password può essere calcolata semplicemente spiegando uno schema di generazione di password randomizzato e assumendo che l'aggressore lo scoprirà.

    
risposta data 20.06.2016 - 04:14
fonte