Sono nuovo sull'argomento e volevo sapere il concetto di avere degli hash salati prima di andare ai dettagli tecnici.
Da quello che ho capito
- password - testo semplice
- password hash - password in chiaro crittografata da un algoritmo di hashing irreversibile (in un modo)
- password hash salata - testo casuale + password di testo semplice sottoposta a hash / hash (sale + testo normale)
- una tabella arcobaleno è un elenco di risultati hash precalcolati da un elenco di parole del dizionario, confrontando le password hash con l'elenco nella tabella arcobaleno per una corrispondenza che rivelerà la password effettiva utilizzata dall'utente.
Quindi, 2 delle stesse password in chiaro non avranno lo stesso valore di hash a causa del valore casuale del sale.
Il sale viene talvolta memorizzato con la password hash.
Da quanto sopra,
- Sto presumendo che non ci siano tentativi di password massima - In che modo avere un sale impedisce a un utente malintenzionato di forzare la password nel sistema semplicemente provando la password casuale (ad esempio tramite un elenco di dizionari)? Stanno utilizzando lo stesso meccanismo di accesso legittimo rispetto all'utente effettivo semplicemente tentando / immettendo password diverse per accesso.
- Se il sale previene un attacco arcobaleno avendo i dati casuali aggiunti al testo in chiaro prima dell'hash MD5, il primo criterio è che l'attacco arcobaleno ha un elenco di hash (sale + password) con cui confrontarlo. Ora, il sistema non è già stato compromesso quando l'utente malintenzionato ha l'elenco delle password con hash?
- Se la password salt e hash è archiviata insieme, non sarebbe che quell'utente malintenzionato (invece di usare una tabella arcobaleno) ricalcoli l'elenco di testo del dizionario + il sale recuperato per ricavare i risultati dell'hash e confrontarli con l'hash password nell'elenco recuperato?
È solo che ora la tabella arcobaleno è costruita sulla base di un singolo valore salt per una particolare password con hash. Per un'altra voce password, sarà necessario utilizzare un'altra tabella arcobaleno precalcata basata su quel sale associato.
La mia comprensione è sbagliata? Quindi cosa aiuta veramente il sale?