Passphrase

From Free net encyclopedia

A passphrase is a sequence of words or other text used to control access to a computer system, program or data. A passphrase is similar to a password in usage, but is generally longer for added security. Passphrases are often used to control both access to, and operation of, cryptographic programs and systems. Passphrases are particularly applicable to systems that use the passphrase as an encryption key. The origin of the term is by analogy with "password". The modern concept of passphrases is believed to have been invented by Sigmund N. Porter (1) in 1982.

Contents

Security

The words or components of a passphrase need not all be, but often are, found in a language dictionary -- most particularly one available (on or off line) as input to a dictionary attack program. If findable in such a dictionary (and especially if the entire phrase can be found in a quotation or phrase compilation), an attacker has some chance of discovering the pass phrase by an automated dictionary attack. However, the required effort (time, cost, ...) can be made impracticably high if there are enough words in the passphrase. How many depends on the size vocabulary from which they are chosen and if those words are selected randomly. The number of combinations which would have to be tested under such conditions make a dictionary attack so difficult as to be infeasible. These are difficult conditions to meet, and selecting at least one 'word' for a pass phrase which cannot be in any dictionary is still more effective.

For example, the widely used crypto system (PGP) requires each user to make up a passphrase that you must enter whenever you sign or decrypt messages. So does the newer Internet standard (OpenPGP) compliant version, GPG. An Internet service called Hushmail provides free encrypted e-mail service, but its security depends almost entirely on the quality of the passphrase you choose. You should have your passphrase ready before creating your PGP or GPG key or opening a new Hushmail account as 'inventing' a passphrase whilst entering it is a poor practice, very likely to lead to poor passphrases, and so to poor security.

Compared to passwords

Passphrases differ from passwords. A password is usually short — six to ten characters. Such passwords may be adequate for various applications (if frequently changed, if chosen using an appropriate policy, if not found in dictionaries, if sufficiently random, and/or if the system prevents online guessing, etc.) such as:

  • Logging onto computer systems
  • Negotiating keys in an interactive setting (e.g. using password-authenticated key agreement)
  • Enabling a smart-card or PIN for an ATM card (e.g. where the password data (hopefully) cannot be extracted)

But passwords are typically not safe to use as keys for standalone security systems (e.g., encryption systems) that expose data to enable offline password guessing by an attacker. Passphrases are generally stronger, and a clearly better choice in these cases. First, they usually are (and always should be) much longer — 20 to 30 characters or more is typical, making some kinds of brute force attacks entirely impractical. Second, if well chosen, they will not be found in any 'phrase or quote dictionary', so such dictionary attacks will be impossible. Third, they can be so structured as to be more easily rememberable than passwords without being written down, reducing that risk as well. They can be, thus, considerably more 'secure'.

Passphrase selection

Typical advice about choosing a passphrase includes suggestions that it should be:

  • Long enough to be hard to guess (eg, automatically by a search program, as from a list of famous phrases).
  • Not a famous quotation from literature, holy books, et cetera
  • Hard to guess by intuition -- even by someone who knows the user well
  • Easy to remember and type accurately

Example methods

One reasonable way to create a passphrase is to use dice to select words at random from a long list, a technique often referred to as diceware. While such a collection of words might appear violate the "not from any dictionary" rule, the security is based entirely on the large number of possible ways to choose from the list of words and not from any secrecy about the words themselves. If there are 7776 words in the list (as is the case with the Diceware word list), and six words are chosen randomly, then there are 7776 X 7776 X 7776 X 7776 X7776 X 7776 = 221073919720733357899776 possibilities, providing about 78 bits of entropy. (The number 7776 was chosen to allow words to be selected by throwing five dice. 7776 = 65)

Another is to choose two phrases, turn one into an acronym, and include it in the second, making the final passphrase. For instance, using two English language typing exercises, we have the following. The quick brown fox jumps over the lazy dog, becomes tqbfjotld. Including it in, Now is the time for all good men to come to the aid of their party, might produce, Now is the time for all good tqbfjotld to come to the aid of their party as the passphrase.

There are several points to note here, all relating to why this example pass phrase is not a good one.

  • it has appeared in public and so should be avoided by everyone.
  • it's long (which is a considerable virtue in theory) and requires a good typist (which is an overwhelming problem for most folks in actual practice). (Whatever software is accepting the passphrase for testing should never echo it to your display, lest shoulder surfers take advantage.) Typing errors are much more likely under such conditions, especially for extended phrases.
  • it doesn't contain any non-alphabetic characters. Converting, say, the 'l' (Latin small letter L) in the acronym to a '1' (digit one) would be an improvement.
  • individuals and organizations serious about cracking computer security have compiled lists of passwords derived in this manner from the most common quotations, song lyrics, and so on.

The PGP Passphrase FAQ by Randall T Williams suggests a procedure that attempts a better balance between theoretical security and practicality than this example. All procedures for picking a passphrase involve a tradeoff between security and ease of use; security should be at least 'adequate' while not 'too seriously' annoying users. Both criteria should be evaluated to match particular situations.

Another supplementary approach to frustrating brute-force attacks is to derive the key from the passphrase using a deliberately-slow hash function, such as PBKDF2 as described in RFC 2898.

Windows support

If backward compatibility with Microsoft LAN Manager is not needed, in versions of Windows NT (including Windows 2000, Windows XP and later), a passphrase can be used as a substitute for a Windows password.

References

1. Sigmund N. Porter. "A password extension for improved human factors". Computers and Security, 1(1):54-56, January 1982.

External links

it:passphrase