添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

Python密码学错误不能导入名称certificate_transparency

4 人关注

试图运行一个pymodbus tcp服务器,我得到了这个堆栈跟踪......在这里完全没有办法,所以任何帮助都值得赞赏。谢谢!

Traceback (most recent call last):
File "Worrking_ModbusJ1939Bridge.py", line 12, in <module>
from pymodbus.server.async import StartTcpServer
File "build/bdist.linux-armv7l/egg/pymodbus/server/async.py", line 18, in <module>
File "build/bdist.linux-armv7l/egg/pymodbus/internal/ptwisted.py", line 5, in <module>
File "/usr/local/lib/python2.7/dist-packages/twisted/conch/manhole_ssh.py", line 14, in <module>
from twisted.conch.ssh import factory, session
File "/usr/local/lib/python2.7/dist-packages/twisted/conch/ssh/factory.py", line 18, in <module>
from twisted.conch.ssh import (_kex, transport, userauth, connection)
File "/usr/local/lib/python2.7/dist packages/twisted/conch/ssh/transport.py", line 345, in <module>
class SSHTransportBase(protocol.Protocol):
File "/usr/local/lib/python2.7/dist-packages/twisted/conch/ssh/transport.py", line 469, in SSHTransportBase
supportedCiphers = _getSupportedCiphers()
File "/usr/local/lib/python2.7/dist-packages/twisted/conch/ssh/transport.py", line 335, in _getSupportedCiphers
backend=default_backend(),
File "/usr/local/lib/python2.7/dist-packages/cryptography/hazmat/backends/__init__.py", line 15, in default_backend
from cryptography.hazmat.backends.openssl.backend import backend
File "/usr/local/lib/python2.7/dist-packages/cryptography/hazmat/backends/openssl/__init__.py", line 7, in <module>
from cryptography.hazmat.backends.openssl.backend import backend
File "/usr/local/lib/python2.7/dist-packages/cryptography/hazmat/backends/openssl/backend.py", line 16, in <module>
from cryptography import utils, x509
File "/usr/local/lib/python2.7/dist-packages/cryptography/x509/__init__.py", line 7, in <module>
from cryptography.x509 import certificate_transparency
ImportError: cannot import name certificate_transparency
    
python
cryptography
twisted
Emerson
Emerson
发布于 2017-11-19
6 个回答
José Ricardo
José Ricardo
发布于 2019-08-16
已采纳
0 人赞同

我在使用pip 7,也遇到了同样的问题。升级到pip 9就解决了这个问题。我不确定原因是什么。

通过。 https://github.com/micheloosterhof/cowrie/issues/618

James McPherson
James McPherson
发布于 2019-08-16
0 人赞同

我在试图为Solaris 11.4更新Python Cryptography时遇到了这个问题,使用的是 https://github.com/oracle/solaris-userland/ 构建系统。对我来说,"简单 "的更新管道不是一个选项,这不是我们做事的方式。

我最终找到了解决办法。我建立的软件包不正确。

Cryptography 2.1.4 depends on cffi > 1.7. Both of these packages have new 与我们正在运送的版本相比,可交付的位数更多。

如果没有更新软件包清单以正确跟踪新文件,就会导致 cffi 和 cryptography 无法导入当前版本所依赖的符号。

[非常感谢#cryptography-dev中的Alex Gaynor,他让我走上了正确的道路来解决这个问题]。

$ python2.7   
Python 2.7.14 (default, Jan 31 2018, 05:35:05) [C] on sunos5
Type "help", "copyright", "credits" or "license" for more information.
>>> from cryptography.hazmat.bindings._openssl import ffi, lib
>>> from cryptography.x509 import certificate_transparency
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/vendor-packages/cryptography/x509/__init__.py", line 7, in <module>
    from cryptography.x509 import certificate_transparency
ImportError: cannot import name certificate_transparency

如果你构建了密码学并查看它所提供的内容,你会发现事实上有一个文件(在Solaris上以/usr/lib/python-$(PYVER)/vendor-packages/cryptography/x509/certificate_transparency.py的形式运送)--如果该文件不在其他的层次结构中,那么你的结果正是这个ImportError。

Tomasz Zieba
Tomasz Zieba
发布于 2019-08-16
0 人赞同

它对我来说是有效的(与paramiko有关的问题)。

https://pypi.python.org/pypi/ctutlz/0.7.0

pip install --process-dependency-links ctutlz

请在答案本身中添加一个最基本的解释,因为所提供的链接将来可能发生不可用的情况。
TodayGuessWhat
TodayGuessWhat
发布于 2019-08-16
0 人赞同

我在RHEL 6.7 x86_64上运行Python 2.7.8和旧版本的pip(1.4.1)时也遇到了类似的问题。

这是因为我一直在安装 "cp27m "的构建,而不是 "cp27mu "的构建。

在旧的pip 1.4.1版本中,它没有抱怨安装cp27m的构建。

而当把pip升级到9.0.3时,它却吐出了真正的错误 ...

(bmcs2)bash-4.1$ pip install cffi-1.11.5-cp27-cp27m-manylinux1_x86_64.whl cffi-1.11.5-cp27-cp27m-manylinux1_x86_64.whl不是这个平台上支持的轮子。

(bmcs2)bash-4.1$ pip install cryptography-2.1.3-cp27-cp27m-manylinux1_x86_64.whl cryptography-2.1.3-cp27-cp27m-manylinux1_x86_64.whl不是这个平台上支持的轮子。

使用 "cp27mu "构建时,"ImportError: cannot import name certificate_transparency "问题得到解决。 当使用 "cp27mu "构建时,pip 1.4.1和pip 9.0.3版本都工作正常。

cffi-1.11.5-cp27-cp27m-manylinux1_x86_64.whl versus cffi-1.11.5-cp27-cp27mu-manylinux1_x86_64.whl

cryptography-2.1.3-cp27-cp27m-manylinux1_x86_64.whl versus cryptography-2.1.3-cp27-cp27mu-manylinux1_i686.whl

More info here: https://www.python.org/dev/peps/pep-0513/#ucs-2-vs-ucs-4-builds

mbenhalima
mbenhalima
发布于 2019-08-16
0 人赞同

我认为这更像是一个paramiko的问题,而不是pip。在我的环境中,升级pip并不能解决这个问题,我不得不将我的paramiko版本降级到没有libffi依赖的版本,这对我来说很有效。

pip2.7 install paramiko==1.17.0

这个问题与之相关。https://github.com/paramiko/paramiko/issues/1401

augustomen
augustomen
发布于 2019-08-16
0 人赞同