我有一个将连接到服务器的Android应用程序。我希望android应用程序能够验证服务器证书是否由我自己创建的根证书签名。
我尝试将root ca添加到我的信任库:
InputStream rootCa = getResources().openRawResource(R.raw.root_ca);
CertificateFactory cf = CertificateFactory.getInstance("X.509");
trustStore.load(null,null);
trustStore.setCertificateEntry("serverRoot", cf.generateCertificate(rootCa));
SSLSocketFactory sf = new SSLSocketFactory(trustStore);
sf.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
但我一直收到这个错误:
javax.net.ssl.SSLPeerUnverifiedException: No peer certificate
有关如何执行此操作的任何建议吗?