1
我正在考虑使用bcrypt(npm install bcrypt
)为我的node.js应用程序散列密码。我决定做两个小脚本,概念验证,基本上按照说明从node.bcrypt.js:为什么node.bcrypt.js不能识别我的密码?
createHash.js
var bcrypt = require('bcrypt'),
password = process.argv[2];
bcrypt.hash(password, 10, function(err, hash) {
console.log(hash);
});
checkPassword.js
var bcrypt = require('bcrypt'),
hash = process.argv[2],
password = process.argv[3];
bcrypt.compare(password, hash, function(err, res) {
console.log(res);
});
尝试出来看起来像这样:
$ node createHash.js bacon
$2a$10$Iy8XG2C5.OMysi2S9UK2fu3omruWE4nXnhSKRD2fmNnImEAqayJs2
$ node checkPassword.js $2a$10$Iy8XG2C5.OMysi2S9UK2fu3omruWE4nXnhSKRD2fmNnImEAqayJs2 bacon
false
由于我对两次调用使用了相同的密码(bacon
),我预计第二次调用返回true,而不是false。任何人都可以解释为什么这不符合预期?
傻我,谢谢 – Shawn