Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including upash-cli with all npm packages installed. Try it out:

upash-cli lists no main file and has no index.js, so it can't be directly required. If this is a mistake, please let us know. It may however contain internal files that you can require manually:

// require("upash-cli/[??]")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

upash-cli v0.1.1

Hash password directly from your terminal.

upash

Mac/Linux Build Status Windows Build status Codecov Coverage report Known Vulnerabilities Dependency Status


Mentioned in Awesome NodeJS XO Code Style used AVA Test Runner used Istanbul Test Coverage used NI Scaffolding System used NP Release System used


Latest version on npm Project license

🌌 Hash password directly from your terminal.


Coded with ❤️ by Simone Primarosa.

Synopsis

upash cli

This package is part of the [upash][home] 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

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.

[home]: https://github.com/simonepri/upash
RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free