OpenSSL加密错误:[('PEM例程','PEM_read_bio','无起始行')]

4

当我尝试读取证书时,出现以下错误:

OpenSSL.crypto.Error: [('PEM routines', 'PEM_read_bio', 'no start line')]

当运行OpenSSL.crypto.load_certificate(FILETYPE_PEM, filename)时,我做了一些研究,但没有找到特定于我的情况的答案。我尝试使用os.path.isfile(filename)检查文件是否存在,它返回True,但仅加载证书会引发上述错误。此外,在终端上执行openssl X509 -in file.pem时,它能够正常工作。文件file.pem长这样:
-----BEGIN CERTIFICATE-----
<<sensitive data>>
-----END CERTIFICATE-----

我能在终端上执行基本的openssl操作,所以看起来似乎是有效的。我正在运行CentOS 7,如果这有帮助的话。

有什么想法吗?

谢谢!


你的PEM文件在base64部分之前是否包含 -----BEGIN CERTIFICATE----------BEGIN X509 CERTIFICATE----- 行? - Alastair McCormack
也许你可以分享你的PEM内容 - 如果PEM很敏感,只保留base64的第一行。 - Alastair McCormack
是的,PEM 文件确实包含所有的证书起始/结束行,我会将其添加到我的帖子中。 - The Drummer from Kubuntu
1个回答

3

1
非常感谢您的帮助!但我有一个快速的问题,"r"是什么意思? - The Drummer from Kubuntu
@TheDrummerfromKubuntu,r是一种操作模式,意味着打开文件进行读取。 - Danwand N S

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接