Я пытаюсь зашифровать сообщение в javascript (используя библиотеку crypto-js) и расшифровать его в java.
Это код javascript:
var key = CryptoJS.enc.Utf8.parse(aesPassword);
var ive = CryptoJS.enc.Utf8.parse(aesIv);
var encryptedData = CryptoJS.AES.encrypt(dataToEncrypt, key, {mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7, iv: ive});
И это код Java:
final Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
final SecretKeySpec key = new SecretKeySpec(aesPassword().getBytes("UTF-8"), "AES");
cipher.init(Cipher.DECRYPT_MODE, key, new IvParameterSpec(aesIv().getBytes("UTF-8")));
byte[] decrypted = cipher.doFinal(DatatypeConverter.parseBase64Binary(message));
Но когда я пытаюсь расшифровать в Java, возникает это исключение: javax.crypto.BadPaddingException: данный последний блок не заполнен должным образом
пароль: 6h2faBePVxpgyFSN iv: NKOzRKEMKs1kE4 данные для шифрования: "{токен: cMGOIrYlJm9lPhPW}"
Любая помощь?
заранее спасибо