我已经使用 ECC 密钥对完成了一个 Android 应用程序。当我去年开发它时,我想在 Android Keystore 中创建 ECC 密钥。不幸的是,由于ECDH,此 ECC 密钥用于生成会话密钥,并且Android Keystore 不支持ECDH(这就是我在这里所说的:ECDH with key in Android Key Store)
我遵循了建议:我在 Android KeyStore 中创建了一个 AES 密钥,并在将 ECC 密钥存储在 SharedPreferences 之前使用它来加密它。Android KeyStore 确保无法提取 AES 密钥,并且只有我的应用程序可以使用它来解密 ECC 密钥。
我现在有一个问题,希望得到您的建议:
如果有人在有根手机上安装我的应用程序,获取 APK,在读取和解密后反编译并修改它以打印 ECC 密钥怎么办?我没有这个技能,但我猜有些黑客有。如果可行,则意味着我使用的保护无效。
在我的情况下,使用 ECDH 是不可协商的,那么我必须使用什么解决方案来保护我的 ECC 密钥对?
谢谢