bcrypt如何将密码与不同生成的盐进行比较?

时间:2014-08-25 08:38:20

标签: javascript encryption bcrypt

我现在正在使用bcryptjs,而bcrypt提供了一种生成盐的方法

bcrypt.genSalt(10, function(err, salt)

然后它使用生成的盐来加密密码

  bcrypt.hash(password, salt, function(err, hash) 

验证auth它使用比较方法

   bcrypt.compare(password, hash, function(err, res)  

bcrypt如何生成相同的盐来比较密码?可以?

1 个答案:

答案 0 :(得分:2)

每次bcrypt生成salt和hash时,他都会将salt存储在生成的哈希值中。

示例

我们有哈希 - $2y$14$i5btSOiulHhaPHPbgNUGdObga/GC.AVG/y5HHY1ra7L0C9dpCaw8u

格式(标识符) - 2y

费用参数 - 14

盐 - i5btSOiulHhaPHPbgNUGdO

哈希摘要 - bga/GC.AVG/y5HHY1ra7L0C9dpCaw8u

<强> P.S。 你可以在这里阅读 - https://github.com/ademarre/binary-mcf