
     h
                     T   d dl Z d dlZd dlmZ d dlmZ d dlmZ  G d de          Z G d d          Z	 G d	 d
          Z
 G d d          Z G d de          Z G d de          Z G d de j                  Z G d de          Zdej        d         dej        defdZdS )    N)hashes)AsymmetricPadding)rsac                       e Zd ZdZdS )PKCS1v15zEMSA-PKCS1-v1_5N)__name__
__module____qualname__name     m/var/www/html/Sam_Eipo/venv/lib/python3.11/site-packages/cryptography/hazmat/primitives/asymmetric/padding.pyr   r      s        DDDr   r   c                       e Zd ZdZdS )
_MaxLengthz Sentinel value for `MAX_LENGTH`.Nr   r	   r
   __doc__r   r   r   r   r      s        &&&&r   r   c                       e Zd ZdZdS )_AutozSentinel value for `AUTO`.Nr   r   r   r   r   r      s            r   r   c                       e Zd ZdZdS )_DigestLengthz#Sentinel value for `DIGEST_LENGTH`.Nr   r   r   r   r   r      s        ))))r   r   c                       e Zd ZU  e            Z e            Z e            ZdZ	e
j        eeeef         ed<   ddde
j        eeeef         ddfdZdS )	PSSzEMSA-PSS_salt_lengthmgfMGFsalt_lengthreturnNc                     || _         t          |t          t          t          t
          f          st          d          t          |t                    r|dk     rt          d          || _        d S )NzBsalt_length must be an integer, MAX_LENGTH, DIGEST_LENGTH, or AUTOr   z$salt_length must be zero or greater.)	_mgf
isinstanceintr   r   r   	TypeError
ValueErrorr   )selfr   r   s      r   __init__zPSS.__init__'   s~    
 	#z5-@
 
 	 )  
 k3'' 	EK!OOCDDD'r   )r   r	   r
   r   
MAX_LENGTHr   AUTOr   DIGEST_LENGTHr   typingUnionr!   __annotations__r%   r   r   r   r   r       s         J577D!MOOMD,sJ}DEEEE(( \#z5-"GH( 
	( ( ( ( ( (r   r   c                   F    e Zd ZdZdddej        dej        e         fdZ	dS )OAEPzEME-OAEPr   r   	algorithmlabelc                     t          |t          j                  st          d          || _        || _        || _        d S Nz*Expected instance of hashes.HashAlgorithm.)r    r   HashAlgorithmr"   r   
_algorithm_label)r$   r   r.   r/   s       r   r%   zOAEP.__init__?   sB     )V%9:: 	JHIII	#r   N)
r   r	   r
   r   r   r2   r)   Optionalbytesr%   r   r   r   r-   r-   <   sS        D ' u%	     r   r-   c                   $    e Zd ZU ej        ed<   dS )r   r3   N)r   r	   r
   r   r2   r+   r   r   r   r   r   M   s!         $$$$$$r   r   )	metaclassc                   8    e Zd Z e            Zdej        fdZdS )MGF1r.   c                 f    t          |t          j                  st          d          || _        d S r1   )r    r   r2   r"   r3   )r$   r.   s     r   r%   zMGF1.__init__T   s2    )V%9:: 	JHIII#r   N)r   r	   r
   r   r&   r   r2   r%   r   r   r   r:   r:   Q   s=        J$&"6 $ $ $ $ $ $r   r:   key)zrsa.RSAPrivateKeyzrsa.RSAPublicKeyhash_algorithmr   c                     t          | t          j        t          j        f          st	          d          | j        dz   dz  }||j        z
  dz
  }|dk    sJ |S )Nz(key must be an RSA public or private key         r   )r    r   RSAPrivateKeyRSAPublicKeyr"   key_sizedigest_size)r<   r=   emlenr   s       r   calculate_max_pss_salt_lengthrG   [   sk     cC-s/?@AA DBCCC\A!#E.44q8K!r   )abcr)   cryptography.hazmat.primitivesr   *cryptography.hazmat.primitives._asymmetricr   )cryptography.hazmat.primitives.asymmetricr   r   r   r   r   r   r-   ABCMetar   r:   r*   r2   r!   rG   r   r   r   <module>rM      s   


  1 1 1 1 1 1      : 9 9 9 9 9        ' ' ' ' ' ' ' '! ! ! ! ! ! ! !* * * * * * * *( ( ( ( (
 ( ( (8       "% % % % %CK % % % %$ $ $ $ $3 $ $ $
	=	>
(
 	
 
 
 
 
 
r   