Natural

           

          keyTool的用法

          轉(zhuǎn)自http://blog.chinaunix.net/u/3641/showart_506402.html
          Xfire實(shí)現(xiàn)WSS之創(chuàng)建密鑰對(duì)和數(shù)字證書(shū)
          簽名和加密需要使用到數(shù)字證書(shū)和密鑰對(duì),可以使用JDK提供的KeyTool工具創(chuàng)建密鑰對(duì)和數(shù)字證書(shū)。我們分別為服務(wù)端和客戶端創(chuàng)建RSA密鑰 對(duì),并生成各自的數(shù)字證書(shū)(包含公鑰和數(shù)字簽名)。服務(wù)端和客戶端擁有各自的密鑰庫(kù)JKS文件,服務(wù)端的密鑰庫(kù)保存服務(wù)端的密鑰對(duì)和客戶端的數(shù)字證書(shū),而 客戶端的密鑰庫(kù)保存客戶端的密鑰對(duì)和服務(wù)端的數(shù)字證書(shū)。

          下面,我們來(lái)看看xfire提供的例子:

          <XFIRE_HOME>/examples/ws-security/keys/generateKeyPair.bat批處理文件:
          rem @echo off

          #接受參數(shù)

          echo alias %1

          echo keypass %2

          echo keystoreName %3

          echo KeyStorePass %4

          echo keyName %5

          創(chuàng)建RSA密鑰對(duì)
          keytool -genkey -alias %1 -keypass %2 -keystore %3 -storepass %4 -dname "cn=%1" -keyalg RSA
          使用私鑰進(jìn)行自簽名
          keytool -selfcert -alias %1 -keystore %3 -storepass %4 -keypass %2
          導(dǎo)出數(shù)字證書(shū)
          keytool -export -alias %1 -file %5 -keystore %3 -storepass %4
          <XFIRE_HOME>/examples/ws-security/keys/generateServerKey.bat文件:
          下面兩行命名分別調(diào)用generateKeyPair.bat批處理文件為服務(wù)端和客戶端生成密鑰對(duì)
          call generateKeyPair.bat server serverpass serverStore.jks storepass serverKey.rsa
          call generateKeyPair.bat client clientpass clientStore.jks storepass clientKey.rsa
          將服務(wù)端的數(shù)字證書(shū)導(dǎo)入客戶端的密鑰庫(kù)
          keytool -import -alias server -file serverKey.rsa -keystore clientStore.jks -storepass storepass -noprompt
          將客戶端的數(shù)字證書(shū)導(dǎo)入服務(wù)端的密鑰庫(kù)
          keytool -import -alias client -file clientKey.rsa -keystore serverStore.jks -storepass storepass -noprompt
          運(yùn)行該批處理文件后,將分別為服務(wù)端和客戶端生成一個(gè)Java密鑰庫(kù)文件,它們分別擁有一個(gè)自己的密鑰對(duì)和對(duì)方的數(shù)字證書(shū)。我們通過(guò)表1對(duì)兩者密鑰庫(kù)文件的內(nèi)容進(jìn)行說(shuō)明:

          表1密鑰庫(kù)說(shuō)明


          服務(wù)端Java密鑰庫(kù)
          客戶端Java密鑰庫(kù)

          對(duì)應(yīng)密鑰庫(kù)文件
          serverStore.jks
          clientStore.jks

          密鑰庫(kù)密碼
          storepass
          storepass

          庫(kù)中包含的內(nèi)容
          server密鑰對(duì)、client數(shù)字證書(shū)
          client密鑰對(duì)、server數(shù)字證書(shū)

          密鑰對(duì)別名
          server
          client

          密鑰對(duì)私鑰的保護(hù)密碼
          serverpass
          clientpass

          posted on 2011-01-11 15:56 此號(hào)已被刪 閱讀(598) 評(píng)論(0)  編輯  收藏 所屬分類: JAVA

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(8)

          隨筆分類(83)

          隨筆檔案(78)

          文章檔案(2)

          相冊(cè)

          收藏夾(7)

          最新隨筆

          搜索

          積分與排名

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 兴城市| 开封县| 澜沧| 潼南县| 嘉义县| 莲花县| 泗阳县| 新丰县| 嵩明县| 改则县| 乐安县| 普宁市| 广河县| 启东市| 广州市| 招远市| 昆山市| 通榆县| 贡山| 玉林市| 德庆县| 龙游县| 阿拉善左旗| 元谋县| 常德市| 调兵山市| 石渠县| 福州市| 横山县| 莱西市| 攀枝花市| 五原县| 竹溪县| 藁城市| 敦化市| 株洲县| 扶风县| 渭源县| 洛南县| 台南市| 和林格尔县|