对于Android中CipherStream-API对于AEAD密码太慢的问题,可以使用以下解决方法:
implementation 'org.bouncycastle:bcpkix-jdk15on:1.68'
implementation 'org.bouncycastle:bcprov-jdk15on:1.68'
然后,可以使用以下代码示例来使用JCE库来初始化Cipher对象:
Security.insertProviderAt(new BouncyCastleProvider(), 1);
Cipher cipher = Cipher.getInstance("AES/GCM/NoPadding", "BC");
使用Native代码实现:如果JCE库仍无法满足性能要求,可以尝试使用Native代码来实现加密/解密功能。首先,在Android项目中创建一个Native库模块,然后使用C/C++来实现AEAD密码算法。然后,将编译生成的Native库文件集成到Android项目中,并使用JNI来调用Native方法进行加密/解密操作。
优化算法和参数设置:如果以上方法都无法满足性能需求,可以尝试优化算法和参数设置。例如,可以尝试使用更高效的算法,或者调整Cipher对象的参数,如缓冲区大小、加密模式等,以提高性能。
总结起来,针对Android中CipherStream-API对于AEAD密码太慢的问题,可以尝试使用JCE库、Native代码实现或优化算法和参数设置来提高性能。具体的解决方法可以根据实际情况选择适合的方式。