Heim > Datenbank > MySQL-Tutorial > Wie kann ich Benutzerkennwörter in PHP 5.5 mit „password_hash' und „password_verify' sicher speichern und überprüfen?

Wie kann ich Benutzerkennwörter in PHP 5.5 mit „password_hash' und „password_verify' sicher speichern und überprüfen?

Susan Sarandon
Freigeben: 2024-12-13 11:49:11
Original
842 Leute haben es durchsucht

How Can I Securely Store and Verify User Passwords in PHP 5.5 Using `password_hash` and `password_verify`?

Passwort_hash und passwort_verify von PHP 5.5 effektiv nutzen

Bei der Betrachtung der Sicherheit von Benutzerpasswörtern stellt sich die Frage nach der geeigneten Methode zum Speichern Passwörter in PHP 5.5. Die Funktion „password_hash“, die mit PHP 5.5 eingeführt und später für PHP 5.3.7 implementiert wurde, erwies sich als sichere Option für die Passwortverwaltung.

Im Gegensatz zu der in der Frage vorgestellten ersten Implementierung, bei der das Salt getrennt vom gespeichert wurde Hash besteht der empfohlene Ansatz darin, sowohl Hash als auch Salt gemeinsam zu speichern. Die Funktion „password_hash“ generiert eine Zeichenfolge, die beide Elemente kapselt, sodass kein separater Speicher erforderlich ist.

Passwort mit „password_hash“ speichern

Die richtige Art, das Passwort eines Benutzers mit „password_hash“ zu speichern lautet wie folgt:

$hashAndSalt = password_hash($password, PASSWORD_BCRYPT);
// Store $hashAndSalt in database against the user
Nach dem Login kopieren

Passwort bestätigen mit passwort_verify

So überprüfen Sie das eingegebene Passwort eines Benutzers:

// Fetch $hashAndSalt from database
if (password_verify($password, $hashAndSalt)) {
   // Verified
}
Nach dem Login kopieren

Dieser Ansatz stellt sicher, dass sowohl Hash als auch Salt verwendet werden, was die Sicherheit Ihrer Passwortspeicherung erhöht.

Das obige ist der detaillierte Inhalt vonWie kann ich Benutzerkennwörter in PHP 5.5 mit „password_hash' und „password_verify' sicher speichern und überprüfen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage