读取base64编码证书的内容



我在阅读base64编码的SSL证书时遇到了一些麻烦。我所拥有的是一个base64编码字符串,没有"----BEGIN CERTIFICATE----"one_answers"----END CERTIFICATE----"。我试着用多种方法读它,但它失败了

我试图通过cmd

读取证书
openssl x509 -in cdg_cert -text -noout 

,得到:PEM routines:CRYPTO_internal:no start Expecting: TRUSTED CERTIFICATE error

我还试图解码字符串并将其保存在我的磁盘上,最终以二进制文件结束,仍然无法通过openssl cmd读取它,最终出现相同的错误

谷歌周围,没有找到任何好的提示,谁能请帮助我的cmd我应该使用?我正在运行macbook并试图读取证书内容

我也有同样的问题

unable to load certificate
459600:error:0909006C:PEM routines:get_name:no start line:../openssl-1.1.1a/crypto/pem/pem_lib.c:745:Expecting: TRUSTED CERTIFICATE

,在挣扎了很多之后,只是试图使用文本编辑器并围绕base64编码部分包装头/脚:

-----BEGIN CERTIFICATE-----
...(cert content goes here)...
-----END CERTIFICATE-----

之后,我可以使用

读取证书
"c:Program FilesGitmingw64binopenssl" x509 -text -noout  -in IdP_Signing_Certificate.crt

正如在注释中已经提到的,您应该知道需要放置哪个报头,因为它是PEM定义的一部分。报头中的字符串在这里定义,并且依赖于证书中提供的内容,即添加到PEM中的未知部分:

https://github.com/openssl/openssl/blob/master/include/openssl/pem.h

简而言之:PEM只是base64 DER输出+页眉/页脚.

最新更新