ó
    Û°›j^  ã                  ó  • S SK Jr  S SKrS SKJr  S SKJr  S SKJr   " S S\5      r	 " S S	5      r
 " S
 S5      r " S S5      r " S S\5      r " S S\5      r " S S\R                  S9r " S S\5      r      SS jrg)é    )ÚannotationsN)Úhashes)ÚAsymmetricPadding)Úrsac                  ó"   • \ rS rSrSrSS jrSrg)ÚPKCS1v15é   zEMSA-PKCS1-v1_5c                ó:   • [        U[        5      (       d  [        $ g)NT)Ú
isinstancer   ÚNotImplemented©ÚselfÚothers     Ún/home/mande/repo/quber/.venv/lib/python3.13/site-packages/cryptography/hazmat/primitives/asymmetric/padding.pyÚ__eq__ÚPKCS1v15.__eq__   s   € Ü˜%¤×*Ñ*Ü!Ð!àó    © N©r   ÚobjectÚreturnÚbool)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Únamer   Ú__static_attributes__r   r   r   r   r      s   † Ø€D÷r   r   c                  ó   • \ rS rSrSrSrg)Ú
_MaxLengthé   z Sentinel value for `MAX_LENGTH`.r   N©r   r   r   r   Ú__doc__r   r   r   r   r    r       s   † Ü&r   r    c                  ó   • \ rS rSrSrSrg)Ú_Autoé   zSentinel value for `AUTO`.r   Nr"   r   r   r   r%   r%      s   † Ü r   r%   c                  ó   • \ rS rSrSrSrg)Ú_DigestLengthé"   z#Sentinel value for `DIGEST_LENGTH`.r   Nr"   r   r   r   r(   r(   "   s   † Ü)r   r(   c                  ó‚   • \ rS rSr% \" 5       r\" 5       r\" 5       r	Sr
S\S'         S
S jrSS jr\SS j5       rSrg	)ÚPSSé&   zEMSA-PSSú(int | _MaxLength | _Auto | _DigestLengthÚ_salt_lengthc                óÈ   • Xl         [        U[        [        [        [
        45      (       d  [        S5      e[        U[        5      (       a  US:  a  [        S5      eX l        g )NzBsalt_length must be an integer, MAX_LENGTH, DIGEST_LENGTH, or AUTOr   z$salt_length must be zero or greater.)	Ú_mgfr   Úintr    r%   r(   Ú	TypeErrorÚ
ValueErrorr.   )r   ÚmgfÚsalt_lengths      r   Ú__init__ÚPSS.__init__-   s_   € ð
 Œ	äØœ#œz¬5´-Ð@÷
ñ 
ô ð)óð ô
 �k¤3×'Ñ'¨K¸!«OÜÐCÓDÐDà'Õr   c                óª   • [        U[        5      (       d  [        $ U R                  UR                  :H  =(       a    U R                  UR                  :H  $ ©N)r   r+   r   r0   r.   r   s     r   r   Ú
PSS.__eq__A   sB   € Ü˜%¤×%Ñ%Ü!Ð!ð �I‰I˜Ÿ™Ñ#×O¨×(9Ñ(9¸U×=OÑ=OÑ(Oð	
r   c                ó   • U R                   $ r9   ©r0   ©r   s    r   r4   ÚPSS.mgfI   ó   € à�y‰yÐr   )r0   r.   N)r4   ÚMGFr5   r-   r   ÚNoner   ©r   r@   )r   r   r   r   r    Ú
MAX_LENGTHr%   ÚAUTOr(   ÚDIGEST_LENGTHr   Ú__annotations__r6   r   Úpropertyr4   r   r   r   r   r+   r+   &   s\   ‡ Ù“€JÙ‹7€DÙ!“O€MØ€DØ:Ó:ð(àð(ð >ð(ð 
ô	(ô(
ð óó ór   r+   c                  ó`   • \ rS rSrSr      S	S jrS
S jr\SS j5       r\SS j5       r	Sr
g)ÚOAEPéN   zEME-OAEPc                ó|   • [        U[        R                  5      (       d  [        S5      eXl        X l        X0l        g ©Nz*Expected instance of hashes.HashAlgorithm.)r   r   ÚHashAlgorithmr2   r0   Ú
_algorithmÚ_label)r   r4   Ú	algorithmÚlabels       r   r6   ÚOAEP.__init__Q   s2   € ô ˜)¤V×%9Ñ%9×:Ñ:ÜÐHÓIÐIàŒ	Ø#ŒØ�r   c                óê   • [        U[        5      (       d  [        $ U R                  UR                  :H  =(       a9    U R                  UR                  :H  =(       a    U R
                  UR
                  :H  $ r9   )r   rI   r   r0   rN   rO   r   s     r   r   ÚOAEP.__eq__^   sX   € Ü˜%¤×&Ñ&Ü!Ð!ð �I‰I˜Ÿ™Ñ#÷ ,Ø—‘ 5×#3Ñ#3Ñ3÷,à—‘˜uŸ|™|Ñ+ð	
r   c                ó   • U R                   $ r9   ©rN   r=   s    r   rP   ÚOAEP.algorithmh   s   € à�‰Ðr   c                ó   • U R                   $ r9   r<   r=   s    r   r4   ÚOAEP.mgfl   r?   r   )rN   rO   r0   N)r4   r@   rP   úhashes.HashAlgorithmrQ   zbytes | Noner   )r   rZ   rB   )r   r   r   r   r   r6   r   rG   rP   r4   r   r   r   r   rI   rI   N   sU   † Ø€Dðàðð (ðð ô	ô
ð óó ðð óó ór   rI   c                  ó    • \ rS rSr% S\S'   Srg)r@   éq   rZ   rN   r   N)r   r   r   r   rF   r   r   r   r   r@   r@   q   s   ‡ Ø$Ö$r   r@   )Ú	metaclassc                  ó(   • \ rS rSrSS jrSS jrSrg)ÚMGF1éu   c                ód   • [        U[        R                  5      (       d  [        S5      eXl        g rL   )r   r   rM   r2   rN   )r   rP   s     r   r6   ÚMGF1.__init__v   s&   € Ü˜)¤V×%9Ñ%9×:Ñ:ÜÐHÓIÐIà#�r   c                ój   • [        U[        5      (       d  [        $ U R                  UR                  :H  $ r9   )r   r_   r   rN   r   s     r   r   ÚMGF1.__eq__|   s*   € Ü˜%¤×&Ñ&Ü!Ð!à�‰ %×"2Ñ"2Ñ2Ð2r   rV   N)rP   rZ   r   )r   r   r   r   r6   r   r   r   r   r   r_   r_   u   s   † ô$÷3r   r_   c                óÐ   • [        U [        R                  [        R                  45      (       d  [	        S5      eU R
                  S-   S-  nX!R                  -
  S-
  nUS:¼  d   eU$ )Nz(key must be an RSA public or private keyé   é   é   r   )r   r   ÚRSAPrivateKeyÚRSAPublicKeyr2   Úkey_sizeÚdigest_size)ÚkeyÚhash_algorithmÚemlenr5   s       r   Úcalculate_max_pss_salt_lengthrp   ƒ   sh   € ô �cœC×-Ñ-¬s×/?Ñ/?Ð@×AÑAÜÐBÓCÐCà�\‰\˜AÑ !Ñ#€EØ×4Ñ4Ñ4°qÑ8€KØ˜!ÓÐÐØÐr   )rm   z$rsa.RSAPrivateKey | rsa.RSAPublicKeyrn   rZ   r   r1   )Ú
__future__r   ÚabcÚcryptography.hazmat.primitivesr   Ú*cryptography.hazmat.primitives._asymmetricr   Ú)cryptography.hazmat.primitives.asymmetricr   r   r    r%   r(   r+   rI   ÚABCMetar@   r_   rp   r   r   r   Ú<module>rw      sœ   ðõ
 #ã 
å 1õõ :ôÐ ô ÷'ñ '÷!ñ !÷*ñ *ô%Ð
ô %ôP Ðô  ôF%�C—K‘Kò %ô3ˆ3ô 3ð
Ø	-ð
à(ð
ð 	õ
r   