E:\keytool>keytool -genkeypair -keyalg RSA -keysize 2048 -sigalg SHA1withRSA -validity 36000 -alias www.cnivi.cn -keystore cnivi.keystore 输入密钥库口令: 再次输入新口令: 您的名字与姓氏是什么? [Unknown]: cnivi.cn 您的组织单位名称是什么? [Unknown]: cnivi 您的组织名称是什么? [Unknown]: cnivi 您所在的城市或区域名称是什么? [Unknown]: sy 您所在的省/市/自治区名称是什么? [Unknown]: sy 该单位的双字母国家/地区代码是什么? [Unknown]: CN CN=cnivi.cn, OU=cnivi, O=cnivi, L=sy, ST=sy, C=CN是否正确? [否]: y 输入 <www.cnivi.cn> 的密钥口令 (如果和密钥库口令相同, 按回车):
-genkeypair 生成密钥对
-keyalg 指定密钥算法
-keysize 指定密钥长度
-sigalg 指定数字签名算法,这里指定为SHA1withRSA算法
-validity 指定证书有效期
-alias 指定别名
-keystore 指定密钥库位置
查看数字证书的详细信息(条目类型: PrivateKeyEntry 证书链长度: 1)
E:\openssl2>keytool -list -v -keystore cnivi.keystore 输入密钥库口令: 密钥库类型: JKS 密钥库提供方: SUN 您的密钥库包含 1 个条目 别名: www.cnivi.cn 创建日期: 2014-6-10 条目类型: PrivateKeyEntry 证书链长度: 1 证书[1]: 所有者: CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown 发布者: CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown 序列号: 7028669f 有效期开始日期: Tue Jun 10 17:56:17 CST 2014, 截止日期: Mon Jan 02 17:56:17 CST 2113 证书指纹: MD5: 56:FE:F2:DD:87:32:95:C4:5E:16:DD:10:4B:A3:43:49 SHA1: 6B:46:2F:B4:F0:80:B3:45:B4:B6:36:20:A6:9A:EA:DB:03:56:4E:4E SHA256: 44:D4:02:01:16:47:A4:9E:F1:D8:09:13:5B:E2:26:AF:45:9C:33:D1:6B:5F:57:70:66:8D:E6:BB :83:58:A9:60 签名算法名称: SHA1withRSA 版本: 3 扩展: #1: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: B1 45 66 AE 40 8F 01 AA 07 D2 06 7A 07 C0 A5 1F [email protected].... 0010: B2 6A BC 78 .j.x ] ] ******************************************* *******************************************
经过上述操作后,密钥库已经创建了数字证书。虽然这时的数字证书没有经过CA认证,但并不影响我们使用。
我们仍可以将数字证书导出,发送给合作伙伴进行加密交互。
E:\keytool>keytool -exportcert -alias www.cnivi.cn -keystore cnivi.keystore -file cnivi.cer -rfc 输入密钥库口令: 存储在文件 <cnivi.cer> 中的证书
-exportcert 表示证书导出操作
-alias 指定别名
-keystore 指定密钥库文件
-file 指定导出文件路径
-rfc 指定以base64编码格式输出
E:\keytool>keytool -importcert -trustcacerts -alias www.niutv.cn -file cnivi2.cer -keystore cnivi2.keystore 输入密钥库口令: 在别名 <www.cnivi.cn> 之下, 证书已经存在于密钥库中 是否仍要添加? [no]: y 证书已添加到密钥库中
-importcert 表示导入数字证书
-trustcacerts 表示将数字证书导入信任库
-alias 指定别名
-file 指定导入数字证书文件路径
-keystore 指定密钥库文件
E:\keytool>keytool -list -alias www.niutv.cn -keystore cnivi2.keystore 输入密钥库口令: www.niutv.cn, 2014-5-14, trustedCertEntry, 证书指纹 (SHA1): B8:95:F0:A7:9F:52:18:9A:2F:FC:BC:84:E3:26:75:C5:87:AD:8E:FB
-alias 指定别名
-keystore 指定密钥库
E:\keytool>keytool -list -keystore cnivi2.keystore 输入密钥库口令: 密钥库类型: JKS 密钥库提供方: SUN 您的密钥库包含 2 个条目 www.cnivi.cn, 2014-5-14, PrivateKeyEntry, 证书指纹 (SHA1): B8:95:F0:A7:9F:52:18:9A:2F:FC:BC:84:E3:26:75:C5:87:AD:8E:FB www.niutv.cn, 2014-5-14, trustedCertEntry, 证书指纹 (SHA1): B8:95:F0:A7:9F:52:18:9A:2F:FC:BC:84:E3:26:75:C5:87:AD:8E:FB
E:\keytool>keytool -certreq -alias www.cnivi.cn -keystore cnivi.keystore -file cnivi.csr -v 输入密钥库口令: 输入 <www.cnivi.cn> 的密钥口令 存储在文件 <cnivi.csr> 中的认证请求 将此提交给您的 CA
-certreq 表示要进行的操作,生成证书签名请求
-alias 指定别名
-file 指定导出文件
-v 详细信息
-keystore 指定密钥库文件
E:\keytool> keytool -printcert -file cnivi.cer 所有者: CN=cnivi.cn, OU=cnivi, O=cnivi, L=sy, ST=sy, C=CN 发布者: CN=cnivi.cn, OU=cnivi, O=cnivi, L=sy, ST=sy, C=CN 序列号: 4b780999 有效期开始日期: Wed May 14 09:35:28 CST 2014, 截止日期: Tue Dec 06 09:35:28 CST 2112 证书指纹: MD5: A3:E7:AD:93:1F:DD:4B:58:32:EE:FC:EB:89:31:29:4F SHA1: B8:95:F0:A7:9F:52:18:9A:2F:FC:BC:84:E3:26:75:C5:87:AD:8E:FB SHA256: 5F:00:E7:08:C8:57:CB:48:B8:C7:93:79:E4:EA:EF:C7:52:77:92:40:BC:94:3A:04:4A:14:EF:99 :61:76:1F:72 签名算法名称: SHA1withRSA 版本: 3 扩展: #1: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: 39 37 6F 5E 77 4A 7F 1E 44 DD 98 F0 AB 55 C5 91 97o^wJ..D....U.. 0010: 7E 9F AF 74 ...t ] ]