- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我在 Python 2.7.8 下开发。那里的 _ssl.pyd 是用 OpenSSL 1.0.1h 构建的。
但是,我也有 pyOpenSSL 0.10(我知道,旧版本)来满足所需的依赖性。 pyOpenSSL 包括 libeay32.dll 和 ssleay32.dll 版本 0.9.8o。
这是怎么回事?是因为 pyOpenSSL 提供了 OpenSSL 库的直接接口(interface)吗?
最佳答案
Python 可以使用 OpenSSL 支持进行编译,这是 TLS/SSL (https://docs.python.org/3.4/library/ssl.html) 或 urllib 等内部库所必需的。内部 Python ssl 库通过套接字实现 SSL 协议(protocol)。例如,urllib 将其用于 https 协议(protocol)。
pyOpenSSL 是您可以在 Pypi 上找到的另一个 Python 库。它的创建是为了提供对 OpenSSL 库的全面支持,因为内部 Python SSL 模块仍未涵盖所有功能。
因此,它不是 Python 内部库的一部分。它通过 openssl 库实现了一个高级接口(interface)。您必须在 Python 范围之外编译/安装它。因此它可能使用不同于 Python 使用的 openssl 库的另一个版本进行编译。
此外,在 Windows 上,您将使用二进制包安装它,因此提供了编译它的 OpenSSL dll;因此它们可能与安装在系统上或由 Python 安装的不同。
是的,pyOpenSLL 直接连接到 OpenSSL 库。测试脚本还执行 openssl 命令行工具,但在快速查看 0.14 版源文件时不执行 lib 的 Python 文件。
希望对您有所帮助。
关于python - 为什么 pyOpenSSL 有一个单独的 OpenSSL DLL 副本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26589133/
我正在使用 Titanium 3.0 并尝试更新 pyOpenSSL。我检查了 python 网站,只看到 Windows 的可下载链接。在 Tianium 论坛中,他们说“如果您使用 MacPort
我想使用pyopenssl验证下载文件的签名和证书,但文档不明确,谷歌也无济于事。 我在用户的机器上有一个根 CA 证书,现在当用户下载文件时,我会连同它一起发送一个证书和签名。首先我需要在机器上使用
在 Apache 中,我成功地使用了以下 OpenSSL 密码设置: SSLHonorCipherOrder on SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+a
在回答this question , 我在看 the docs for PyOpenSSL - OpenSSL 的 python 包装器。 它有签名和证书的东西,但是所有的加密东西在哪里?我是否遗漏了
我有以下代码 key = OpenSSL.crypto.PKey() key.generate_key(OpenSSL.crypto.TYPE_RSA, 1024) cert = OpenSSL.cr
我在 Macbook Pro 上双启动了一个 Windows 10 分区:Mac:El Capitan(64 位)Windows:Windows 10 64 位,使用 fat 文件系统格式化 在 Wi
我有一个套接字服务器,我正试图将其转移到 python 2.5 上的 SSL,但我遇到了 pyOpenSSL 的障碍。我找不到任何关于使用它的好教程,所以我主要靠猜测。 这是我的服务器如何设置套接字:
我正在使用 pyOpenSSL 大量生成 CSR。 我需要生成一个受密码保护的私钥文件。 代码片段: key = crypto.PKey() key.generate_key(type, bits)
我需要在 python 中对打开的连接执行重新协商。似乎the renegotiate function is not implemented .有什么方法可以启动重新协商? 我尝试使用 set_co
更新:do_handshake 似乎正在重置密码列表 诚然,这是一个非常具体的场景,但也许有人会有想法。我试图强制服务器仅接受 RC4-SHA(仅出于调试原因)。我的代码看起来像这样: ctx
我可以获得私钥(PEM格式),但我不知道如何生成公钥: from OpenSSL import crypto, SSL key = crypto.PKey() key.generate_key(cry
我需要创建 SSL signatures对于大 *.tar.gz使用 Python 3 的文件(千兆字节的数据)和 pyopenssl模块。 下面是我的代码(有效)的简化摘录。有问题的行是以下一行:
我生成自签名证书 CA_KEY_FILE = os.path.join(settings.ROOT_CRT_PATH, 'rootCA.key') CA_CERT_FILE = os.path.joi
我目前正在尝试编写一个 python 服务器脚本,该脚本应根据其公钥对当前客户端进行身份验证。由于我使用的是扭曲的,example in the twisted documenteation让我开始了
我正在尝试创建 python 脚本,它将采用 PKCS#12 包并打印 x509 证书中包含的一些信息并用于此目的 PyOpenSSL 模块。到目前为止,我想从证书公钥中获取。但是 PKey 对象没有
我有两个证书,一个用于签署 client.crt 的 root.crt。 我想验证 client.crt 确实是由 root.key 签名的。 在终端上使用 openssl,它是这样工作的: $ op
我相信自从这个 question , pyOpenSSL 已经开始支持签名验证(自 pyOpenSSL 0.11 开始。 我正在做一个由其他人使用 M2Crypto 启动的项目. M2Crypto 包
我正在编写一个需要在客户端浏览器中安装证书的应用程序。我在“上下文”对象的 PyOpenSSL 文档中找到了这个,但我看不到任何关于回调应该如何验证证书的信息,只是它应该以某种方式验证。 set
我试图在 Digital Ocean Ubuntu 16.04 服务器中安装 pyopenssl 模块。我收到此错误“密码学构建轮失败”,随后出现一些错误。 Collecting pyopenssl
关闭。此题需要details or clarity 。目前不接受答案。 想要改进这个问题吗?通过 editing this post 添加详细信息并澄清问题. 已关闭 8 年前。 Improve th
我是一名优秀的程序员,十分优秀!