je regardais l'exemple de code dans Bcrypt docs:Comment le hachage de noeud/comparer le travail puisque le sel est inconnu
bcrypt.hash(myPlaintextPassword, saltRounds, function(err, hash) {
// Store hash in your password DB.
});
Ce que je ne comprends pas comment je compare les mots de passe si je ne sais pas les sels?
bcrypt.compare(myPlaintextPassword, hash, function(err, res) {
// res == true
});
Après quelques lectures, j'ai appris que le hash
contient déjà le sel et le coût. Mais si c'est le cas, une fois un hacker, obtient ce hash il peut déjà bruteforce les mots de passe peut-être en utilisant des tables arc-en-ciel ou quelque chose?
Est-il préférable de stocker le haschisch et le sel séparément?
Est-ce une façon sécurisée de gérer les mots de passe?