pbkdf2.js 509 Bytes
var tape = require('tape')
var crypto = require('pbkdf2/browser')

var vectors = require('hash-test-vectors/pbkdf2')

tape('pbkdf2', function (t) {
  vectors.forEach(function (input) {
    // skip inputs that will take way too long
    if (input.iterations > 10000) return

    var key = crypto.pbkdf2Sync(input.password, input.salt, input.iterations, input.length)

    if (key.toString('hex') !== input.sha1) {
      console.log(input)
    }

    t.equal(key.toString('hex'), input.sha1)
  })

  t.end()
})