Java android应用程序中客户端证书的SSLHandshakeException 证书格式

Java android应用程序中客户端证书的SSLHandshakeException 证书格式,java,android,security,ssl,https,Java,Android,Security,Ssl,Https,我想在android中与客户端证书建立SSL连接 包含证书和私钥的文件采用*.pem格式,例如user\u cert.pem。PEM格式如下所示: ---开始RSA私钥--- ... ---结束RSA私钥--- ... ---开始证书--- ... ---结束证书--- ... 由于android只支持BKS格式,我通过软件将user_cert.pem转换为BKS格式 错误 我进行SSL连接,如下所示 我在电话文件夹/存储器/文档中有证书 运行应用程序时,出现以下错误:

我想在android中与客户端证书建立SSL连接

包含证书和私钥的文件采用*.pem格式,例如user\u cert.pem。PEM格式如下所示:

---开始RSA私钥---

  ...
---结束RSA私钥---

  ...
---开始证书---

  ...
---结束证书---

  ...
由于android只支持BKS格式,我通过软件将user_cert.pem转换为BKS格式

错误 我进行SSL连接,如下所示

我在电话文件夹/存储器/文档中有证书

运行应用程序时,出现以下错误:

javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidator异常:的信任锚 找不到证书路径

中描述了各种原因,但我无法想象到底是什么错

发出POST请求的功能是:


服务器使用的是商业证书还是自签名证书?它是自签名证书。。。我想知道转换成BKS格式是否改变了PEM文件,这就是服务器不接受客户机证书的原因。Java是否支持一些库来管理PEM文件?我假设错误消息与客户机证书无关,它与服务器证书有关。您必须将其作为受信任证书添加到证书存储中。没有服务器证书。我只有一个客户端证书。在SSL/TLS中,服务器总是有一个证书。唯一的问题是哪一个,商业的,自签名的还是服务器生成的临时的。