Android 应用程序以安全和正确的方式存储客户端证书

我正在构建一个需要基于证书的身份验证的 Android 应用程序。我不太熟悉 Java/Kotlin 编程范例。

证书将通过两种方式之一颁发,通过 API(由我控制)或通过设备管理工具,例如 MobiControl(这是目前唯一的一种,但我们可能必须使用其他设备管理工具)。

我需要一种方法来安全地存储证书,但我们可以使用设备管理套件自动部署它们,并且它们将无限期保留。证书存储是否足够?

在 unix 中,我会将它们存储在其中/etc/ssl/certs,但我不知道这是否是有效的 Android 方法。


HUH函数
浏览 130回答 1
1回答

慕田峪4524236

如果应用程序想要存储仅由该应用程序使用的客户端证书,我强烈建议使用该AndroidKeyStore系统。如果设备支持,则私钥会加密存储,并且应用程序无法访问(仅使用)。即使应用程序本身无法提取私钥,但它可以使用私钥来使用 javaCipher实例签名或解密数据。此外,您可以仅通过一个标志来设置使用证书需要设备身份验证(例如通过指纹),然后应用程序才能使用它。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java