upash-cli
v0.1.1
Published
Hash password directly from your terminal.
Downloads
16
Maintainers
Keywords
Readme
Synopsis
This package is part of the upash project, which aim is to provide a unified and user-friendly APIs for all the passwords hashing algorithms out there.
In particular, this package allows you to use multiple password hashing algorithms through a simple CLI.
Install
npm install -g upash-cli
Help
Usage
$ upash hash <algorithm name> <password string>
$ upash verify [<algorithm name>] <hash string> <password string>
Algorithms available
argon2
scrypt
bcrypt
pbkdf2
Options for argon2 hashing
--variant <number> Variant of argon2 to use.
Can be one of ['d', 'i', 'id'] for
argon2d, argon2i and argon2id respectively.
--iterations <number> Number of iterations to use
--memory <number> Amount of memory to use in kibibytes.
--parallelism <number> Degree of parallelism to use.
Options for scrypt hashing
--blocksize <number> Amount of memory to use in kibibytes.
--cost <number> CPU/memory cost parameter.
--parallelism <number> Degree of parallelism to use.
Options for bcrypt hashing
--rounds <number> Number of iterations to use as as 2^rounds.
Options for pbkdf2 hashing
--iterations <number> Number of iterations to use.
--digest <string> Name of digest to use when applying the key
derivation function.
Can be one of ['sha1', 'sha256', 'sha512'].
Examples
$ upash hash argon2 'Hello World'
$ upash verify pbkdf2 'hash string' 'Hello World'
$ upash hash bcrypt 'Hello World' --rounds=10
Supported password hashing algorithms
- @phc/argon2 - 🔒 Node.JS argon2 password hashing algorithm following the PHC string format.
- @phc/scrypt - 🔒 Node.JS scrypt password hashing algorithm following the PHC string format.
- @phc/bcrypt - 🔒 Node.JS bcrypt password hashing algorithm following the PHC string format.
- @phc/pbkdf2 - 🔒 Node.JS pbkdf2 password hashing algorithm following the PHC string format.
Contributing
Contributions are REALLY welcome and if you find a security flaw in this code, PLEASE report it.
Authors
- Simone Primarosa - Github (@simonepri) • Twitter (@simoneprimarosa)
See also the list of contributors who participated in this project.
License
This project is licensed under the MIT License - see the license file for details.