Mailinglisten-Archive |
Thomas Feyrer wrote: > Hi, > kommt glaub ich vom "Salz in der Suppe" > der ist jedenfalls dazu da, um das Verschlüsselte noch uneindeutiger zu > machen, Korrekt. Gleiche Passwoerter sollen halt nicht zum gleichen verschluesselten Wert fuehren. > crypt ist zwar schon ein one-way-algoritmus (ich weiß, falsch > geschrieben ;), aber man kann ja immernoch auf die art vorgehen, dass man > durch crypt alle möglichen kombinationen laufen lässt, und die mit dem > anderen vergleicht... > daher ist es auch besser das passwort nicht mit einem festen salt zu > erzeugen, sondern mit einem salt aus dem passwort (z.b. mit > $passwd=substr($string,2,2)) Bitte nicht! Damit landen die ersten beiden Buchstaben des Benutzerpasswortes als Klartext im verschluesselten Wert, was natuerlich unsinnig ist. Wenn ein Passwort eingegeben wird, muss das salt zufaellig gewaehlt werden (im Bereich "./0-9A-Za-z0-9") . Es wird benutzt, um die Hashfunktion des crypt() zu verwuerfeln und landet dann in den ersten beiden Zeichen des verschluesselten Wertes. Wenn eine Passworteingabe ueberprueft werden soll, muessen die beiden ersten Zeichen des vorhandenen, verschluesselten Passwortes als salt fuer die Verschluesselung der Eingabe genommen werden, um das Ergebnis vergleichen zu koennen (weil crypt() ja nur in eine Richtung arbeitet). > > Gruss > Domas Ciao, Harald -- * Harald H.-J. Bongartz bongartz_(at)_physik.uni-bonn.de * * Go ahead - make my day! - Dirty Harry *
php::bar PHP Wiki - Listenarchive