|
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