// COMPLETE THREAD

Why is blowfish so slow? Other fast algorithms?

3 expanded posts ยท every known parent and child

NODE ed9acda8Why is blowfish so slow? Other fast algorithms?
First, can someone tell me if the latest version of blowfish (the one
in Applied Crypto 2nd edition) is available online somewhere?  I
looked at a bunch of crypto ftp servers and could only find an older
version of blowfish that did not have the blf_ctx structure allowing
multiple keys to be active at a time.

More importantly, however, on a 120 MHz Pentium, the old blowfish
(compiled with gcc version 2.7.2 optimization -O6) seems to take about
12.6 microseconds for 1 M encryptions and decryptions, which works out
to about 95 cycles per byte.  This is significantly more than the 26
cycles/byte number cited in Applied Crypto 2nd edition.

Can anyone suggest what I might do to speed this up?

Failing that, can anyone suggest other secure, preferably unpatented,
shared-key encryption algorithms that could encrypt at ethernet speeds
(1 MByte/sec) without using most of the CPU on a fast Pentium or
equivalent processor?

Thanks a lot,
David
NODE 3e0741fdRe: Why is blowfish so slow? Other fast algorithms?
David Mazieres wrote:

| First, can someone tell me if the latest version of blowfish (the one
| in Applied Crypto 2nd edition) is available online somewhere?  I
| looked at a bunch of crypto ftp servers and could only find an older
| version of blowfish that did not have the blf_ctx structure allowing
| multiple keys to be active at a time.

Did you check ftp.dsi.unimi.it?  I seem to remember them having the
latest source right after Crypto95.  Also, ftp.csua.berkeley.edu
should have it.  (Their code is version 1.3; do you know what version
you're after?)

Adam


-- 
"It is seldom that liberty of any kind is lost all at once."
					               -Hume
NODE 4042aa97Re: Why is blowfish so slow? Other fast algorithms?
> From: Adam Shostack <adam@lighthouse.homeport.org>
> Date: Mon, 22 Jan 1996 11:20:57 -0500 (EST)
> Cc: cypherpunks@toad.com
> X-Mailer: ELM [version 2.4 PL24 ME8b]
> Content-Type: text
> Content-Length:        662
> 
> David Mazieres wrote:
> 
> | First, can someone tell me if the latest version of blowfish (the one
> | in Applied Crypto 2nd edition) is available online somewhere?  I
> | looked at a bunch of crypto ftp servers and could only find an older
> | version of blowfish that did not have the blf_ctx structure allowing
> | multiple keys to be active at a time.
> 
> Did you check ftp.dsi.unimi.it?  I seem to remember them having the
> latest source right after Crypto95.  Also, ftp.csua.berkeley.edu
> should have it.  (Their code is version 1.3; do you know what version
> you're after?)

Unfortunately, neither of those sites have it.

The version I'm looking for has a blf_ctx structure that gets passed
as the first argument to functions so you can use multiple keys at a
time.  It also has the initialization data stuck in the C code.

Does anyone out there have the Applied Cryptography source code
diskette?  Would you be willing to mail me the code?  It would
probably take a while if I ordered the diskette myself and I'd like to
get the code as soon as possible.

Thanks,
David