Linux系统生成证书
linux自带openssl,所以最好在linux平台操作
第一步: 输入openssl进入界面
第二步:生成采用des3算法保护的私钥:
genrsa -des3 -out private-rsa.key 1024
genrsa -out private-rsa.pem 1024 (针对java)
命令执行过程中的提示信息Enter pass phrase 的含义是输入用来保护私钥文件的密码(最好不要超过6位)。
该命令会生成1024位的私钥
第三步:生成公钥证书:
req -new -x509 -key private-rsa.key -days 750 -out public-rsa.cer
rsa -in private-rsa.pem -pubout -out public-rsa.pem (针对java)
该过程除了最开始时需要输入私钥文件的保护密码之外,其他需要的输入均可直接回车忽略,不影响正常使用。为方便我统一用了一个密码(不建议)
第四步:生成PKCS12 格式Keystore:
openssl pkcs12 -export -name test-alias -in public-rsa.cer -inkey private-rsa.key -out user-rsa.pfx
ok,操作完成。
==================================pkcs1转pkcs8方式=====================================================================
私钥在使用前为pkcs1格式,转化为pkcs8编码方式
openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -out rsa_private_key_new.pem -nocrypt
rsa_private_key.pem表示原私钥文件,rsa_private_key_new.pem 表示pkcs8编码后的私钥文件。