Sind gehashte und gesalzene Passwörter sicher gegen Wörterbuchangriffe?

Ich verstehe, dass Salze den gleichen Passwort-Hash auf verschiedene Werte setzen. Salze werden jedoch normalerweise mit dem Kennwort in der Datenbank gespeichert. Nehmen wir also an, ich bin ein Angreifer. So könnte ich einen Wörterbuchangriff gegen ein Salz verwenden (beachten Sie, dass ich in diesem Beispiel der Kürze halber keine 128-Bit-Hashes oder -Salze schreibe):

user_pw = 'blowfish'

Given:
email = '[email protected]'
hash = '1234567890'
salt = '0987654321'

function attack(){
  for each(word in dictionary)
    md5( word * salt ) == hash ? cracked_one(email, word)
}

Ich verstehe, dass dies Hacker daran hindert, Regenbogentabellen zu benutzen ... aber es scheint nicht Wörterbuchangriffe zu verhindern. Ich schätze, Sie könnten dem Hash-Algorithmus noch etwas hinzufügen, aber aus Sicherheitsgründen müssen wir davon ausgehen, dass die Angriffsmethode bekannt ist.

Es scheint also, dass Salting Hacker daran hindert, herauszufinden, welche Passwörter wahrscheinlich Wörterbuchpasswörter sind (solche, die mehrere Benutzer haben), und Regenbogenangriffe verhindert ... Wörterbuchangriffe werden jedoch nicht verhindert.

Ist das eine richtige Analyse? Anregungen für mehr Sicherheit?

Vielen Dank!

Antworten auf die Frage(5)

Ihre Antwort auf die Frage