use ascii
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Torma Kristóf 2021-04-25 17:03:13 +02:00
parent 9b5b1c9eb0
commit 2412412ff6
Signed by: tormakris
GPG Key ID: DC83C4F2C41B1047

View File

@ -33,7 +33,7 @@ class NetWrapper:
cipher_rsa = PKCS1_OAEP.new(self.serverPubKey) cipher_rsa = PKCS1_OAEP.new(self.serverPubKey)
identMsg = json.dumps( identMsg = json.dumps(
{'type': 'IDY', 'source': self.network.own_addr, 'username': self.username, {'type': 'IDY', 'source': self.network.own_addr, 'username': self.username,
'message': b64encode(cipher_rsa.encrypt(randommsg.encode('UTF-8'))).decode()}).encode( 'message': b64encode(cipher_rsa.encrypt(randommsg.encode('UTF-8'))).decode('ASCII')}).encode(
'UTF-8') 'UTF-8')
self.network.send_msg(self.serverAddr, identMsg) self.network.send_msg(self.serverAddr, identMsg)
returnJson = {'source': '', 'type': ''} returnJson = {'source': '', 'type': ''}
@ -50,7 +50,7 @@ class NetWrapper:
def createEncryptedChannel(self): def createEncryptedChannel(self):
dh = pyDH.DiffieHellman() dh = pyDH.DiffieHellman()
cipher_rsa = PKCS1_OAEP.new(self.serverPubKey) cipher_rsa = PKCS1_OAEP.new(self.serverPubKey)
mypubkey = b64encode(cipher_rsa.encrypt(str(dh.gen_public_key()).encode('UTF-8'))) mypubkey = b64encode(cipher_rsa.encrypt(str(dh.gen_public_key()).encode('UTF-8'))).decode('ASCII')
jsonmsg = json.dumps({'type': 'DH', 'source': self.network.own_addr, 'message': mypubkey}).encode('UTF-8') jsonmsg = json.dumps({'type': 'DH', 'source': self.network.own_addr, 'message': mypubkey}).encode('UTF-8')
self.network.send_msg(self.serverAddr, jsonmsg) self.network.send_msg(self.serverAddr, jsonmsg)
decodedmsg = {'source': '', 'type': ''} decodedmsg = {'source': '', 'type': ''}
@ -68,8 +68,8 @@ class NetWrapper:
message = f"LIN {self.username} {password}".encode('UTF-8') message = f"LIN {self.username} {password}".encode('UTF-8')
cipher = ChaCha20.new(self.cipherkey, get_random_bytes(12)) cipher = ChaCha20.new(self.cipherkey, get_random_bytes(12))
ciphertext = cipher.encrypt(message) ciphertext = cipher.encrypt(message)
nonce = b64encode(cipher.nonce).decode('UTF-8') nonce = b64encode(cipher.nonce).decode('ASCII')
ct = b64encode(ciphertext).decode('UTF-8') ct = b64encode(ciphertext).decode('ASCII')
sendjson = json.dumps({'type': 'AUT', 'source': self.network.own_addr, 'nonce': nonce, 'message': ct}).encode( sendjson = json.dumps({'type': 'AUT', 'source': self.network.own_addr, 'nonce': nonce, 'message': ct}).encode(
'UTF-8') 'UTF-8')
self.network.send_msg(self.serverAddr, sendjson) self.network.send_msg(self.serverAddr, sendjson)
@ -103,8 +103,8 @@ class NetWrapper:
def sendMessage(self, message: bytes): def sendMessage(self, message: bytes):
cipher = ChaCha20.new(self.cipherkey, get_random_bytes(12)) cipher = ChaCha20.new(self.cipherkey, get_random_bytes(12))
ciphertext = cipher.encrypt(message) ciphertext = cipher.encrypt(message)
nonce = b64encode(cipher.nonce).decode('UTF-8') nonce = b64encode(cipher.nonce).decode('ASCII')
ct = b64encode(ciphertext).decode('UTF-8') ct = b64encode(ciphertext).decode('ASCII')
sendjson = json.dumps({'type': 'CMD', 'source': self.network.own_addr, 'nonce': nonce, 'message': ct}).encode( sendjson = json.dumps({'type': 'CMD', 'source': self.network.own_addr, 'nonce': nonce, 'message': ct}).encode(
'UTF-8') 'UTF-8')
self.network.send_msg(self.serverAddr, sendjson) self.network.send_msg(self.serverAddr, sendjson)