diff --git a/server/netwrapper.py b/server/netwrapper.py index b194e32..dec3d84 100644 --- a/server/netwrapper.py +++ b/server/netwrapper.py @@ -2,6 +2,7 @@ import json from base64 import b64encode, b64decode import pyDH +from Crypto.Hash import SHA512 from Crypto.Cipher import PKCS1_OAEP from Crypto.Cipher import ChaCha20 from Crypto.PublicKey.RSA import RsaKey @@ -62,7 +63,10 @@ class NetWrapper: decodedmsg = json.loads(msg.decode('UTF-8')) cipher_rsa = PKCS1_OAEP.new(self.serverPrivateKey) 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 login(self) -> bool: