我看到其他帖子关于将PEM文件转换为crt和key文件,像这样one,但对我没有起作用。
使用openssl x509 -outform der -in your-cert.pem -out your-cert.crt
可以生成一个crt文件,但如何生成相应的key文件呢?假设key文件必须与crt文件配对使用?
有一些帖子建议像这样one,只需将文件扩展名从.pem
更改为.crt
和.key
即可完成任务。我尝试更改文件扩展名,但在使用crt和key文件启动golang中的https服务器时,它没有起作用。错误是:在私钥的PEM中找到了证书而不是密钥
。这是有道理的,因为我打开的PEM文件只包含---BEGIN CERTIFICATE---
和END CERTIFICATE
,没有关于密钥的内容。
我也尝试了openssl pkey -in mypemFile.pem -out foo.key
和openssl rsa -in mypemFile.pem -out foo.key
,但都出现了错误:Expecting: ANY PRIVATE KEY
我的情况是我需要使用Golang创建一个https服务器,这需要一个crt和key文件来启动HTTPS服务器,例如:err:= s.ListenAndServeTLS(“../../mycert.crt”,“../../mykey.key”)
,但是公司安全团队给了我一个PEM文件,因此我想将PEM文件转换为crt和key文件。