Sie haben einen Ersatz "am Ende des SQL-Befehls Des;. Ist auch mit Ausnahme des mySQL Kommandozeilen-Client nicht erforderlich (möglicherweise einen Fehler je nach Client-Bibliothek verursachen)
Ein gesalzenes Passwort-Hash. . ist in der Regel, indem man das Salz string (manchmal wird es gespeichert als Präfix für die Hash-Passwort), die Berechnung des Salzes und Vergleichen des Ergebnisses
In Pseudo-Code verifiziert:
($id, $salt, $stored_hashed_password) = SELECT id, salt, hashed_password FROM members WHERE name=?
$entered_hash_password = hash_password($salt, $entered_cleartext_password)
if ($entered_hash_password == $stored_hash_password) {
say "Yeah, you got it!";
} else {
say "Go away!";
}
der Vergleich muss offensichtlich sein ein Zeichenfolgenvergleich
Update: Sehr einfaches Beispiel über gehasht Passwörter:
Klartext-Passwort: 10 Salz "string": 5 Hash-Funktion: $ unverschlüsselt * $ Salz Gehashte Passwort: 50
Niemand konnte extrahiere das ursprüngliche Passwort aus dem Hash-Passwort. Das Passwort kann 25, 1, 50, 10, 5 sein.
Reale Hash-Funktionen sind viel komplizierter und nicht reversibel.
Die Funktion hash_password() im Pseudocode-Beispiel MUSS verwendet werden, die beim ersten Hashing der Kennwörter für die Speicherung in der Datenbank verwendet wird. Überprüfen Sie die Quellcode-Funktionen für "ändern Sie Ihr Passwort"
ich feste Abfrage, ich habe es in. Java-Datei :) Ich verstehe nicht, wie Hash-Passwort jetzt einrichten? Muss ich die Zeichenfolge, die sie eingeben, in das Hash-Passwort konvertieren? – swipeales
Ich fügte der Antwort noch etwas Text hinzu. Ich denke, dass IPB in PHP geschrieben ist, also sollten Sie dafür gehen. Andernfalls müssen Sie die gleiche Passwort-Hash-Routine in Java neu erstellen. Oder starte mit einer echten Programmiersprache und ignoriere sowohl Java (nur ein Proof-of-Concept für OOP) als auch PHP (Perl Hypertext Preprocessor wie zu ihrer eigenen Homepage);) – Sebastian
danke für das Hinzufügen weiterer Informationen, ja IPB ist in PHP geschrieben, aber Meine Java-Anwendung ist eine Desktop-Anwendung, die Zugriff auf die Forum-Datenbank benötigt. Ich habe viele ipb Foren mit Java-Desktop-App mit Anmeldeinformationen von ipb-Mitglieder-Konto gesehen. Kann ich das auf lange Sicht sowieso einfacher machen? vielleicht Webservice? Schlägst du mir irgendetwas vor? Ich benutze jdbc mysql Treiber für jetzt – swipeales