Comment utiliser Bcrypt pour hacher des mots de passe en PHP
Bcrypt est un algorithme de hachage reconnu, connu pour son évolutivité et son efficacité. Il intègre un nombre configurable de tours pendant le processus de hachage, ce qui rend les attaques par force brute coûteuses et peu pratiques en termes de calcul. De plus, il impose l'utilisation de sels, garantissant que des mots de passe identiques produisent des hachages distincts, empêchant ainsi les attaques précalculées.
Implémentation de bcrypt en PHP
PHP versions 5.5 et supérieures prennent en charge nativement hachage de mot de passe. Utilisez la fonction password_hash() pour générer des hachages bcrypt :
echo password_hash('rasmuslerdorf', PASSWORD_DEFAULT) . "\n"; // e.g., y$xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Pour authentifier les mots de passe saisis par l'utilisateur par rapport aux hachages existants :
$hash = 'y$BCryptRequires22Chrcte/VlQH0piJtjXl.0t1XkA8pw9dMXTpOq'; if (password_verify('rasmuslerdorf', $hash)) { echo 'Password is valid!'; } else { echo 'Invalid password.'; }
Utilisation de Bcrypt dans les versions PHP antérieures à 5.5
Pour les versions PHP 5.3.7 et inférieures, utilisez la fonction crypt() couplée avec la classe de compatibilité Bcrypt téléchargeable depuis GitHub.
Instancier la classe Bcrypt :
$bcrypt = new Bcrypt(15);
Hacher un mot de passe :
$hash = $bcrypt->hash('password');
Vérifier un mot de passe :
$isGood = $bcrypt->verify('password', $hash);
Conclusion
Bcrypt est un outil indispensable pour sécuriser les mots de passe des utilisateurs, empêcher les accès non autorisés et maintenir l'intégrité des données. L'implémentation de bcrypt en PHP est une mesure de sauvegarde cruciale qui protège vos applications contre les attaques basées sur des mots de passe.
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!