From 9845f8f66ffc9fb19e17a37cc40c663a1ab840cc Mon Sep 17 00:00:00 2001 From: Samar upreti Date: Thu, 18 Jun 2026 03:38:18 -0700 Subject: [PATCH 1/2] Project _ Message_Encryption --- Projects/Message_Encryption.py | 65 ++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 Projects/Message_Encryption.py diff --git a/Projects/Message_Encryption.py b/Projects/Message_Encryption.py new file mode 100644 index 000000000000..50e70d96da29 --- /dev/null +++ b/Projects/Message_Encryption.py @@ -0,0 +1,65 @@ +import random as ra +import string as str + +def options(): + while True: + print("========== Welcome To Message Encryption ==========") + print("\t'1' For Encryption") + print("\t'2' For Decode") + try: + opt = int(input("Enter: ")) + if opt not in ("1","2",1,2): + print("Choose Number Between '1','2'") + if opt == 1: + encrypt() + elif opt == 2: + decode() + except ValueError: + print("Enter Numbers Only") + +def encrypt(): + x = input("Enter Your Message :") + + if len(x)<=3: + encrypt_key = input("Enter Your Key '1','4','7' :") + + with open("User_Key.txt","a+") as f: + f.write(f"{encrypt_key},{x}\n") + print(f"Successfully Encrypted: {x[::-1]}") + + encrypt_key = input("Enter Your Key '1','4','7' :") + + with open("User_Key.txt","a") as f: + f.write(f"{encrypt_key},{x}\n") + shift = x[1:] + x[0] + prefix = "".join(ra.choice(str.ascii_letters) for _ in range(3)) + suffix = "".join(ra.choice(str.ascii_letters) for _ in range(3)) + message = prefix + shift + suffix + message = message.strip() + print(f"Successfully Encrypted: {message}") + return encrypt_key + +def decode(): + with open("User_Key.txt", "r") as f: + user_message = input("Enter Message To Decode : ") + decode_key = input("Enter Your Key : ") + found = False + + for line in f: + encrypt_key, x = line.strip().split(",") + + if encrypt_key == decode_key: + if len(user_message) <= 3: + print(user_message[::-1]) + else: + x = user_message[3:-3] + x = x[-1] + x[:-1] + print(f"Message Decoded : {x}") + + found = True + break + + if not found: + print("Didn't Match :/") + +options() \ No newline at end of file From 35c17e8c7203065c550708ef7ee3b7d15d9a66e0 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Thu, 18 Jun 2026 10:43:21 +0000 Subject: [PATCH 2/2] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- Projects/Message_Encryption.py | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/Projects/Message_Encryption.py b/Projects/Message_Encryption.py index 50e70d96da29..822de1b2275d 100644 --- a/Projects/Message_Encryption.py +++ b/Projects/Message_Encryption.py @@ -1,6 +1,7 @@ import random as ra import string as str + def options(): while True: print("========== Welcome To Message Encryption ==========") @@ -8,7 +9,7 @@ def options(): print("\t'2' For Decode") try: opt = int(input("Enter: ")) - if opt not in ("1","2",1,2): + if opt not in ("1", "2", 1, 2): print("Choose Number Between '1','2'") if opt == 1: encrypt() @@ -17,20 +18,21 @@ def options(): except ValueError: print("Enter Numbers Only") + def encrypt(): x = input("Enter Your Message :") - if len(x)<=3: + if len(x) <= 3: encrypt_key = input("Enter Your Key '1','4','7' :") - with open("User_Key.txt","a+") as f: + with open("User_Key.txt", "a+") as f: f.write(f"{encrypt_key},{x}\n") print(f"Successfully Encrypted: {x[::-1]}") encrypt_key = input("Enter Your Key '1','4','7' :") - - with open("User_Key.txt","a") as f: - f.write(f"{encrypt_key},{x}\n") + + with open("User_Key.txt", "a") as f: + f.write(f"{encrypt_key},{x}\n") shift = x[1:] + x[0] prefix = "".join(ra.choice(str.ascii_letters) for _ in range(3)) suffix = "".join(ra.choice(str.ascii_letters) for _ in range(3)) @@ -39,6 +41,7 @@ def encrypt(): print(f"Successfully Encrypted: {message}") return encrypt_key + def decode(): with open("User_Key.txt", "r") as f: user_message = input("Enter Message To Decode : ") @@ -62,4 +65,5 @@ def decode(): if not found: print("Didn't Match :/") -options() \ No newline at end of file + +options()