Hi,
ich bin darbei ein neues Login-System zu planen.
Die Frage ist wie speicher ich Benutzername und Passwort in der Datenbank ab?md5 ist mir zu unsicher, d.h. entweder per Hash-Funktion sha1() oder als Rijndael Projekt mit AES Verschlüsselung?
Leute mit noch eher wenig Programmiererfahrung scheinen sich um solche Punkte immer besonders Gedanken zu machen - dabei schiessen sie die sicherheitsrelevanten Boecke in ihren Applikationen idR. an ganz anderen Stellen.
Warum ist dir MD5 "zu unsicher"? Irgendwo irgendwas gelesen ...?
Den Benutzernamen nicht im Klartext abzulegen, ist i.a.R. nicht sinnvoll.
Und zum Password fuegt man beim Hashen ein eigenes Salt hinzu, um (bei bekanntwerden von Hashes) das simple Nachschlagen in Rainbow-Tables zu unterbinden.
Es wird gehasht, nicht verschluesselt - es gibt keinerlei Notwendigkeit, dort etwas "rueckgaengig" machen zu wollen. Wer sein Passwort vergisst, bekommt eben ein temporaeres neues zugeteilt.
Sind da große Performance unterschiede?
Auch ein zu vernachlaessigender Punkt - schliesslich gehoert das Hashen des Vergleichswertes beim Login zu den Aktionen, die verglichen mit "allem anderen" absolut selten durchgefuehrt werden muessen.
MfG ChrisB