Sécurité des mots de passe avec les fonctions password_hash et password_verify de PHP 5.5
Requête :
Lors du stockage sécurisé des mots de passe à l'aide de PHP 5.5 la fonction password_hash() de , est-il approprié de stocker uniquement le sel dans le base de données ?
Réponse :
Non. Pour une sécurité renforcée des mots de passe, il est essentiel de stocker à la fois le hachage et le sel dans la base de données. password_hash génère de manière pratique une chaîne qui inclut les deux éléments.
Recommandations :
Pour mettre en œuvre un stockage sécurisé des mots de passe :
-
Génération : Utilisez password_hash() pour créer un mot de passe haché : $hashAndSalt = password_hash($password, PASSWORD_BCRYPT);
-
Storage : Insérez $hashAndSalt dans la base de données pour l'utilisateur correspondant.
-
Vérification : Pour vérifier un mot de passe soumis, récupérez le $hashAndSalt stocké dans la base de données et utilisez password_verify() : password_verify($password, $hashAndSalt)
Considérations supplémentaires :
-
Pratiques de sécurité : utilisez MySQLi au lieu de l'obsolète ext/mysql à améliorer sécurité.
-
Prévention des injections SQL : comprenez et atténuez les risques d'injection SQL en suivant les meilleures pratiques (par exemple, instructions préparé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!