1.0.0 • Published 6 years ago

bcrypt-password-hash v1.0.0

Weekly downloads
3
License
Unlicense
Repository
github
Last release
6 years ago

bcrypt-password-hash

hash password with bcrypt

NPM version

Generation and validation of passwords using bcrypt hashes. Uses same api as pbkdf2-password-hash.

Requires node >= v8.0.0

TOC

Example

Generate new password hash

const passwordHash = require('bcrypt-password-hash')

// generates random salt
passwordHash.hash('password')
  .then((hash) => {
    //> hash === 'bcrypt$2b$10$Y6MKD5ZI5gtkvBdYyqwr1.CrHA66ppM/9YNDvacUuqWZSVduKQcIq'
  })

Generate password hash with different options

passwordHash.hash('password', {saltRounds: 14})
.then((hash) => {
  //> hash === 'bcrypt$2b$14$9zjobUQJ9LVswQrQJ7leKe6NnJKMc3ZouykkhZZ6uFa9ARMZVSUgy'
})

Validate password hash

const hash = 'bcrypt$2b$14$9zjobUQJ9LVswQrQJ7leKe6NnJKMc3ZouykkhZZ6uFa9ARMZVSUgy'
passwordHash.compare('password', hash)
.then((isValid) => {
  //> isValid === true
})

API

hash(password, [salt], [opts])

Generate a new password hash for password using bcrypt.

Parameters

parametertypedescription
passwordString
[salt]Stringoptional: salt
[opts.saltRound=10]Numberoptional: number of iterations

Returns Promise, hashed password in bcrypt$<version>$<saltRound>$<salt><hash> notation.

compare(password, passwordHash)

validate password against passwordHash

Parameters

parametertypedescription
passwordStringplain-text password
passwordHashStringhashed password

Returns Promise, true if hash matches password

Installation

Requires nodejs >= v8.0.0

$ npm install --save bcrypt-password-hash

Tests

$ npm test

LICENSE

UNLICENSE https://unlicense.org