crypto.load_certificate()抛出“没有起始行”#39;

时间:2016-02-01 08:07:00

标签: pyopenssl

我正在尝试使用。打开编码的X509证书 以下命令

!在/ usr / bin中/ Python的

来自OpenSSL import crypto,SSL

crypto.load_certificate(crypto.FILETYPE_PEM,' ca_file.pem')

但执行后我收到以下错误

追踪(最近一次通话):   文件" cert_from_sign_req.py",第13行,in     " ca_file.pem&#34)   在load_certificate中的文件" build / bdist.linux-x86_64 / egg / OpenSSL / crypto.py",第1511行   文件" build / bdist.linux-x86_64 / egg / OpenSSL / _util.py",第48行,在exception_from_error_queue中 OpenSSL.crypto.Error:[(' PEM例程',' PEM_read_bio','没有开始行')

有人可以帮我理解是什么问题吗?

1 个答案:

答案 0 :(得分:0)

已经找到了原因。我的示例代码是使用docs.genati.org中的文章编写的 http://docs.ganeti.org/ganeti/2.14/html/design-x509-ca.html 但显然有一个错误。问题是最后一个参数应该是文件的缓冲区而不是路径位置。 它应该是 crypto.load_certificate(crypto.FILETYPE_PEM,file(' ca_file.pem')。read())