Как правильно расшифровать зашифрованное сообщение на rsa
Есть клиент. Он посылает сообщение:
def chat(session):
while True:
print(session.login + ": ", end='', sep="")
message = input()
pubkey = rsa.PublicKey(int(session.open_key_n), int(session.open_key_e))
mess = message.encode("utf8")
crypt_message = rsa.encrypt(mess, pubkey)
client.send((str(MESSAGE) + "|" + session.login + "|" + str(crypt_message)).encode('utf-8'))
в сесии хранится логин и публичный ключ который пришел с сервера ранее
А вот сервер пытается расшифровать:
def chat(request, private_key):
message = str(request.decode("utf-8")).split("|")
rsa.decrypt(bytes(message[2]), private_key)
но получает ошибку:
TypeError: string argument without an encoding
request выглядит так: b'3|1|b\'1t\\x9ao~k\\xe6\\xc4\\xb6P{\\xa5\\xee\\xfb\\x9b\\xe9\\x1ann\\xba\\xc1\\xbd\\x85\\xfa\\x81\\x04\\xc7\\xcd\\xb2\\xd6\\x9d\\x12\\x17\\xe4\\xdf\\xaa\\xa7E\\xd7\\xe8\\xb8\\x0e[\\xe2O\\xfd\\x0c\\x01\\xd4\\xbaSE\\xdcm\\x8f\\x9cD\\x1eKJ"\\x92\\\'3\''
3 - это код, что бы сервер понимал что хочет сделать пользователь(авторизация, регистрация или чат) 1 - логин а все остальное после второй | это письмо зашифрованное rsa
Как правильно расшифровать письмо со стороны сервера