La risposta breve è, usa bcrypt, non SHA256. Bcrypt hash già la password, quindi se stai usando bcrypt, non ha senso usare sia bcrypt + SHA256; non sarà più strong Bcrypt da solo è sufficiente.
Ci sono molti consigli su questo sito proprio su questo argomento. Cerca "hashing password" e lo troverai.
Vedi, ad esempio, Come fare in modo sicuro le password di hash? , Quale metodo di hashing della password dovrei usare? , Algoritmo di hash della password più sicuro? , Gli esperti di sicurezza consigliano bcrypt per l'archiviazione della password? .
Si desidera utilizzare un algoritmo di hashing della password che sia il più lento possibile, per impedire attacchi di dizionario offline sulle password delle persone se il database è compromesso.
Certo, non è abbastanza. Ci sono una serie di passi da fare per utilizzare le password nel modo più sicuro possibile. Eccone alcuni:
-
Utilizza SSL / TLS a livello di sito. Qualsiasi tentativo di visitare il tuo sito tramite HTTP deve immediatamente reindirizzare a HTTPS.
-
Abilita HSTS sul tuo sito. Questo indica ai browser di connettersi solo a te tramite HTTPS. Paypal lo usa. È supportato nelle versioni recenti di Firefox e Chrome.
Cerca nel sito e troverai molto altro.