Posts Tagged ‘DiceGen’

DiceGen ― Automatic generation of Diceware- passphrases

Monday, August 10th, 2009

Diceware is a system for generating secure, word-based passphrases by using dice rolls as a source of randomness. There comes a point however, when you realize that enemy intelligence isn’t actually trying to break your encryption, and all you want is to make a strong and memorable passphrase without the fuss of rolling around small cubes.

That’s where DiceGen comes in. DiceGen is a command line program that does all the work for you. Run dicegen.py and it spits out a five word Diceware passphrase.

DiceGen is flexible: by default it uses the original Diceware wordlist to make passphrases, but it can also take simple, one-word-per-line (newline delimited) wordlists―not just Diceware wordlists. To do this, use --word-list-format=simple and --word-list-file=FILE to tell dicegen to use the wordlist at file FILE.

Download

Instructions

DiceGen is very easy to use. To generate five passphrases with ten words each, run python dicegen.py -n5 -w10. Running python dicegen.py --help gives you some more detailed usage information:

Usage: dicegen [-n] [-w]

Options:
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -n NUM, --number=NUM  number of passphrases to generate [default: 1]
  -w NUM, --words=NUM   number of words to use in passphrase [default: 5]
  --no-spaces           do not add spaces between words
  --word-list-file=FILE
                        location of a complete Diceware wordlist [default: /path/to/diceware.wordlist.asc]
  --word-list-format=FORMAT
                        how the wordlist is formatted [possible values:
                        diceware, simple] [default: diceware]

Caveots

DiceGen uses python’s random library, which uses the Mersenne twister generator. This generator is not cryptographically secure. Don’t use DiceGen if you happen to be enemies with the NSA or really, really smart people.