Perché le persone usano altri algoritmi, come bcrypt per proteggere le password, e non solo poche migliaia di iterazioni di un algoritmo della famiglia SHA-2?
Nota: diciamo per esempio qualche migliaio è 10.000.
Bcrypt implementa l'hashing, la prova del lavoro e la salatura nel modo corretto. Il punto di usare bcrypt è 1) non reinventare la ruota 2) ottenere roba crypto è difficile se qualcuno va in giro fai-da-te
Oh, e puoi aumentare il parametro di costo senza la necessità di aggiornare tutti gli altri hash (così puoi chiedere gentilmente agli utenti di cambiare la loro password e tutto funzionerà perfettamente)
Il punto di utilizzo di bcrypt sull'hash regolare è che la limitazione ( stretching chiave ) può essere implementata facilmente e in modo affidabile, il che rende brute-forcing un lavoro che richiede tempo, quindi impossibile. Le funzioni di hash anche con migliaia di iterazioni sono ancora relativamente facili e nessun lavoro nel tempo per il processore. Bcrypt è progettato per resistere alla forza bruta mentre si sviluppano crittografia o elaborazione informatica. Se il crack delle password diventa più semplice, è sufficiente aumentare il parametro di costo.
Leggi altre domande sui tag hash