介绍
密钥库文件格式 [Keystore]
格式: JKS
扩展名:jks/.ks
描述: [Java Keystore] keystore的Java实现版本,提供者是SUN
功能: 密钥库和私钥采用不同的密码保护
格式: JCEKS
扩展名:jce
描述: [JCE Keystore] keystore的JCE实现版本,提供者是SUN JCE
功能: 具有比JKS 更高的安全级别,并在保护密钥库中的私钥时使用TripleDES。
格式: PKCS12
扩展名:p12/.pfx
描述: [PKCS #12] 个人信息交换语法标准
特点:
1.包含私钥、公钥及其证书
2. Keystore和私钥采用相同的密码保护
格式: BKS
扩展名:bks
描述: Bouncycastle Keystore] keystore的BC实现版本,提供者是BC
功能:基于JCE实现
格式: 优步
扩展名:ubr
描述: [Bouncycastle UBER Keystore] BC 更安全的密钥库实现版本,提供商为BC
证书文件格式 [Certificate]
格式: DER
扩展名:cer/.crt/.rsa
描述: [ASN.1 DER] 用于存储证书
功能: 私钥,不包括二进制
格式: PKCS7
扩展名:p7b/.p7r
描述: [PKCS #7] 加密消息语法标准
特点:
1. p7b 以树形形式显示不带私钥的证书链。
2. p7r是CA对签署证书请求的响应,只能用于导入。
格式: CMS
扩展名:p7c/.p7m/.p7s
描述: [加密消息语法]
特点:
1.p7c只存储证书
2. p7m:使用封装数据进行签名
3. p7s:时间戳签名文件
格式: PEM
扩展名:pem
描述: [可打印的编码消息]
特点:
1、这种编码格式是在RFC1421中定义的。事实上,PEM(隐私增强邮件)也广泛用于密钥管理。
2.ASCII文件
3.通常基于Base 64编码
格式: PKCS10
扩展名:p10/.csr
描述: [PKCS #10] 公钥加密标准[证书签名请求]
特点:
1.证书签名请求文件
2.ASCII文件
3. CA用p7r文件签名并回复
格式: SPC
扩展名:pvk/.spc
描述: [软件发行证书]
采用: Microsoft 专有的双证书文件格式。常用于代码签名。
1.pvk用于存储私钥
2.spc用于存储公钥
将crt或者pem格式的证书转化为keystore格式的证书
使用keytool 命令行工具将JKS 格式的证书导入到密钥库中。
1.准备证书和私钥文件
确保您拥有公钥证书(通常为.crt 或.pem 格式)和相应的私钥文件(通常为.key 格式)。如果证书和私钥分开存储,请确保您手头都有证书和私钥。
2.创建PKCS12格式的证书
将证书和私钥合并为PKCS12 格式文件。可以使用openssl 命令执行此步骤。
openssl pkcs12 -export -in cert.pem -inkey key.pem -outcertificate.p12 -name \’证书\’
运行此命令时,系统将提示您输入私钥密码和新生成的PKCS12 文件的密码。
3.将PKCS12格式证书转换为JKS格式
keytool -importkeystore -deststorepass YOUR_JKS_PASSWORD -destkeystore your_keystore.jks -srckeystore 证书.p12 -srcstoretype PKCS12 -srcstorepass YOUR_P12_PASSWORD -alias 证书
在此命令中,YOUR_JKS_PASSWORD 是您在新的JKS 密钥库中设置的密码,your_keystore.jks 是您创建的JKS 文件名,YOUR_P12_PASSWORD 是您在步骤2 中的PKCS12 文件中设置的密码,certificate 是您的密码别名在步骤2 中的PKCS12 文件中设置。您在步骤2 中在PKCS12 文件中配置的别名。
上述步骤将生成jks格式的keystore文件。
本文参考文章:
第1条
以上关于如何将#crt或pem格式的SSL证书转换为keystore格式的证书的信息仅供参考。相关信息请参见官方公告。
原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/92268.html