
    .PhE                    ,   d dl m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dZdS )    )annotationsN)hashes)AsymmetricPadding)rsac                      e Zd ZdZdS )PKCS1v15zEMSA-PKCS1-v1_5N)__name__
__module____qualname__name     q/var/www/html/test/jupyter/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                  z    e Zd ZU  e            Z e            Z e            ZdZ	de
d<   dd	Zedd
            ZdS )PSSzEMSA-PSS(int | _MaxLength | _Auto | _DigestLength_salt_lengthmgfMGFsalt_lengthreturnNonec                    || _         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   c                    | j         S Nr"   r'   s    r   r   zPSS.mgf;   
    yr   N)r   r   r   r   r   r    r   r   )r	   r
   r   r   
MAX_LENGTHr   AUTOr   DIGEST_LENGTHr   __annotations__r(   propertyr   r   r   r   r   r       s|         J577D!MOOMD::::( ( ( ((    X  r   r   c                  J    e Zd ZdZddZedd
            Zedd            ZdS )OAEPzEME-OAEPr   r   	algorithmhashes.HashAlgorithmlabelbytes | Nonec                    t          |t          j                  st          d          || _        || _        || _        d S Nz*Expected instance of hashes.HashAlgorithm.)r#   r   HashAlgorithmr%   r"   
_algorithm_label)r'   r   r6   r8   s       r   r(   zOAEP.__init__C   sB     )V%9:: 	JHIII	#r   r   c                    | j         S r*   )r=   r,   s    r   r6   zOAEP.algorithmP   s
    r   c                    | j         S r*   r+   r,   s    r   r   zOAEP.mgfT   r-   r   N)r   r   r6   r7   r8   r9   )r   r7   r.   )r	   r
   r   r   r(   r3   r6   r   r   r   r   r5   r5   @   sm        D       X    X  r   r5   c                      e Zd ZU ded<   dS )r   r7   r=   N)r	   r
   r   r2   r   r   r   r   r   Y   s         $$$$$$r   r   )	metaclassc                  *    e Zd Z e            ZddZdS )MGF1r6   r7   c                f    t          |t          j                  st          d          || _        d S r;   )r#   r   r<   r%   r=   )r'   r6   s     r   r(   zMGF1.__init__`   s2    )V%9:: 	JHIII#r   N)r6   r7   )r	   r
   r   r   r/   r(   r   r   r   rD   rD   ]   s3        J$ $ $ $ $ $r   rD   key$rsa.RSAPrivateKey | rsa.RSAPublicKeyhash_algorithmr7   r   r$   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)rF   rH   emlenr   s       r   calculate_max_pss_salt_lengthrR   g   sk     cC-s/?@AA DBCCC\A!#E.44q8K!r   )rF   rG   rH   r7   r   r$   )
__future__r   abccryptography.hazmat.primitivesr   *cryptography.hazmat.primitives._asymmetricr   )cryptography.hazmat.primitives.asymmetricr   r   r   r   r   r   r5   ABCMetar   rD   rR   r   r   r   <module>rY      s  
 # " " " " " 



 1 1 1 1 1 1      : 9 9 9 9 9        ' ' ' ' ' ' ' '! ! ! ! ! ! ! !* * * * * * * *    
   @       2% % % % %CK % % % %$ $ $ $ $3 $ $ $
 
 
 
 
 
r   