Sind Salze für die Sicherheit unbrauchbar, wenn der Angreifer sie kennt?

Angenommen, ich habe eine Tabelle mit Benutzern eingerichtet, die wie folgt lautet:

CREATE TABLE `users` (
    `id` INTEGER PRIMARY KEY,
    `name` TEXT,
    `hashed_password` TEXT,
    `salt` TEXT
)

Wenn ein Benutzer erstellt wird, wird ein zufällig generiertes Salz erzeugt und in der Datenbank zusammen mit den Ergebnissen von etwas wie gespeichertget_hash(salt + plaintext_password).

Ich frage mich, ob ein böswilliger Benutzer diese Daten verwenden kann, um die Passwörter der Benutzer zu knacken, wenn er sie in die Hände bekommt. Wenn ja, wie könnte dies verhindert werden?

Antworten auf die Frage(7)

Ihre Antwort auf die Frage