Entropia
L'entropia è davvero la preoccupazione maggiore, e l'entropia è determinata dalla quantità di casualità nel processo di generazione della password.
Usiamo una password di 18 caratteri come esempio. Esamineremo solo i caratteri alfanumerici (62 caratteri possibili). Questo dà:
log2 (62 ** 18) = 107
bit di entropia
Se decidi di convertire sempre i primi 3 caratteri in Z per creare è più difficile la forza bruta quindi hai effettivamente rimosso 3 caratteri casuali dalla tua password, lasciandoti con:
log2 (62 ** 15) = 89
bit di entropia
Che è circa un fattore di 1.000.000 più debole. Ovviamente, entrambi sono ancora assolutamente e completamente impossibili da eseguire con forza bruta, quindi se qualcuno sta cercando di forzare la tua password non mi preoccuperei.
È impossibile decifrare password complesse
Tuttavia, vale la pena sottolineare quanto sia impossibile forzare una tale password (nel caso in cui i miei collegamenti non ti convincessero). Un top della linea di hashing MD5 può provare 200 miliardi di hash al secondo. È velocissimo (motivo per cui MD5 non dovrebbe essere utilizzato per le password). Anche la tua password più debole (quando hai sostituito i primi tre caratteri con z
) ha 7.6e26 possibili combinazioni. A 200 miliardi di hash al secondo, ci vorranno solo 120 MILIONI anni per provare tutte le possibilità di password se la password è stata sottoposta ad hash con MD5. Non credo che tu abbia nulla di cui preoccuparti.
L'impatto di aa
Quindi, è meglio iniziare con caratteri "superiori" per rendere più difficile per qualcuno forzare la tua password? Forse sì forse no. Se capita che un attaccante inizi dall'inizio dell'alfabeto, allora sicuramente il tuo verrà risolto "più velocemente" (anche se non ancora in questa vita). Tuttavia, non ci sono garanzie che qualcuno che tenta una forza bruta operi in quell'ordine particolare. Di conseguenza, è impossibile indovinare se una password che inizia con aa
possa essere più crackabile o meno. Anche in questo caso, però, se si utilizza una password casuale lunga, non ci sono effettivamente possibilità che venga hackerata. Quindi non me ne preoccuperei. Quando si tratta di password la lunghezza è re.
Principio di Kerckhoff (h / t Adonalsium)
Penso che il principio di Kerchkhoff sia molto applicabile qui. Questo è, in un certo senso, un "principio" fondamentale della sicurezza. L'idea alla base del principio di Kerchkhoff è che la sicurezza di un sistema dovrebbe essere basata su una, e una sola, chiave / segreta. L'idea è che più "parti" sono necessarie per mantenere un sistema sicuro, più è probabile che alcune parti vengano fuoriuscite e che si verifichi una violazione della sicurezza. Quando parliamo di password è abbastanza chiaro quale sia la "chiave": la password. In particolare, uno lungo e casuale. Come discusso sopra, è davvero tutto ciò di cui hai bisogno. Aggiungendo ulteriori "regole" alla tua password casuale, in realtà stai solo dando potenziali suggerimenti per rendere più facile per un utente malintenzionato che ti sta prendendo di mira indovinare la tua password.