crypto/main.py

36 lines
1.5 KiB
Python

import os
from encrypt import encrypt_message
from decrypt import decrypt_message
from generate_save import generate_private_key, generate_public_key, save_private_key, save_public_key
KEYS_DIR = 'keys'
PRIVATE_KEY_FILE = f'{KEYS_DIR}/private-key.pem'
PUBLIC_KEY_FILE = f'{KEYS_DIR}/public-key.pem'
if not os.path.exists(KEYS_DIR):
os.makedirs(KEYS_DIR)
action = input("Хотите сгенерировать новые ключи (1) или использовать существующие (2)? ")
if action == '1':
private_key = generate_private_key()
save_private_key(private_key, PRIVATE_KEY_FILE)
public_key = generate_public_key(private_key)
save_public_key(public_key, PUBLIC_KEY_FILE)
print(f"Новые ключи сгенерированы и сохранены в '{PRIVATE_KEY_FILE}' и '{PUBLIC_KEY_FILE}'.")
elif action == '2':
if os.path.exists(PRIVATE_KEY_FILE) and os.path.exists(PUBLIC_KEY_FILE):
pass
else:
print(f"Файлы ключей не найдены. Пожалуйста, сгенерируйте новые ключи.")
exit()
# Шифрование сообщения
message = "Это лицензионный ключ."
encrypted_message = encrypt_message(message, PUBLIC_KEY_FILE)
print("Зашифрованное сообщение (Base64):", encrypted_message)
# Дешифрование сообщения
decrypted_message = decrypt_message(encrypted_message, PRIVATE_KEY_FILE)
print("Расшифрованное сообщение:", decrypted_message)