SSL:安全套接字层,安全套接字层。这是为了解决HTTP协议是明文的问题,防止传输的数据被窃取、篡改或劫持。 TSL:Transport Layer Security,传输层安全协议。 TSL实际上是SSL标准化的产物。所以SSL/TSL实际上是同一个意思。 HTTPS:HTTPS 与HTTP 兼容。 HTTPS可以理解为“HTTP over TSL”。换句话说,HTTPS 是HTTP 和TSL 协议的组合。 HTTPS发送数据时,首先建立TCP连接,然后建立TSL连接。通过Wireshark抓包可以看到这个过程。
TSL.png
事实上,SSL协议分为两层:SSL记录协议和SSL握手协议。同时,SSL协议还包含加密算法的概念。我希望以后能够学习,总结之前浏览过的知识。还有一个问题是SSL协议在七层网络结构中位于什么位置?有些信息直接指出SSL协议位于传输层,而另一些信息则指出SSL协议位于传输层和应用层之间。
Requests 为 HTTPS 请求验证 SSL 证书
Requests 可以验证HTTPS 请求的SSL 证书,类似于Web 浏览器。默认情况下启用SSL 验证。如果证书验证失败,请求将抛出SSLError:
导入请求requests.get(\’https://github.com\’)
request.Exceptions.SSLError: HTTPSConnectionPool(host=\’github.com\’, port=443): url: 超出最大重试次数/(原因: SSLError(SSLError(1, \'[SSL: CERTIFICATE\\_VERIFY\\_FAILED] 文档认证验证失败( \\_ssl) .c:777)\’),))
以下是如何成功验证它(为什么没有任何示例?好吧,我无法创建一个)。
图片.png
通常情况下,当对请求进行SSL验证时,会直接跳过验证并设置verify=False。
request.get(\’https://github.com\’, verify=False)
D:\\Program Files\\Python36\\lib\\site-packages\\urllib3\\connectionpool.py:858: InsecureRequestWarning: 未经验证的HTTPS 请求添加证书。
我强烈建议您检查一下。 https://请参阅urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings。
不安全请求警告)
回应[200]
如果将verify 设置为False,则可以跳过SSL 验证,但您会注意到显示警告消息InsecureRequestWarning。我怎样才能忽略这个警告消息?
导入请求
从request.packages 导入urllib3
#关闭报警信息
urllib3.disable_warnings()
URL=\’https://github.com\’r=request.get(url, verify=False)
打印(r.status_code)
客户端证书验证方式
图片.png
总结
既有适合初学者学习的基础教材,也有适合3年以上经验的朋友深入学习和提高的高级课程,涵盖了95%以上的软件测试知识点,非常系统。
-xn7SSnel-1719265916152)]
既有适合初学者学习的基础教材,也有适合3年以上经验的朋友深入学习和提高的高级课程,涵盖了95%以上的软件测试知识点,非常系统。
#测试接口,以上关于验证SSL证书的信息- 接口是否需要SSL证书?相关信息请参考官方公告。
原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/92161.html