鷹翔宇空

          學習和生活

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            110 Posts :: 141 Stories :: 315 Comments :: 1 Trackbacks

          這兩天,一直忙著搞SSL,其間遇到了不少小麻煩,為了總結自己的得失,同時也為了給后來者一些參考,就整理了一下。
          其實主要的就是要創建一個密鑰倉庫以管理您的公鑰
          / 私鑰對來自您所信任實體的證書。
          ?
          第一步:生成密鑰對
          您首先要做的是創建一個密鑰倉庫和生成密鑰對。您可以使用以下命令: ?
          keytool -genkey -keyalg RSA -keysize 512 -dname "cn=hyq,o=eagle,c=cn" -alias weblogic -keypass 123456 -keystore C:/mykeystore/weblogic.jks -storepass 123456 -validity 365

          (請注意:鍵入該命令時必須使其成為一行。此處用多行來顯示,主要是為了可讀性。)如下圖:
          Snap2.gif

          該命令將在 ?C? 盤的 “mykeystore” 目錄中創建名為 “weblogic.jks” 的密鑰倉庫,并賦予它口令 123456 。它將為實體生成公鑰 / 私鑰對,該實體的 特征名 為:常用名 “hyq” 、組織 “eagle” 和兩個字母的國家代碼 “cn” 。“ -keyalg ”指定它使用的是那種密鑰生成算法來創建密鑰,缺省的是 “DSA” 密鑰生成算法(會使用缺省的 ?DSA? ?SHA1” 簽名算法),兩個密鑰(公鑰與私鑰)的長度是 512 位,由 -keysize 來指定,默認的是 1024? 位。 ? 該證書包括公鑰和特征名信息。該證書的有效期為 365 天,由 -validity 來指定,且與別名 “business” 所代表的密鑰倉庫項關聯。私鑰被賦予口令 123456

          ?

          命令行里 DName 信息注解

          ?

          DN 信息域

          含義

          CN

          域名或 IP

          OU

          部門,沒有部門的可不要此項

          O

          單位名稱

          L

          單位地址

          S

          省份的拼音(第一個字母大寫)

          C

          國家的簡寫 ( CN 代表中國)


          如果采用選項的缺省值,可以大大縮短該命令。實際上,這些選項并不是必需的;對于有缺省值的選項,未指定時將使用缺省值,對于任何被要求的值,您將會得到要求輸入它的提示。例如:輸入命令 keytool -genkey -keystore "C:/tone.jks" -storepass 123456 -keyalg RSA ,就會有如下提示:
          Snap3.gif


          注意:這里的
          密鑰倉庫路徑一定要存在,如果不存在的話,它就會拋如下的異常

          Snap4.gif
          第二步
          : 產生證書請求certreq.pem 文件

          使用如下命令:

          keytool -certreq -alias weblogic -sigalg "MD5withRSA" -file C:/mykeystore/certreq.pem -keypass 123456 -keystore C:/mykeystore/weblogic.jks -storepass 123456

          Snap5.gif
          這樣在
          C:/mykeystore/ 目錄下 就會產生一個 certreq.pem 文件,內容如下:

          -----BEGIN NEW CERTIFICATE REQUEST-----

          MIHlMIGQAgEAMCsxCzAJBgNVBAYTAmNuMQ4wDAYDVQQKEwVlYWdsZTEMMAoGA1UEAxMDaHlxMFww

          DQYJKoZIhvcNAQEBBQADSwAwSAJBAMhaIG2Ki7+RwZUP4gPBdTbnY38bisW16u1XUyysPxdNwSie

          aSd6E3Hm277E7NjHoz56ZoaYdPPDmdiTkMrS9rcCAwEAAaAAMA0GCSqGSIb3DQEBBAUAA0EAYRNl

          l5dyGgV9hhu++ypcJNQTrDIwjx1QT4fgVubrtIaHU0fzHamD5QG6PYddw9TL51XQHvu6tOS0NUc/

          ItNKJw==

          -----END NEW CERTIFICATE REQUEST-----

          第三步:這就相對來說簡單多了,就是CA提交證書請求。
          ??? 你可以隨便從網上找一家免費的CA認證適用機構(很多的),然后按照上面的提示進行操作就可以了,這一步就要用到前面生成的certreq.pem 文件了。(注意:一定要下載根證書)
          ??? 將生成的證書和下載的根證書放至你比較容易找到的位置,我一般將它們和生成的jks文件放到一起。

          第四步:導入證書
          ??? 通過命令:keytool -import -alias RootCA -trustcacerts -file C:/mykeystore/RootCADemo.cer -keystore C:/mykeystore/weblogic.jks -storepass 123456將根證書導入第一步生成的weblogic.jks中,接著將所有其它的證書按照此命令全部導入。(注意證書的別名不能重復,同時一定注意要用上 -trustcacerts,否則,你在以后使用時,它將會認為你導入的這些證書是不可信任的 ,就會導致你在配置SSL時不能正常的工作。)
          ??? 這就全部完成了密鑰倉庫的創建。然后就可以在支持這些證書格式的服務器上使用了。下一篇將會寫一下在weblogic上如何配置雙向SSL。

          posted on 2006-03-20 09:47 TrampEagle 閱讀(4851) 評論(5)  編輯  收藏 所屬分類: 學習體會

          Feedback

          # re: 如何使用keytool創建密鑰倉庫 2006-03-20 10:26 david.turing
          呵呵,可以參考一下我寫的文章《weblogic security in Action》中篇

          http://dev2dev.bea.com.cn/bbs/servlet/D2DServlet/download/81-26770-178629-2291/Weblogic%20Security%20In%20Action(2).swf  回復  更多評論
            

          # re: 如何使用keytool創建密鑰倉庫 2006-03-20 10:38 TrampEagle
          @david.turing
          謝謝,呵呵呵,很好的文章!
          可惜沒有早點看到你的文章啊,不過自己總結一下也好,對自己也是一種提升吧。  回復  更多評論
            

          # re: 如何使用keytool創建密鑰倉庫 2006-03-20 22:08 david.turing
          hehe, u r welcome
          we hope u join our qq group[securitysite]:14966586  回復  更多評論
            

          # re: 如何使用keytool創建密鑰倉庫 2006-03-21 08:26 TrampEagle
          @david.turing
          謝謝david.turing!我已經加入了,只是用的另一個qq號,我就是312,呵呵!再次向你致謝!  回復  更多評論
            

          # re: 如何使用keytool創建密鑰倉庫 2008-04-11 09:46 將軍
          非常感謝。。樓主  回復  更多評論
            

          主站蜘蛛池模板: 济源市| 中卫市| 四平市| 荆州市| 和龙市| 砚山县| 平谷区| 黑龙江省| 宣恩县| 商丘市| 富顺县| 林州市| 上饶县| 宿松县| 黄浦区| 九龙坡区| 靖江市| 黑山县| 巧家县| 梅河口市| 绥江县| 土默特右旗| 自贡市| 崇文区| 获嘉县| 衡水市| 金坛市| 三门峡市| 房产| 平和县| 会理县| 肃宁县| 文水县| 汾西县| 阳泉市| 清水县| 嘉义县| 弥渡县| 绥江县| 钟祥市| 盖州市|