3
我做了一個簡單的服務器程序,它能夠一次從4個不同的客戶端接收數據。現在我想用AES-128加密發送一些數據,但應該在服務器端進行解碼。 這裏是我的服務器代碼:在Python中使用套接字發送加密的字符串
from socket import *
from threading import Thread
def clientHandler():
conn, addr = s.accept()
print addr, "is connected"
while 1:
data = conn.recv(1024)
if not data:
break
print "Received Message", repr(data)
HOST = "" #localhost
PORT = 15000
s = socket(AF_INET, SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(4)
print "Server is runnig"
#Thread(target=clientHandler).start()
#Thread(target=clientHandler).start()
#Thread(target=clientHandler).start()
for i in range(4):
Thread(target=clientHandler).start()
s.close()
而且我從我的客戶端
from socket import *
s = socket()
s.connect(("localhost",15000))
s.send()
發送這樣的數據,我應該如何修改我的客戶端代碼和服務器代碼,包括AES-128加密內它..在這方面請幫助我。
我真的很陌生,在Python這個加密業務。我曾嘗試用於加密該代碼,但它提供了一些關鍵尺寸誤差 'DEF加密(privateInfo):'
'BLOCK_SIZE = 16'
'PADDING = '{''
'墊=拉姆達S:S + (BLOCK_SIZE-LEN(S)%BLOCK_SIZE)* PADDING' 'EncodeAES =拉姆達C,S:base64.b64encode(c.encrypt(襯墊(S)))'
'祕密= 「SECRET_KEY」'
'打印「加密密鑰」,secret'
'密碼= AES.new(祕密)'
'編碼= EncodeAES(密碼,privateInfo)'
'打印 「加密的字符串:」,encoded'
– 2014-12-04 06:56:42
我真的很抱歉,我很簡單,不能合成它 – 2014-12-04 07:00:33
@AsadIrfan我已更新示例代碼 – helloV 2014-12-04 07:11:47