.TH xkcdpass 1 .SH NAME xkcdpass - generate memorable, secure multiword passphrases .SH SYNOPSIS .PP .B xkcdpass [ options ] .br .B xkcdpass --help .SH DESCRIPTION .PP A flexible and scriptable password generator which generates strong passphrases, inspired by XKCD 936: .IP .nf \f[C] $\ xkcdpass >\ correct\ horse\ battery\ staple \f[] .fi .SH OPTIONS .PP \f[B]\-\-help\f[] .RS .PP Describe how to use this command. .RE .PP \f[B]\-\-wordfile\f[] WORDFILE, \f[B]\-w\f[] WORDFILE .RS .PP Specify that the file WORDFILE contains the list of valid words from which to generate passphrases. .RE .PP \f[B]\-\-min\f[] MIN_LENGTH .RS .PP Generate passphrases containing at least MIN_LENGTH letters. (Default: 5) .RE .PP \f[B]\-\-max\f[] MAX_LENGTH .RS .PP Generate passphrases containing at most MAX_LENGTH letters. (Default: 9) .RE .PP \f[B]\-\-numwords\f[] NUM_WORDS, \f[B]\-n\f[] NUM_WORDS .RS .PP Generate passphrases containing exactly NUM_WORDS words. (Default: 6) .RE .PP \f[B]\-\-interactive\f[], \f[B]\-i\f[] .RS .PP Generate and output a passphrase, query the user to accept it, and loop until one is accepted. .RE .PP \f[B]\-\-valid_chars\f[] VALID_CHARS, \f[B]\-v\f[] VALID_CHARS .RS .PP Limit passphrases to only include words matching the regex pattern VALID_CHARS (e.g. \f[C]\[aq][a\-z]\[aq]\f[]). .RE .PP \f[B]\-\-verbose\f[], \f[B]\-V\f[] .RS .PP Report various metrics for given options. .RE .PP \f[B]\-\-acrostic\f[] ACROSTIC, \f[B]\-a\f[] ACROSTIC .RS .PP Generate passphrases with an acrostic matching ACROSTIC. .RE .PP \f[B]\-\-count\f[] COUNT, \f[B]\-c\f[] COUNT .RS .PP Generate COUNT passphrases. (Default: 1) .RE .PP \f[B]\-\-delimiter\f[] DELIM, \f[B]\-d\f[] DELIM .RS .PP Separate words within a passphrase with DELIM. (Default: \[aq] \[aq]) .RE .PP \f[B]\-\-separator\f[] SEP, \f[B]\-s\f[] SEP .RS .PP Separate generated passphrases with SEP. (Default: \[aq] \[aq]) .SS EXAMPLES .IP \[bu] 2 \f[B]xkcdpass\f[] .RS 2 .PP Generates one passphrase with the default options. Example output: .IP .nf \f[C] pinball\ previous\ deprive\ militancy\ bereaved\ numeric \f[] .fi .RE .IP \[bu] 2 \f[B]xkcdpass\f[] \-\-count=5 \-\-acrostic=\[aq]chaos\[aq] \-\-delimiter=\[aq]|\[aq] \-\-min=5 \-\-max=6 \-\-valid_chars=\[aq][a\-z]\[aq] .RS 2 .PP Generates 5 passphrases, all from lower\-case words and meeting the acrostic "chaos", delimited by the "|" character. Example output: .IP .nf \f[C] collar|highly|asset|ovoid|sultan caper|hangup|addle|oboist|scroll couple|honcho|abbot|obtain|simple cutler|hotly|aortae|outset|stool cradle|helot|axial|ordure|shale \f[] .fi .RE .SH HISTORY .PP The \f[B]xkcdpass\f[] command invokes the Python program \f[C]xkcd_password.py\f[]. .PP The inspiration for the program\[aq]s purpose is the XKCD 936 "Password Strength" cartoon. .PP