|
|
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已! |
|
恭喜您是本站第 1730164
位訪客!
登入 | 註冊
|
|
|
|
發表者 |
討論內容 |
冷日 (冷日) |
發表時間:2017/7/23 1:45 |
- Webmaster

- 註冊日: 2008/2/19
- 來自:
- 發表數: 15773
|
- [轉貼]JAVA KEYTOOL 的使用及申請憑證
JAVA KEYTOOL的使用及申請憑證(以MICROSOFT ACTIVE DIRECTORY CERTIFICATE SERVICES為例) KEYTOOL是一個JAVA資料證書的管理工具,KEYTOOL將金鑰(KEY)和證書(CERTIFICATES)存在一個稱為KEYSTORE的檔中 在KEYSTORE裡,包含兩種資料: - 金鑰實體(KEY ENTITY):金鑰(SECRET KEY)又或者是私密金鑰和配對公開金鑰(採用非對稱加密)
- 可信任的證書實體(TRUSTED CERTIFICATE ENTRIES):只包含公開金鑰
AILAS(別名)每個KEYSTORE都關聯這一個獨一無二的ALIAS,這個ALIAS通常不區分大小寫  JDK中KEYTOOL常用指令: - -GENKEY:在用戶主目錄中創建一個預設檔".KEYSTORE",還會產生一個MYKEY的別名,MYKEY中包含用戶的公開金鑰、私密金鑰和證書(在沒有指定生成位置的情況下,KEYSTORE會存在使用者系統預設目錄,如:對於WINDOWS系統,會生成在系統的C:\DOCUMENTS AND SETTINGS\USERNAME\檔案名為“.KEYSTORE”)
- -ALIAS:產生別名
- -KEYSTORE:指定金鑰庫的名稱(產生的各類資訊將不在.KEYSTORE文件中)
- -KEYALG:指定金鑰的演算法 (如 RSA  DSA(如果不指定默認採用DSA))
- -VALIDITY:指定創建的證書有效期多少天
- -KEYSIZE:指定金鑰長度
- -STOREPASS:指定金鑰庫的密碼(獲取KEYSTORE資訊所需的密碼)
- -KEYPASS:指定別名條目的密碼(私密金鑰的密碼)
- -DNAME:指定證書擁有者資訊 例如:  "CN=名字與姓氏,OU=組織單位名稱,O=組織名稱,L=城市或區域名稱,ST=州或省份名稱,C=單位的兩字母國家代碼"
- -LIST:顯示金鑰庫中的證書資訊      KEYTOOL -LIST -V -KEYSTORE 指定KEYSTORE -STOREPASS 密碼
- -V :顯示金鑰庫中的證書詳細資訊
- -EXPORT:將別名指定的證書匯出到檔  KEYTOOL -EXPORT -ALIAS 需要匯出的別名
- -KEYSTORE:指定KEYSTORE -FILE 指定匯出的證書位置及證書名稱 -STOREPASS 密碼
- -FILE:參數指定匯出到檔的檔案名
- -DELETE
:刪除金鑰庫中某條目 KEYTOOL -DELETE -ALIAS 指定需刪除的別名; -KEYSTORE 指定KEYSTORE;-STOREPASS 指定密碼 - -PRINTCERT:查看匯出的證書資訊          KEYTOOL -PRINTCERT -FILE YUSHAN.CRT
- -KEYPASSWD:修改金鑰庫中指定條目指令:KEYTOOL -KEYPASSWD -ALIAS 需修改的別名 -KEYPASS 舊密碼 -NEW  新密碼  -STOREPASS KEYSTORE密碼  -KEYSTORE SAGE
- -STOREPASSWD:修改KEYSTORE指令:KEYTOOL -STOREPASSWD -KEYSTORE E:\POLIN.KEYSTORE(需修改口令的KEYSTORE) -STOREPASS 123456(原始密碼) -NEW POLINWEI(新密碼)
- -IMPORT:將已簽名數位憑證導入金鑰庫  KEYTOOL -IMPORT -ALIAS 指定導入條目的別名 -KEYSTORE 指定KEYSTORE -FILE 需導入的證書
下面是各選項的預設值。 - -ALIAS "MYKEY"
- -KEYALG "DSA"
- -KEYSIZE 1024
- -VALIDITY 90
- -KEYSTORE  為使用者主目錄中名為 .KEYSTORE 的文件
- -FILE 讀入時為標準輸入,寫出時為標準輸出
1. KEYSTORE的產生:  分階段產生: KEYTOOL -GENKEY -ALIAS EDI-PROD(別名) -KEYPASS PASSWORD(別名密碼) -KEYALG RSA(演算法) -KEYSIZE 1024(金鑰長度) -VALIDITY 365(有效期,天單位) -KEYSTORE ./EDI.KEYSTORE(指定生成證書的位置和證書名稱) -STOREPASS 123456(獲取KEYSTORE資訊的密碼) 一次性產生:KEYTOOL -GENKEY -ALIAS EDI-PROD -KEYPASS PASSWORD -KEYALG RSA -KEYSIZE 1024 -VALIDITY 365 -KEYSTORE ./EDI.KEYSTORE -STOREPASS 123456 -DNAME "CN=(名字與姓氏), OU=(組織單位名稱), O=(組織名稱), L=(城市或區域名稱), ST=(州或省份名稱), C=(單位的兩字母國家代碼)";(中英文都可) 2.查看KEYSTORE裡的資訊:KEYTOOL -LIST  -V -KEYSTORE ./EDI.KEYSTORE -STOREPASS 123456 KEYSTORE 類型: JKS KEYSTORE 提供者: SUN
您的 KEYSTORE 包含 1 輸入
別名名稱: EDI-PROD 建立日期: 2013/2/6 項目類型:PRIVATEKEYENTRY 認證鏈長度: 1 認證 [1]: 所有者:CN=MIS, OU=MIS, O=WEI, L=TAIPEI, ST=TAIPEI, C=TW 核發者:CN=MIS, OU=MIS, O=WEI, L=TAIPEI, ST=TAIPEI, C=TW 序號:51121B83 自以下日期開始生效:WED FEB 06 16:59:47 CST 2013,直到:THU FEB 06 16:59:47 CST 2014 憑證指紋:         MD5:C7:EE:5A:17:C6:FF:0D:30:7C:6B:52:53:D7:29:B1:A6         SHA1:35:D9:F0:07:5B:2D:9E:89:45:9A:4D:B8:8B:B9:7F:12:D1:36:3B:EC         簽名演算法名稱:SHA1WITHRSA         版本:3 3.產生要向第三方發證單位(如:CA)申請的檔案KEYTOOL -CERTREQ -ALIAS EDI-PROD -FILE EDI-CERTREQ.TXT -KEYSTORE ./EDI.KEYSTORE -STOREPASS 123456 -KEYPASS PASSWORDEDI-CERTREQ.TXT的檔案內容: -----BEGIN NEW CERTIFICATE REQUEST----- MIIBMTCCAQICAQAWWTELMAKGA1UEBHMCVFCXDZANBGNVBAGTBLRHAXBLATEPMA0GA1UEBXMGVGFP CGVPMQWWCGYDVQQKEWN3ZWKXDDAKBGNVBASTA21PCZEMMAOGA1UEAXMDBWLZMIGFMA0GCSQGSIB3 DQEBAQUAA4GNADCBIQKBGQCLZG0MUVPAF+CMOG/PWOBKY+VG8L6W6XOF0HGFA3S+3LFV+V79EZLF VZ3E7L8HEOXM2VTTBM9ODMSBHOG8ZFUBAWYEQ7JZOJ74VSXT3RYFPMEFQMQYZYVN+SD5X9GWX3SB 52L7I0E+1ZKRXC674E9YMGZATZFQISCIJ6VJ76IL3WIDAQABOAAWDQYJKOZIHVCNAQEFBQADGYEA HZ0J99+3Z0SP56LWXZBAVWNNMJ1ATTPX5WQCACG+NFDUUMCV2NHY/ZWZD9P+EDNBBHGBAFQC8HNU +QO002MBLZWONUPF4QGLTFP+TNZ+ZGZAMKTYLEQIQKYMOD6FEYNMNPVW7AMVENPL+PVPEJY8DY4L 2Z4HIFW1FLQSUCLIU0A= -----END NEW CERTIFICATE REQUEST-----  4.登入 MICROSOFT ACTIVE DIRECTORY CERTIFICATE SERVICES 網站 HTTP://LOCALHOST/CERTSRV 作申請->REQUEST A CERTIFICATE ->ADVANCED CERTIFICATE REQUEST. ->SUBMIT A CERTIFICATE REQUEST BY USING A BASE-64-ENCODED CMC OR PKCS #10 FILE, OR SUBMIT A RENEWAL REQUEST BY USING A BASE-64-ENCODED PKCS #7 FILE. 選擇 DOWNLOAD CERTIFICATE CHAIN 將產生的憑證存成 EDI-CERTNEW.P7B 5.將EDI-CERTNEW.P7B 加入到EDI.KEYSTORE中:KEYTOOL -IMPORT -ALIAS EDI-PROD(指定導入證書的別名,如果不指定,預設值為MYKEY,別名是唯一,沒指定對導入會出錯) -FILE EDI-CERTNEW.P7B -KEYSTORE ./EDI.KEYSTORE -STOREPASS 123456 -KEYPASS PASSWORD並可查看KEYSTORE裡,應有新增一個憑證的資訊: KEYTOOL -LIST  -V -KEYSTORE ./EDI.KEYSTORE -STOREPASS 123456 原文出處:我與小崴崴的工作日記: JAVA KEYTOOL的使用及申請憑證(以MICROSOFT ACTIVE DIRECTORY CERTIFICATE SERVICES為例)
|
|
討論串
|