L'ordine dei caratteri in una password è importante per la sua sicurezza?

0

Sappiamo tutti che una password dovrebbe contenere una salutare combinazione di lettere (superiore e inferiore), numeri e caratteri speciali.

Ma importa la casualità del loro posizionamento. Ovviamente per le lettere importa se incantesimi o meno una parola del dizionario, ma diciamo che hai lettere, numeri e caratteri casuali.

Quindi un semplice esempio concreto:

klens4275 più o meno sicuro kl7e25ns4 ?

Notate che hanno tutti gli stessi caratteri ma l'ordine appare più casuale nel secondo.

Ma lo spazio chiave è sempre lo stesso, corretto?

    
posta dan08 12.08.2014 - 17:13
fonte

1 risposta

3

No, l'ordine nella seconda password NON è "più casuale". La casualità non è nella password stessa, ma nel modo in cui viene generata la password; non si riferisce a ciò che è la password, ma a quello che avrebbe potuto essere.

La sicurezza della password è probabilistica: la sicurezza riguarda il tasso di successo medio dell'attaccante. Una singola password è proprio questa: una singola password. Per parlare dello spazio di possibili password, è necessario immaginare la ripetizione dello scenario un numero enorme di volte. Lo scenario di attacco è in realtà il seguente:

  • Il difensore genera una password. Il metodo di generazione usa alcune scelte casuali (che l'attaccante non sa) e un mix deterministico (che l'attaccante può sapere).

  • L'utente malintenzionato tenta quindi di elaborare la password provando i possibili valori della password, fino a quando non colpisce quella giusta.

Supponiamo che l'hacker conosca tutto tranne le scelte casuali, e quindi cerca la password possibile in un ordine ottimale.

Ad esempio, supponiamo che il metodo di generazione sia: "prendi cinque lettere minuscole casuali, seguite da quattro cifre casuali". Questo metodo di generazione può produrre esattamente 26 5 · 10 4 = 118813760000 possibili password, e sono tutte equiprobabili, quindi l'attaccante ottimale dovrà provare metà di loro in media ( 59.406.880 mila).

Ora, supponiamo che il metodo di generazione sia: "prendi cinque lettere minuscole casuali e quattro cifre casuali, e ordinale a caso". Quel metodo di generazione può produrre 14970533760000 possibili password, di nuovo equiprobabili. Il costo dell'attacco aumenta a 7485266880000, 126 volte il costo implicito nel metodo precedente.

Passiamo ora di nuovo al metodo di generazione: "prendi due lettere casuali, seguite da una cifra casuale, poi una lettera casuale, quindi due cifre casuali, poi due lettere casuali, quindi una cifra casuale". Il numero di password possibili (e equiprobabili) è ora tornato a 118813760000 e il costo di attacco è 59406880000 (in media).

Ora è la parte importante: il tuo primo esempio di password (klens4275) è possibile con entrambi i metodi di generazione password 1 e 2 - ma nel caso del secondo metodo, il costo dell'attacco è molto più alto . Allo stesso modo, il tuo secondo esempio (kl7e25ns4) è possibile con i metodi di generazione password 2 e 3; e, di nuovo, il costo dell'attacco è molto più alto con il metodo 2 rispetto al metodo 3. Quindi questo dimostra che una password non ha forza "da sola". Ciò che conta è come è stata prodotta la password, perché il metodo di generazione definisce lo spazio delle possibili password, quindi la strategia e il costo medio degli aggressori ottimali.

Nota che le strategie di attacco sono anche probabilistiche e hanno senso solo in media . Se consideri uno sforzo di cracking di una singola password, la migliore "strategia" di attacco è: avere la fortuna, basta provare la password corretta al primo passaggio. Questo è intellettualmente insoddisfacente. La nozione di "strategia ottimale" significa in realtà: la strategia che produrrà il più basso costo di attacco in media (oltre miliardi di casi di violazione delle password).

Quindi possiamo riassumere come segue: un "inserimento casuale di lettere" aumenta la sicurezza se (e solo se) è effettivamente parte delle scelte casuali fatte per ogni generazione di password. Nel mio esempio "metodi di generazione password", solo il metodo 2 include un tale elemento. Si noti, tuttavia, che il seguente quarto metodo è addirittura migliore: "prendi 9 lettere o cifre casuali". Questo aumenta il numero di potenziali password per 101559956668416, quasi 7 volte il metodo 2 (ed è il massimo che si possa ottenere se si desidera che la password sia sempre composta da 9 segni che sono solo lettere minuscole e cifre).

    
risposta data 12.08.2014 - 17:39
fonte

Leggi altre domande sui tag