3Tf ddlmZddlZddlZddlmZddlmZddlm Z GddeZ Gdd Z Gd d Z Gd d Z GddeZGddeZGddej ZGddeZ ddZy)) annotationsN)hashes)AsymmetricPadding)rsaceZdZdZy)PKCS1v15zEMSA-PKCS1-v1_5N)__name__ __module__ __qualname__nameS/usr/lib/python3/dist-packages/cryptography/hazmat/primitives/asymmetric/padding.pyrrs DrrceZdZdZy) _MaxLengthz Sentinel value for `MAX_LENGTH`.Nr r r __doc__r rrrrs&rrceZdZdZy)_AutozSentinel value for `AUTO`.Nrr rrrrs rrceZdZdZy) _DigestLengthz#Sentinel value for `DIGEST_LENGTH`.Nrr rrrrs)rrcZeZdZUeZeZeZdZ de d< ddZ y)PSSzEMSA-PSS3typing.Union[int, _MaxLength, _Auto, _DigestLength] _salt_lengthc||_t|tttt fs t dt|tr|dkr td||_y)NzBsalt_length must be an integer, MAX_LENGTH, DIGEST_LENGTH, or AUTOrz$salt_length must be zero or greater.) _mgf isinstanceintrrr TypeError ValueErrorr)selfmgf salt_lengths r__init__z PSS.__init__(s[   #z5-@ )  k3 'K!OCD D'rN)r#MGFr$rreturnNone) r r r r MAX_LENGTHrAUTOr DIGEST_LENGTHr __annotations__r%r rrrr!sDJ 7D!OM DEE( (I(  (rrc$eZdZdZ ddZy)OAEPzEME-OAEPcxt|tjs td||_||_||_yNz*Expected instance of hashes.HashAlgorithm.)rr HashAlgorithmr r _algorithm_label)r"r# algorithmlabels rr%z OAEP.__init__@s5 )V%9%9:HI I # rN)r#r&r4hashes.HashAlgorithmr5ztyping.Optional[bytes])r r r r r%r rrr.r.=s( D   ( & rr.ceZdZUded<y)r&r6r2N)r r r r,r rrr&r&Ns$$rr&) metaclassc"eZdZeZddZy)MGF1c\t|tjs td||_yr0)rrr1r r2)r"r4s rr%z MGF1.__init__Us%)V%9%9:HI I#rN)r4r6)r r r rr)r%r rrr:r:RsJ$rr:ct|tjtjfs t d|j dzdz}||j z dz }|dk\sJ|S)Nz(key must be an RSA public or private keyr)rr RSAPrivateKey RSAPublicKeyr key_size digest_size)keyhash_algorithmemlenr$s rcalculate_max_pss_salt_lengthrG\sg cC--s/?/?@ ABCC \\A ! #E.444q8K !   r)rDz1typing.Union[rsa.RSAPrivateKey, rsa.RSAPublicKey]rEr6r'r) __future__rabctypingcryptography.hazmat.primitivesr*cryptography.hazmat.primitives._asymmetricr)cryptography.hazmat.primitives.asymmetricrrrrrrr.ABCMetar&r:rGr rrrOs # 1: ''!!**( (8 "%CKK%$3$  : (   r