Odszyfrowywanie w Javie za pomocą Blowfish

Cześć,

Szyfrowanie i deszyfrowanie w Javie za pomocą Blowfish.

Szyfrowanie działa dobrze, ale deszyfrowanie nie powiedzie się.

Oto mój kod Java do deszyfrowania:

String encryptedString = … ;
String decryptedString = null;
SecretKeySpec key = new SecretKeySpec(myKey.getBytes(), "Blowfish");
Cipher cipher;
try {
    cipher = Cipher.getInstance("Blowfish");
    cipher.init(Cipher.DECRYPT_MODE, key);
    byte[] decrypted = cipher.doFinal(encryptedString.getBytes());
    decryptedString = new String(decrypted, Charset.forName("UTF-8"));
} [ catch Exceptions … ]

Mam wyjątek:

Exception. javax.crypto.IllegalBlockSizeException: Input length must be multiple of 8 when decrypting with padded cipher

Czy możesz mi powiedzieć, jak to po prostu działać? Dziękuję Ci.

Dane wejściowe, które podaję, pochodzą z mojego kodu Java do szyfrowania, + kodowanie w Base64, i dekoduję go z Base64 tuż przed przekazaniem go do tej operacji deszyfrowania.

questionAnswers(5)

yourAnswerToTheQuestion