initial commit
This commit is contained in:
43
node_modules/pbkdf2/index.js
generated
vendored
Normal file
43
node_modules/pbkdf2/index.js
generated
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
'use strict';
|
||||
|
||||
var nativeImpl = require('crypto');
|
||||
|
||||
var checkParameters = require('./lib/precondition');
|
||||
var defaultEncoding = require('./lib/default-encoding');
|
||||
var toBuffer = require('./lib/to-buffer');
|
||||
|
||||
function nativePBKDF2(password, salt, iterations, keylen, digest, callback) {
|
||||
checkParameters(iterations, keylen);
|
||||
password = toBuffer(password, defaultEncoding, 'Password');
|
||||
salt = toBuffer(salt, defaultEncoding, 'Salt');
|
||||
|
||||
if (typeof digest === 'function') {
|
||||
callback = digest;
|
||||
digest = 'sha1';
|
||||
}
|
||||
if (typeof callback !== 'function') {
|
||||
throw new Error('No callback provided to pbkdf2');
|
||||
}
|
||||
|
||||
return nativeImpl.pbkdf2(password, salt, iterations, keylen, digest, callback);
|
||||
}
|
||||
|
||||
function nativePBKDF2Sync(password, salt, iterations, keylen, digest) {
|
||||
checkParameters(iterations, keylen);
|
||||
password = toBuffer(password, defaultEncoding, 'Password');
|
||||
salt = toBuffer(salt, defaultEncoding, 'Salt');
|
||||
digest = digest || 'sha1';
|
||||
return nativeImpl.pbkdf2Sync(password, salt, iterations, keylen, digest);
|
||||
}
|
||||
|
||||
/* istanbul ignore next */
|
||||
if (!nativeImpl.pbkdf2Sync || nativeImpl.pbkdf2Sync.toString().indexOf('keylen, digest') === -1) {
|
||||
/* eslint global-require: 0 */
|
||||
exports.pbkdf2Sync = require('./lib/sync');
|
||||
exports.pbkdf2 = require('./lib/async');
|
||||
|
||||
// native
|
||||
} else {
|
||||
exports.pbkdf2Sync = nativePBKDF2Sync;
|
||||
exports.pbkdf2 = nativePBKDF2;
|
||||
}
|
||||
Reference in New Issue
Block a user