crypto.py 362 B

1234567891011121314151617181920
  1. from typing import (
  2. Optional,
  3. Union,
  4. )
  5. from eth_hash.auto import (
  6. keccak as keccak_256,
  7. )
  8. from .conversions import (
  9. to_bytes,
  10. )
  11. def keccak(
  12. primitive: Optional[Union[bytes, int, bool]] = None,
  13. hexstr: Optional[str] = None,
  14. text: Optional[str] = None,
  15. ) -> bytes:
  16. return bytes(keccak_256(to_bytes(primitive, hexstr, text)))