[英]How does a Java client automatically accept a self-signed certificate from the server
我正在实现一个使用自签名证书的服务器。 将证书分发给客户的最佳方法是什么? 我可以将证书导入java密钥库并设置客户端。 但有没有办法避免每个客户端手动导入证书。 这可以由java客户端自动完成吗? 我浏览了JSSE参考,但无法弄清楚如何做到这一点。 非常感谢任何帮助。
此致,Sampath。
查看KeyStore
类。 它允许您操作Java密钥库。
代码示例:
KeyStore ks = KeyStore.getInstance("JKS");
ks.load(null, null); // Creates a new keystore
BufferedInputStream bis = new BufferedInputStream(new FileInputStream("cert.cer")); // Or read from URL
CertificateFactory cf = CertificateFactory.getInstance("X.509");
Certificate cert = null;
if (bis.available() > 0) {
cert = cf.generateCertificate( bis );
ks.setCertificateEntry( "SGCert", cert );
}
ks.setCertificateEntry("SGCert", cert);
ks.store(new FileOutputStream("out.keystore"), "secret".toCharArray() );
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.