dicepyware is a Python utility that generates cryptographically secure and random passphrases for your daily use. It utilizes the Diceware method for picking words from a list.
Python version required: 3.4.4 or newer.
python dicepyware.py [-l <length>] [-s <separator>] [-c]
l
: Number of words to include. (default:6
; minimum:6
)s
: The separator character to use between each word. (default:c
: Include a special character somewhere in the generated passphrase. (default:False
)
Why can't I generate smaller passphrases?
According to their FAQ, a 4-word passphrase only provides 51.6 bits of entropy, almost the same number of bits as an 8 random ASCII character password. Five word passphrases also are not allowed because they are easily breakable by a powerful botnet.
If you're looking for true secure passphrases, consider using a length of 8 words or more. Using the -c
option to include a special character at random adds about 10 bits of entropy.
All of this assumes, of course, that your passphrase is kept secret.