Alexander: crypt() liefert unterschiedliche Ergebnisse

Hallo,

ich habe folgendes Perl-Problem:
Aus einem String $cryptkey = "FWpdmner8H" (ist nur ein Bsp.) und einer E-Mailadresse ($email) wird mittels crypt() ein Key $akey generiert:

$akey = crypt("$email","$cryptkey");
$akey =~ s/^$cryptkey//isg;

Ich setze diesen Code in zwei Skripten ein, mit dem selben $cryptkey und übergebe die selbe E-Mailadresse.
Nun habe ich eigentlich erwartet, dass beides mal der selbe $akey herauskommt, was er aber nicht der Fall ist.

Hängt crypt noch von anderen Variablen ab (z.B. Systemzeit) oder habe ich irgendwo einen Fehler eingebaut.

Viele Dank für Euer Hilfe...

Alex :)

  1. hi,

    ich habe folgendes Perl-Problem:
    Aus einem String $cryptkey = "FWpdmner8H" (ist nur ein Bsp.) und einer E-Mailadresse ($email) wird mittels crypt() ein Key $akey generiert:

    $akey = crypt("$email","$cryptkey");

    das was du als $cryptkey bezeichnest ist das sog. salt bei crypt(). Verschiedene salts erzeugen auch ganz verschiedene encrypted strings.

    Siehe auch
    http://i-netlab.de/article/htpasswd.html

    und
    http://i-netlab.de/cgi-bin/crypt.cgi

    Rolf

    1. Hi,

      erstmal vielen Dank für Deine Antwort.

      das was du als $cryptkey bezeichnest ist das sog. salt bei crypt(). Verschiedene salts erzeugen auch ganz verschiedene encrypted strings.

      Gut, das war mir eigentlich schon klar. Ich verwende in beiden Skripten jedoch den selben salt und erhalte trotzdem unterschiedliche Ergebnisse. Daher meine Frage, ob das Ergebnis neben der Eingabe ($email) und dem salt ($cryptkey) noch von weiteren Parametern abhängt wie z.B. Dateipfad oder Systemzeit.

      Denn ich finde in den Skripten sonst keine Unterschiede und erhalten eben unterschiedliche Ergebnisse.

      Viele Grüße...

      Alex :)

      1. Hi,

        Gut, das war mir eigentlich schon klar. Ich verwende in beiden Skripten jedoch den selben salt

        von dem übrigens ausschließlich die ersten beiden Zeichen relevant sind.

        und erhalte trotzdem unterschiedliche Ergebnisse.

        Dann sind die gecrypteten Strings unterschiedlich. Einer von beiden könnte beispielsweise einen (anderen) Zeilenumbruch am Ende haben.

        Daher meine Frage, ob das Ergebnis neben der Eingabe ($email) und dem salt ($cryptkey) noch von weiteren Parametern abhängt

        Nein.

        Cheatah

        --
        X-Will-Answer-Email: No
  2. Hallo Alexander,

    der crypt-Befehl hängt nur von diesen beiden ab. Da muß an Deinem restlichen Code etwas nicht stimmen.
    Was willst Du eigentlich mit der Zeile
    $akey =~ s/^$cryptkey//isg;

    Gruß

    Eidgenosse