crypto/main.py

34 lines
1.5 KiB
Python

import os
from utilits.encrypt import encrypt_message
from utilits.decrypt import decrypt_message
from utilits.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)
if not os.path.exists(PRIVATE_KEY_FILE) and not os.path.exists(PUBLIC_KEY_FILE):
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}'.")
else:
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)