Refactored code to be more maintainable
This commit is contained in:
30
config/decrypt_config.py
Normal file
30
config/decrypt_config.py
Normal file
@@ -0,0 +1,30 @@
|
||||
from cryptography.fernet import Fernet
|
||||
import json
|
||||
import os
|
||||
|
||||
class ConfigDecryptor:
|
||||
def __init__(self, key):
|
||||
self.key = key
|
||||
|
||||
def decrypt(self):
|
||||
if not os.path.exists("config.enc"):
|
||||
raise FileNotFoundError("The encrypted configuration file 'config.enc' does not exist.")
|
||||
|
||||
fernet = Fernet(self.key)
|
||||
with open("config.enc", "rb") as encrypted_file:
|
||||
encrypted = encrypted_file.read()
|
||||
decrypted = fernet.decrypt(encrypted).decode()
|
||||
return json.loads(decrypted)
|
||||
# Define your key here
|
||||
key = b'u4xTBY5Ns4WYdLvqMjEr138mpMmDEhhqTszKCcDy2cI=' # Replace with your actual key
|
||||
|
||||
if __name__ == "__main__":
|
||||
key = b'u4xTBY5Ns4WYdLvqMjEr138mpMmDEhhqTszKCcDy2cI=' # Replace with your actual key
|
||||
decryptor = ConfigDecryptor(key)
|
||||
try:
|
||||
config = decryptor.decrypt()
|
||||
print(config)
|
||||
except FileNotFoundError as e:
|
||||
print(e)
|
||||
except Exception as e:
|
||||
print(f"An error occurred: {e}")
|
||||
28
config/encrypt_config.py
Normal file
28
config/encrypt_config.py
Normal file
@@ -0,0 +1,28 @@
|
||||
from cryptography.fernet import Fernet
|
||||
|
||||
class ConfigEncryptor:
|
||||
def __init__(self):
|
||||
self.key = Fernet.generate_key()
|
||||
|
||||
def encrypt_config(self, data):
|
||||
fernet = Fernet(self.key)
|
||||
encrypted = fernet.encrypt(data.encode())
|
||||
with open("config.enc", "wb") as encrypted_file:
|
||||
encrypted_file.write(encrypted)
|
||||
|
||||
def get_key(self):
|
||||
return self.key.decode()
|
||||
|
||||
if __name__ == "__main__":
|
||||
config_data = """
|
||||
{
|
||||
"url": "https://yourstore.com",
|
||||
"consumer_key": "ck_yourconsumerkey",
|
||||
"consumer_secret": "cs_yoursecret",
|
||||
"username": "yourusername",
|
||||
"password": "yourpassword"
|
||||
}
|
||||
"""
|
||||
encryptor = ConfigEncryptor()
|
||||
print(f"Encryption key: {encryptor.get_key()}")
|
||||
encryptor.encrypt_config(config_data)
|
||||
Reference in New Issue
Block a user