一、生成服务器证书库 输入命令:算法
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