def send_message(): if request.method == 'POST': user = request.form.get('user') text = request.form.get('text') temp_keys = the_keys()[user] encrypted = encrypt_text(text, user) print("\n**** encrypted: "+ encrypted) pubkey = temp_keys["fromUser"] print("\n**** pubkey: "+ pubkey) send_new_message(encrypted, pubkey) message = {"from":"me","message":text} save_new_message(message,temp_keys["n"],temp_keys["e"]) return redirect(request.referrer)
def test_create_and_saving_and_deleting(self): name = "onur" fromUser = "******" n = 111 e = 111 temp_user = create_new_user(name, fromUser, n, e) message = {"from": "me", "message": "hello"} number = save_new_message(message, n, e) #save_new_message({"from":"sender","message":"hello how are you"},n,e) ok = False temp_message_object = the_message(temp_user) if number in temp_message_object: if temp_message_object[number] == message: ok = True key_delete(temp_user) message_delete(temp_user) self.assertEqual(ok, True, "A problem on the test_encrypt_decrypt")
def decrypt_text(text_data, pubkey): nums = [] for line in text_data.splitlines(): nums.append(int(line)) l = len(nums) n = nums[l - 2] e = nums[l - 1] print("\n\n\n e: " + str(e)) temp_keys = the_keys() print(temp_keys) message_publickey = pubkey.replace("\n", "").replace(" ", "") d = temp_keys["1"]["d"] for keys in temp_keys: if "fromUser" in temp_keys[keys]: key_publickey = temp_keys[keys]["fromUser"].replace("\n", "").replace( " ", "") if message_publickey == key_publickey: i = 0 decrypted_Mess = "" while i < l - 2: x = decrypt(nums[i], int(d), int(n)) y = chr(x) decrypted_Mess += y i += 1 message = {"from": "user", "message": decrypted_Mess} save_new_message(message, temp_keys[keys]["n"], temp_keys[keys]["e"]) return decrypted_Mess