I've got an text password and a string passed to me encrypted with Perl using Blowfish.

Steve McRoberts

In case someone else runs into this: Most important Blowfish != Blowfish. There are several methods of creating the initialization vector and handling the key. Some Perl implementations put the IV as an 8byte string at the beginning of the data after "RandomIV". Another problem I found was character encoding. To solve all these problems, here's what we did:

  1. Remove the random IV and use a specified value
  2. Encrypt the text from Perl
  3. Use Base64Encode to handle byte values
  4. URL Encode (for %0d%0a)
Reverse the process on receiving end.