Domanda

Ho letto circa l'incidente Gawker e diversi articoli sono sorti ad oggetto unicamente utilizzando bcrypt per le password hash e voglio assicurarmi che la mia meccanismo di hashing è abbastanza sicuro per evitare di commutazione a un altro metodo. Nella mia applicazione corrente ho optato per una PBKDF2 implementazione utilizzando sha2-512 e un minimo di 1000 iterazioni .

Posso chiedere il parere sull'uso PBKDF2 vs Bcrypt e se non dovrei implementare un cambiamento?

È stato utile?

Soluzione

Sei bravo con PBKDF2, senza bisogno di passare alla bcrypt.

Anche se, la raccomandazione di utilizzare 1000 iterazioni è stata fatta nel 2000, ora che ci si vuole molto di più.

Inoltre, si dovrebbe fare più attenzione quando si utilizza bcrypt:

  

E 'anche interessante notare che, mentre bcrypt è più forte di PBKDF2 per la maggior parte tipi di password, cade dietro per lunghi passphrase; Ciò deriva dalla incapacità di bcrypt di utilizzare più del primo 55 caratteri di una passphrase Mentre i nostri costi stimati e NIST di.   stime di entropia passphrase suggeriscono limitazione 55 caratteri che di bcrypt non è   probabilità di causare problemi al momento attuale, Implementors di sistemi che si basano su   bcrypt potrebbe essere ben consigliato di lavorare sia a questa limitazione (ad esempio, da “prehashing” una password per farla fi t nel limite di 55 caratteri) o prendere provvedimenti per   impedire agli utenti di porre troppa password di entropia nel 56 ° e successiva   caratteri (ad esempio, chiedendo agli utenti di un sito web di digitare la password in un ingresso   scatola che ha solo spazio per 55 caratteri).

Dalla carta scrypt [PDF]

Detto questo, c'è anche scrypt .

Qualsiasi confronto sarebbe incompleta senza la tabella dalla carta scrypt cui sopra:

Costo stimato di hardware per rompere una password in 1 anno.

conta iterazione per PBKDF2-HMAC-SHA256 utilizzato ci sono 86.000 e 4.300.000.

Altri suggerimenti

Commento (re: il titolo):

  • Non utilizzare la crittografia (reversibile) per memorizzare le password se non è necessario.
  • Dal momento che lei ha presentato un hashing opzione (non reversibile) in alternativa, suppongo che non è necessario reversibilità.
  

opinioni sull'uso PBKDF2 vs Bcrypt e   anche se non dovrei implementare un   cambiamento?

La mia opinione:

Usa PBKDF2 sopra Bcrypt. (Ho appena ho più fiducia in SHA di Blofish, per nessun motivo)

Per quanto riguarda se si dovrebbe 'implementare un cambiamento', non so quello che stai chiedendo.

A cura di separare più chiaramente la crittografia / hashing discussione dal precisare le mie preferenze w / r / t algoritmo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top