è possibile migliorare l'entropia di XKCD # 936 utilizzando un dizionario più grande?

3

XKCD # 936 utilizza un sottoinsieme limitato della lingua inglese, solo 2000 parole. L'ho solo cercato e la lingua inglese ha più di un milione di parole, un sottoinsieme consistente di personaggi con caratteri speciali, numeri e segni di punteggiatura.

1.000.000 è circa 2 ^ 20, quindi 4 parole casuali da quel set avrebbero 80 bit di entropia, forse un po 'meno. Se vogliamo, possiamo anche rimuovere parte del dizionario in modo da non dover trattare con parole mostruose come antidisestablishmentarianism che potrebbero infrangere molti input di password.

Questo sarebbe un modo ragionevole per migliorare l'entropia? O mi manca un punto vitale?

    
posta Nzall 27.01.2015 - 23:29
fonte

3 risposte

5

Sì, hai ragione, e sì, ti manca qualcosa.

Certo, potresti facilmente aumentare il collettore di entropia usando un elenco di parole più grande; si potrebbe anche ottenere ciò usando le passphrase di 8 parole, o semplicemente usando i byte di entropia grezza direttamente senza le parole.

L'intero punto di xkcd è balance .
Equilibrio tra "sufficiente entropia" e "abbastanza facile da ricordare".

Potresti discutere se 44 bit sono abbastanza entropia o se ne hai bisogno di più. Ma se è così, devi prendere in considerazione il costo non trascurabile della memorabilità ridotta. È sempre un compromesso.

Come ho indicato nella mia risposta alla domanda canonica di XKCD 936 :

AviD's Rule of Usability:
Security at the expense of usability comes at the expense of security.

Quindi sì, vai avanti e usa la lingua completa come dizionario - ma stai pagando un prezzo, che molti considererebbero un compromesso negativo.

Come Randall (autore di xkcd) spiega qui ( e in accordo con molti studi sull'argomento), egli stava basando non solo su tutte le parole possibili in un dizionario, ma parole che sono FACILI per una persona tipica da ricordare (e tipo, aggiungerò).

Un'altra opzione, più aggressiva di xkcd ma non ridicolmente difficile come il linguaggio completo, è qualcosa come dizionario di Diceware - più grande di 11 bit per parola, ma non molto di più (poco meno di 13 bit).
Quindi 4 parole di questo sarebbero ~ 51,5 bit. Oppure, prendi un'altra semplice parola e ottieni quasi 65 bit di entropia.

Sì, questo lo migliora un po ', senza costare molta usabilità, dal momento che si attengono ancora a parole brevi e comuni. (Personalmente ci sono ancora alcune parole "riempitive", come i numeri, che preferirei fare a meno).

Come sempre, si tratta di equilibrio.

    
risposta data 29.01.2015 - 17:37
fonte
3

In ogni caso "interromperà" molti input di password, poiché lo schema di password non includerà numeri o caratteri speciali richiesti da molti siti e probabilmente sarà già più lungo del massimo se il sito ha una lunghezza massima consentita per la password.

La vera soluzione è non usare un trucco per memorizzare una password altamente entropica (anche se è quello che vuoi veramente fare, Diceware è la strada da percorrere). La vera soluzione è utilizzare un software di gestione password che ricorderà password casuali e univoche per ogni sito che visiti. Se stai riutilizzando le password attraverso i siti, l'alta entropia non ti farà nulla di buono quando uno di quei siti memorizza la tua password in chiaro e viene compromessa: anche i tuoi account su altri siti verranno compromessi, proprio accanto a tutti quelli che utilizza letmein per tutti i loro account.

    
risposta data 27.01.2015 - 23:44
fonte
0

La ragione per cui le liste di parole sono importanti è che riducono drasticamente la quantità di entropia. Potresti semplicemente aumentare l'entropia utilizzando un altro linguaggio. In questo modo i cracker avrebbero bisogno di usare le lettere delle lettere ingenue per le loro ipotesi.

    
risposta data 29.01.2015 - 17:04
fonte

Leggi altre domande sui tag