精华内容
下载资源
问答
  • 对TLS over sockets的旧socket.ssl()支持在Python2.6中被新的“SSL”模块取代。这个包裹将该模块带到较旧的python版本2.3.5及更高版本(可能也适用于2.3的旧版本,但我们还没有尝试过)。它与2.6ssl模块非常相似。没有...

    对TLS over sockets的旧socket.ssl()支持

    在Python2.6中被新的“SSL”模块取代。这个包裹

    将该模块带到较旧的python版本2.3.5及更高版本(可能

    也适用于2.3的旧版本,但我们还没有尝试过)。

    它与2.6ssl模块非常相似。没有独立的

    这个包的文档;相反,只需使用

    SSL模块的分支文档位于

    http://docs.python.org/dev/library/ssl.html。

    1.0版的Python2.5.1有问题,它的结构是

    套接字对象已从早期版本更改。

    版本1.1缺少各种包元数据信息。

    版本1.2添加了更多包元数据,并支持

    ssl.get_server_certificate(),以及要进行编码/解码的PEM

    日常工作。以及集成的paul moore's patch to setup.py for

    窗户。另外还增加了对asyncore和asyncore https的支持

    服务器测试。

    版本1.3修复了测试套件中的一个错误。

    版本1.4包括使用-静态开关。

    版本1.5修复了python版本检查中影响构建的错误

    Python 2.5.0版。

    版本1.7(和1.6)通过异步支持(recv和

    在sslsocket类上未调用send,错误的语义

    森德尔)。

    版本1.8包含了一些来自chris stawarz的代码来处理

    在协商ssl之前设置为非阻塞的套接字

    会议。

    版本1.9使ssl.ssl error成为socket.error的子类型。

    版本1.10修复了sendall()中的一个错误。

    版本1.11包含清单文件,并且默认情况下

    在读入常规EOF期间发生意外的EOF。它也

    删除sslfilestream的代码,以使用常规套接字模块的

    _改为fileobject。

    版本1.12修复了georg报告的sslsocket.accept()中的错误

    brandl,并为该修复添加一个测试用例。

    版本1.13修复了自动调用do_handshake()的错误

    在非阻塞插座上。多亏了詹帕洛罗多拉。现在包括

    真正的异步测试用例。

    版本1.14对命名进行了一些修正(将“recv_from”重命名为

    “recvfrom”和“send_to”到“sendto”),以及对异步测试的修复

    在连接为

    关闭。它还通过“unwrap”方法公开ssl关闭。

    在sslsocket上。它在接收到的数据中公开“subjectpublickey”

    来自对等证书。

    版本1.15修复了写入重试中的错误,其中输出缓冲区具有

    在过渡期间由于垃圾收集而更改了位置。

    它还提供了新的标志protocol_nosslv2,它选择ssl23,

    但不允许实际使用ssl2。

    版本1.16删除了系统范围内的安装测试(它修复了

    在Virtualenvs中安装时出现“权限被拒绝”错误),添加

    /usr/lib/i386-linux-gnu和/usr/lib/x86_64-linux-gnu到

    搜索路径(修复了ubuntu 12.04上的编译)并停止使用

    SSLv2_method如果不存在。多亏了Denis Bilenko

    通过他的临时叉子提供这些修复。

    包现在由PyPA维护(仅修复错误)。

    作者:几十年来,一组演员创作了Python

    ssl支持,包括marc alan lemburg、robin dunn、gvr、kalle

    斯文森,斯基普·蒙塔纳罗,马克·哈蒙德,马丁·冯·洛维斯,杰里米

    海尔顿,安德鲁·库奇林,乔治·布兰德,比尔·扬森,克里斯·斯塔沃兹,

    尼尔·诺维茨和其他很多人。感谢保罗·摩尔、大卫·博伦和

    马克·哈蒙德在房子的窗户边寻求帮助。它是

    所有这些都基于openssl,它有自己的几十个cast!

    欢迎加入QQ群-->: 979659372

    推荐PyPI第三方库

    展开全文
  • 我正在尝试在我开发的客户端和服务器之间使用ssl建立连接.我创建了一个简单的连接,它工作.但我希望通过添加客户端身份验证来改进它.所以我发现有些人使用socket.warp_socket.这是一个例子:bindsocket = socket....

    我正在尝试在我开发的客户端和服务器之间使用ssl建立连接.

    我创建了一个简单的连接,它工作.但我希望通过添加客户端身份验证来改进它.所以我发现有些人使用socket.warp_socket.

    这是一个例子:

    bindsocket = socket.socket()

    bindsocket.bind(('127.0.0.1', 9998))

    bindsocket.listen(5)

    while True:

    newsocket, fromaddr = bindsocket.accept()

    connstream = ssl.wrap_socket(newsocket,

    server_side=True,

    certfile="srv.crt",

    keyfile="srv.key",

    ssl_version=ssl.PROTOCOL_TLSv1)

    deal_with_client(connstream)

    这两者有什么区别?巫婆一个是最好的(在我的情况下)?

    谢谢

    最佳答案 没有区别.

    socket.ssl()是一个不推荐使用的方法,它调用下面的socket.wrap_socket(),只是检查是否已经使用SSL支持编译python(在任何情况下导入ssl都会为你做).

    def ssl(sock, keyfile=None, certfile=None):

    # we do an internal import here because the ssl

    # module imports the socket module

    import ssl as _realssl

    warnings.warn("socket.ssl() is deprecated. Use ssl.wrap_socket() instead.",

    DeprecationWarning, stacklevel=2)

    return _realssl.sslwrap_simple(sock, keyfile, certfile)

    展开全文
  • 我不得不对AndiDog的方法进行以下修改:setup.py build -cmingw32setup.py install --skip-build如果没有--skip build选项,安装程序将尝试重新生成并再次抱怨MSVC:error: Python was built with Visual Studio ...

    我不得不对AndiDog的方法进行以下修改:setup.py build -cmingw32

    setup.py install --skip-build

    如果没有--skip build选项,安装程序将尝试重新生成并再次抱怨MSVC:error: Python was built with Visual Studio 2003;

    extensions must be built with a compiler than can generate compatible binaries.

    Visual Studio 2003 was not found on this system. If you have Cygwin installed,

    you can try compiling with MingW32, by passing "-c mingw32" to setup.py.

    另外,最初使用build命令时,我有很多错误,比如:build\temp.win32-2.5\Release\ssl\_ssl2.o:_ssl2.c:(.text+0x1d): undefined reference to `_imp__PyImport_ImportModule'

    build\temp.win32-2.5\Release\ssl\_ssl2.o:_ssl2.c:(.text+0x34): undefined reference to `_imp__PyObject_GetAttrString'

    build\temp.win32-2.5\Release\ssl\_ssl2.o:_ssl2.c:(.text+0x53): undefined reference to `_imp__PyCObject_AsVoidPtr'

    这是因为我最初安装了64位版本的Python2.5.4(Python-2.5.4.amd64.msi)。我删除了它并安装了32位版本(python-2.5.4.msi)。这包括libpython25.a文件,build命令正在查找该文件。

    展开全文
  • 首先,使用如下命令生成证书和key:openssl req -new -x509 -days 365 -nodes -out cert.pem -keyout key.pem接下来实现服务器:import socket, ssl,timecontext = ssl.SSLContext(ssl.PROTOCOL_TLSv1)context.load_...

    首先,使用如下命令生成证书和key:

    openssl req -new -x509 -days 365 -nodes -out cert.pem -keyout key.pem

    接下来实现服务器:

    import socket, ssl,time

    context = ssl.SSLContext(ssl.PROTOCOL_TLSv1)

    context.load_cert_chain(certfile="cert.pem", keyfile="key.pem")

    bindsocket = socket.socket()

    bindsocket.bind((‘191.8.1.235‘, 10023))

    bindsocket.listen(5)

    def do_something(connstream, data):

    #print("data length:",len(data))

    return True

    def deal_with_client(connstream):

    t_recv=0

    t_send=0

    n = 0

    t1=time.clock()

    data = connstream.recv(1024)

    t2=time.clock()

    print("receive time:",t2-t1)

    # empty data means the client is finished with us

    while data:

    if not do_something(connstream, data):

    # we‘ll assume do_something returns False

    # when we‘re finished with client

    break

    n = n + 1

    t1=time.clock()

    connstream.send(b‘b‘*1024)

    t2=time.clock()

    t_send += t2-t1

    print("send time:",t2-t1)

    t1=time.clock()

    data = connstream.recv(1024)

    t2=time.clock()

    t_recv +=t2-t1

    print("receive time:",t2-t1)

    print("avg send time:",t_send/n,"avg receive time:",t_recv/n)

    # finished with client

    while True:

    newsocket, fromaddr = bindsocket.accept()

    connstream = context.wrap_socket(newsocket, server_side=True)

    try:

    deal_with_client(connstream)

    finally:

    connstream.shutdown(socket.SHUT_RDWR)

    connstream.close()

    客户端:

    import socket, ssl, pprint,time

    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

    # require a certificate from the server

    ssl_sock = ssl.wrap_socket(s,

    ca_certs="cert.pem",

    cert_reqs=ssl.CERT_REQUIRED)

    ssl_sock.connect((‘191.8.1.235‘, 10023))

    pprint.pprint(ssl_sock.getpeercert())

    # note that closing the SSLSocket will also close the underlying socket

    n=0

    t_send=0

    t_recv=0

    while n <1000:

    n = n+1

    t1=time.clock()

    ssl_sock.send(b‘a‘*100)

    t2=time.clock()

    t_send += t2-t1

    print("send time:",t2-t1)

    t1=time.clock()

    data=ssl_sock.recv(1024)

    t2=time.clock()

    t_recv += t2-t1

    print("receive time:",t2-t1)

    #print(len(data))

    print("avg send time:",t_send/n,"avg receive time:",t_recv/n)

    #ssl_sock.send(b‘‘)

    ssl_sock.close()

    展开全文
  • 通过阅读Python的requestsdocs我发现了以下内容:When you are using the prepared request flow, keep in mind that itdoes not take into account the environment. This can cause problems ifyou are using ...
  • 当我部署谷歌应用引擎项目时,我收到以下警告:WARNING appengine_rpc.py:399 ssl module not found.Without the ssl module, the identity of the remote host cannot be verified, andconnections may NOT be ...
  • 我使用Python(2.7)SSL模块编写一些服务器代码,如下所示:ssock = ssl.wrap_socket(sock, ca_certs="all-ca.crt", keyfile="server.key", certfile="server.crt", server_side=True, ssl_version=ssl.PROTOCOL_TLSv1...
  • 好的,所以我试图通过SSL套接字连接在服务器和客户端之间来回通信.我认为最好的方法是在每个线程中实现两个线程,每个线程分别充当服务器和客户端.但是,当我实现此代码时(显然在其他服务器/客户端中使用相反的对应端口...
  • 当你使用pyenv install -v 3.5.1 时 出现以下错误。 而我这里也已经下载了这个依赖了 此处ubuntu openssl 和 libssl-dev 已经下载了,但是还是 不行,那么就是版本的问题了, 如下: 解决方案: ...
  • 写这篇文章是记录一下python调用facebook-bussiness(一下简称fb-bussiness)的api的时候遇到的问题. 初次调试该api未遇到任何ssl问题,只有会警告ssl验证问题,在网络请求的时候可以考虑加上verify=False解决(这个解决...
  • python ssl报错怎么解决

    2021-02-03 00:36:23
    Python2.7.9 之后,当使用urllib.urlopen打开一个 https 链接时,会验证一次 SSL 证书。而当目标网站使用的是自签名的证书时就会抛出如下异常:解决办法如下1,方案一使用ssl创建未经验证的上下文,在urlopen中传入...
  • Python ssl.SSLEOFError: EOF occurred in violation of protocol (_ssl.c:877) python3.6 解决: pip install urllib3==1.25.11
  • Windows环境中Python SSL异常...python运行报ssl错误。都可以尝试这个办法,本人也遇到这个问题 解决办法如下,下载light即可,也可以解决问题。 下载链接 https://slproweb.com/products/Win32OpenSSL.html ...
  • 解决办法: CFLAGS=-I/usr/include/openssl LDFLAGS=-L/usr/lib pyenv install -v 2.7.5
  • pythonSSL证书错误

    2021-04-23 20:16:09
    pythonSSL证书 此时error原因是因为SSL证书不安全 解决方式:——添加参数——verify=False
  • 解决方案: os.environ['COMPOSE_TLS_VERSION'] = "TLSv1_2" 或者 export COMPOSE_TLS_VERSION=TLSv1_2
  • So, I happily changed my Python code to: >>> requests.get('https://example.com', verify='./letsencryptauthorityx1.pem') But I still keep getting the requests.exceptions.SSLError error. I've also ...
  • 哪些情况可能会遇到这个错误? ...使用pip install安装...使用其他python脚本或命令,内部使用了情况1或情况2的相关接口,访问https资源时。 请求一些https网站正常,请求另外一些https网站遇到这个错误(如从Let’s
  • 首先,使用如下命令生成证书和key:openssl req -new -x509 -days 365 -nodes -out cert.pem -keyout key.pem接下来实现服务器:import socket, ssl,timecontext = ssl.SSLContext(ssl.PROTOCOL_TLSv1)context.load_...
  • 由于AppEngine需要通过SSL上传你的应用程序,所以我尝试在我的工作笔记本电脑上安装这个模块。在它是一个安装了python2.5.4x86的x64win7系统。在但主要的问题是,MinGw和GnuWin似乎都不起作用。在GnuWin安装得很好,...
  • python中是否有一个模块来控制SSL握手,包括客户端和服务器?python默认SSL模块很好,但是握手是自动的。我想知道是否有一个模块可以让我手动完成类似的操作:import SSLManuelimport sockets = socket.socket()s....
  • STREAM, proto=0, fileno=None, suppress_ragged_eofs=True, npn_protocols=None, ciphers=None, server_hostname=None, _context=None): 以上就是pythonssl认证的介绍,希望能对大家有所帮助。更多Python学习...
  • python dpkt解析ssl

    2020-12-23 13:46:25
    用法:python extract_tls_flow.py -vr white_pcap/11/2018-01-10_13-05-09_2.pcap -...log.txtpython dpkt解析ssl流,记录含有client hello到app data的完整ssl 流,同时记录ssl证书:#!/usr/bin/env pythonfrom __...
  • python请求ssl握手失败

    2020-12-18 04:26:46
    每次我试着做:requests.get('https://url')我收到一条消息:...>> requests.get('https://reviews.gethuman.com/companies')Traceback (most recent call last):File "", line 1, in File "/usr/lib/python2...
  • Python生成SSL证书

    2020-12-21 17:37:47
    命令 pip install pyOpenSSL openssl req -new -x509 -days 365 -nodes -out secret.pem -keyout secret.key openssl pkcs8 -topk8 -inform PEM -outform PEM -in secret.key -out outfile.pem ...
  • 我正在尝试在以下计算机上安装Python3和一些python lib(pyqt5,lxml):$ uname -aLinux devel_server 4.11.0-22.el7a.aarch64 #1 SMP Sun Sep 3 13:39:10 CDT 2017 aarch64 aarch64 aarch64 GNU/Linux$ cat /etc/*-...
  • python环境设置ssl

    2020-12-29 06:31:21
    爬取数据需要用python请求网络数据, https的加密实现依赖openssl下载和安装openssl利用源码直接安装wget https://www.openssl.org/source/openssl-1.1.1a.tar.gztar -xzvf openssl-1.1.1a.tar.gz安装zlib库yum -y ...
  • 错误信息如下:python做爬虫,对于有的网站,需要验证证书,比如:12306,https://inv-veri.chinatax.gov.cn/等网站那么我参考这个作者的简书:http://www.jianshu.com/p/e42005d48929 解决了这个错误:加上一个参数...
  • Is it possible to install the SSL module for python on a linux box that already has OpenSSL installed without recompiling python? I was hoping it would be as simple as copying over a few files and in....
  • 场景:Mac电脑之前已经通过源码安装了Python3.8,一切都是正常。为了试验asyncio.to_thread方法,又通过源码安装了Python3.9,安装成功之后,创建虚拟环境,发现pip不能用,报错如下 ``` WARNING: Retrying (Retry...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 90,435
精华内容 36,174
关键字:

pythonssl

python 订阅