
    _f
                    4   d dl mZ 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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     c/var/www/html/env/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                  b    e Zd ZU  e            Z e            Z e            ZdZ	de
d<   dd	Zd
S )PSSzEMSA-PSS3typing.Union[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   N)r   r   r   r   r   r    )r	   r
   r   r   
MAX_LENGTHr   AUTOr   DIGEST_LENGTHr   __annotations__r(   r   r   r   r   r   !   s\         J577D!MOOMDEEEE( ( ( ( ( (r   r   c                      e Zd ZdZd
dZd	S )OAEPzEME-OAEPr   r   	algorithmhashes.HashAlgorithmlabeltyping.Optional[bytes]c                    t          |t          j                  st          d          || _        || _        || _        d S Nz*Expected instance of hashes.HashAlgorithm.)r#   r   HashAlgorithmr%   r"   
_algorithm_label)r'   r   r/   r1   s       r   r(   zOAEP.__init__@   sB     )V%9:: 	JHIII	#r   N)r   r   r/   r0   r1   r2   )r	   r
   r   r   r(   r   r   r   r.   r.   =   s-        D     r   r.   c                      e Zd ZU ded<   dS )r   r0   r6   N)r	   r
   r   r,   r   r   r   r   r   N   s         $$$$$$r   r   )	metaclassc                  *    e Zd Z e            ZddZdS )MGF1r/   r0   c                f    t          |t          j                  st          d          || _        d S r4   )r#   r   r5   r%   r6   )r'   r/   s     r   r(   zMGF1.__init__U   s2    )V%9:: 	JHIII#r   N)r/   r0   )r	   r
   r   r   r)   r(   r   r   r   r;   r;   R   s3        J$ $ $ $ $ $r   r;   key1typing.Union[rsa.RSAPrivateKey, rsa.RSAPublicKey]hash_algorithmr0   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)r=   r?   emlenr   s       r   calculate_max_pss_salt_lengthrI   \   sk     cC-s/?@AA DBCCC\A!#E.44q8K!r   )r=   r>   r?   r0   r   r$   )
__future__r   abctypingcryptography.hazmat.primitivesr   *cryptography.hazmat.primitives._asymmetricr   )cryptography.hazmat.primitives.asymmetricr   r   r   r   r   r   r.   ABCMetar   r;   rI   r   r   r   <module>rQ      s  
 # " " " " " 



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