如何将 .CER 证书转换为 .CRT

如何将 .CER 证书转换为 .CRT

我尝试将Fiddler.CER证书转换为.CRT格式:

$ openssl x509 -in FiddlerRoot.cer -out FiddlerRoot.crt
unable to load certificate
139962232211264:error:0909006C:PEM routines:get_name:no start line:../crypto/pem/pem_lib.c:745:Expecting: TRUSTED CERTIFICATE

$ strings FiddlerRoot.cer
0g1+0)
"Created by http://www.fiddler2.com1
DO_NOT_TRUST1!0
DO_NOT_TRUST_FiddlerRoot0
201116174559Z
240215174559Z0g1+0)
"Created by http://www.fiddler2.com1
DO_NOT_TRUST1!0
DO_NOT_TRUST_FiddlerRoot0
Z0X0
hG1)0v1
]0qf
_H.^K
r?XxY

也许这是一个专门针对 的问题FiddlerRoot.cer,但这是奇怪的部分,引用自这里

我注意到我尝试添加到系统中的 FiddlerRoot 证书与我导入到 Firefox 中的证书不同(Firefox 证书包含密钥信息)。我导出了 FireFox 中的证书并使用该文件更新了系统证书

我发现我的情况也正是如此。这就是为什么它很奇怪。

  • FiddlerRoot.cer文件是从下载的http://ipv4.fiddler:8888/FiddlerRoot.cer
  • 尝试用openssl上面的方法进行转换失败了。
  • 但是如果我导入了非常文件到 Firefox,然后手动导出.crt,我的 Unbuntu 系统会识别该.crt文件(但不是.cer文件本身)

所以这FiddlerRoot.cer很好,只是我还没有找到将其转换为使用命令的好方法.crt

答案1

.cer.crt只是文件扩展名,或三个字母。重要的部分是这些文件中的内容。

该文件看起来像是FiddlerRoot.cerDER 编码的证书,默认情况下 OpenSSL 无法理解该证书,因为它需要 PEM 编码的文件。为了帮助它,添加-inform DER到命令中。它还以 PEM 格式输出,所以如果这就是您所追求的,那么您就可以了。

$ openssl x509 -inform DER -in FiddlerRoot.cer -out FiddlerRoot.crt

相关内容