当前位置:首页 > 开发 > 编程语言 > Java > 正文

java 获取windows系统安装的证书或证书链

发表于: 2013-09-26   作者:bewithme   来源:转载   浏览:
摘要:       有时需要获取windows系统安装的证书或证书链,比如说你要通过证书来创建java的密钥库  。 有关证书链的解释可以查看此处 。   public static void main(String[] args) { SunMSCAPI providerMSCAPI = new SunMSCAPI(); S

 

    有时需要获取windows系统安装的证书或证书链,比如说你要通过证书来创建java的密钥库  。

有关证书链的解释可以查看此处

 

public static void main(String[] args) {
		SunMSCAPI providerMSCAPI = new SunMSCAPI();
		Security.addProvider(providerMSCAPI);
		KeyStore ks;
		SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		try {
			ks = KeyStore.getInstance("Windows-MY");
			ks.load(null, null);
		      Enumeration aliases = ks.aliases();
              while (aliases.hasMoreElements()) {
                  String alias = (String)aliases.nextElement();          
                  Certificate[] certs = ks.getCertificateChain(alias);
                  if (certs != null) {
                      System.out.println("证书链:" + alias + "':");
                      for (int c = 0; c < certs.length; c++) {
                          if (certs[c] instanceof X509Certificate) {
                              X509Certificate cert = (X509Certificate)certs[c];
                              System.out.println("  顺序: " + (c + 1) + ":");
                              System.out.println("  主题: " + cert.getSubjectDN());
                              System.out.println("  签名算法: " + cert.getSigAlgName());
                              System.out.println("  签发时间: " + sdf.format(cert.getNotBefore()) );
                              System.out.println("  到期时间: " +sdf.format(cert.getNotAfter()));
                              System.out.println("  签发者: " + cert.getIssuerDN());
                          }
                      }
                  }
              }
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

 

 

java 获取windows系统安装的证书或证书链

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号