<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    qileilove

    blog已經轉移至github,大家請訪問 http://qaseven.github.io/

    java數字證書解析

     這兩天公司項目需要用到數字證書,把N年前的代碼找回來貼上

    package com.jinhill.util;

    import java.io.*;
    import java.security.*;
    import java.security.cert.CertificateException;
    import java.security.cert.CertificateFactory;
    import java.security.cert.X509Certificate;
    import java.util.Properties;

    public class Test {

     public static String getSubjectDN(byte[] der) {
      String dn = "";
      try {
       ByteArrayInputStream bIn = new ByteArrayInputStream(der);
       // BouncyCastleProvider provider = new BouncyCastleProvider();
       // CertificateFactory cf = CertificateFactory.getInstance("X509",
       // provider);
       CertificateFactory cf = CertificateFactory.getInstance("X.509",
         "SUN");
       X509Certificate cert = (X509Certificate) cf
         .generateCertificate(bIn);
       dn = cert.getSubjectDN().getName();
       bIn.close();
      } catch (CertificateException e) {
       e.printStackTrace();
      } catch (NoSuchProviderException e) {
       e.printStackTrace();
      } catch (IOException e) {
       e.printStackTrace();
      }
      return dn;
     }
     public static String parseCertDN(String dn, String type){
      type = type + "=";
      String[] split = dn.split(",");
      for (String x : split) {
          if (x.contains(type)) {
           x = x.trim();
           return x.substring(type.length());
          }
      }
      return null;
     }
     /**
      * @param args
      */
     public static void main(String[] args) {
      try {
       FileInputStream fis = new FileInputStream(
         "D:/Work/RootCA/newcerts/Reader01.cer");
       int flen = fis.available();
       byte[] buf = new byte[flen];
       fis.read(buf, 0, flen);
       String dn = getSubjectDN(buf);
       String cn = parseCertDN(dn, "CN");
       System.out.println(cn);
      } catch (Exception ex) {
       System.out.println("讀證書文件出錯!");
      }
     }

    }

    posted on 2013-08-20 14:12 順其自然EVO 閱讀(688) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    <2013年8月>
    28293031123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導航

    統計

    常用鏈接

    留言簿(55)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲日产乱码一二三区别| 丝袜熟女国偷自产中文字幕亚洲| 亚洲精品午夜国产VA久久成人| 91精品免费国产高清在线| 日本亚洲国产一区二区三区| 免费人成再在线观看网站| 日韩免费无码视频一区二区三区| 中文字幕久久亚洲一区| 一级一级一片免费高清| 亚洲日韩中文在线精品第一 | 亚洲av永久无码| 免费黄色网址入口| 国产国拍亚洲精品福利 | 狠狠色香婷婷久久亚洲精品| 一级毛片免费播放试看60分钟| 婷婷亚洲天堂影院| a毛片成人免费全部播放| 在线观看午夜亚洲一区| 无码精品人妻一区二区三区免费看| 亚洲自偷自拍另类图片二区| 免费观看一区二区三区| 亚洲av女电影网| 亚洲欧洲免费无码| 亚洲AV无码日韩AV无码导航| 欧洲亚洲国产精华液| 一区二区免费视频| 亚洲国产成人手机在线观看| 国产99久久久久久免费看| 亚洲人成无码www久久久| 国产日韩在线视频免费播放| 最近2019中文字幕免费直播| 亚洲精品资源在线| 成人无遮挡裸免费视频在线观看| 亚洲人成未满十八禁网站| 日韩免费观看的一级毛片| 特级av毛片免费观看| 久久精品亚洲男人的天堂| 中文亚洲成a人片在线观看| 国产亚洲精品免费视频播放| 成人毛片免费网站| 日韩免费在线中文字幕|