encrypt-password
v1.0.1
Published
Encrypt password before beging saved to the database.
Downloads
46
Readme
encrypt-password ·
Encrypt password before beging saved to the database.
Install
npm install --save encrypt-password
Usage
encryptPassword(password[, options])
password
is a required string, the default length is between 6 and 32.options
is an optional parameter. It can be a string or an object. When it's a string, it representsoptions.signature
parameter. When it's an object, please refer to the following explanation.options.signature
accepts a non-empty string, expects generated according to the different users. When encrypting password, we often add a salt string to the password. This signature is the salt.options.secret
accepts a non-empty string, is the unified global secret key. Once set, it can't be modified. Otherwise, the new encrypted password will be inconsistent with the password stored in the database.options.min
accepts an integer, is minimum length of thepassword
. Will throw an error when thepassword
length less than this value.options.max
accepts an integer, is maximum length of thepassword
. Will throw an error when thepassword
length greater than this value.options.pattern
accepts a regular expression. It limits the format of thepassword
. Will throw an error when thepassword
format does not match this value.
This function will encrypt your password twice by sha256
algorithm. The first encryption will take the signature
as the secret key, take the password
as the data. The second encryption will take the secret
as the secret, take the result of the first encryption as the data.
In addition to passing arguments, there is a global way to setting configurations. Passing arguments will override the values of global configurations.
Basic Usage
const encryptPassword = require('encrypt-password')
const encryptedPassword = encryptPassword('password', 'signatrue')
Global Settings
const encryptPassword = require('encrypt-password')
encryptPassword.secret = 'Secrect key never changed.'
encryptPassword.min = 8
encryptPassword.max = 24
encryptPassword.pattern = /^\w{8,24}$/
const encryptedPassword = encryptPassword('password', 'signatrue')
Option Settings
const encryptPassword = require('encrypt-password')
const encryptedPassword = encryptPassword('password', {
min: 8,
max: 24,
pattern: /^\w{8,24}$/,
signature: 'signature',
})
License
MIT.