Wie verlaufen Registrierung und Anmeldung auf Websites, die ihre Benutzerkennwörter MD5-verschlüsselt in einer Datenbank speichern?

Schritt 1: Registrierung:

Bei der Registrierung werden meistens die Mail-Adresse und das Passwort (verdeckt) abgefragt. Beide Angaben werden dann über einen sicheren Übertragungweg zum Server übertragen. Sicherer Übertragungsweg bedeutet dabei, dass https als Protokoll genutzt wird (http reicht nicht). Mail-Adresse und Passwort werden also vom Internet-Browser verschlüsselt an den Server übermittelt.

Schritt 2: Die verschlüsselten Registrierungsdaten erreichen den Server:
Nachdem die Registrierungsdaten auf dem Server angekommen sind, werden sie dort entschlüsselt. Aus dem Passwort wird der passende MD5-Hash berechnet. Dieser MD5-Hash wird zusammen mit der Mail-Adresse in der Datenbank gespeichert. Das Passwort wird nun nicht mehr benötigt und vernichtet (es verschwindet aus dem Speicher des Servers). Damit ist der Registrierungsvorgang abgeschlossen. Ein Eintrag in einer Datenbank sieht dann z.B. so aus:


Schritt 3: Anmeldung:
Bei der Anmeldung werden wiederum die Mail-Adresse und das Passwort (verdeckt) abgefragt. Beide Angaben werden dann über einen sicheren Übertragungweg zum Server übertragen. Sicherer Übertragungsweg bedeutet auch hier, dass https als Protokoll genutzt wird! Mail-Adresse und Passwort werden vom Browser verschlüsselt an den Server übermittelt.

Schritt 4: Die verschlüsselten Anmeldedaten erreichen den Server:
Nachdem die Anmeldedaten auf dem Server angekommen sind, werden sie dort entschlüsselt. Aus dem Passwort wird wieder der passende MD5-Hash berechnet. Dann wird in der Datenbank nachgesehen, ob es diese Kombination von Mail-Adresse und MD5-Hash dort gibt. Falls ja, war die Anmeldung erfolgreich. Falls nein, erhält der Anwender eine Fehlermeldung. Das Passwort wird nun nicht mehr benötigt und vernichtet (es verschwindet aus dem Speicher des Servers). Damit ist der Anmeldevorgang abgeschlossen.