Man salzt doch Hashes vor allem dafür, damit in einer Passwortdatenbank gleich gewählte Passwörter eben nicht den gleichen Hash bekommen.
Das ist ein wesentlicher Punkt, weswegen man Hashes salzt. Es gibt aber noch einen weiteren: Für ungesalzene Hashes kursieren Regenbogentabellen, mit deren Hilfe man kostengünstig Kollisionen berechnen kann. Wenn der Hash also irgendwie in die falschen Hände gerät, kann ein Angreifer den Hash in einer Regenbogentabelle suchen und so an das Passwort gelangen. Ist der Hash aber gesalzen, müsste der Angreifer erst eine neue Regenbogentabelle erzeugen, das ist (komplexitätstheoretisch) ein deutlich schwierigeres Problem.
Wir wissen beide, dass du im Allgemeinfall Recht hast. Aber ich finds schwierig, immer mit allgemeingültigen Antworten aufzuwarten, die die Bedürfnisse des Anwendungsfalls nicht mit einbeziehen.
Da geb ich dir grundsätzlich Recht. Meine Intention ist auch nicht, dass der TO sich erst einem Kryptographie-Studium widmet, bevor er sein Spiel in die Tat umsetzt. Meine Hoffnung ist, dass sich Mitleser(innen), wenn sie je in die Situation geraten, ein sicheres Authentifizierungsystem implementieren zu müssen, daran erinnern, dass es für den Ernstfall deutlich mehr zu berücksichtigen gilt. Ich will für die Komplexität von sicherheitskritischen Software-Systemen sensibilisieren. Insofern ist es meinem Ziel sogar dienlich, wenn ein(e) Leser(in) aus seiner/ihrer Komfortzone gerissen wird und sich von der Materie überfordert fühlt. Das mag ein unangehmes Gefühl in ihm oder ihr auslösen, aber es hat dennoch etwas Positives. Im besten Fall ist das die Erkenntnis, dass es (noch) zu früh ist die Verantwortung für eine solche Aufgabe zu übernehmen und der Weg dorthin zwar steinig ist, aber immerhin begehbar.