证书转换-SSL证书生成:cer,jks文件 韩俊强的博客

一.生成.jks文件

资料:HTTPS-老司机手把手教你SSL证书申购-TrustAsia证书
HTTPS时代已来,手把手指导申请免费SSL证书

证书转换-SSL证书生成:cer,jks文件 韩俊强的博客

1、keystore的生成:

分阶段生成

keytool 
-genkey 
-alias yushan(别名) 
-keypass yushan(别名密码) -keyalg RSA(算法) 
-keysize 1024(密钥长度) -validity 365(有效期,天单位) 
-keystore  e:/yushan.keystore(指定生成证书的位置和证书名称) 
-storepass 123456(获取keystore信息的密码);
回车输入相关信息即可; 

一次性生成

  keytool -genkey -alias yushan -keypass yushan -keyalg RSA -keysize 1024 -validity 365 -keystore  e:/yushan.keystore -storepass 123456 -dname "
CN=(名字与姓氏),
O=(组织名称), 
L=(城市或区域名称), 
ST=(州或省份名称),
C=(单位的两字母国家代码)";
 (中英文即可)

2、keystore信息的查看:

keytool -list  -v -keystore e:/keytool /yushan.keystore -storepass 123456

显示内容:

Keystore 类型: JKS
Keystore 提供者: SUN

您的 keystore 包含 1 输入

别名名称: yushan
创建日期: 2009-7-29
项类型: PrivateKeyEntry
认证链长度: 1
认证 [1]:
所有者:CN=yushan, OU=xx公司, O=xx协会, L=湘潭, ST=湖南, C=中国
签发人:CN=yushan, OU=xx公司, O=xx协会, L=湘潭, ST=湖南, C=中国
序列号:4a6f29ed
有效期: Wed Jul 29 00:40:13 CST 2009 至Thu Jul 29 00:40:13 CST 2010
证书指纹:
MD5:A3:D7:D9:74:C3:50:7D:10:C9:C2:47:B0:33:90:45:C3
SHA1:2B:FC:9E:3A:DF:C6:C4:FB:87:B8:A0:C6:99:43:E9:4C:4A:E1:18:E8
签名算法名称:SHA1withRSA

版本: 3

缺省情况下,-list 命令打印证书的 MD5 指纹。而如果指定了 -v 选项,将以可读格式打印证书,如果指定了 -rfc 选项,将以可打印的编码格式输出证书。

keytool -list  -rfc -keystore e:/yushan.keystore -storepass 123456

显示:

Keystore 类型: JKS
Keystore 提供者: SUN

您的 keystore 包含 1 输入

别名名称: yushan
创建日期: 2009-7-29
项类型: PrivateKeyEntry
认证链长度: 1
认证 [1]:

-----BEGIN CERTIFICATE-----
MIICSzCCAbSgAwIBAgIESm8p7TANBgkqhkiG9w0BAQUFADBqMQ8wDQYDVQQGDAbkuK3lm70xDzAN
BgNVBAgMBua5luWNlzEPMA0GA1UEBwwG5rmY5r2tMREwDwYDVQQKDAh4eOWNj+S8mjERMA8GA1UE
CwwIeHjlhazlj7gxDzANBgNVBAMTBnl1c2hhbjAeFw0wOTA3MjgxNjQwMTNaFw0xMDA3MjgxNjQw
MTNaMGoxDzANBgNVBAYMBuS4reWbvTEPMA0GA1UECAwG5rmW5Y2XMQ8wDQYDVQQHDAbmuZjmva0x
ETAPBgNVBAoMCHh45Y2P5LyaMREwDwYDVQQLDAh4eOWFrOWPuDEPMA0GA1UEAxMGeXVzaGFuMIGf
MA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCJoru1RQczRzTnBWxefVNspQBykS220rS8Y/oX3mZa
hjL4wLfOURzUuxxuVQR2jx7QI+XKME+DHQj9r6aAcLBCi/T1jwF8mVYxtpRuTzE/6KEZdhowEe70
liWLVE+hytLBHZ03Zhwcd6q5HUMu27du3MPQvqiwzTY7MrwIvQQ8iQIDAQABMA0GCSqGSIb3DQEB
BQUAA4GBAGoQQ1/FnTfkpQh+Ni6h3fZdn3sR8ZzDMbOAIYVLAhBb85XDJ8QZTarHbZMJcIdHxAl1
i08ct3E8U87V9t8GZFWVC4BFg/+zeFEv76SFpVE56iX7P1jpsu78z0m69hHlds77VJTdyfMSvtXv
sYHP3fxfzx9WyhipBwd8VPK/NgEP
-----END CERTIFICATE-----

二. 生成.cer文件

生成服务器密钥库和证书,客户端导入服务器证书:

1、生成密钥库(自签名的证书和私钥)

keytool -genkey -alias sksalias -keyalg RSA -keystore skeystore.jks  

密钥库和密钥库别名都需要密码,用时也需要

Enter keystore password:
Enter key password for <ksalias>

查看密钥库

keytool -list -v -keystore skeystore.jks

2、导出密钥库公钥、信息等到证书中

keytool -export -alias sksalias -keystore skeystore.jks -storepass 123456 -file scert.cer

3、建立信任密钥库(将服务端证书,导入到客户端的信任密钥库中)

keytool -import -alias  sksalias  -file scert.cer -keystore ctruststore

信任密钥库truststore也需要密码,但别名不需要密码
//truststore也是密钥库,只是少了私钥

Enter keystore password:

查看信任密钥库

keytool -list -v -keystore truststore

keytool,可以转换,pem,直接导入pem的。ie,firefox也可以转换。
同理,生成客户端的密钥库和证书,服务器端导入客户端证书。

keytool -genkey -alias cksalias -keyalg RSA -keystore ckeystore.jks
keytool -export -alias cksalias -keystore ckeystore.jks -storepass 123456 -file ccert.cer
keytool -import -alias  cksalias  -file ccert.cer -keystore struststore

资料:HTTPS-老司机手把手教你SSL证书申购-TrustAsia证书
HTTPS时代已来,手把手指导申请免费SSL证书

证书转换-SSL证书生成:cer,jks文件 韩俊强的博客

更多:每周更新关注新浪微博!iOS开发者交流群:446310206

上一篇:C#使用RSA证书文件加密和解密示例


下一篇:一键生成 FISCO-BCOS 企业级架构部署