SSL证书PEM文件里有什么和要有什么

SSL证书PEM文件里有什么和要有什么

2023年6月27日发(作者:)

SSL证书PEM⽂件⾥有什么和要有什么Privacy-Enhanced Mail (PEM) 本来是研究来给邮件加密的,现在主要成为⼀种约定俗成的⽂件格式,⽤于存储和发送加密密钥,证书或其他数据。简单理解就是格式如下这种⽂件。-----BEGIN XXX-----BASE64-----END XXX-----JKS Keystore 转化为 PEM 的过程在⾥介绍过,我们⽣成了证书请求发给 CA 后,会收到⼀个 JKS Keystore 。JKS Keystore 转化为 PEM ⽂件过程如下。keytool -importkeystore -srckeystore -destkeystore .p12 -deststoretype pkcs12keytool -deststoretype PKCS12 -keystore .p12 -list -storepass passwordopenssl pkcs12 -in .p12 -nokeys -clcerts -out nssl pkcs12 -in .p12 -nokeys -cacerts -out >nssl pkcs12 -nocerts -nodes -in .p12 -out eys 表⽰不包含 Private Key,

clcerts 输出 Client Cert,cacerts 输出 Root Cert 和 Intermediate Cert。-nocerts -nodes 即不包含 Cert 和不加密。实际上clcerts和cacerts两个⽂件合起来和下⾯这句输出⼀致。openssl pkcs12 -in .p12 -nokeys -out 使⽤keytool也可以直接从jks导出PEM,不过需要按alias逐个导出。keytool -list -exportcert -keystore -alias 'appssl' -file -rfc使⽤

openssl导出的时候,还会添加如下Attributes。Bag Attributes friendlyName: app localKeyID: 54 69 6D 65 20 41 45 48 49 45 44 42 44 40 42 49 41 47

subject=...uer=...Entrust Certification Authority - L1M⽽且 Root Cert 和 Intermediate Cert 会出现重复,因为它们在 JKS Keystore ⾥本来就是重复的。JKS Keystore ⾥有什么查看 JKS Keystore , 可以发现⾥⾯包含3个实体,⼀个 PrivateKeyEntry 和两个 trustedCertEntry。但 PrivateKeyEntry ⾥

Certificate chain length: 3, 即包含了另外两个 Cert,于是使⽤ Openssl转化以后 Root Cert 和 IntermediateCert 就出现了重复。$ keytool -list -keystore -rfcKeystore type: jksKeystore provider: SUNYour keystore contains 3 entriesAlias name: appsslCreation date: Apr 18, 2020Entry type: PrivateKeyEntryCertificate chain length: 3Certificate[1]:-----BEGIN CERTIFICATE-----BASE64-----END CERTIFICATE-----Certificate[2]:-----BEGIN CERTIFICATE-----BASE64-----END CERTIFICATE-----Certificate[3]:-----BEGIN CERTIFICATE-----BASE64-----END CERTIFICATE-----**************************************************************************************Alias name: cn=entrust certification authority - intermediateCreation date: Apr 18, 2020Entry type: trustedCertEntry-----BEGIN CERTIFICATE-----BASE64-----END CERTIFICATE-----**************************************************************************************Alias name: cn=entrust root certification authorityCreation date: Apr 18, 2020Entry type: trustedCertEntry-----BEGIN CERTIFICATE-----BASE64-----END CERTIFICATE-----**************************************************************************************SSL 证书 PEM ⽂件⾥要有什么特地做了下试验。使⽤ Openssl 导出的 PEM 当然是可以了,⾥⾯包含了5个 PEM 。删掉重复的 Root Cert 和 Intermediate Cert 之后,表现也正常。最后,只留下 Client Cert,浏览器⾥表现正常,应⽤程序⾥测试会出错。dshakeException: PKIX path building failed: tPathBuilderException: unable to find valid certification path to requested target我的简单理解是,浏览器可以联⽹查找认证链,应⽤程序不⾏。相关规范/html/rfc1421/html/rfc7292/html/rfc7468

发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1687802197a46325.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信