如何在python中的活动连接上启动TLS?

如何在python中的活动连接上启动TLS?,第1张

如何在python中的活动连接上启动TLS?

您可以ssl包装连接的套接字。这会给你的想法:

import sslimport base64from socket import *cc = socket(AF_INET, SOCK_STREAM)cc.connect(("smtp.gmail.com", 587))# cc.read(..)cc.send('helo tester.comrn')cc.send('starttlsrn')# cc.read(..) If the server responds ok to starttls#  tls negotiation needs to happen and all#  communication is then over the SSL socketscc = ssl.wrap_socket(cc, ssl_version=ssl.PROTOCOL_SSLv23)scc.send('auth loginrn')# scc.read(..)scc.send(base64.b64enpre('username')+'rn')scc.send(base64.b64enpre('password')+'rn')# css.send(#  mail from:#  rcpt to:#  data#  etc

有关此用户名/密码编码的信息,请参见此页面的“ AUTH
LOGIN”部分:http : //www.samlogic.net/articles/smtp-commands-reference-
auth.htm

将AUTH LOGIN命令发送到服务器后,服务器通过向客户端发送base64编码的文本(问题)来询问用户名和密码。在上面的示例中,“
VXNlcm5hbWU6”是单词“ Username”的base64编码文本,“ UGFzc3dvcmQ6”是单词“
Password”的base64编码文本。客户端也使用base64编码发送用户名和密码。在上面的示例中,“
adlxdkej”是base64编码的用户名,“ lkujsefxlj”是base64编码的密码。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5648635.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存