Maison > développement back-end > tutoriel php > Pourquoi « password_verify » de PHP renvoie-t-il False ?

Pourquoi « password_verify » de PHP renvoie-t-il False ?

Linda Hamilton
Libérer: 2024-12-04 03:18:12
original
531 Les gens l'ont consulté

Why is PHP's `password_verify` Returning False?

Dépannage de Password_Verify renvoyant False

Comme vous utilisez PHP 5.5 pour vérifier un mot de passe haché avec password_verify, il est essentiel d'enquêter sur les raisons potentielles pour son faux retour inattendu.

Longueur de la colonne Considération

Un problème courant avec password_verify provient de la longueur du mot de passe haché stocké dans la base de données. Le manuel recommande de stocker les mots de passe hachés dans une colonne pouvant contenir plus de 60 caractères, 255 étant un choix optimal. Si la colonne de votre base de données est trop courte pour accueillir le mot de passe haché généré par les fonctions de hachage de mot de passe de PHP, cela peut conduire à des résultats de vérification incorrects.

Par conséquent, vérifiez que la colonne de votre base de données a une longueur suffisante pour stocker le mot de passe haché. Si la colonne est effectivement trop courte, agrandissez-la à une taille appropriée (par exemple, 255 caractères) et assurez-vous que le mot de passe haché stocké est mis à jour en conséquence.

Conseils de dépannage supplémentaires

Au-delà de la longueur des colonnes, il peut y avoir d'autres facteurs contribuant aux faux return :

  • Hachage de mot de passe incorrect : Vérifiez à nouveau que vous utilisez la fonction de hachage et le sel corrects lors de la génération du mot de passe haché pour le stockage.
  • Incompatibilité de type de données : Dans votre code PHP, assurez-vous que le mot de passe fourni par l'utilisateur et le mot de passe haché récupéré de la base de données sont du même type. même type de données (par exemple, les deux chaînes).
  • Espaces de fin : Supprimez tout espace de fin du mot de passe fourni par l'utilisateur et du mot de passe haché avant de les vérifier.
  • Fonctions obsolètes : Assurez-vous que vous utilisez la version actuelle de PHP et les fonctions de hachage de mot de passe correctes. Évitez d'utiliser des fonctions obsolètes comme md5 ou sha1.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal