genpw - CryptiPass CLI
genpw
is a simple command-line interface (CLI) for generating high-entropy, pronounceable passphrases using the CryptiPass library. It allows users to specify the number of words in each passphrase and the number of passphrases to generate, making it easy to quickly create secure, human-friendly passwords directly from the terminal.
This tool is part of the CryptiPass project and resides in the cmd/genpw
subdirectory.
Features
- Generate Secure Passphrases: Easily generate high-entropy, pronounceable passphrases with customizable length.
- Customizable Output: Control the number of words per passphrase and how many passphrases you want to generate.
- Lightweight and Easy to Use: Simple CLI flags for ease of use and quick password generation.
Installation
To install the genpw
CLI, first ensure you have Go installed. Then run:
go install github.com/francescoalemanno/cryptipass/cmd/genpw@latest
This will install the genpw
binary in your $GOPATH/bin
directory.
Usage
Once installed, you can generate passphrases by running genpw
with the following options:
Usage: genpw [flags]
Flags:
-p uint
number of passwords to generate (default 4)
-w uint
number of words per password (default 4)
-c run entropy certification algorithm (for developers)
Example Commands
- Generate 4 passphrases with 4 words each (default):
genpw
This will output something like:
ENTROPY | PASSPHRASE
+++++++++++++++|++++++++++++++++++++++++++++++++
65.57 | ammud.ruffl.ummi.shing
82.76 | epavoi.hakeyer.bles.monfin
82.91 | everap.gighte.clap.baselec
85.93 | stash.laxor.surevida.dexqy
- Generate 2 passphrases with 6 words each:
genpw -w 6 -p 2
The output might look like:
ENTROPY | PASSPHRASE
+++++++++++++++|++++++++++++++++++++++++++++++++
119.97 | tubse.stnew.critedi.priu.bugger.crokess
136.65 | stedin.overjan.gifteto.overepr.comiz.unrupee
Entropy Considerations
Each word generated by CryptiPass has on average more than 21 bits of entropy. For example:
- A 4-word passphrase has roughly 84 bits of entropy.
- A 6-word passphrase has approximately 126 bits of entropy.
This makes the passphrases highly secure, even against brute-force attacks.
Certification (Debug/Development Mode)
For debugging or testing purposes, the certify
function can be used to track the entropy of generated words over large runs, it has to be used if another vocabulary is distilled into random rules for the software.
Contributing
Contributions are welcome! Please open an issue or submit a pull request via the main repository.
License
This tool is open-source and licensed under the MIT License.
For any questions, issues, or suggestions, please visit the issue tracker on GitHub.