簡體   English   中英

Java客戶端如何自動接受來自服務器的自簽名證書

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM