Java 在Android应用程序中使用个人证书

Java 在Android应用程序中使用个人证书,java,android,ssl,certificate,Java,Android,Ssl,Certificate,我希望用户能够在从生成证书的网站安装后将自己的个人证书安装到我的Android应用程序中,但是当我使用WebClient或Android浏览器浏览时,安全存储会弹出并安装它,API在版本14(Android 4.0)之前无法使用它,我的用户还没有安装 这类网站的一个例子是。 在这里,您可以申请个人证书,确认后,您将获得一个链接,可以在其中下载证书。 我希望用户能够从这个网站和其他网站下载证书到我的应用程序中 有谁能告诉我,为了能够将证书放入我自己的应用程序中,需要处理哪些内容,或者如何修改Web

我希望用户能够在从生成证书的网站安装后将自己的个人证书安装到我的Android应用程序中,但是当我使用WebClient或Android浏览器浏览时,安全存储会弹出并安装它,API在版本14(Android 4.0)之前无法使用它,我的用户还没有安装

这类网站的一个例子是。 在这里,您可以申请个人证书,确认后,您将获得一个链接,可以在其中下载证书。 我希望用户能够从这个网站和其他网站下载证书到我的应用程序中

有谁能告诉我,为了能够将证书放入我自己的应用程序中,需要处理哪些内容,或者如何修改WebClient,使其允许我决定如何处理该文件

提前感谢,,
Patrick

由于Android密钥库API在ICS(4.0)之前是不公开的,因此您需要将密钥和证书保存到应用程序可以访问的某个文件中才能使用它们。如果您需要一个标准的受密码保护的Java密钥库文件,并且需要密码输入以进行加密操作,那么它将相当安全


您可以使用设置->位置和安全->从SD卡安装,在ICS之前的版本中导入密钥/证书对,但没有公共API从应用程序访问这些密钥/证书对,只能由内置VPN客户端使用。

个人证书的用途是什么?SSL客户端身份验证?个人证书的目的是对数据进行解密和签名,因此我只想提取证书和私钥。仍然不清楚:谁将使用密钥/证书?网络视图?您自己的应用程序的Java代码(通过JCE)?你只是想验证一个网站还是自己写一些密码?我写了我自己的密码,用我自己的应用程序代码用证书中的密钥对消息进行加密和签名。我确实发现了这一点,我发现在Android 4.0之前它是不公开的,但问题不在于存储,但是文件的检索:只要我在浏览器中打开带有证书的url,它就会尝试将其放入安全存储中。您能告诉我如何在我自己的应用程序中处理该文件的下载,以便我可以处理和保存该文件吗?同样,我们需要更多详细信息。如果用户安装了自己的密钥和证书,他们需要下载它吗?如果是他们自己的,那就意味着是本地的。如果是这样,只需将文件浏览器功能添加到应用程序中,并让他们选择文件即可。如果没有,请修改您的问题以提供更多详细信息。我插入了一个示例:comodo个人电子邮件证书,您可以从网站下载带有私钥的证书。我希望能够将这些证书下载到我的应用程序中。让他们将其下载到计算机上并传输到SD卡。然后从那里导入应用程序。谢谢你清理,我希望还有其他选择。