use*_*813 4 ssl base64 openssl certificate
我在读取 Base64 编码的 SSL 证书时遇到一些问题。我拥有的是一个base64编码的字符串,没有“----BEGIN CERTIFICATE----”和“----END CERTIFICATE----”。我尝试用多种方式阅读它,但对我来说失败了
我尝试通过cmd读取证书
openssl x509 -in cdg_cert -text -noout
Run Code Online (Sandbox Code Playgroud)
并得到: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
Run Code Online (Sandbox Code Playgroud)
,经过一番努力后,只是尝试使用文本编辑器并将页眉/页脚包裹在 base64 编码部分周围:
-----BEGIN CERTIFICATE-----
...(cert content goes here)...
-----END CERTIFICATE-----
Run Code Online (Sandbox Code Playgroud)
之后,我能够使用以下方式读取证书:
"c:\Program Files\Git\mingw64\bin\openssl" x509 -text -noout -in IdP_Signing_Certificate.crt
Run Code Online (Sandbox Code Playgroud)
正如评论中已经提到的,您应该知道需要放置哪个标头,因为它是 PEM 定义的一部分。标头中的字符串在此处定义,并取决于证书中提供的内容,这是添加到 PEM 的未知部分:
https://github.com/openssl/openssl/blob/master/include/openssl/pem.h
简而言之:PEM 只是 base64 DER 输出 + header/footer。
| 归档时间: |
|
| 查看次数: |
18186 次 |
| 最近记录: |