The pwgen program generates passwords which are designed to be easily memorized by humans,
while being as secure as possible. Human-memorable passwords are never going to be as
secure as completely completely random passwords. In particular, passwords generated by
pwgen without the -s option should not be used in places where the password could be
attacked via an off-line brute-force attack. On the other hand, completely randomly
generated passwords have a tendency to be written down, and are subject to being
compromised in that fashion.
The pwgen program is designed to be used both interactively, and in shell scripts. Hence,
its default behavior differs depending on whether the standard output is a tty device or a
pipe to another program. Used interactively, pwgen will display a screenful of passwords,
allowing the user to pick a single password, and then quickly erase the screen. This
prevents someone from being able to "shoulder surf" the user's chosen password.
When standard output (stdout) is not a tty, pwgen will only generate one password, as this
tends to be much more convenient for shell scripts, and in order to be compatible with
previous versions of this program.
Don't include numbers in the generated passwords.
-1 Print the generated passwords one per line.
Don't bother to include any capital letters in the generated passwords.
This option doesn't do anything special; it is present only for backwards
Don't use characters that could be confused by the user when printed, such as 'l'
and '1', or '0' or 'O'. This reduces the number of possible passwords
significantly, and as such reduces the quality of the passwords. It may be useful
for users who have bad vision, but in general use of this option is not
Include at least one capital letter in the password. This is the default if the
standard output is a tty device.
-C Print the generated passwords in columns. This is the default if the standard
Generate num passwords. This defaults to a screenful if passwords are printed by
columns, and one password otherwise.
Include at least one number in the password. This is the default if the standard
-H, --sha1=/path/to/file[#seed]
Will use the sha1's hash of given file and the optional seed to create password. It
will allow you to compute the same password later, if you remember the file, seed,
and pwgen's options used. ie: pwgen -H ~/your_favorite.mp3#your@email.com gives a
list of possibles passwords for your pop3 account, and you can ask this list again
WARNING: The passwords generated using this option are not very random. If you use
this option, make sure the attacker can not obtain a copy of the file. Also, note
that the name of the file may be easily available from the ~/.history or
-r chars, --remove-chars=chars
Don't use the specified characters in password. This option will disable the
phomeme-based generator and uses the random password generator.
Generate completely random, hard-to-memorize passwords. These should only be used
for machine passwords, since otherwise it's almost guaranteed that users will
simply write the password on a piece of paper taped to the monitor...
Generate random passwords that do not contain vowels or numbers that might be
mistaken for vowels. It provides less secure passwords to allow system
administrators to not have to worry with random passwords accidentally contain
Include at least one special character in the password.
This version of pwgen was written by Theodore Ts'o <tytso@alum.mit.edu>. It is modelled
after a program originally written by Brandon S. Allbery, and then later extensively
modified by Olaf Titz, Jim Lynch, and others. It was rewritten from scratch by Theodore
Ts'o because the original program was somewhat of a hack, and thus hard to maintain, and
because the licensing status of the program was unclear.
pwgen version 2.08 August 2017 PWGEN(1)