md5-Funktion in PHP und eine Linux-Shell

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • md5-Funktion in PHP und eine Linux-Shell

    Kluges Forum!

    ich habe ein leidiges Problem mit der Berechnung von md5-Summen.
    Lasse ich den md5 Wert von test123 berechnen, so liefert mir der PHP-Interpreter den Wert:

    cc03e747a6afbbcbf8be7668acfebee5

    Sowohl auf einer Linux- wie auch auf einer Windowsmaschine.

    Gebe ich in einer Linux-Shell den Befehl

    Code:
    echo test123 | md5sum
    ein, so erhalte ich einen völlig anderen Wert:

    4a251a2ef9bbf4ccc35f97aba2c9cbda

    Kann mir vielleicht jemand erklären woran das liegen kann? Es sind doch in beiden Fällen 128 Bits, oder nicht. Und die md5 Funktionen müssten doch überall dasselbe produzieren.

  • #2
    Ein Zeilenumbruch ergibt einen anderen MD5-Hash.
    Schau mal:
    PHP-Code:
    <?php
    // ohne Zeilenumbruch
    echo md5('test123'); echo "\n";
    // ohne Zeilenumbruch (vor dem 'c' ZWEI BACKSLASHES - Forum hat einen gefressen)
    echo shell_exec("echo -e \"test123\\c\" | md5sum"); echo "\n";

    // mit Zeilenumbruch
    echo md5("test123\n"); echo "\n";
    // mit Zeilenumbruch
    echo shell_exec("echo test123 | md5sum");
    ?>
    Zuletzt geändert von onemorenerd; 23.06.2005, 12:38.

    Kommentar


    • #3
      Danke!

      Maximum

      Was ich leider nicht nachvollziehen kann ist, wo der Zeilenumbruch in der Konsole herkommt?
      Ich drücke die Enter-Taste schliesslich erst nach dem md5sum-Kommando.

      Kommentar


      • #4
        Das hat mit deinem Enter nix zu tun.
        Der Shell-Befehl echo hängt immer einen Zeilenumbruch an. Direkt in der Shell kann man das mit -n unterbinden, aus PHP heraus braucht es -e und \c. (Korrigiert mich, wenns auch mit -n geht.)

        Kommentar


        • #5
          Hallo onemorenerd,

          ich hab's gerade probiert.
          In PHP funktioniert es auch mit
          PHP-Code:
          echo shell_exec("echo -n test123 | md5sum"); 
          Danke für Deine Hilfe!!!

          Kommentar

          Lädt...
          X