问题描述
我收到了公钥,编码的私钥+密码短语和仅包含一个级别证书的中间件-我猜是根
我需要检查公钥和中间匹配项
当我使用一级中间文件运行此代码时,出现错误:X509StoreContextError:[2、1,'无法获取颁发者证书']
中级人员是否至少应包含2个级别的root和server?
我的代码:
from OpenSSL import crypto,SSL
try:
cert_obj = crypto.load_certificate(crypto.FILETYPE_PEM,bublic_txt)
except crypto.Error as err:
raise Exception('certificate is not correct: %s' % err)
store = crypto.X509Store()
for _cert in trusted_certs:
try:
intermediate_key_obj = crypto.load_certificate(crypto.FILETYPE_PEM,_cert)
store.add_cert(intermediate_key_obj)
except crypto.Error as err:
raise Exception('Intermediate key is not correct: %s' % err)
try:
store_ctx = crypto.X509StoreContext(store,cert_obj)
store_ctx.verify_certificate()
except crypto.Error as err:
raise Exception('Intermediate key does not match public key: %s' % err)
return True
在中间文件中使用多个级别即可正常工作。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)