NodeJs加密错误-Object没有方法pbkdf2Sync

时间:2014-01-16 15:10:56

标签: node.js express node-crypto

我正在使用nodeJS加密模块来加密密码。

示例代码:

crypto.pbkdf2Sync(password, salt, 200, 64).toString('base64');

但我不确定,每当我调用此方法时,都会显示错误

TypeError:对象#没有方法'pbkdf2Sync'

请让我知道问题是什么

全部谢谢

1 个答案:

答案 0 :(得分:1)

pbkdf2Sync已添加到版本0.9.3中的加密模块中。

您可以将Node的安装升级到0.9.3或更高版本,也可以使用函数的异步版本crypto.pbkdf2,这需要回调。

如果您之前的代码看起来像

var result = crypto.pbkdf2Sync(password, salt, 200, 64);
var encodedResult = result.toString('base64');
doStuff(encodedResult);

然后异步代码可能如下所示:

crypto.pbkdf2Sync(password, salt, 200, 64, function(err, result) {
    var encodedResult = result.toString('base64');
    doStuff(encodedResult);
});

这只是一个例子;对同步与异步操作的完整讨论大大超出了本问题的范围。对该主题的一个很好的概述是How do I return the response from an asynchronous call?