一个好的 npm 模块用于对用户的登录密码进行哈希和加盐处理?

3

在工作中,我们希望通过为每个用户使用唯一的盐来升级我们的节点应用程序身份验证。

我们已经使用 passport 和 passport-local 进行了手写密码验证,在数据库中存储密码哈希并使用公共盐进行加盐。

我想正确地升级它。我知道安全性的第一个规则之一是不要自己做https://crackstation.net/hashing-security.htm

然而,我很难找到一个体面、可靠的npm模块来处理这个问题。使用“salt”或“auth”搜索npm会产生以下模块:

他们的文档不清晰,GitHub上的星数少于10个。
有人能给我推荐一个好的用于密码哈希/盐值/检查的模块吗?

1
你有检查过 bcrypt 模块吗? - Hiren S.
@HirenS。这看起来很完美。将其添加为答案,我会选择它! - Offirmo
1个回答

4

Bcrypt (npm)

选择bcrypt模块来生成带盐的哈希值。请注意,这会使您的node应用程序变慢。单个加密解密操作需要大约100毫秒。

[编辑] 说明:如何安全地存储密码


使用bcrypt似乎是一个很好的安全实践。关于密码存储,是否有任何安全专家推荐bcrypt?请参考http://security.stackexchange.com/questions/4781/do-any-security-experts-recommend-bcrypt-for-password-storage。 - Offirmo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接