Migliora davvero una password se è incluso almeno un carattere di ciascun gruppo (a-z, A-Z, 0-9)? [duplicare]

7

Molte password sono richieste almeno un carattere di ciascun gruppo (lettere maiuscole, minuscole, simboli e numeri) nella password.

Questo migliora davvero la forza delle password?

ad esempio: Is (numero incluso)

3i{M?tofQPI.'C'dfmSK

davvero più strong di (nessun numero)

ni{M?tofQPI.'C'dfmSK

Cerca di mantenere le risposte semplici. Come la domanda può indicare, io non sono veramente esperto in scienza crittografica.

    
posta T. Christiansen 29.11.2016 - 19:41
fonte

5 risposte

20

Per le persone che scelgono semplicemente la password più semplice e consentita, si tratta in effetti di un miglioramento dell'entropia, come password in pa55word (il primo è circa il peggiore che puoi ottenere, il secondo è significativamente migliore ma ancora inaccettabilmente semplice). Password1 è dieci volte più complesso di Password , ma solo perché è più lungo, anche se Passworda sarebbe 26 volte più complesso dell'originale Password .

Per le persone che scelgono password sicure, questo è un ostacolo. Costringe password come ni{M?tofQPI.'C'dfmSK a diventare 3i{M?tofQPI.'C'dfmSK . Da una prospettiva di entropia pura, ci sono meno possibilità in cifre (10) rispetto a caratteri minuscoli (26), maiuscoli (26) o speciali (~ 32). Quella n… password probabilmente * ha 2,6 volte più entropia della 3… password ( 26 / 10 ).

Considera uno schema di password più rigido: devi avere una lettera maiuscola, una cifra e un carattere speciale. Un utente malintenzionato quindi sa che ci sono un numero molto elevato di password che sono impossibili e che quindi non hanno bisogno di essere testate in una forza bruta attacco .

Usando la psicologia, l'attaccante assegnerà anche la priorità al primo carattere come maiuscolo e l'ultimo carattere come una cifra o un carattere speciale, il che significa che 1pa*sswoRd è molto più strong di Password1* (ma di nuovo, inaccettabilmente semplice) . Questa è chiamata "topologia della password" (ulteriori informazioni sulla PathWell: topologia della password di Rick Redman).

* Il calcolo dell'entropia della password è molto difficile e nessuno lo fa correttamente (è impossibile farlo "correttamente" a meno che tu non stia parlando di misurare un generatore di password automatico). Si deve assumere lo scenario peggiore, che lo schema di generazione della password sia completamente noto all'attaccante, poiché non si può fare affidamento sulla sicurezza attraverso l'oscurità. Ho il mio modo di calcolare l'entropia che mi piace di più di altri che ho visto, ma è anche imperfetto. Il miglior consiglio per la generazione di password è quindi di creare un codice di accesso molto lungo che soddisfi la maggior parte delle linee guida raccomandate, ignorando anche il primo e l'ultimo carattere del codice.

Quando cambi, ad es. password a Password , stai raddoppiando l'entropia perché è la posizione più comune da rendere maiuscole (e superiore a vs-inferiore ha due opzioni), mentre cambiare password a pAssword implica almeno che il maiuscolo potrebbe essere ovunque, aumentando invece la complessità di 16 volte in questo esempio (otto caratteri per due casi possibili).

Non dimenticare le parole. Una parola vale 2-3 "caratteri casuali" e non di più. Le parole super oscure (specialmente quelle più rare) possono valere fino a quattro caratteri (vedi il mio link di entropia sopra), ma è meglio essere prudenti nella stima. Dico che se è in un dizionario di ortografia per qualsiasi lingua che conosci, vale la pena 2. Qualsiasi altra parola non banale vale 3. Password e altre password comuni (anche 1qaz2wsx ; guarda la tua tastiera) valgono 1, quindi Password1 è sicuro quanto K% . Dal momento che gli aggressori possono sfruttare le tue unità, qualsiasi "parola" trovata nel tuo computer (esclusi i dizionari) vale al massimo 2 caratteri.

Il random è difficile da inventare per gli umani e ancora più difficile da ricordare (e la maggior parte delle persone considera erroneamente "oscuro" e / o "intelligente" come "casuale"). Ecco perché i gestori di password ti offrono di farlo per te, creando un sistema in cui hai sempre solo bisogno di ricordare una password grande e grossa che potresti, ad es. memorizza metà e incolla l'altra metà nel tuo portafoglio.

    
risposta data 29.11.2016 - 22:02
fonte
5

Per due password generate a caso di 8 caratteri (ad esempio), scegliendo dallo spazio (a-z, A-Z, 0-9) contro (a-z, A-Z) aumenta la forza della password. Puoi calcolare di quanto seguendo le informazioni in Come dovrei calcolare l'entropia di una password? .

In pratica, per le password generate dagli utenti è difficile dirlo. Password1 è davvero migliore di PasswordX ? Probabilmente no. Politiche semplici come questa non costringono realmente gli utenti a scegliere password migliori in pratica.

    
risposta data 29.11.2016 - 20:21
fonte
3

Ci sono due componenti per la risposta a questa domanda: il numero di caratteri che la password consente e la qualità delle password selezionate dagli utenti.

Supponiamo che il tuo sistema permetta di usare il carattere ASCII stampabile nella tua password e che le password abbiano una lunghezza fissa di 5 caratteri (questo è solo un esempio illustrativo che ricordi).

Se i tuoi utenti sono generatori di numeri casuali perfetti, allora ci sono 95 ^ 5 combinazioni possibili che un utente malintenzionato dovrebbe provare e requisiti minimi di "complessità" non migliorerebbero la sicurezza. Dal punto di vista di un attaccante, se la password è "ABCDE", questo non è meno sicuro di "J (@ K >" perché l'attaccante non ha conoscenza a priori del fatto che tutti i caratteri sono lettere; la password è stata trovata e quella combinazione era altrettanto probabile di qualsiasi altra stringa di 5 caratteri. ** In realtà, i requisiti di "complessità" riducono effettivamente l'entropia, in quanto vi sono diverse combinazioni che non sono consentite e quindi possono essere escluse dall'attacco .

Sfortunatamente, le persone non sono generatori di numeri casuali. Affatto. Le persone sceglieranno cose facili da ricordare. Gli aggressori lo sanno e ottimizzeranno il loro attacco di conseguenza dando la priorità alle stringhe che sono significative per un umano (perché ora ha alcune informazioni a priori). È qui che i requisiti di complessità delle password "aiutano" forzando almeno una variazione minima nei caratteri utilizzati. Senza questi requisiti, molte persone semplicemente userebbero le lettere e la maggior parte degli aggressori lo sfrutterebbe ottimizzando le ricerche di conseguenza. In sostanza, i requisiti di complessità rendono il pool di password probabile più grande per gli utenti umani. Se, tuttavia, utilizzi un generatore di numeri pseudo-casuali (si spera che sia crittograficamente sicuro) come Fortuna per generare la tua password, non includere questi requisiti di "complessità".

Infine, ci sono due dimensioni per la complessità della password: varianza in caratteri e numero di caratteri. La creazione di password con numeri e caratteri speciali aumenta di una dimensione, ma è probabilmente molto meglio eliminare i requisiti di complessità a favore di password lunghe (o pass-frasi). L'entropia persa nell'avere solo lettere inglesi nella password è in genere più che compensata avendo 6-10 parole in una passphrase. Questi sono anche generalmente più facili da ricordare rispetto alle password "complesse".

    
risposta data 30.11.2016 - 01:42
fonte
2

Esistono prove a sostegno del concetto che l'aggiunta di requisiti per includere numeri, caratteri maiuscoli, caratteri speciali ecc. riduce la forza della password nella pratica. Questa è probabilmente la migliore spiegazione che ho letto: link

    
risposta data 30.11.2016 - 00:08
fonte
-1

Does this really improve a passwords strength?

Migliora davvero la sicurezza del sistema?

Confrontiamo due scenari:

  1. Sistema A: nessun criterio password applicato
  2. Sistema B: maiuscolo + numero + simbolo

Nel sistema Un utente schifoso può selezionare "password" o "letmein" come password.

Nel sistema B una delle password più semplici che potrei pensare sono "Pa55word!" e "Password1!"

Tenendo conto degli strumenti di complessità, entropia, forzatura bruta e cracking - quale sistema richiede uno sforzo maggiore?

Per gli utenti che utilizzano password complesse comunque ni{M?tofQPI.'C'dfmSK aggiunta / rimozione / sostituzione del numero non sposta un ago. Per password e letmein può fare la differenza.

    
risposta data 30.11.2016 - 13:27
fonte

Leggi altre domande sui tag