Spaces:
Runtime error
Runtime error
| from typing import Union | |
| from cryptography.fernet import Fernet, InvalidToken | |
| from reworkd_platform.settings import settings | |
| from reworkd_platform.web.api.http_responses import forbidden | |
| class EncryptionService: | |
| def __init__(self, secret: bytes): | |
| self.fernet = Fernet(secret) | |
| def encrypt(self, text: str) -> bytes: | |
| return self.fernet.encrypt(text.encode("utf-8")) | |
| def decrypt(self, encoded_bytes: Union[bytes, str]) -> str: | |
| try: | |
| return self.fernet.decrypt(encoded_bytes).decode("utf-8") | |
| except InvalidToken: | |
| raise forbidden() | |
| encryption_service = EncryptionService(settings.secret_signing_key.encode()) | |