首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将CA证书配置为安装在Android中

将CA证书配置为安装在Android中
EN

Stack Overflow用户
提问于 2015-01-23 02:04:24
回答 1查看 957关注 0票数 0

我有一个定制的SSL,我希望能够在android设备上安装它。如果我下载它,上面写着“没有安装证书”。如何使用openSSL或其他工具配置证书以工作?我已经做了一些谷歌和一些网站说,我应该把它隐藏到一个.pfx,但这涉及给用户我的私钥和破坏安全。

EN

回答 1

Stack Overflow用户

发布于 2015-01-29 11:36:48

如果您想要将您的证书添加到Android KeyChain (可能是因为ICS),则需要提供X509Certificate (.crt、.pem等)或PKCS12 (.pfx)文件。

您必须从KeyChain类调用安装意图。

根据文档:http://developer.android.com/reference/android/security/KeyChain.html#createInstallIntent()

返回可用于凭据安装的意图。该意图可以在没有任何附加条件的情况下使用,在这种情况下,用户将能够从自己的源安装凭据。 或者,EXTRA_CERTIFICATE或EXTRA_PKCS12可能用于指定X.509证书或PKCS#12密钥存储区的字节以供安装。这些附加程序可以与EXTRA_NAME结合,为正在安装的凭据提供默认别名。 当与startActivityForResult(意图,int)一起使用时,如果成功安装了凭据,将返回RESULT_OK,否则将返回RESULT_CANCELED。

然而,

在我看来,您真正想要做的是将您的X509Certificate与您的应用程序一起包括在内,这样您就可以在不需要用户知识的情况下建立安全的SSL连接,这将在所有设备上工作。

为了做到这一点,您必须创建将您的X509Certificate放在应用程序中(作为PEM字符串、.crt文件.der文件或在BouncyCastle KeyStore中)并使用它初始化SSLContext。这样做之后,您可以获得SSLSocketFactory,您可以在您的http客户端上使用它。

有关这方面的更多信息:https://developer.android.com/training/articles/security-ssl.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28101919

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档