Se le password sono memorizzate in hash, vuol dire che teoricamente esiste un'altra password che potrebbe essere utilizzata per accedere? [duplicare]

3

Da quanto ho capito, nella maggior parte dei siti, le password sono memorizzate come hash; non nella loro forma originale. Ciò significa che se il database viene violato, l'utente malintenzionato vedrà gli (quasi) hash inutili anziché le password effettive.

Affinché il sito Web possa autenticare il tentativo di accesso, blocca il tentativo di una password e controlla se corrisponde all'hash memorizzato. Se corrispondono, ti fa accedere, altrimenti lo nega.

Ho letto su molti siti sebbene nessun algoritmo hash possa produrre hash unici al 100%; le collisioni avverranno sempre.

Significa che, teoricamente, esiste un'altra password che darà lo stesso hash dato una funzione hash, il che significa che c'è potenzialmente più di 1 password che potrebbe essere usata per accedere con (anche se probabilmente l'altra password sarebbe essere quasi casuale per una complicata funzione hash)?

    
posta Carcigenicate 28.06.2015 - 19:29
fonte

1 risposta

9

Esistono infatti infinitamente molte password che producono lo stesso hash. Questa è in realtà più o meno la definizione di cosa significhi essere una funzione di hash: riduzione di uno spazio di input più grande (potenzialmente infinito) in uno spazio di uscita finito più piccolo.

Tuttavia, una "buona" funzione di hash distribuirà i valori di hash tra i valori di input in modo tale che qualsiasi somiglianza nell'input non si traduca in somiglianza nell'output. Per una funzione di hash crittografica , come quelli usati per l'hashing della password, questo requisito è ancora più strong.

Ciò significa, in sostanza, che le password che hanno lo stesso valore di hash tendono ad essere molto dissimili. In particolare, la maggior parte tende a essere stringhe apparentemente casuali molto lunghe, molto illeggibili, criptiche.

    
risposta data 28.06.2015 - 19:33
fonte

Leggi altre domande sui tag