Maison > Article > développement back-end > L'utilisation des sels générés a-t-elle un impact sur la vérification du mot de passe dans Bcrypt ?
Bcrypt et Generated Salt : une compréhension plus approfondie
Dans le contexte de la sécurité des mots de passe, bcrypt est souvent utilisé pour créer des mots de passe sécurisés. Cependant, des idées fausses peuvent surgir concernant l'utilisation de sels générés aléatoirement et leur impact sur la vérification du mot de passe.
Comprendre la génération de sel
La classe fournie dans la question comprend une fonction qui génère des sels aléatoires à l'aide de la fonction openssl_random_pseudo_bytes(). Ces sels servent de couche de sécurité supplémentaire en empêchant les attaques arc-en-ciel, qui exploitent les hachages précalculés.
Le rôle de Salt dans le hachage
Lorsque bcrypt est utilisé pour hacher un mot de passe, il combine le mot de passe avec un sel généré. Ce sel est inclus dans la sortie hachée, garantissant que le même mot de passe générera différents hachages avec différents sels.
Vérification du mot de passe
La fonction de vérification dans la classe prend un mot de passe et un mot de passe haché comme entrées. Il hache le mot de passe fourni à l'aide du sel stocké dans le mot de passe haché et compare le résultat avec le mot de passe haché.
Impact du sel dans la vérification
C'est ici que surgit la confusion . Lors de la vérification d'un mot de passe, le même sel doit être utilisé que celui utilisé pour générer le hachage. Ce sel est intégré dans le mot de passe haché.
Lorsque la fonction de vérification est appelée avec le mot de passe correct, la fonction hache le mot de passe fourni en utilisant le sel extrait du mot de passe haché. Ce résultat haché correspondra au mot de passe haché stocké, car il a été généré avec le même mot de passe et le même sel.
En d'autres termes, le processus de vérification ne se déroule pas de manière isolée. Le sel fait partie intégrante du hachage, garantissant que le mot de passe est correctement vérifié sans compter uniquement sur le caractère aléatoire du sel.
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!