1.0.2 • Published 5 years ago
password-better-hash v1.0.2
password-better-hash
A better password hashing utility with zero dependencies
Utility for hashing passwords, and comparison between the password and the hash. It is using pbkdf2 and pbkdf2Sync functions from the Node.js crypto module.
Install
$ npm install --save password-better-hashUsage
const hash = require('password-better-hash');
console.log(hash('strong-password'));
// output: ok8VoFbft4q83tqfjvUjebCHDK7/PWbUVI+h6ip2NAOVUZBR0JUquQkChJum7 ...const hash = require('password-better-hash');
hash.async('strong-password').then(console.log);
// output: fhge26w/RmgMUL1OI28/I30ktnLzj9Nl2mWdieOFuuo1hbG0cMqzM8omfQYpv4T2 ...const hash = require('password-better-hash');
console.log(hash.compare('strong-password', 'fhge26w/RmgMUL1OI28/I30ktnLzj9Nl2mWdieO...'));
// output: trueconst hash = require('password-better-hash');
hash.compareAsync('strong-password', 'invalid hash')
.then(console.log);
// output: falseAPI
passwordBetterHash(password, options?)
Returns a hash.
password
Type: string
Password you want to hash.
options
Type: object
saltSize
Type: integer
Default: 64
Salt size in bytes.
iterations
Type: integer
Default: 10000
Number of iterations for pbkdf2.
encoding
Type: string
Default: base64
Values: All available encodings that Node.js supports
algorithm
Type: string
Default: sha512
Values: Platform dependent, please use crypto.getHashes() to get the available algorithms.
passwordBetterHash.async(password, options?)
Returns a hash asynchronously.
passwordBetterHash.compare(password, hash, options?)
Returns a boolean.
hash
Type: string
Hash you want to compare.
passwordBetterHash.compareAsync(password, hash, options?)
Returns a boolean asynchronously.