ठीक है - मैंने इसका पता लगा लिया।
मेरे स्थानीय सिस्टम पर, मेरे पास नोड का एक नया संस्करण था, लेकिन मेरे परिनियोजित संस्करण (AWS ElasticBeanstalk पर) पर यह v0.10.36 का उपयोग कर रहा था।
अगर आप passport-local-mongoose
. के कोड को देखें तो आप इसे देखेंगे:
var pbkdf2DigestSupport = semver.gte(process.version, '0.12.0');
...
var pbkdf2 = function(password, salt, callback) {
if (pbkdf2DigestSupport) {
crypto.pbkdf2(password, salt, options.iterations, options.keylen, options.digestAlgorithm, callback);
} else {
crypto.pbkdf2(password, salt, options.iterations, options.keylen, callback);
}
};
इसलिए यदि नोड के दो अलग-अलग संस्करणों में एक 0.12.0 से ऊपर और एक नीचे है, तो आपको अलग-अलग क्रिप्टो कार्यक्षमता प्राप्त होने वाली है।