Intendi dire che le persone usano password come "abc123" e le loro hash su SHA-256 per ottenere "6ca13d52ca70c883e0f0bb101e425a89e8624de51db2d2392593af6a84118090".
E poi pensano che il secondo sia più sicuro di "abc123".
Ma è?
Sì, la versione con hash è in alcuni casi più sicura quando parliamo di entropia della password. Perché è più lungo, ha più cifre e caratteri casuali, ...
Tuttavia, questo è qualcosa che chiamiamo sicurezza attraverso l'oscurità.
Questo metodo è sicuro, a meno che nessuno sappia che stai usando questo.
Perché, in realtà è solo un caso di hashing delle parole deboli su SHA-256 e vedere se corrispondono.
I password cracker quando si esegue un attacco di dizionario definiscono le regole.
Questo può essere: "prova anche con '123' dopo ogni parola nel dizionario", o "crea la prima lettera delle parole nel dizionario in maiuscolo", ma possono anche essere "hash SHA-256 ogni parola nel dizionario" dizionario e provalo ".
E quella regola è probabilmente l'uso di questo malintenzionato.
E sì, SHA-256 è relativamente lento (che è una buona cosa), quindi l'attaccante avrebbe bisogno di hardware migliore e migliore. Ma le persone dispongono di sistemi informatici dedicati con, ad esempio, quattro GPU Nvidia Titan di primo livello.
Che può ancora fare un sacco di MD5 (SHA-256 ($ pass)) cerca in un dato periodo di tempo.
E per non parlare del fatto che anche le botnet sono ancora una cosa, combinando un sacco di computer per avere più potenza.
tl; dr:
È solo una questione di usare buone regole.
E forse solo SHA-256 le parole che sono corte / deboli, invece di tutto per risparmiare tempo.
Suggerimento per l'utilizzo delle password di salvataggio:
Prendi per esempio cinque parole facili da ricordare:
Ad esempio: batteria, lampada, soggiorno, candela, fuoco.
(La batteria della mia lampada era vuota, quindi ho preso la candela nel mio salotto con ).
In questo modo, la tua password è:
batterylamplivin_groomcandlefirespeed
In questo modo hai + - 35 caratteri, abbiamo inserito un '_' casuale
nel mezzo di una parola per renderlo molto più difficile da indovinare per l'attaccante.
E quando l'attaccante sta facendo un attacco al dizionario con regole di combinazione di parole. Avrebbe bisogno di combinare queste cinque parole nel giusto ordine, includendo una parola come "fuoco", e quindi una regola per posizionare un _ in ogni punto della stringa.
Con altre parole, questa è una password complessa, facile da ricordare e facile da digitare.
Un gestore di password è ancora migliore, ma la password sopra potrebbe essere utilizzata come password principale per il gestore.
Suggerimenti per il salvataggio delle password in un database:
Utilizza algoritmi forti come SHA-256, ma ancora meglio: Bcrypt.
Leggi i documenti su come salare e anche pepe,
lascia che il tuo codice venga esaminato da più persone prima di utilizzarlo,
non provare a creare algoritmi propri.