a °…b+ ã@s˜UddlmZddlmZmZddlmZeejƒZ e  ¡Z e e d<e ¡Ze e d<dZdZe rpe ¡Ze ¡Zeeedœdd„Zeeedœd d „ZdS) éN)ÚffiÚlib)ÚensureÚBYTESÚKEYBYTES)ÚdataÚkeyÚreturncCsbt|ƒtkrt d t¡¡‚t dt¡}t  ||t|ƒ|¡}t |dktj dt  |t¡dd…S)zÙCompute 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 {} bytesúunsigned char[]r©ZraisingN) ÚlenrÚexcÚ ValueErrorÚformatrÚnewrrÚcrypto_shorthash_siphash24rÚ RuntimeErrorÚbuffer©rrÚdigestÚrc©rúE/tmp/pip-target-98j97qn4/lib/python/nacl/bindings/crypto_shorthash.pyr$s ÿ rcCsrttdtjdt|ƒtkr,t d t¡¡‚t  dt ¡}t   ||t|ƒ|¡}t|dktj dt |t ¡dd…S)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)rÚhas_crypto_shorthash_siphashx24rZUnavailableErrorr Ú XKEYBYTESrrrrÚXBYTESrÚcrypto_shorthash_siphashx24rrrrrrr8s ý ÿ r)Znacl.exceptionsÚ exceptionsrZ nacl._sodiumrrrÚboolZ&PYNACL_HAS_CRYPTO_SHORTHASH_SIPHASHX24rZ crypto_shorthash_siphash24_bytesrÚintÚ__annotations__Z#crypto_shorthash_siphash24_keybytesrrrZ!crypto_shorthash_siphashx24_bytesZ$crypto_shorthash_siphashx24_keybytesÚbytesrrrrrrÚs ÿ