Aufgabe: Nutzer authentifizieren, aber Passwörter nirgendwo im Klartext speichern (weil das die Schwachstelle wäre).
Lösung: man wählt eine Funktion f und speichert nicht das Passwort P, sondern f (P).
Bei Einloggen tippt der Nutzer Q, und das System berechnet f (Q)f (P).
Nachteil: gleiche Passwörter gleiche f (P).
Lösung: das System würfelt S (salt), speichert (S, f (S, P)), und vergleicht mit f (S, Q).
Heutzutage ist dieses Verfahen (mit den Parametern aus den 70er Jahren) durch durch brute-force angreifbar Shadow-Passwörter
Schwachpunkt ist jedoch immer die Strecke von Tastatur zum Rechner
(der ist evtl. weit weg): das Passwort läuft im Klartext durch das Netz
diese Übertragung muß auch verschlüsselt werden
(ssh, https
)