【发布时间】:2018-09-07 08:52:27
【问题描述】:
我的代码之前一直在工作,直到每当我向 Frontierlink Web Service 发出 SOAP 请求时出现此错误。
File "/home/venv/lib/python2.7/site-packages/OpenSSL/_util.py", line 54, in exception_from_error_queue
raise exception_type(errors)
OpenSSL.SSL.Error: [('SSL routines', 'SSL_CTX_use_certificate', 'ca md too weak')]
我是否需要重新生成我用来连接的 pem 文件,或者问题出在我用来生成 pem 文件的 .p12 文件上?
如果您需要有关我的问题的更多信息,请告诉我。
注意事项:
我使用的OpenSSL版本是:OpenSSL 1.0.2k-fips
提前谢谢你!
【问题讨论】:
-
问题是新版本的 OpenSSL 不接受 md5 签名证书。不是真正的编码问题,您只需要使用更强的(SHA1 等)签名重新生成证书。
-
感谢您的意见@Serdalis,我一直在寻找解决方案,但我没有机会解决此问题。是否有可能我更新了我的 openssl 版本,这就是它突然不起作用的原因?
-
为了进一步说明是在我使用的 OpenSSL 版本上还是在我正在请求的 Web 服务上? @Serdalis 再次感谢,感谢您对此的帮助。
-
老实说,这不是我以前遇到过的,但它会是您在本地使用的 openSSL 版本。如果你或者你的服务升级到1.1.0会出现这个问题,虽然从mta.openssl.org/pipermail/openssl-users/2017-October/…判断,另一端的服务也会抛出这个错误,从你链接的版本来看,这似乎是问题所在。跨度>
-
好的@Serdalis 很感激,至少我知道如何解决这个问题。再次感谢。您可以在这里发布您的解决方案,以便我可以为您的解决方案投票。