Sécuriser votre code avec PDO et hachage de mot de passe
Un code non sécurisé présente des risques importants. Bien que le hachage MD5 soit inadéquat, la mise en œuvre du hachage de mot de passe avec PDO peut améliorer la sécurité de votre code. Ce guide propose une approche étape par étape pour intégrer le hachage de mot de passe dans votre code.
Étape 1 : Choisissez une bibliothèque
Évitez le hachage de mot de passe DIY. Choisissez une bibliothèque réputée qui gère la génération de sel et d’autres complexités pour vous. Voici quelques options populaires :
Étape 2 : Intégrer à l'inscription
Dans votre code d'inscription, calculez le mot de passe haché à l'aide de la bibliothèque de votre choix :
$password = password_hash($password, PASSWORD_DEFAULT); $stmt = $dbh->prepare("insert into users set username=?, email=?, password=?"); $stmt->execute([$username, $email, $hash]);
Étape 3 : Améliorer la fonctionnalité de connexion
Dans votre code de connexion, utilisez la fonction password_verify() pour comparer le mot de passe saisi avec le hachage stocké :
$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 }
En suivant ces étapes, vous pouvez facilement mettre en œuvre le hachage de mot de passe avec PDO, protégeant ainsi votre application des attaques par force brute et des violations de données. .
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!