sppg

Rust codecov License

Secure passphrase generator using the diceware method.

For a long time the apg command line program has allowed users to create random, pronounceable passwords that are also hard to guess. This program attempts to do the same thing for pass phrases.

It uses the diceware method to derive random passphrases and takes some precautions to ensure that all the phrases it displays are as secure as possible within the confines of the user's request. By default it outputs a plain 5 word passphrase and won't output anything with less than 4 words unless you specify the quality option (-q | --quality). However, even with the quality option it won't display any phrases with less than 8 characters (including spaces).

A Note about security

Pre-requisites

  1. Git source code versioning system

https://git-scm.com/book/en/v2/Getting-Started-Installing-Git

  1. Rust programming language Official install guide

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

To insure it was installed correctly type the following commands and make sure you get a successful output: rustc --version cargo --version

Build

From a terminal: 1. Clone this repository

git clone https://github.com/mtelahun/sppg.git

  1. Change into the cloned directory and type:

cargo run --release

Installation

To install this package switch to the root of repository directory and type:

cargo install --path .

Use

``` Usage: sppg [OPTIONS]

Options: -e, --eff Use EFF wordlist -n, --num-of-pass Number of phrases to output [default: 6] -w, --word-count Number of words in a phrase [default: 5] -c, --use-capital-char Convert one letter at random to uppercase -s, --use-special-char Insert one special character at random -q, --quality Implies -c and -s -h, --help Print help -V, --version Print version ```