Source code for pyseto.key_interface

from typing import Any

from .exceptions import NotSupportedError


[docs]class KeyInterface: """ The key interface class for PASETO. """ def __init__(self, version: str, type: str, key: Any): self._version = version self._type = type self._header = (self._version + "." + self._type + ".").encode("utf-8") self._sig_size = 0 self._key: Any = key return @property def version(self) -> str: return self._version @property def type(self) -> str: return self._type @property def header(self) -> bytes: return self._header
[docs] def encrypt( self, payload: bytes, footer: bytes = b"", implicit_assertion: bytes = b"", nonce: bytes = b"", ) -> bytes: raise NotSupportedError("A key for public does not have encrypt().")
[docs] def decrypt( self, payload: bytes, footer: bytes = b"", implicit_assertion: bytes = b"" ) -> bytes: raise NotSupportedError("A key for public does not have decrypt().")
[docs] def sign( self, payload: bytes, footer: bytes = b"", implicit_assertion: bytes = b"" ) -> bytes: raise NotSupportedError("A key for local does not have sign().")
[docs] def verify( self, payload: bytes, footer: bytes = b"", implicit_assertion: bytes = b"" ) -> bytes: raise NotSupportedError("A key for local does not have verify().")