我想在 android 中加密一些东西,所以我有一个方法 列出所有的安全提供商和他们的算法,但是当我去的时候 使用列出的算法之一(在我的例子中是 ECDH)它给了我: java.security.NoSuchAlgorithmException:提供者 AndroidOpenSSL 不提供 EC。 OpenSSL 和 BouncyCaSTLe 都应该有一个实现 但是当我尝试将 ECDH 与任一提供商一起使用时,它给了我相同的 异常(exception)。有什么想法吗?
最佳答案
... but when I go to use one of the listed algorithms (ECDH in my case) it gives me: java.security.NoSuchAlgorithmException: Provider AndroidOpenSSL does not provide EC.
正确。 Android 的低级别版本使用 OpenSSL 0.9.8 它缺乏 EC 支持。
更高版本的 Android(大约 Android 4)使用 OpenSSL 1.0.1。它提供 EC 支持。在 android/platform/external/openssl 查看 AOSP 源代码.
关于java - 未提供 Android 列出的加密算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29189213/