Diceware is a method for creating passphrases, passwords, and other cryptographic variables using an ordinary die from a pair of dice as a hardware random number generator. For each word in the passphrase, five rolls of the die are required. The numbers from 1 to 6 that come up in the rolls are assembled as a five digit number, e.g. 43146. That number is then used to look up a word in a word list. In the English list 43146 corresponds to munch. Lists have been compiled for several languages, including English, Finnish, German, Italian, Polish, Romanian, Russian, Spanish and Swedish. A Diceware word list is any list of unique words, preferably ones the user will find easy to spell and to remember. The contents of the word list do not have to be protected or concealed in any way, as the security of a Diceware passphrase is in the number of words selected, and the number of words each selected word could be taken from.
The level of unpredictability of a Diceware passphrase can be easily calculated: each word adds 12.9 bits of entropy to the passphrase (that is, bits). Five words (slightly over 64 bits) are considered a minimum length.
This level of unpredictability assumes that a potential attacker knows both that Diceware has been used to generate the passphrase, the particular word list used, and exactly how many words make up the passphrase. If the attacker has less information, the entropy can be greater than 12.9 bits per word.
On the other hand, the construction of passphrases from thusly selected words needs consideration. Simply concatenating randomly chosen words may form words that are already in the word list, e.g., "in" and "put" form "input"; all three words can be found in the above mentioned word list. This decreases the entropy. A simple remedy could be to put spaces or other characters between the words, with the added benefit of increasing the entropy.
Diceware passphrases can be difficult to remember and some may prefer other methods, such as using the initial letters of a memorable phrase (for instance, "To be or not to be, that is the question" becomes "Tbontb,titq"). Estimating the entropy of the phrase using the latter approach is more difficult. In this example, the phrase used is very well known (being from Shakespeare) and so is easily guessed; as, for instance, by using a phrase dictionary. Thus, the entropy of this example is low. Higher entropy can be had from user chosen phrases handled this way, if the user is careful to avoid guessable phrases.
- Brute force attack
- Key size discusses how many bits of key are considered "secure".
- The PGP biometric word list uses two lists of 256 words, each word representing 8 bits.
- S/KEY uses a list of 2048 words to encode 64-bit numbers as 6 English words
- Password strength
- Random password generator
- Internet Secrets, 2nd Edition, John R. Levine, Editor, Chapter 37, IDG Books, 2000, ISBN 0-7645-3239-1