Android Oreo版本8在生产中引发严重的解密错误。对于其他Android版本,代码工作正常。使用的算法是“ AES / CBC / PKCS5Padding”。
public String decrypt(String _encryptedText, String _key, String _iv)
throws InvalidKeyException, UnsupportedEncodingException,
InvalidAlgorithmParameterException, IllegalBlockSizeException,
BadPaddingException {
//Log.d("enetered decryption", "enetered decryption");
return encryptDecrypt(_encryptedText, _key, EncryptMode.DECRYPT, _iv);
}
public String decryptionflag(String input, String iv) {
String output = "";
try {
// CryptLib _crypt = new CryptLib();
String plainText = input;
CryptLib _crypt = new CryptLib();
output = _crypt.decrypt(plainText, key, iv); // decrypt
//Log.d("decrypted flag is", "" + output);
} catch (InvalidAlgorithmParameterException e) {
// TODO …Run Code Online (Sandbox Code Playgroud)