Добре - разбрах това.
В моята локална система имах по-нова версия на node, но в моята внедрена версия (на 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 и една по-долу, вие ще получите различна крипто функционалност.