![fa7773394e8b614edbb83dc483d6d576.png](https://img-blog.csdnimg.cn/img_convert/fa7773394e8b614edbb83dc483d6d576.png)
【转载请注明出处】:https://blog.csdn.net/huahao1989/article/details/108292030
主流 Web 服务软件证书
一般来说,主流的 Web 服务软件,通常都基于 OpenSSL 和 Java 两种基础密码库。
- Tomcat、 Weblogic、 JBoss等Web服务软件,一般 使用Java提供的密码库。通过Java Development Kit (JDK)工具包中的Keytool工具,生成 JavaKeystore(JKS)格式的证书文件。
- Apache、 Nginx等Web服务软件,一般 使用OpenSSL工具提供的密码库,生成 PEM、 KEY、 CRT等格式的证书文件。
- IBM的Web服务产品,如 Websphere、 IBMHttpServer(IHS)等,一般使用IBM产品自带的 iKeyman工具,生成 KDB格式的证书文件。
- 微软Windows Server中的 InternetInformationServices(IIS)服务,使用Windows自带的证书库生成 PFX格式的证书文件。
判断证书文件是文本格式还是二进制格式
您可以使用以下方法简单区分带有后缀扩展名的证书文件:
- .DER或 .CER文件: 这样的证书文件是二进制格式, 只含有证书信息,不包含私钥。
- .CRT文件: 这样的证书文件 可以是二进制格式,也可以是文本格式,一般均为文本格式,功能与 .DER及 .CER证书文件相同。
- .PEM文件: 这样的证书文件 一般是文本格式,可以存放证书或私钥,或者两者都包含。 .PEM 文件如果只包含私钥,一般用 .KEY文件代替。
- .PFX或 .P12文件: 这样的证书文件是二进制格式,同时包含证书和私钥,且一般有密码保护。
证书格式转换
![91af3b5dda9080962ab66e449a59c5a9.png](https://img-blog.csdnimg.cn/img_convert/91af3b5dda9080962ab66e449a59c5a9.png)
上面这张图很直观的说明了各种证书之间转化的流程,只要每一步转化成功其他的转化都是每一步的组合。
JKS 和 PFX 相互转化
PFX格式证书文件和JKS格式证书相互转化可以使用JDK中自带的keytool工具。
将JKS格式转换成PFX格式
keytool -importkeystore -srckeystore server.jks -destkeystore server.pfx -srcstoretype JKS -deststoretype PKCS12
将PFX格式转换成JKS格式
keytool -importkeystore -srckeystore server.pfx -srcstoretype PKCS12 -srcstorepass {pfx-password} -destkeystore server.jks -deststoretype JKS -deststorepass {jks-password} -alias {key-alias}
PFX 和 KEY&CRT 相互转化
PEM/KEY/CRT格式证书和PFX格式互相转换可以使用 OpenSSL工具。
将PFX转换为PEM/KEY/CRT
openssl pkcs12 -in server.pfx -nodes -out server.pemopenssl rsa -in server.pem -out server.keyopenssl x509 -in server.pem -out server.crt
此转换步骤是专用于通过Keytool工具生成私钥和CSR申请证书文件的,并且通过此方法您可以在获取到PEM格式证书公钥的情况下分离私钥。
将PEM/KEY/CRT转换为PFX
openssl pkcs12 -export -out server.pfx -inkey server.key -in server.crt
【转载请注明出处】:https://blog.csdn.net/huahao1989/article/details/108292030
欢迎关注 “后端老鸟” 公众号,接下来会发一系列的专题文章,包括Java、Python、Linux、SpringBoot、SpringCloud、Dubbo、算法、技术团队的管理等,还有各种脑图和学习资料,NFC技术、搜索技术、爬虫技术、推荐技术、音视频互动直播等,只要有时间我就会整理分享,敬请期待,现成的笔记、脑图和学习资料如果大家有需求也可以公众号留言提前获取。由于本人在所有团队中基本都处于攻坚和探路的角色,搞过的东西多,遇到的坑多,解决的问题也很多,欢迎大家加公众号进群一起交流学习。
http://weixin.qq.com/r/BUPF3efE-7qAraO_9xYX (二维码自动识别)