I'm a beginner working with Encrypt and Decrypt Data. I am getting an error that the address in def get_secure_address(self) cannot be decoded. It just shows an error code:
TypeError: Object of type TypeError is not JSON serializable
What am I doing wrong?
My piece of code:
def encrypt_data(self, end_code_private):
key_en = Fernet.generate_key()
f = Fernet(key_en)
encrypted_data = f.encrypt(end_code_private.encode('utf-8'))
key_en_str = base64.urlsafe_b64encode(key_en).decode('utf-8')
return key_en_str, encrypted_data
def decrypt_data(self, dec_code_private, encrypted_data):
try:
f = Fernet(dec_code_private)
decrypted_data = f.decrypt(encrypted_data).decode('utf-8')
return decrypted_data
except InvalidToken:
return "Invalid token. Unable to decrypt the data."
def set_secure_address(self, data):
key_add, encrypted_address = self.encrypt_data(data)
self.address = encrypted_address
self.address_key = key_add
def get_secure_address(self):
address_key_bytes = base64.urlsafe_b64decode(self.address_key.encode('utf-8'))
fernet = Fernet(address_key_bytes)
decrypted_address = self.decrypt_data(fernet, self.address)
return decrypted_address