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


Posted in Python onOctober 09, 2014

本文实例讲述了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()

客户端代码如下:

#!/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\r\n' % 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程序设计有所帮助。

Python 相关文章推荐
跟老齐学Python之数据类型总结
Sep 24 Python
Python读取图片属性信息的实现方法
Sep 11 Python
Python实现找出数组中第2大数字的方法示例
Mar 26 Python
Python批处理删除和重命名文件夹的实例
Jul 11 Python
解决python中遇到字典里key值为None的情况,取不出来的问题
Oct 17 Python
python统计中文字符数量的两种方法
Jan 31 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
Jun 17 Python
python 监测内存和cpu的使用率实例
Nov 28 Python
tensorflow 固定部分参数训练,只训练部分参数的实例
Jan 20 Python
Python实现在Windows平台修改文件属性
Mar 05 Python
使用已经得到的keras模型识别自己手写的数字方式
Jun 29 Python
Pycharm调试程序技巧小结
Aug 08 Python
python中二维阵列的变换实例
Oct 09 #Python
python实现每次处理一个字符的三种方法
Oct 09 #Python
Python正则表达式匹配ip地址实例
Oct 09 #Python
Python数据结构之Array用法实例
Oct 09 #Python
python中pygame模块用法实例
Oct 09 #Python
python根据文件大小打log日志
Oct 09 #Python
python命令行参数解析OptionParser类用法实例
Oct 09 #Python
You might like
摩卡咖啡
2021/03/03 咖啡文化
特转载一高手总结PHP学习资源和链接.
2006/12/05 PHP
PHP正则替换函数preg_replace和preg_replace_callback使用总结
2014/09/22 PHP
php文件扩展名判断及获取文件扩展名的N种方法
2015/09/12 PHP
composer.lock文件的作用
2016/02/03 PHP
php 解决扫描二维码下载跳转问题
2017/01/13 PHP
BOOM vs RR BO5 第三场 2.14
2021/03/10 DOTA
cnblogs 代码高亮显示后的代码复制问题解决实现代码
2011/12/14 Javascript
JavaScript常用对象的方法和属性小结
2012/01/24 Javascript
JavaScript获取多个数组的交集简单实例
2013/11/11 Javascript
JavaScript实现的字符串replaceAll函数代码分享
2015/04/02 Javascript
基于jQuey实现鼠标滑过变色(整行变色)
2015/12/07 Javascript
Javascript中 带名 匿名 箭头函数的重要区别(推荐)
2017/01/29 Javascript
vue2.0 路由不显示router-view的解决方法
2018/03/06 Javascript
微信小程序保存图片到相册权限设置
2020/04/09 Javascript
微信小程序自定义支持图片的弹窗
2020/12/21 Javascript
Python机器学习之SVM支持向量机
2017/12/27 Python
Python3.5面向对象程序设计之类的继承和多态详解
2019/04/24 Python
python 表格打印代码实例解析
2019/10/12 Python
python pyinstaller打包exe报错的解决方法
2019/11/02 Python
Python2 与Python3的版本区别实例分析
2020/03/30 Python
CSS3实现的炫酷菜单代码分享
2015/03/12 HTML / CSS
可能这些是你想要的H5软键盘兼容方案(小结)
2019/04/23 HTML / CSS
.NET里面什么时候需要调用垃圾回收
2015/06/01 面试题
顶撞领导检讨书
2014/01/29 职场文书
《落花生》教学反思
2014/02/25 职场文书
求职信怎么写范文
2014/05/26 职场文书
防邪知识进家庭活动方案
2014/08/26 职场文书
竞选学委演讲稿
2014/09/13 职场文书
个人遵守党的政治纪律情况对照检查材料思想汇报
2014/09/25 职场文书
机票销售员态度不好检讨书
2014/09/27 职场文书
纪委书记群众路线整改措施思想汇报
2014/10/09 职场文书
2019年怎样才能撰写出优秀的自荐信
2019/03/25 职场文书
Django+Celery实现定时任务的示例
2021/06/23 Python
SQLServer中exists和except用法介绍
2021/12/04 SQL Server
MySQL运行报错:“Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre”解决方法
2022/06/14 MySQL