phpbar.de logo

Mailinglisten-Archive

[php] =?ISO-8859-1?B?Y3J5cHQoKSAtIG1lcmt3/HJkaWdlcyBWZXJoYWx0ZW4=?=

[php] crypt() - merkwürdiges Verhalten

S. Sachse php_(at)_phpcenter.de
Sat, 28 Jul 2001 13:47:19 +0200


HI Liste

Irgenwie habe ich ein komisches Verhalten von crypt().
Folgende Situation. Ich habe passwörter in einer Datenbank liegen die
ich gegen eine Formulareingabe prüfe. beides wird vorher mit crypt()
behandelt. Salt wird natürlich vorher ausgelesen. Funktioniert auch
soweit. Nun dachte ich aber letztens mal das ich mein pwd falsch
eingegeben hätte (ein Buchstabe zuviel) und wartete schon auf die
Fehlermeldung, nur leider blieb diese aus. Also habe ich mal
angefangen rumzuprobieren und versucht das Problem zu finden.
Folgendes kleines Script ist entstanden.

<?
$pass = "dasistmeinpasswort";
$count = 0;
$salt = "fo";
WHILE ($pass[$count] != ''){
        $passwort .= $pass[$count];
        $crypt_pass = crypt($passwort, $salt);
        echo "crypt: $crypt_pass | Passwort: $passwort<br>";
        $count++;
}
?>

Wenn man dies nun laufen läst erkennt man sehr gut das das Passwort
bis zur 7. stelle immer einen unterschieldichen crypt ergiebt, aber
sobald es mehr als siebenstellig wird erhalte ich immerwieder das
selbe Ergebniss. Wenn ich den Salt weglasse kommt es bei jedem zu
einem anderen Ergebniss. Das nützt mir aber nix da ich ja die
Passwörter vergleichen muß und dazu den Salt benötige.

Hat ewentuell jemand was änliches beobachtet, oder mache ich was
falsch. Das Problem tritt übrigens überall auf. Sowohl auf Linux also
auch auf W2k, an der Plattform sollte es also nicht liegen. Auch
php3&4 scheinen ddabei gleich zu reagieren

cya later
Stephan



php::bar PHP Wiki   -   Listenarchive