java 讀取證書的PublicKey

數字證書的格式遵循X.509標準。X.509是由國際電信聯盟(ITU-T)制定的數字證書標準。

證書擴展文件名
  • .cer, .crt - 通常被用於二進制的DER文件格式 (同於.der), 不過也被用於Base64編碼的文件 (例如 .pem).   
  • .P7B - 同於 .p7c   
  • .P7C - PKCS#7證書格式,僅僅包含證書和CRL列表信息,沒有私鑰。   
  • .PFX - 同於 .p12   
  • .P12 - PKCS#12文件, 包含證書(公鑰)和私鑰(受密碼保護),已經完整的證書鏈信。   
  • PKCS#7 是一種將數據加密和簽名(正式名稱是“enveloping”)的技術標準。 它描述數字證書的語法和其他加密消息——尤其是,數據加密和數字簽名的方法,也包含了算法。但PKCS#7不包含私鑰信息。   
  • PKCS#12 定義了一個用於保存私鑰和對應公鑰證書的文件格式,並由對稱密鑰加密保護。PKCS#12通常採用PFX,P12作爲文件擴展名。 PKCS#12文件可以存放多個證書,並由密碼保護,通常用於WINDOWS IIS,也能夠被當作Java Keysotre文件使用,用於Tomcat,Resign,Weblogic,Jboss等,不能被用於Apache.


 //java 讀取證書(.cer, .crt 其它未驗證)
 CertificateFactory certificatefactory=CertificateFactory.getInstance("X.509");
 FileInputStream bais=new FileInputStream("e:/mycert.crt");
 X509Certificate Cert = (X509Certificate)certificatefactory.generateCertificate(bais);
 PublicKey pk = Cert.getPublicKey();
 BASE64Encoder bse=new BASE64Encoder();
 System.out.println("pk:"+bse.encode(pk.getEncoded()));


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章