Domanda

Passphrases seem like a good alternative for traditional guidelines for strong passwords. See http://xkcd.com/936/ for an entertaining take on passwords vs. passphrases.

There are many tools for generating more traditional passwords (eg. pwgen.) Such tools are useful when for example providing users with good initial passwords.

What tools are available for generating good passphrases?

Do you have experience on using them or insight about their security or other features?

È stato utile?

Soluzione 2

I wrote a command line based Perl script passphrase-generator.

The passphrase-generator defaults to only 3 words instead of the 4 suggested by XKCD, but uses a larger dictionary found in many linux based systems at /usr/share/dict/words. It also provides estimates for the entropy of the generated passphrases. The randomization is based on /dev/urandom and SHA1.

Example run:

$ passphrase-generator 

Random passphrase generator

Entropy per passphrase is 43.2 bits (per word: 14.4 bits.)

For reference, entropy of completely random 8 character (very hard to memorize)
password of upper and lowercase letters plus numbers is 47.6 bits
Entropy of a typical human generated "strong" 8 character password is in the
ballpark of 20 - 30 bits.

Below is a list of 16 passphrases.
Assuming you select one of these based on some non random preference
your new passphrase will have entropy of 39.2 bits.

Note that first letter is always capitalized and spaces are
replaced with '1' to meet password requirements of many systems.

Goatees1maneuver1pods
Aught1fuel1hungers
Flavor1knock1foreman
Holding1holster1smarts
Vitamin1mislead1abhors
Proverbs1lactose1brat
... and so on 10 more

There are also some browser/javascript based tools:

CPAN hosts a Perl module for generating XKCD style passphrases:

Altri suggerimenti

I've recently released a couple of Perl scripts, gen-password and gen-passphrase, on GitHub here.

The gen-passphrase script could suit your needs. It takes three arguments: a word used as a sequence of initials, a minimum length, and a maximum length. For example:

$ gen-passphrase abcde 6 8
acrimony borrowed chasten drifts educable

or you can ask for a number of words without specifying their initials (a new feature I just added):

$ gen-passphrase 5 6 8
poplin outbreak aconites academic azimuths

It requires a word list; it uses /usr/share/dict/words by default if it exists. It uses /dev/urandom by default, but can be told to use /dev/random. See this answer of mine on superuser.com for more information about /dev/urandom vs. /dev/urandom.

NOTE: So far, nobody other than me has tested these scripts. I've made my best effort to have them generate strong passwords/passphrases, but I guarantee nothing.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top