wrong blowfish code

Werner Koch wk at isil.d.shuttle.de
Wed Jan 7 12:00:41 CET 1998


while porting the G10 to HPUX I detected that my blowfish code was not
okay. It was secure, but input bytes were swapped.  By looking at
Bruce Schneier's original News posting I found some test vectors to
test my implementation.  The new code works on intel but I had no chance to
check it on a big-endian machine like a HPPA (I have no onlline access to
such a machine); anyway the new code gives correct results and should be
used as soon as possible.

The bad news is, that if you have protected secret keys, you must do some
addional work:

  1) Get the new release 0.1.1 (or the diff) from fpt.guug.de/pub/gcrypt
  2) un-tar it and replace the file cipher/blowfish.c by the one from
     an earlier release (kepp an backup of the new one)
  3) Run ./configure and make
  4) For every secret key you have do this:
  4a)  "g10/g10 --change-passphrase [<user-id>]"
  4b) Unlock your key and enter an empty string as the new passphrase
  4c) Answer yes to store your key without a passphrase
  4d) continue with your next key
  5) restore the blowfish.c
  6) do a make
  7) For every secret key you have do this:
  7a)  "g10/g10 --change-passphrase [<user-id>]"
  7b) Enter a new passphrase
  7c) continue with your next key
  8) ready

If you have any encrypted data proceed likewise.

I have added support for big endian boxes and the it worked yesterday on
a HP (with HPUX 9);  I couldn't test the new blowfish code; please try it
by using a keypair generated on Linux and try to sign something on a HP
(Blowfish is used to encrypt your secret key).

Werner Koch, Duesseldorf  -   werner.koch at guug.de   -  PGP keyID: 0C9857A5

More information about the Gnupg-devel mailing list