|
1 | | -var native = require('crypto') |
| 1 | +'use strict'; |
2 | 2 |
|
3 | | -var checkParameters = require('./lib/precondition') |
4 | | -var defaultEncoding = require('./lib/default-encoding') |
5 | | -var toBuffer = require('./lib/to-buffer') |
| 3 | +var native = require('crypto'); |
| 4 | + |
| 5 | +var checkParameters = require('./lib/precondition'); |
| 6 | +var defaultEncoding = require('./lib/default-encoding'); |
| 7 | +var toBuffer = require('./lib/to-buffer'); |
6 | 8 |
|
7 | 9 | function nativePBKDF2(password, salt, iterations, keylen, digest, callback) { |
8 | | -checkParameters(iterations, keylen) |
9 | | -password = toBuffer(password, defaultEncoding, 'Password') |
10 | | -salt = toBuffer(salt, defaultEncoding, 'Salt') |
| 10 | +checkParameters(iterations, keylen); |
| 11 | +password = toBuffer(password, defaultEncoding, 'Password'); |
| 12 | +salt = toBuffer(salt, defaultEncoding, 'Salt'); |
11 | 13 |
|
12 | 14 | if (typeof digest === 'function') { |
13 | | -callback = digest |
14 | | -digest = 'sha1' |
| 15 | +callback = digest; |
| 16 | +digest = 'sha1'; |
| 17 | +} |
| 18 | +if (typeof callback !== 'function') { |
| 19 | +throw new Error('No callback provided to pbkdf2'); |
15 | 20 | } |
16 | | -if (typeof callback !== 'function') { throw new Error('No callback provided to pbkdf2') } |
17 | 21 |
|
18 | | -return native.pbkdf2(password, salt, iterations, keylen, digest, callback) |
| 22 | +return native.pbkdf2(password, salt, iterations, keylen, digest, callback); |
19 | 23 | } |
20 | 24 |
|
21 | 25 | function nativePBKDF2Sync(password, salt, iterations, keylen, digest) { |
22 | | -checkParameters(iterations, keylen) |
23 | | -password = toBuffer(password, defaultEncoding, 'Password') |
24 | | -salt = toBuffer(salt, defaultEncoding, 'Salt') |
25 | | -digest = digest || 'sha1' |
26 | | -return native.pbkdf2Sync(password, salt, iterations, keylen, digest) |
| 26 | +checkParameters(iterations, keylen); |
| 27 | +password = toBuffer(password, defaultEncoding, 'Password'); |
| 28 | +salt = toBuffer(salt, defaultEncoding, 'Salt'); |
| 29 | +digest = digest || 'sha1'; |
| 30 | +return native.pbkdf2Sync(password, salt, iterations, keylen, digest); |
27 | 31 | } |
28 | 32 |
|
29 | 33 | /* istanbul ignore next */ |
30 | 34 | if (!native.pbkdf2Sync || native.pbkdf2Sync.toString().indexOf('keylen, digest') === -1) { |
31 | 35 | /* eslint global-require: 0 */ |
32 | | -exports.pbkdf2Sync = require('./lib/sync') |
33 | | -exports.pbkdf2 = require('./lib/async') |
| 36 | +exports.pbkdf2Sync = require('./lib/sync'); |
| 37 | +exports.pbkdf2 = require('./lib/async'); |
34 | 38 |
|
35 | 39 | // native |
36 | 40 | } else { |
37 | | -exports.pbkdf2Sync = nativePBKDF2Sync |
38 | | -exports.pbkdf2 = nativePBKDF2 |
| 41 | +exports.pbkdf2Sync = nativePBKDF2Sync; |
| 42 | +exports.pbkdf2 = nativePBKDF2; |
39 | 43 | } |
0 commit comments