Socket服务端与客户端加密通信
2018-02-20 14:55
309 查看
客户端:# -*- coding: utf-8 -*-# @Time : 2018/2/19 14:15# @Author : Xifeng2009import socketimport timefrom Crypto.Cipher import AES# s_host = '192.168.100.111's_host = '127.0.0.1's_port = 1337c_host = '127.0.0.1'c_port = 1338timeout = 300def cmdRECVer():command = c.recv(4096)print commandcypher = AES.new('keykey0123456789', AES.MODE_CFB, 'vivivi0123456789')command = cypher.decrypt(command)print "Decrypting Complete..."print commandc.close()while True:c = socket.socket(socket.AF_INET, socket.SOCK_STREAM)c.bind((c_host, c_port))try:c.connect((s_host, s_port))print "Connect...Success...%s: %s" % (s_host, s_port)except:print "Connect...Failed..."time.sleep(timeout)continuetry:cmdRECVer()except socket.error as err:print err服务端:# -*- coding: utf-8 -*-# @Time : 2018/2/19 15:47# @Author : Xifeng2009import socketfrom Crypto.Cipher import AESs = socket.socket(socket.AF_INET, socket.SOCK_STREAM)s.bind(('127.0.0.1', 1337))s.listen(5)def command_sender(msg, client):# msg must be 16 bytescypher = AES.new('keykey0123456789', AES.MODE_CFB, 'vivivi0123456789')cypher = cypher.encrypt(msg)client.send(cypher)client.close()while True:print "Start Listening..."client, addr = s.accept()print "Requst from: %s: %s" % (addr[0], addr[1])# SENDprint ">>>",msg = raw_input()command_sender(msg, client)
相关文章推荐
- Socket跨平台通信——服务端Android、客户端iOS
- OpenSSL中服务端和客户端加密通信中密钥生成过程
- android基于socket的局域网内服务器与客户端加密通信
- socket服务端和客户端通信
- Java回炉重造(一)Socket的客户端和服务端通信
- 用PHP的socket实现客户端到服务端的通信
- PHP-Socket服务端客户端发送接收通信实例详解
- Java中利用socket实现简单的服务端与客户端的通信(中级)——实现任意双向通信
- socket实现客户端与服务端通信(一)服务端
- Socket套接字:客户端与服务端进行通信
- C-socket编程-客户端服务端通信模型
- socket编程 -- epoll模型服务端/客户端通信的实现
- PHP-Socket服务端客户端发送接收通信实例详解
- SOCKET客户端与服务端长时间通信后,会连接不上服务端的问题,以及server端UDP丢包的问题
- PHP-Socket服务端客户端发送接收通信实例详解
- android的NDK和java进行本地socket通信-----C服务端,java客户端
- socket 通信 入门3 android 客户端 C# 服务端
- socket ( java ) 简单多个客户端、服务端通信(多线程)
- socket实现客户端与服务端通信(三)服务端升级
- Socket实现服务端与客户端通信