blowfish cipher CBC mode implementation