pbkdf2.js 520 B

1234567891011121314151617181920212223
  1. 'use strict';
  2. var tape = require('tape');
  3. var crypto = require('pbkdf2/browser');
  4. var vectors = require('hash-test-vectors/pbkdf2');
  5. tape('pbkdf2', function (t) {
  6. vectors.forEach(function (input) {
  7. // skip inputs that will take way too long
  8. if (input.iterations > 10000) { return; }
  9. var key = crypto.pbkdf2Sync(input.password, input.salt, input.iterations, input.length);
  10. if (key.toString('hex') !== input.sha1) {
  11. console.log(input);
  12. }
  13. t.equal(key.toString('hex'), input.sha1);
  14. });
  15. t.end();
  16. });