leisure

          JAVA - exceed,helloworld
          隨筆 - 50, 文章 - 0, 評論 - 11, 引用 - 0
          數據加載中……

          Java安裝本地證書

          一:生成keystore文件
          keytool是Java的數字證書管理工具,位于%JAVA_HOME%\bin目錄下,keytool可以將密鑰(key)和證書(certificates)存在一個稱為keystore的文件中。

          D:\>keytool -import -file d:\google.cer -keystore d:\google.keystore
          輸入keystore密碼:
          再次輸入新密碼:
          所有者:CN=www.google.com, O=Google Inc, L=Mountain View, ST=California, C=US
          簽發人:CN=Thawte SGC CA, O=Thawte Consulting (Pty) Ltd., C=ZA
          序列號:2fdfbcf6ae91526d0f9aa3df40343e9a
          有效期: Fri Dec 18 08:00:00 CST 2009 至Mon Dec 19 07:59:59 CST 2011
          證書指紋:
                   MD5:C4:70:74:FB:69:F9:E3:94:7E:8B:28:A4:00:73:DE:01
                   SHA1:40:50:62:E5:BE:FD:E4:AF:97:E9:38:2A:F1:6C:C8:7C:8F:B7:C4:E2
                   簽名算法名稱:SHA1withRSA
                   版本: 3
          信任這個認證? [否]:  是
          認證已添加至keystore中

          此時D盤根目錄下生成google.keystore文件

          二:信任證書
          System.setProperty ("javax.net.ssl.trustStore","d:\\google.keystore");
          System.setProperty (
          "javax.net.ssl.trustStorePassword","123456");

          三:校驗證書
          如果證書中頒發給的名稱與所通信的地址域名不一致的話,將報以下錯誤:
          javax.net.ssl.SSLException: hostname in certificate didn't match: <www.google.com.hk> != <www.google.com>
          那就需要在通信前重寫校驗方法。
          HostnameVerifier hv = new HostnameVerifier() {
              @Override
              public boolean verify(String urlHostName, SSLSession session) {
                  return urlHostName.equals(session.getPeerHost());
              }
          };
          HttpsURLConnection.setDefaultHostnameVerifier (hv);

          posted on 2011-09-17 21:13 leisure 閱讀(2377) 評論(1)  編輯  收藏 所屬分類: java

          評論

          # re: Java安裝本地證書[未登錄]  回復  更多評論   

          謝謝,正在google解決此問題,你寫的很清楚!
          2012-08-25 11:06 | joe
          主站蜘蛛池模板: 泾源县| 崇义县| 朝阳区| 嵊州市| 行唐县| 会东县| 油尖旺区| 茌平县| 营口市| 灵台县| 金堂县| 汝州市| 南陵县| 大厂| 宜州市| 定襄县| 澳门| 曲阳县| 定州市| 景谷| 宿松县| 南充市| 长治市| 连平县| 湟中县| 宁都县| 虞城县| 彭州市| 永仁县| 剑阁县| 湟中县| 华阴市| 沧源| 红原县| 丹巴县| 鹰潭市| 大悟县| 长宁区| 宜兰县| 噶尔县| 庆安县|