Passwortverschlüsselung

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

  • Passwortverschlüsselung

    Hab ein Problem mit der Verschlüsselung. Ich hab mir gerade ein kleines Script geschrieben. Dabei wird das Kennwort beim eintragen in die DB verschlüsselt.

    (Hier der Ausschnitt des Logins)

    $sql = "SELECT ".
    "Id, Nickname, Nachname, Vorname ".
    "FROM ".
    "benutzerdaten ".
    "WHERE ".
    "(Nickname like '".$_REQUEST["name"]."') AND ".
    "(Kennwort = '".md5 ($_REQUEST["pwd"])."')";
    $result = mysql_query ($sql);

    Nun möchte ich im Mitgliederbereich unter 'Daten ändern' die Daten auslesen. In der Datenbank ist das Kennwort verschlüsselt eingetragen (lange Reihe mit Zahlen und Buchstaben). Leider wird beim Auslesen nicht das Passwort sondern die Verschlüsselung ausgelesen. Wie kann ich es wieder beim auslesen entschlüsseln?

    Wäre nett wenn mir jemand helfen könnte.

  • #2
    Garnicht! md5 ist eine Einwegverschlüsselung, d. h. Du kannst damit Daten verschlüsseln, aber nicht wieder herstellen, sondern nur über Vergleiche überprüfen.

    Kommentar


    • #3
      Dann sollte ich die Verschlüsselung weg lassen um die Daten auslesen zu können. Oder hat vielleicht jemand einen anderen Vorschlag?

      Kommentar


      • #4
        genauer gesehen ist md5 keine "verschlüsselung", sondern "hash-wert ermittlung". wenn du eine "verschlüsselung" brauchst, schau dich nach einer um bzw bastel dir selbst eine - für die meisten privaten sachen müsste es reichen.

        Kommentar


        • #5
          Original geschrieben von patlan
          Dann sollte ich die Verschlüsselung weg lassen um die Daten auslesen zu können. Oder hat vielleicht jemand einen anderen Vorschlag?
          das Passwort sollte man nicht anzeigen im Mitgliederbereich, sollte ein User mal sein pw vergessen haben erstelle ein neues und sende ihm es per email zu.
          mfg
          marc75

          <Platz für anderes>

          Kommentar


          • #6
            Original geschrieben von penizillin
            genauer gesehen ist md5 keine "verschlüsselung", sondern "hash-wert ermittlung". wenn du eine "verschlüsselung" brauchst, schau dich nach einer um bzw bastel dir selbst eine - für die meisten privaten sachen müsste es reichen.
            auch wenn es keine Verschlüsselung ist, kann man es wunderbar dazu verwenden.
            mfg
            marc75

            <Platz für anderes>

            Kommentar


            • #7
              Original geschrieben von patlan
              um die Daten auslesen zu können.
              marc: dazu nicht. generell hast du natürlich recht - md5 eignet sich für die passwortverwaltung wunderbar.

              Kommentar


              • #8
                Würde aber eher zu SHA-1 als zu md5 greifen.....

                Wenn es ein bisschen besser sein soll und der Hoster noch ein mycrypt Modul spendiert dann darf es natürlich auch das sein......
                [color=blue]MfG Payne_of_Death[/color]

                [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
                [color=red]Merke:[/color]
                [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

                Murphy`s Importanst LAWS
                Jede Lösung bringt nur neue Probleme
                Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
                In jedem kleinen Problem steckt ein großes, das gern raus moechte.

                Kommentar


                • #9
                  wobei ich mycrypt für pwds schon wieder suboptimal finde. schließlich kann man dann ggf. das pwd wieder entschlüsseln.

                  Kommentar


                  • #10
                    Original geschrieben von TobiaZ
                    wobei ich mycrypt für pwds schon wieder suboptimal finde. schließlich kann man dann ggf. das pwd wieder entschlüsseln.
                    Das stimmt allerdings....Wobei Aspekte wie ein Zufallsgenerator hier vielleicht dies unterbinden könnte
                    [color=blue]MfG Payne_of_Death[/color]

                    [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
                    [color=red]Merke:[/color]
                    [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

                    Murphy`s Importanst LAWS
                    Jede Lösung bringt nur neue Probleme
                    Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
                    In jedem kleinen Problem steckt ein großes, das gern raus moechte.

                    Kommentar


                    • #11
                      hab hier noch was von mir selbst gecodetes gefunden:


                      PHP-Code:
                      function decrypt ($string) {
                          
                      $length=strlen($string);
                          
                      $n=0;
                          while (
                      $n<$length) {
                              
                      $crypt=chr(ord(substr($string$n1))+(44*$n));
                              if(
                      $str) {$str.=$crypt; }
                              if(!
                      $str) {$str=$crypt; }
                              
                      $n++;
                          }
                          return 
                      $str;
                      }
                      function 
                      encrypt ($string) {
                          
                      $length=strlen($string);
                          
                      $n=0;
                          while (
                      $n<$length) {
                              
                      $decrypt=chr(ord(substr($string$n1))-(44*$n));
                              if(
                      $str) {$str.=$decrypt; }
                              if(!
                      $str) {$str=$decrypt; }
                              
                      $n++;
                          }
                          return 
                      $str;

                      das ganze lässt sich natürlich beliebig erweitern.

                      Kommentar

                      Lädt...
                      X