我正在开发一个 Node.js
应用程序,需要使用来自 Laravel
应用程序的相同数据库信息进行登录。
我读过有关 BCrypt
的内容,并尝试使用它来将它生成的哈希密码与存储在数据库中的 Laravel
密码进行比较。
因此,根据 BCrypt
的文档,我需要执行类似的操作:
var salt = bcrypt.genSaltSync(saltRounds);
var hash = bcrypt.hashSync(myPlaintextPassword, salt);
但我不知道如何使用 Laravel
中完全相同的盐来哈希我的密码。我需要使用 APP_KEY 来执行此操作吗?
最佳答案
我喜欢这个答案here 。这比我想象的要容易得多。
var hash = '$2y$08$9TTThrthZhTOcoHELRjuN.3mJd2iKYIeNlV/CYJUWWRnDfRRw6fD2';
var bcrypt = require('bcrypt');
hash = hash.replace(/^\$2y(.+)$/i, '$2a$1');
bcrypt.compare("secret", hash, function(err, res) {
console.log(res);
});
关于NODE.JS - 如何使用 bcrypt 检查 Laravel 哈希密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56656617/