""" Encryption Manager """ import time from cryptography.fernet import Fernet ... import base64 ... import os ... ... class EncryptionManager: ... def __init__(self): ... self.key = None ... self.cipher = None ... ... def initialize(self): ... """Initialize encryption manager""" ... print("Initializing Encryption Manager...") ... ... # Generate or load encryption key ... key_file = 'config/encryption.key' ... if os.path.exists(key_file): ... with open(key_file, 'rb') as f: ... self.key = f.read() ... else: ... self.key = Fernet.generate_key() ... os.makedirs(os.path.dirname(key_file), exist_ok=True) ... with open(key_file, 'wb') as f: ... f.write(self.key) ... ... self.cipher = Fernet(self.key) ... print("Encryption Manager initialized successfully") ... ... def encrypt(self, data): ... """Encrypt data""" ... if isinstance(data, str): ... data = data.encode() ... return self.cipher.encrypt(data) ... ... def decrypt(self, encrypted_data): ... """Decrypt data""" ... return self.cipher.decrypt(encrypted_data).decode()