我们使用此函数在应用程序中加密密码。当我们需要实际字符串时,如何解密它们。var crypto = require('crypto');
function encryptPassword(password) {
var salt = new Buffer('priotzen', 'base64');
return crypto.pbkdf2Sync(password, salt, 10000, 64).toString('base64');
}
谢谢:)
您提供的代码会生成一个单向哈希。如果使用此功能,则通过比较哈希值值来验证密码。无法解密现有密码。如果用户忘记了他们的密码,则进行密码重置。
如果您真的想拥有可检索的密码,则需要查看加密而不是哈希算法。对于此类应用,对称密钥加密(例如AE)可能是合适的。
请记住,加密在计算上比哈希贵得多,更安全。哈希几乎总是首选密码。除非有一些非常令人信服的理由具有可检索的密码,否则您应该将客户端引导到单向哈希密码。