Memorable but secure passwords
Command Line – Password Generators
CLI tools for generating passwords have many options that can help you strike a balance between ease of use and security.
How should you generate passwords? You probably know the standard advice of using a variety of characters, but the resulting passwords are hard to remember, especially since the recommended length keeps getting longer as cracking methods become more sophisticated. It's enough to make users choose convenience over security and use the same password everywhere – which is just about the worst thing you can do. Yet even if you choose unique passwords in every circumstance, how random can passwords invented by one person truly be? And what strategies can you use to make random passwords memorable? A password manager can ease the daily burden, but what happens if your password manager becomes corrupted? What were simple issues a couple of decades ago have become complicated today, with no easy answers.
Ask security experts, and the answers to these questions can be conflicting. However, that doesn't stop the developers of password generators illustrating possible solutions. Many implement traditional answers, but others are starting to implement ways of making passwords more memorable, either by tweaking tradition in various ways or taking a new approach altogether.
PWGen
PWGen is one of the oldest password generators for Linux [1]. It is based on the traditional password advice, providing eight character strings for passwords that include lower- and uppercase letters, numerals, and special characters. This pattern can be modified by the options in Table 1 to produce an easier to remember password, but remember that excluding types of characters will probably result in a weaker password. For maximum security, specify --secure
(-s
), which will maximize the mixture of characters (Figure 1).
Table 1
PWGen Customization Options
--no-numerals (-0) |
Exclude numbers |
--no-capitalize (-A) |
Exclude uppercase letters |
--ambiguous (-B) |
Exclude confusing characters, like upper case O and zero (0). |
--capitalize (-c) |
Include at least one capital |
--numerals (-n) |
Include at least one number |
--no-vowels (-v) |
Exclude vowels and numbers that could be mistaken for vowels like 1 or 0 |
--symbols (-y) |
Include at least one special character |
Results are displayed in columns by default. However, you can use --lines
(-l
) to display results one per line. You can also control the number of results with --num-passwords=NUMBER
(-N
).
PWGen provides a wealth of options, but notice that its passwords are eight characters long. That used to be an adequate length and still provides moderate security. However, using traditional password standards, an increasing number of experts suggest a minimum of 12 characters. If the password you are generating is important to you, you might want to use another password generator.
pwmake
pwmake
is a simple utility available in the libpwquality-tools package [2]. It includes only one option: the amount of entropy bits used to generate the password (Figure 2). The minimum number of bits is 56. The man page suggests 64 bits when attackers do not have direct access to the password hash file, or 80-128 bits when attackers might have access or the password is used as an encryption key. However the number of bits can go even higher, if desired. The entropy is generated by /dev/urandom
. After generating the password, you can use pwscore
or pam_pwquality
, two other utilities in libpwquality-tools, to check the strength of the generated password. Since the passwords are random and long, you will probably only want to use pwmake
with a password manager.
gpw
gpw
[3] is another simple password generator. It uses two options: the number of passwords generated, and the length of each password. Unlike pwmake
, gpw
generates passwords that are easy to pronounce for English speakers and should therefore be easy to remember. The price for easier to remember passwords, of course, is less security (Figure 3).
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Fedora 41 Beta Available with Some Interesting Additions
If you're a Fedora fan, you'll be excited to hear the beta version of the latest release is now available for testing and includes plenty of updates.
-
AlmaLinux Unveils New Hardware Certification Process
The AlmaLinux Hardware Certification Program run by the Certification Special Interest Group (SIG) aims to ensure seamless compatibility between AlmaLinux and a wide range of hardware configurations.
-
Wind River Introduces eLxr Pro Linux Solution
eLxr Pro offers an end-to-end Linux solution backed by expert commercial support.
-
Juno Tab 3 Launches with Ubuntu 24.04
Anyone looking for a full-blown Linux tablet need look no further. Juno has released the Tab 3.
-
New KDE Slimbook Plasma Available for Preorder
Powered by an AMD Ryzen CPU, the latest KDE Slimbook laptop is powerful enough for local AI tasks.
-
Rhino Linux Announces Latest "Quick Update"
If you prefer your Linux distribution to be of the rolling type, Rhino Linux delivers a beautiful and reliable experience.
-
Plasma Desktop Will Soon Ask for Donations
The next iteration of Plasma has reached the soft feature freeze for the 6.2 version and includes a feature that could be divisive.
-
Linux Market Share Hits New High
For the first time, the Linux market share has reached a new high for desktops, and the trend looks like it will continue.
-
LibreOffice 24.8 Delivers New Features
LibreOffice is often considered the de facto standard office suite for the Linux operating system.
-
Deepin 23 Offers Wayland Support and New AI Tool
Deepin has been considered one of the most beautiful desktop operating systems for a long time and the arrival of version 23 has bolstered that reputation.