SSL之如何将crt或者pem格式的证书转化为keystore格式的证书

介绍

密钥库文件格式 [Keystore]

格式 : JKS
扩展名 : .jks/.ks
描述 : 【Java Keystore】密钥库的Java实现版本,provider为SUN
特点 : 密钥库和私钥用不同的密码进行保护

格式 : JCEKS
扩展名 : .jce
描述 : 【JCE Keystore】密钥库的JCE实现版本,provider为SUN JCE
特点 : 相对于JKS安全级别更高,保护Keystore私钥时采用TripleDES

格式 : PKCS12
扩展名 : .p12/.pfx
描述 : 【PKCS #12】个人信息交换语法标准
特点 :
1.包含私钥、公钥及其证书
2.密钥库和私钥用相同密码进行保护

格式 : BKS
扩展名 : .bks
描述 : Bouncycastle Keystore】密钥库的BC实现版本,provider为BC
特点 : 基于JCE实现

格式 : UBER
扩展名 : .ubr
描述 : 【Bouncycastle UBER Keystore】密钥库的BC更安全实现版本,provider为BC

证书文件格式 [Certificate]

格式 : DER
扩展名 : .cer/.crt/.rsa
描述 : 【ASN .1 DER】用于存放证书
特点 : 不含私钥、二进制

格式 : PKCS7
扩展名 : .p7b/.p7r
描述 : 【PKCS #7】加密信息语法标准
特点 :
1、p7b以树状展示证书链,不含私钥
2、p7r为CA对证书请求签名的回复,只能用于导入

格式 : CMS
扩展名 : .p7c/.p7m/.p7s
描述 : 【Cryptographic Message Syntax】
特点 :
1、p7c只保存证书
2、p7m:signature with enveloped data
3、p7s:时间戳签名文件

格式 : PEM
扩展名 : .pem
描述 : 【Printable Encoded Message】
特点 :
1、该编码格式在RFC1421中定义,其实PEM是【Privacy-Enhanced Mail】的简写,但他也同样广泛运用于密钥管理
2、ASCII文件
3、一般基于base 64编码

格式 : PKCS10
扩展名 : .p10/.csr
描述 : 【PKCS #10】公钥加密标准【Certificate Signing Request】
特点 :
1、证书签名请求文件
2、ASCII文件
3、CA签名后以p7r文件回复

格式 : SPC
扩展名 : .pvk/.spc
描述 : 【Software Publishing Certificate】
特点 : 微软公司特有的双证书文件格式,经常用于代码签名,其中
1、pvk用于保存私钥
2、spc用于保存公钥

将crt或者pem格式的证书转化为keystore格式的证书

用keytool命令行工具来导入证书到JKS格式的Keystore中。

1、准备证书和私钥文件

确保您有公钥证书(通常是.crt或.pem格式)和相应的私钥文件(通常是.key格式)。如果您的证书和私钥分开存储,请确保它们都在手。

2、创建PKCS12格式的证书

将证书和私钥组合成一个PKCS12格式的文件。可以使用openssl命令来完成这一步骤
openssl pkcs12 -export -in cert.pem -inkey key.pem -out certificate.p12 -name "certificate"
在运行此命令时,您将被提示输入私钥的密码和新生成的PKCS12文件的密码

3、将PKCS12格式的证书转换为JKS格式

keytool -importkeystore -deststorepass YOUR_JKS_PASSWORD -destkeystore your_keystore.jks -srckeystore certificate.p12 -srcstoretype PKCS12 -srcstorepass YOUR_P12_PASSWORD -alias certificate
在此命令中,YOUR_JKS_PASSWORD是您希望为新的JKS Keystore设置的密码,your_keystore.jks是您想要创建的JKS文件名,YOUR_P12_PASSWORD是您在第2步中为PKCS12文件设置的密码,certificate是您在第2步中为PKCS12文件设置的别名。

按照上述步骤,就生成了一个jks格式keystore文件。



本文参考文章:

文章一

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值