Python警察与小偷的实现之一客户端与服务端通信实例

本文实例讲述了python警察与小偷的实现之一客户端服务端通信,分享给大家供大家参考。具体方法分析如下:

该实例来源于ISCC 2012 破解关第四题
目的是通过逆向police,实现一个thief,能够与police进行通信

实际上就是一个RSA加密通信的例子,我们通过自己编写客户端和服务端来实现上面的thief和police的功能.

要通信,这们这次先通过python写出可以进行网络连接的客户端与服务端.

服务端代码如下:

#!/usr/bin/env python  import SocketServer  from time import ctime  HOST = '127.0.0.1' PORT = 2012  ADDR = (HOST, PORT)  class MyRequestHandler(SocketServer.BaseRequestHandler):     def handle(self):         print '...connected from...', self.client_address         while True:              self.request.sendall('[%s] %s' % (ctime(),self.request.recv(1024)))   tcpServ = SocketServer.ThreadingTCPServer(ADDR, MyRequestHandler)  print 'waiting for connection...'  tcpServ.serve_forever() 

登录后复制

客户端代码如下:

立即学习“Python免费学习笔记(深入)”;

#!/usr/bin/env python  from socket import *  HOST = '127.0.0.1'  PORT = 2012  BUFSIZ = 1024  ADDR = (HOST, PORT)   tcpCliSock = socket(AF_INET, SOCK_STREAM)  tcpCliSock.connect(ADDR)  while True:    data = raw_input('>>>>>>>>>>>>')    if not data:      break    tcpCliSock.send('%s' % data)    data = tcpCliSock.recv(BUFSIZ)    if not data:      break    print data.strip()  #tcpCliSock.close() 

登录后复制

这段代码可参考《python核心编程》

如果报python errno 10053错误,请确认下客户端的连接代码一定要在循环外
也就是:

tcpCliSock = socket(AF_INET, SOCK_STREAM)  tcpCliSock.connect(ADDR)  

登录后复制

要在while True的外面。

下次解决RSA加密的问题。

希望本文所述对大家的Python程序设计有所帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2291567.html

(0)
上一篇 2025年2月28日 01:08:47
下一篇 2025年2月25日 18:58:33

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论