Skip to content

Commit 133debc

Browse files
davidlehndlongley
authored andcommitted
Add pbkdf2 usePureJavaScript test.
1 parent 896097d commit 133debc

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ Forge ChangeLog
3535
- Add "Donations" section to README.
3636
- Add IRC to "Contact" section of README.
3737
- Add "Security Considerations" section to README.
38+
- Add pbkdf2 usePureJavaScript test.
3839

3940
### Removed
4041

tests/unit/pbkdf2.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
var ASSERT = require('assert');
2+
var FORGE = require('../../lib/forge');
23
var PBKDF2 = require('../../lib/pbkdf2');
34
var MD = require('../../lib/md');
45
var UTIL = require('../../lib/util');
@@ -113,5 +114,21 @@ var UTIL = require('../../lib/util');
113114
done();
114115
});
115116
});
117+
118+
it('should derive a password with "usePureJavaScript"', function() {
119+
// save
120+
var purejs = FORGE.options.usePureJavaScript;
121+
// test possible native mode
122+
FORGE.options.usePureJavaScript = false;
123+
var dkHex0 = UTIL.bytesToHex(PBKDF2('password', 'salt', 1024, 20));
124+
// test pure mode
125+
FORGE.options.usePureJavaScript = true;
126+
var dkHex1 = UTIL.bytesToHex(PBKDF2('password', 'salt', 1024, 20));
127+
// check
128+
ASSERT.equal(dkHex0, 'f9d39c571d66a03c2a71a81535b0c2d0396b500a');
129+
ASSERT.equal(dkHex0, dkHex1);
130+
// restore
131+
FORGE.options.usePureJavaScript = purejs;
132+
});
116133
});
117134
})();

0 commit comments

Comments
 (0)