˺hvddlmZddlZddlmZddlmZmZddlm Z m Z ddl m Z dd Z Gd d e ZdS)) annotationsN)utils)AlreadyFinalized InvalidKey) constant_timehashes)KeyDerivationFunctionnintreturnbytesc0|ddS)Nbig)length byteorder)to_bytes)r s /builddir/build/BUILD/imunify360-venv-2.5.2/opt/imunify360/venv/lib64/python3.11/site-packages/cryptography/hazmat/primitives/kdf/x963kdf.py _int_to_u32bers ::Q%: 0 00c*eZdZ ddd ZddZddZdS)X963KDFN algorithmhashes.HashAlgorithmrr sharedinfo bytes | Nonebackend typing.Anyc|jdz}||krtd|d|tjd|||_||_||_d|_dS)NlzCannot derive keys larger than z bits.rF) digest_size ValueErrorr _check_bytes _algorithm_length _sharedinfo_used)selfrrrrmax_lens r__init__zX963KDF.__init__sp'95 G  NwNNNOO O  !  |Z 8 8 8# % r key_materialr r c>|jrtd|_tjd|dg}d}d}|j|krt j|j}|||t||j ||j | | |t|dz }|dz }|j|kd|d|jS)NTr*rr)r&rr_check_bytesliker$rHashr#updaterr%appendfinalizelenjoin)r'r*outputoutlencounterhs rderivezX963KDF.derive&s  : #" "  ~|<<<lV## DO,,A HH\ " " " HH]7++ , , ,+)*** MM!**,, ' ' ' c&*oo %F qLGlV##xx$,//r expected_keyNonecdtj|||stdSN)rbytes_eqr9r)r'r*r:s rverifyzX963KDF.verify;s3%dkk,&?&?NN    rr=)rrrr rrrr)r*r r r )r*r r:r r r;)__name__ __module__ __qualname__r)r9r?rrrrsZ # $0000*rr)r r r r ) __future__rtyping cryptographyrcryptography.exceptionsrrcryptography.hazmat.primitivesrr"cryptography.hazmat.primitives.kdfr rrrCrrrJs #""""" @@@@@@@@@@@@@@@@DDDDDD1111*****#*****r