最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python警察與小偷的實(shí)現(xiàn)之一客戶端與服務(wù)端通信實(shí)例

 更新時(shí)間:2014年10月09日 16:42:57   投稿:shichen2014  
這篇文章主要介紹了Python警察與小偷的實(shí)現(xiàn)之一客戶端與服務(wù)端通信實(shí)例,并附有難點(diǎn)及易錯(cuò)點(diǎn)的分析與說明,需要的朋友可以參考下

本文實(shí)例講述了Python警察與小偷的實(shí)現(xiàn)之一客戶端與服務(wù)端通信,分享給大家供大家參考。具體方法分析如下:

該實(shí)例來源于ISCC 2012 破解關(guān)第四題
目的是通過逆向police,實(shí)現(xiàn)一個(gè)thief,能夠與police進(jìn)行通信

實(shí)際上就是一個(gè)RSA加密通信的例子,我們通過自己編寫客戶端和服務(wù)端來實(shí)現(xiàn)上面的thief和police的功能.

要通信,這們這次先通過python寫出可以進(jìn)行網(wǎng)絡(luò)連接的客戶端與服務(wù)端.

服務(wù)端代碼如下:

#!/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核心編程》

如果報(bào)python errno 10053錯(cuò)誤,請確認(rèn)下客戶端的連接代碼一定要在循環(huán)外
也就是:

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

要在while True的外面。

下次解決RSA加密的問題。

希望本文所述對大家的Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評論

石林| 鄂托克旗| 昌乐县| 航空| 剑阁县| 怀集县| 湘乡市| 兴国县| 博野县| 孝感市| 富川| 延津县| 绥德县| 子洲县| 高安市| 扶余县| 特克斯县| 冷水江市| 鄂尔多斯市| 平昌县| 沛县| 汝州市| 南华县| 梧州市| 平谷区| 鄂温| 大同县| 南京市| 疏附县| 山阴县| 星座| 阿合奇县| 嘉鱼县| 南通市| 华阴市| 揭阳市| 新巴尔虎右旗| 黑龙江省| 安新县| 隆昌县| 克山县|