Generates secure password hashes with SHA-256 and bcrypt. Supports TypeScript.
npm install p4ssw0rd
import * as p4ssw0rd from 'p4ssw0rd';
- No password length limit
- Output hash is always 60
- Configurable bcrypt cost
- Only one dependency!
Uses bcrypt.js to generate the bcrypt hash. For SHA-512 hash the Node.js Crypto Module is used.
const hash = p4ssw0rd.hash(password, options?);
Creates a hash from supplied password. Hash will always be 60 characters long.
if (p4ssw0rd.check(password, hash, options?)) {
// Passwords match
}
Validates the input password against a stored hash. Returns true if password is correct.
p4ssw0rd.simulate();
Simulates validating a real hash. Usefull against timing attacks on login pages.
{
cost: 10, // The "cost" of bcrypt hash, default is 10
}
- Clone the git repository
npm install
(Make sureNODE_ENV
is not set toproduction
)- Make changes
npm run build
npm test
That's it!