U vf+ @sUddlmZddlmZmZddlmZeejZ e Z e e d<eZe e d<dZdZe rpeZeZeeedddZeeedd d ZdS) N)ffilib)ensureBYTESKEYBYTES)datakeyreturncCsbt|tkrtdttdt}t ||t||}t |dktj dt |tddS)zCompute a fast, cryptographic quality, keyed hash of the input data :param data: :type data: bytes :param key: len(key) must be equal to :py:data:`.KEYBYTES` (16) :type key: bytes #Key length must be exactly {} bytesunsigned char[]rZraisingN) lenrexc ValueErrorformatrnewrrcrypto_shorthash_siphash24r RuntimeErrorbufferrrdigestrcrQ/opt/alt/python38/lib64/python3.8/site-packages/nacl/bindings/crypto_shorthash.pyr$s  rcCsrttdtjdt|tkr,tdtt dt }t ||t||}t|dktj dt|t ddS)aCCompute a fast, cryptographic quality, keyed hash of the input data :param data: :type data: bytes :param key: len(key) must be equal to :py:data:`.XKEYBYTES` (16) :type key: bytes :raises nacl.exceptions.UnavailableError: If called when using a minimal build of libsodium. zNot available in minimal buildr r r rN)rhas_crypto_shorthash_siphashx24rZUnavailableErrorr XKEYBYTESrrrrXBYTESrcrypto_shorthash_siphashx24rrrrrrr8s   r)Znacl.exceptions exceptionsrZ nacl._sodiumrrrboolZ&PYNACL_HAS_CRYPTO_SHORTHASH_SIPHASHX24rZ crypto_shorthash_siphash24_bytesrint__annotations__Z#crypto_shorthash_siphash24_keybytesrrrZ!crypto_shorthash_siphashx24_bytesZ$crypto_shorthash_siphashx24_keybytesbytesrrrrrrs