3

我正在实现一个使用自签名证书的服务器。将证书分发给客户的最佳方式是什么?我可以将证书导入 java 密钥库并设置客户端。但是有什么办法可以避免每个客户手动导入证书。这可以由java客户端自动完成吗?我浏览了 JSSE 参考,但无法弄清楚如何做到这一点。将不胜感激任何帮助。

问候, Sampath。

4

1 回答 1

0

查看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() ); 
于 2012-02-28T09:43:29.927 回答