Sichern von Code mit Passwort-Hashing mithilfe von PDO
Während der bereitgestellte Code seine Funktionalität erfüllt, ist seine Sicherheit stark gefährdet. Um die Sicherheit zu erhöhen, ist die Implementierung von Passwort-Hashing mit PDO von entscheidender Bedeutung.
Integration von Passwort-Hashing in vorhandenen Code
Um Passwort-Hashing zu integrieren, sollten Sie den Einsatz seriöser Bibliotheken in Betracht ziehen. Für PHP 5.5 verwenden Sie „password_hash()“, PHP 5.3.7 ist passwortkompatibel, während andere sich für „phpass“ entscheiden können. Vermeiden Sie die Erstellung von benutzerdefiniertem Salt, da Bibliotheken diesen Prozess effektiv verwalten.
Implementieren von Hashing für die Registrierung
// Establish PDO connection... $username = $_POST["username"]; $email = $_POST["email"]; $password = $_POST["password"]; $hash = password_hash($password, PASSWORD_DEFAULT); // Hashes password $stmt = $dbh->prepare("insert into users set username=?, email=?, password=?"); $stmt->execute([$username, $email, $hash]); echo "<p>Registration successful</p>";
Überprüfen von gehashten Passwörtern für die Anmeldung
// Establishing PDO connection... $sql = "SELECT * FROM users WHERE username = ?"; $stmt = $dbh->prepare($sql); $result = $stmt->execute([$_POST['username']]); $users = $result->fetchAll(); if (isset($users[0]) { if (password_verify($_POST['password'], $users[0]->password)) { // Valid login } else { // Invalid password } } else { // Invalid username }
Vorteile des Passworts Hashing
Das obige ist der detaillierte Inhalt vonWie kann ich meinen Code mit Passwort-Hashing mithilfe von PDO sichern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!