_mode_ocb.pyi 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. from types import ModuleType
  2. from typing import Union, Any, Optional, Tuple, Dict, overload
  3. Buffer = Union[bytes, bytearray, memoryview]
  4. class OcbMode(object):
  5. block_size: int
  6. nonce: Buffer
  7. def __init__(self,
  8. factory: ModuleType,
  9. nonce: Buffer,
  10. mac_len: int,
  11. cipher_params: Dict) -> None: ...
  12. def update(self, assoc_data: Buffer) -> OcbMode: ...
  13. @overload
  14. def encrypt(self, plaintext: Buffer) -> bytes: ...
  15. @overload
  16. def encrypt(self, plaintext: Buffer, output: Union[bytearray, memoryview]) -> None: ...
  17. @overload
  18. def decrypt(self, plaintext: Buffer) -> bytes: ...
  19. @overload
  20. def decrypt(self, plaintext: Buffer, output: Union[bytearray, memoryview]) -> None: ...
  21. def digest(self) -> bytes: ...
  22. def hexdigest(self) -> str: ...
  23. def verify(self, received_mac_tag: Buffer) -> None: ...
  24. def hexverify(self, hex_mac_tag: str) -> None: ...
  25. def encrypt_and_digest(self,
  26. plaintext: Buffer) -> Tuple[bytes, bytes]: ...
  27. def decrypt_and_verify(self,
  28. ciphertext: Buffer,
  29. received_mac_tag: Buffer) -> bytes: ...