I am using nodeJS Crypto Module to encrypt password.
Sample code:
crypto.pbkdf2Sync(password, salt, 200, 64).toString('base64');
But I am not sure, whenever I call this method, following error shown
TypeError: Object # has no method 'pbkdf2Sync'
Please let me know what is the issues
Thanks all
pbkdf2Sync
was added to the Crypto module in version 0.9.3.
You can either upgrade your installation of Node to 0.9.3 or higher, or you can use the asynchronous version of the function, crypto.pbkdf2
, which requires a callback.
If your previous code looked like
var result = crypto.pbkdf2Sync(password, salt, 200, 64);
var encodedResult = result.toString('base64');
doStuff(encodedResult);
Then the asynchronous code might look like:
crypto.pbkdf2Sync(password, salt, 200, 64, function(err, result) {
var encodedResult = result.toString('base64');
doStuff(encodedResult);
});
This is merely an example; a full discussion of sychronous versus asynchronous operations is vastly outside the scope of this question. One good overview of the topic is How do I return the response from an asynchronous call?