ssl证书生成与转换(pfx, pem, key, crt)

Posted sucretan2010

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ssl证书生成与转换(pfx, pem, key, crt)相关的知识,希望对你有一定的参考价值。

文章目录

  • 安装openssl工具
  • 自签名证书
  • 从pfx中导出公钥/私钥/证书
  • pkcs12转pkcs8

 

安装openssl工具

centos

yum install openssl

ubuntu

apt-get install openssl

  

windows
从网上下载已经编译好的openssl
http://gnuwin32.sourceforge.net/packages/openssl.htm
然后将安装路径加到环境变量中

自签名证书

生成私钥和证书

openssl req -newkey rsa:2048 -keyout my.key -subj "/C=XX/O=XX/OU=XX/OU=XX/OU=XX/CN=wzj.com" -x509 -days 36500 -out my.crt 

  

上面操作会给私钥加上密码, 可以通过参数-nodes取消密码. (为了私钥的安全性, 最好加上密码)
如果是使用windows上的gnu openssl工具, 需要指定-config ../share/openssl.cnf,

 

生成公钥
证书中包含了公钥, 因此直接使用证书生成

openssl x509 -in my.crt -outform PEM -out my.pem

 

得到了三个文件, 私钥my.key, 公钥my.pem, 证书my.crt

 

生成pfx文件
pfx需要私钥, 公钥, 证书

openssl pkcs12 -export -out my.pfx -inkey my.key -in my.pem -certfile my.crt

  

从pfx中导出公钥/私钥/证书

导出私钥

openssl pkcs12 -in my.pfx -out my2.key -nocerts

导出证书

openssl pkcs12 -in my.pfx -out my2.crt-nodes -nokeys -nokeys

生成公钥

openssl x509 -in my2.crt -outform PEM -out my2.pem

  

pkcs12转pkcs8

一些比较旧的系统还在使用pkcs8格式, 比如netty, 需要转换

openssl pkcs8 -in my.key -topk8 -out my.pk8

  

以上是关于ssl证书生成与转换(pfx, pem, key, crt)的主要内容,如果未能解决你的问题,请参考以下文章

证书格式转换

如何为Amazon ELB SSL使用* .pfx证书

将.crt、.cer、.pfx、.p7b、.der的ssl证书转换成.pem格式

[证书] OPENSSL将PFX证书转换为PEM格式

SSL证书格式转换

der pem cer crt key pfx等概念及区别