pbkdf2
Version:
This library provides the functionality of PBKDF2 with the ability to use any supported hashing algorithm returned from crypto.getHashes()
21 lines (17 loc) • 611 B
JavaScript
;
var Buffer = require('safe-buffer').Buffer;
var toBuffer = require('to-buffer');
var useUint8Array = typeof Uint8Array !== 'undefined';
var useArrayBuffer = useUint8Array && typeof ArrayBuffer !== 'undefined';
var isView = useArrayBuffer && ArrayBuffer.isView;
module.exports = function (thing, encoding, name) {
if (
typeof thing === 'string'
|| Buffer.isBuffer(thing)
|| (useUint8Array && thing instanceof Uint8Array)
|| (isView && isView(thing))
) {
return toBuffer(thing, encoding);
}
throw new TypeError(name + ' must be a string, a Buffer, a Uint8Array, or a DataView');
};