Lors de la protection des mots de passe des utilisateurs dans une base de données, il est crucial d'utiliser des techniques de cryptage robustes. PHP 5.5 a introduit deux fonctions essentielles, password_hash() et password_verify(), conçues spécifiquement à cet effet. Examinons leur bon usage.
La méthode que vous proposez, qui consiste à transmettre un coût et un sel unique à password_hash(), n'est pas optimale. Au lieu de cela, comptez sur le mécanisme de sel et de coût intégré, qui génère ces valeurs en toute sécurité en interne. La fonction renvoie un hachage qui combine à la fois le hachage et le sel.
Stockage du hachage et du sel :
$hashAndSalt = password_hash($password, PASSWORD_BCRYPT);
Insérez $hashAndSalt dans la base de données au lieu de le diviser le sel et le hachis.
Vérification du Mot de passe :
if (password_verify($password, $hashAndSalt)) { // Verified }
Récupérez $hashAndSalt de la base de données et comparez-le directement avec le mot de passe fourni à l'aide de password_verify(). Il gérera la comparaison du sel en interne.
Considérations de sécurité supplémentaires :
Bien que l'utilisation de ces fonctions constitue une étape vers une gestion sécurisée des mots de passe, envisagez des mesures supplémentaires telles que :
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!