Расшифровка в Java с Blowfish

Алло,

Я шифрую и дешифрую в Java с Blowfish.

Шифрование работает нормально, но расшифровка не удалась.

Вот мой Java-код для расшифровки:

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 … ]

Я получаю исключение:

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

Можете ли вы сказать мне, как заставить это просто работать? Спасибо.

Вводимые мной данные поступают из моего кода Java для шифрования + кодирование в Base64, и я декодирую его из Base64 непосредственно перед передачей в эту операцию дешифрования.

Ответы на вопрос(6)

Ваш ответ на вопрос