Package: mkpassphrase
mkpassphrasemkpassphraseis a commandline script and an associated library for
generating passphrases by concatenating words chosen from a dictionary file
that contains one word per line.As of version 2, released in July, 2018, it bundles the threeEFF wordlists,
and uses their standard 7,776-word list by default, but can use the
other EFF wordlists or a custom wordlist.When run with no args,mkpassphrasegenerates a
passphrase likeexemplify strobe pushover appealing Glimpse Snazzy, which inserts
a space character between each word and randomly uppercases the first
character of each word with probability 1/2, using enough words to reach
the recommended 80-bit security level, but these choices and others are configurable.InstallationTo install or upgrade to the latest stable version ofmkpassphrasefrom PyPI,
you can install it as your normal user by running:$pipinstall--user--upgrademkpassphraseOn Linux, that installsmkpasphraseto~/.local/bin, which you may need to
add to your$PATH.Or you can install it globally by running:$sudopipinstall--upgrademkpassphraseUsageGenerate a passphrase using the default settings:$mkpassphraseOctane Flatfoot timid revival Darkened dropkick

83-bit security levelThe security level reported is based only on the number of words in the
passphrase and the number of possible words (as well as whether
the--lowercaseoption is chosen), and does not include other factors
such as padding or a custom delimiter, which would increase the security
level. You can also add the-qoption to only see the passphrases.You can use the-tNUMoption to generate multiple passphrases if you
want more options to choose from:$mkpassphrase-t10disposal Linoleum antibody petty Nucleus Unzip
Banish Barterer doorway avenging Errand tasting
poking disband Precook Ought pronounce procedure
rambling Flanking trimness heaving Dock Corned
overfull Evade Army fever sled Enjoyment
fancied Maternal pawing Marmalade Synapse Ruse
willow Hatless moving Dealmaker Mammogram share
perm broker only company Privacy Animation
composure Header polo prewar Unaware Creation
Entomb unselfish Shrewdly rundown snuff Wing

83-bit security levelOptionsUse the–helpoption to see the available options:$mkpassphrase--helpusage: mkpassphrase [-h] [-n NUM_WORDS] [-s ENTROPY] [-w WORD_LIST]
                    [-f WORD_FILE] [-l] [-p PAD] [-d DELIMITER] [-t TIMES]
                    [-V] [-q]

Generate a passphrase.

optional arguments:
-h, --help            show this help message and exit
-n NUM_WORDS, --num-words NUM_WORDS
                        Number of words in passphrase (the default is enough
                        words to reach a security level of 80 bits)
-s ENTROPY, --entropy ENTROPY
                        Target entropy bits (the default is 80 bits)
-w WORD_LIST, --word-list WORD_LIST
                        Use built-in wordlist (eff-large [default], eff1, or
                        eff2)
-f WORD_FILE, --word-file WORD_FILE
                        Word file path (one word per line)
-l, --lowercase       Lowercase words (the default is to capitalize the
                        first letterof each word with probability 0.5 and use
                        lowercase for all other letters)
-p PAD, --pad PAD     Pad passphrase using PAD as prefix and suffix (the
                        default is no padding)
-d DELIMITER, --delimiter DELIMITER
                        Use DELIMITER to separate words in passphrase (the
                        default is a space character)
-t TIMES, --times TIMES
                        Generate TIMES different passphrases (the default is
                        to generate 1 passphrase)
-V, --version         Show version
-q, --quiet           Print just the passphrase (the default is to also show
                        the security-level of the generated passphrase(s))Supported Python Versions and Operating Systemsmkpassphrase is supported on Python-2.7 (CPython or PyPy), Python-3.4+ for
CPython, and Python-3.2.5+ for PyPy. It is tested on Linux, but should work on
any OS with a supported Python version.Changesv2.0.0.post1update CHANGES to reflect 2.0.0 changes (no code changes compared v2.0.0)v2.0.0support using (bundled)EFF wordlistsas the source for words, in addition to
user-provided wordlists, with the default behavior now being to use the
long EFF wordlist (7,776 words)support specifying security level to get a passphrase with the required number of
words for that security level (e.g.,mkpassphrase -s 80to get a passphrase
with enough words from the default EFF wordlist for 80 bits of entropy)removed–minand–maxoptions for ignoring words in a wordlist that are
too short or too longremoved–non-asciioption for ignoring words that have non-ascii charactersv1.0.01.0 bump, and change to ‘stable’python3 support is limited to 3.2.5+ (python2.7 still supported)added testing against python-3.6 (alpha3 currently)v0.9.1minor adjustments to python2/3 compatibility checkspep257 docstring updatesv0.9.0much faster generation of multiple passphrases using-tminor verbiage tweaks for non-quiet outputv0.8.0use cryptographically secure pseudo-random number generator if availableadded standard imports to help with python2/3 compatibilityv0.7.0added -t|–times N to allow generating multiple passphrases w/ one commandv0.6.8include CHANGES.rst and README.rst in sdist via MANIFEST.inv0.6.7cosmetic changes for better PyPI displayv0.6.6cosmetic changes for better PyPI displayv0.6.4cosmetic changes for better PyPI displayv0.6.2added -q option to omit extra information about how many unique candidate
words were found and how many passphrases were possiblefix for –ascii option not being used, and improved encoding handlingstart documenting changes in CHANGES.rstuse README and CHANGES as long_description for improved pypi info