Blowfish (cipher) - Blowfish in Practice

Blowfish in Practice

Blowfish is a fast block cipher, except when changing keys. Each new key requires pre-processing equivalent to encrypting about 4 kilobytes of text, which is very slow compared to other block ciphers. This prevents its use in certain applications, but is not a problem in others. In one application, it is actually a benefit: the password-hashing method used in OpenBSD uses an algorithm derived from Blowfish that makes use of the slow key schedule; the idea is that the extra computational effort required gives protection against dictionary attacks. See key stretching.

Blowfish has a memory footprint of just over 4 kilobytes of RAM. This constraint is not a problem even for older desktop and laptop computers, though it does prevent use in the smallest embedded systems such as early smartcards.

Blowfish was one of the first secure block ciphers not subject to any patents and therefore freely available for anyone to use. This benefit has contributed to its popularity in cryptographic software.

Read more about this topic:  Blowfish (cipher)

Famous quotes containing the word practice:

    Whatever my own practice may be, I have no doubt that it is a part of the destiny of the human race, in its gradual improvement, to leave off eating animals, as surely as savage tribes have left off eating each other when they came in contact with the more civilized.
    Henry David Thoreau (1817–1862)