Während die sichere Speicherung von Passwörtern von entscheidender Bedeutung ist, verwendet Ihre vorgeschlagene Methode „password_hash()“ von PHP 5.5. Funktion ist falsch.
password_hash() gibt eine gehashte Zeichenfolge zurück, die sowohl den Hash als auch die enthält Salz. Es wird nicht empfohlen, Salz und Haschisch getrennt aufzubewahren. Speichern Sie stattdessen den zurückgegebenen Hash direkt in der Datenbank.
Um das Passwort zu überprüfen, rufen Sie sowohl den Hash als auch den Salt aus der Datenbank ab und verwenden Sie „password_verify()“ wie folgt:
$hashAndSalt = password_hash($password, PASSWORD_BCRYPT); // Store $hashAndSalt in the database // Verification if (password_verify($password, $hashAndSalt)) { // Verified }
Zusätzlich: Berücksichtigen Sie die veraltete Natur von ext/mysql und die potenziellen Sicherheitslücken in Ihren Datenbankanweisungen. Es ist ratsam, mysqli oder PDO zu verwenden und sich gemäß den Anweisungen in der PHP-Dokumentation vor SQL-Injection-Angriffen zu schützen.
Das obige ist der detaillierte Inhalt vonWie kann ich „password_hash()' und „password_verify()' von PHP 5.5 korrekt für die sichere Passwortspeicherung verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!