Poiché le password sono spesso la parte più facile da attaccare della crittografia, in realtà è una sorta di dizionario reale. L'assunto è che le persone sono pigre e scelgono parole appropriate come password o costruiscono passphrase fuori da esse. Il dizionario può includere anche altre cose, come la combinazione di parole o lettere/numeri comunemente usati. Essenzialmente, tutto ciò che è è probabilmente la una password scelta male.
Ci sono programmi là fuori che occuperanno un intero disco rigido e costruiranno un dizionario da ogni stringa tipabile su di esso supponendo che la password dell'utente sia stata a un certo punto nel tempo messa in testo in chiaro (e quindi nel file di paging) o che semplicemente esiste nel corpus se il testo memorizzato sull'unità :
Anche così, niente di tutto questo potrebbe realmente importa. AccessData vende un altro programma, Forensic Toolkit, che, tra le altre cose, esegue la scansione di un disco rigido per ogni stringa di caratteri stampabili. Sembra nei documenti, nel Registro di sistema, nella posta elettronica, nei file di scambio, nello spazio cancellato sul disco rigido ... ovunque. E crea un dizionario da questo, e lo alimenta in PRTK.
E PRTK rompe oltre il 50 percento delle password da questo dizionario.
In realtà, è possibile rendere i dizionari più efficaci anche se si include la conoscenza di come le persone di solito creano le password. Schneier parla di questo lungamente :
- dizionario parola comune: 5.000 voci
- Nomi dizionario: 10.000 voci
- dizionario completo: 100.000 voci
- dizionario di pattern fonetici: 1/10.000 ricerca esauriente dei caratteri
Il dizionario del modello fonetico è interessante. Non è davvero un dizionario; è una routine di catena Markov che genera stringhe pronunciate in inglese di una determinata lunghezza. Ad esempio, PRTK può generare e testare un dizionario di stringhe di sei caratteri molto pronunciabili o stringhe di sette caratteri appena pronunciabili. Stanno lavorando su routine di generazione per altre lingue.
PRTK esegue anche una ricerca esaustiva di quattro caratteri. Esegue i dizionari con lettere minuscole (la più comune), maiuscole iniziali (la seconda più comune), tutte maiuscole e lettere maiuscole finali. Esegue i dizionari con sostituzioni comuni: "$" per "s", "@" per "a", "1" per "l" e così via. Tutto ciò che è "leet speak" è incluso qui, come "3" per "e."
I dizionari di appendice includono cose come:
- Tutte le combinazioni a due cifre
- tutte le date dal 1900 al 2006
- Tutte le combinazioni a tre cifre
- tutti i simboli singoli
- Tutti singola cifra, più simbolo singolo
- Tutte le combinazioni di due simboli
Bruce Schneier: Scegliere password sicure. In: Schneier on Security. (URL)
se vedi qualcuno correre verso di te brandire una grande copia del dizionario inglese di Oxford ... –
+1 per l'umorismo, e per indirettamente rispondere alla mia domanda;) – Chris
Mitch: Mi hai fatto la mattinata. Grazie. Ora ho il tè sulla mia tastiera. – Joey