升级到Node 8.10.0后,哈希密码产生不同的输出

时间:2018-03-19 07:07:41

标签: node.js

我将Node.js版本从6.9.x升级为8.10.0。我注意到有些用户无法使用旧密码登录。我检查了原因,似乎8.10.0我的旧代码现在生成另一个哈希。

我确信这个问题与其中一行(可能是两行)有关:

this.salt = Buffer.from(crypto.randomBytes(16).toString('base64'), 'base64');

或者

return crypto.pbkdf2Sync(password, new Buffer(this.salt, 'base64'), 10000, 64, 'sha1').toString('base64');  

我读过Buffercrypto API中有一些更改,但无法找到确切地为我带来这些问题的原因。

如何更改我的代码,以便输出与Node 6.9.x版本相同的哈希值?

0 个答案:

没有答案