doc*_*pus 25 passwords hash salt password-protection bcrypt
我正在尝试为我正在制作的节点应用程序配置Bcrypt,并且有几个关于盐的问题,我希望有人可以帮助我们回答.
什么是盐'圆'?例如,在GitHub的文档(https://github.com/kelektiv/node.bcrypt.js/)它使用一个盐一轮的10是什么意思是什么呢?
Bcrypt生成的盐总是一样吗?例如,如果我将用户的散列密码保存到数据库,那么它用于散列密码的盐是否与每个密码相同?
如何储存盐?是否可以抵御潜在的攻击?
mar*_*kli 29
小智 10
盐只包含在哈希中,我们在比较时不需要记住。
var myPlaintextPassword='Saifio';
var saltRounds = 10;
const hash = bcrypt.hashSync(myPlaintextPassword, saltRounds);
$2b$10$nOUIs5kJ7naTuTFkBy1veuK0kSxUFXfuaOKdOKf9xYT0KKIGSJwFa
Run Code Online (Sandbox Code Playgroud)
| | | | | | | 哈希值 = K0kSxUFXfuaOKdOKf9xYT0KKIGSJwFa | | | | | 盐 = nOUIs5kJ7naTuTFkBy1veu | | | 成本因素 = 10 = 2^10 次迭代 | 哈希算法 = 2b = BCrypt