расшифровать прохождение J0 как IV.
я есть некоторые зашифрованные данные AES / GCM и я хочу расшифровать их. Я хочу расшифровать его в обход аутентификации, поскольку данные не содержат аутентификационные данные (данные зашифрованы сторонним приложением). Я попытался расшифровать с пакетом javax.crypto, и он всегда выдает ошибку несоответствия тега. Есть ли способ обойти этот тег проверки и расшифровать данные. Данные зашифрованы с помощью AES128 и используют 12-байтовый вектор инициализации.
Изменить: я получил временное решение для этой проблемы. Не уверен, что это правильный метод.
Key key = new SecretKeySpec(hlsKey, "AES");
GCMParameterSpec gCMParameterSpec = new GCMParameterSpec(96, initialisationVector);
final Cipher c = Cipher.getInstance("AES/GCM/NoPadding", "BC");
c.init(Cipher.DECRYPT_MODE, key, gCMParameterSpec);
byte[] nodata = new byte[len * 2];
System.arraycopy(cipherText, 0, nodata, 0, len);
byte[] plaindata = new byte[len * 2];
try {
int decrypted_index = 0;
while (decrypted_index < len) {
int cp = c.update(nodata, decrypted_index, nodata.length - decrypted_index, plaindata, decrypted_index);//doFinal(nodata);
decrypted_index += cp;
}
if(decrypted_index>=len){
System.arraycopy(plaindata, 0, plainText, 0, len);
retvalue=1;
}
} catch (Exception e) {
e.printStackTrace();
}