因此,我尝试对我的 Android 应用程序实现 AES-256 加密/解密。但是,我不想包含额外的 jar 来启用 AES-256,因为存在导出管制政策。
我找到了this在官方文档中,似乎API level 26+
支持AES-256和AES-128,有没有办法在较旧的 API 级别?
最佳答案
Android 多年来一直支持 AES 的所有版本。您引用的策略特定于普通 JVM,它们在 Android 上不是必需的。像这样构造您的密码对象以使用 AES-256:
byte[] key = ... // Your key material, exactly 32 bytes in length.
byte[] iv = ... // A randomly generated IV, exactly 16 bytes in length.
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
cipher.init(Cipher.ENCRYPT_MODE, new SecretKey(key, "AES"), new IvParameterSpec(iv));
关于java - AES-256 可以在 API 级别 26+ 的 Android 设备上工作吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47708951/