Content-Type: text/html

# Blowfish encryption algorithm

HomePage | RecentChanges | Preferences
You can edit this page right now! It's a free, community project

Blowfish is the name of a symmetric, [secret key]?, [block cipher]? designed in 1993 by [Bruce Schneier]?. There is an [official Blowfish website].

Blowfish has a 64 bit [block size]? and a [key length]? of anywhere from 32 bits to 448 bits. It is based on Schneier's idea that good security against both known and future cryptanalysis can hopefully be obtained by using large, pseudo-random, key dependent s-boxes?.

It is one of the faster block cyphers in widespread use in terms of time to encrypt a given number of bytes. However, the time taken to set up a key before encryption starts is very slow by block cypher standards at approximately the same as encrypting 4 kilobyte?s of text. This prevents its use in certain applications, but is not a problem in others.

Also, Blowfish has a relatively large memory footprint at just over 4 kilobytes of RAM. This is not a problem even for older smaller desktop and laptop computers, but it does prevent use in the smallest [embedded systems]? such as [smart cards]?.

There is no effective cryptanalysis known publicly as of 2001 that works against Blowfish. It should be noted that, like other block cyphers with a 64 bit block, it is risky to encrypt extremely large texts (more than a few hundred megabytes) with a single key. If that is needed, a method with a larger block size should be used.

Within the limitations noted, Blowfish is a very useful and respected cipher and has seen widespread application.

HomePage | RecentChanges | Preferences
You can edit this page right now! It's a free, community project
Edit text of this page | View other revisions
Last edited July 26, 2001 8:42 am (diff)
Search: