From 2fc4a1f752ad47d5988fab579f250c3111a8ba9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Torma=20Krist=C3=B3f?= Date: Mon, 26 Apr 2021 00:22:48 +0200 Subject: [PATCH] cipherkey is now 32 characters strong --- client/netwrapper.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/client/netwrapper.py b/client/netwrapper.py index dfb8219..a179909 100644 --- a/client/netwrapper.py +++ b/client/netwrapper.py @@ -4,6 +4,7 @@ import string import json from base64 import b64encode, b64decode import pyDH +from Crypto.Hash import SHA512 from Crypto.Cipher import ChaCha20, PKCS1_OAEP from Crypto.PublicKey.RSA import RsaKey from Crypto.Random import get_random_bytes @@ -61,7 +62,10 @@ class NetWrapper: decodedmsg = json.loads(msg.decode('UTF-8')) cipher_rsa = PKCS1_OAEP.new(self.privateKey) serverpubkey = int(cipher_rsa.decrypt(b64decode(decodedmsg['message'])).decode('UTF-8')) - self.cipherkey = dh.gen_shared_key(serverpubkey).encode('UTF-8') + cipherkey = dh.gen_shared_key(serverpubkey).encode('UTF-8') + hasher = SHA512.new() + hasher.update(cipherkey) + self.cipherkey = hasher.hexdigest()[:32] def authenticate(self, password: str):