Криптография Fernet Недействительный токен

Я пытаюсь на Python Django создать систему для шифрования и расшифровки сообщений. Кто-нибудь знает, почему каждый раз при попытке прочитать сообщение я получаю ошибку: "Зашифрованное сообщение недействительно и не может быть расшифровано". Ниже приведен мой код:

`class MessageSerializer(serializers.ModelSerializer): created_by = BasicUserSerializer(read_only=True)

class Meta:
    model = Message
    fields = '__all__'

def __init__(self, *args, **kwargs):
    super().__init__(*args, **kwargs)
    load_dotenv()
    self.ENCRYPTION_KEY = "key_generated_by_fernet.generate_key()"
    self.fernet = Fernet(self.ENCRYPTION_KEY)

def to_representation(self, instance):
    representation = super().to_representation(instance)
    representation['text'] = self.decrypt(instance.text)
    return representation

def encrypt(self, message):
    encoded_message = message.encode()
    encrypted_message = self.fernet.encrypt(encoded_message)
    return encrypted_message

def decrypt(self, encrypted_message):
    try:
        decrypted_message = self.fernet.decrypt(encrypted_message)
        decoded_message = decrypted_message.decode()
        return decoded_message
    except InvalidToken:
        raise ValueError("The encrypted message is invalid and cannot be decrypted.")`

Кто-нибудь сталкивался с подобной проблемой и знает, как ее решить?

Вернуться на верх