vincenthz/hs-crypto-cipher — pull request #27 by joecrayne (2013-08-07 09:07:27+00:00)
Title: Helper functions for implementing BlockCipher for Blowfish.

I'm updating Stephen's code related to issue #23. His work-around for using a different key size for Blowfish was broken by your removing the BlockCipher interface altogether. I tried making my own BlockCipher instance that uses only functions you export, but the result was that automated tests took 5 times as long to complete. If you accept this patch, then I can use this instance which runs much faster:

```haskell
instance BlockCipher Blowfish128 where
blockSize = Tagged 64
encryptBlock (Blowfish128 b) = Blowfish.encryptBlock b
decryptBlock (Blowfish128 b) = Blowfish.decryptBlock b
buildKey = fmap Blowfish128 . Blowfish.buildKey
keyLength = Tagged 128
```