一、生成服務器證書庫 輸入命令:算法
keytool -validity 365 -genkey -v -alias server -keyalg RSA -keystore D:\jks\server.keystore -dname "CN=127.0.0.1,OU=icesoft,O=icesoft,L=Haidian,ST=Beijing,c=cn" -storepass 123456 -keypass 123456
輸出命令:服務器
正在爲如下對象生成 2,048 位RSA密鑰對和自簽名證書 (SHA256withRSA) (有效期爲 365 天): CN=127.0.0.1, OU=icesoft, O=icesoft, L=Haidian, ST=Beijing, C=cn [正在存儲D:\jks\server.keystore]
二、生成客戶端證書庫 輸入命令:code
keytool -validity 365 -genkeypair -v -alias client -keyalg RSA -store type PKCS12 -keystore D:\jks\clq.p12 -dname "CN=clq4123345553344,OU=icesoft ,O=icesoft,L=Haidian,ST=Beijing,c=cn" -storepass 123456 -keypass 123456
輸出命令:server
正在爲如下對象生成 2,048 位RSA密鑰對和自簽名證書 (SHA256withRSA) (有效期爲 365 天): CN=clq4123345553344, OU=icesoft, O=icesoft, L=Haidian, ST=Beijing, C=c n [正在存儲E:\jks\clq.p12]
三、從客戶端證書庫中導出客戶端證書 輸入命令:對象
keytool -export -v -alias client -keystore D:\jks\clq.p12 -storet ype PKCS12 -storepass 123456 -rfc -file D:\jks\clq.cer
輸出命令:it
存儲在文件 <D:\jks\clq.cer> 中的證書
四、從服務器證書庫中導出服務器證書 輸入命令:import
keytool -export -v -alias server -keystore D:\jks\server.keystore -storepass 123456 -rfc -file D:\jks\server.cer
輸出命令:cli
存儲在文件 <D:\jks\server.cer> 中的證書
五、生成客戶端信任證書庫(由服務端證書生成的證書庫) 輸入命令:擴展
keytool -import -v -alias server -file D:\jks\server.cer -keystor e D:\jks\clq.truststore -storepass 123456
輸出命令:file
全部者: CN=127.0.0.1, OU=icesoft, O=icesoft, L=Haidian, ST=Beijing, C=cn 發佈者: CN=127.0.0.1, OU=icesoft, O=icesoft, L=Haidian, ST=Beijing, C=cn 序列號: 600eef1a 有效期開始日期: Tue Jan 17 18:22:57 GMT+08:00 2017, 截止日期: Wed Jan 17 18:22:5 7 GMT+08:00 2018 證書指紋: MD5: 45:E0:86:35:2A:22:14:26:27:B8:00:C5:54:EB:20:96 SHA1: 0C:23:BA:A2:29:A1:8A:35:DF:75:62:B8:4D:EC:D4:57:32:C6:57:19 SHA256: BA:D1:57:49:26:7B:C4:15:B7:54:23:8F:F9:A3:C2:86:F5:81:6E:DB:D7: 3A:E0:89:A7:AA:16:90:17:48:B4:5E 簽名算法名稱: SHA256withRSA 版本: 3 擴展: #1: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: 89 B9 60 1C 13 7E 2E 53 C2 D2 9B 78 97 A0 F6 74 ..`....S...x...t 0010: E9 88 56 F7 ..V. ] ] 是否信任此證書? [否]: Y 證書已添加到密鑰庫中 [正在存儲D:\jks\clq.truststore]
六、將客戶端證書導入到服務器證書庫(使得服務器信任客戶端證書) 輸入命令:
keytool -import -v -alias client -file D:\jks\clq.cer -keystore d:\jks\server.keystore -storepass 123456
輸出命令:
全部者: CN=clq 4123345553344, OU=icesoft, O=icesoft, L=Haidian, ST=Beijing, C=cn 發佈者: CN=clq 4123345553344, OU=icesoft, O=icesoft, L=Haidian, ST=Beijing, C=cn 序列號: 4d36ba08 有效期開始日期: Tue Jan 17 18:26:04 GMT+08:00 2017, 截止日期: Wed Jan 17 18:26:0 4 GMT+08:00 2018 證書指紋: MD5: F4:DA:20:16:CF:6C:88:B8:A0:30:89:6E:09:06:B3:36 SHA1: 35:B3:CE:16:A1:3F:DA:50:45:66:83:51:29:B8:46:59:FF:1E:A1:B7 SHA256: DB:17:6E:5D:AE:F6:79:45:1B:95:B8:90:AE:70:6E:8E:5C:C9:31:EC:EF: 0E:23:BF:41:E1:E1:A0:FC:2E:FD:03 簽名算法名稱: SHA256withRSA 版本: 3 擴展: #1: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: 58 04 1B D7 4B DE F8 4D 43 95 B4 0F 2C AA 6C 7A X...K..MC...,.lz 0010: 95 5D 7E 2E .].. ] ] 是否信任此證書? [否]: Y 證書已添加到密鑰庫中 [正在存儲d:\jks\server.keystore]
七、查看證書庫中的所有證書 輸入命令:
keytool -list -keystore D:\jks\server.keystore -storepass 123456
輸出命令:
密鑰庫類型: JKS 密鑰庫提供方: SUN 您的密鑰庫包含 2 個條目 client, 2017-1-17, trustedCertEntry, 證書指紋 (SHA1): 35:B3:CE:16:A1:3F:DA:50:45:66:83:51:29:B8:46:59:FF:1E:A1:B7 server, 2017-1-17, PrivateKeyEntry, 證書指紋 (SHA1): 0C:23:BA:A2:29:A1:8A:35:DF:75:62:B8:4D:EC:D4:57:32:C6:57:19