
    _f                    f   d dl mZ d dlmZ d dlmZmZ d(d	Z G d
 de          Z G d de          Z	 G d de          Z
 G d de          Z G d de          Z G d de          ZeZ ej        eedej        d            G d de          ZeZ ej        eedej        d            G d de          Z G d de          ZeZ ej        eedej        d            G d  d!e          ZeZ ej        eed"ej        d!            G d# d$e          Z G d% d&e          Zd'S ))    )annotations)utils)BlockCipherAlgorithmCipherAlgorithm	algorithmr   keybytesreturnc                    t          j        d|           t          |          dz  | j        vr8t	          d                    t          |          dz  | j                            |S )Nr      zInvalid key size ({}) for {}.)r   _check_byteslikelen	key_sizes
ValueErrorformatname)r   r   s     c/var/www/html/env/lib/python3.11/site-packages/cryptography/hazmat/primitives/ciphers/algorithms.py_verify_key_sizer      sl    	5#&&& 3xx!|9...+22C1in 
 
 	

 J    c                  P    e Zd Zd ZdZ eg d          Zd
dZedd            Z	d	S )AES   )r         i   r   r	   c                0    t          | |          | _        d S Nr   r   selfr   s     r   __init__zAES.__init__"       #D#..r   r
   intc                0    t          | j                  dz  S Nr   r   r   r   s    r   key_sizezAES.key_size%       48}}q  r   Nr   r	   r
   r"   
__name__
__module____qualname__r   
block_size	frozensetr   r    propertyr'    r   r   r   r      sh        DJ	...//I/ / / / ! ! ! X! ! !r   r   c                  :    e Zd ZdZdZ edg          ZdZddZdS )AES128r   r   r   r	   c                0    t          | |          | _        d S r   r   r   s     r   r    zAES128.__init__0   r!   r   Nr)   	r,   r-   r.   r   r/   r0   r   r'   r    r2   r   r   r4   r4   *   H        DJ	3%  IH/ / / / / /r   r4   c                  :    e Zd ZdZdZ edg          ZdZddZdS )	AES256r   r   r   r   r	   c                0    t          | |          | _        d S r   r   r   s     r   r    zAES256.__init__:   r!   r   Nr)   r6   r2   r   r   r9   r9   4   r7   r   r9   c                  P    e Zd ZdZdZ eg d          ZddZedd	            Z	d
S )Camelliacamelliar   )r   r   r   r   r	   c                0    t          | |          | _        d S r   r   r   s     r   r    zCamellia.__init__C   r!   r   r
   r"   c                0    t          | j                  dz  S r$   r%   r&   s    r   r'   zCamellia.key_sizeF   r(   r   Nr)   r*   r+   r2   r   r   r<   r<   >   se        DJ	///**I/ / / / ! ! ! X! ! !r   r<   c                  P    e Zd ZdZdZ eg d          ZddZedd	            Z	d
S )	TripleDES3DES@   )rC   r   r   r   r	   c                    t          |          dk    r	|||z   z  }n t          |          dk    r||d d         z  }t          | |          | _        d S )Nr      )r   r   r   r   s     r   r    zTripleDES.__init__P   sV    s88q==39CCXX^^3rr7NC#D#..r   r
   r"   c                0    t          | j                  dz  S r$   r%   r&   s    r   r'   zTripleDES.key_sizeW   r(   r   Nr)   r*   r+   r2   r   r   rA   rA   K   se        DJ	...))I/ / / / ! ! ! X! ! !r   rA   c                  b    e Zd Zd ZdZ e eddd                    ZddZe	dd
            Z
dS )BlowfishrC       i  r   r   r	   c                0    t          | |          | _        d S r   r   r   s     r   r    zBlowfish.__init__a   r!   r   r
   r"   c                0    t          | j                  dz  S r$   r%   r&   s    r   r'   zBlowfish.key_sized   r(   r   Nr)   r*   r,   r-   r.   r   r/   r0   ranger   r    r1   r'   r2   r   r   rH   rH   \   so        DJ	%%C++,,I/ / / / ! ! ! X! ! !r   rH   zBlowfish has been deprecated)r   c                  b    e Zd Zd ZdZ e eddd                    ZddZe	dd
            Z
dS )CAST5rC   (      r   r   r	   c                0    t          | |          | _        d S r   r   r   s     r   r    zCAST5.__init__x   r!   r   r
   r"   c                0    t          | j                  dz  S r$   r%   r&   s    r   r'   zCAST5.key_size{   r(   r   Nr)   r*   rL   r2   r   r   rO   rO   s   so        DJ	%%C++,,I/ / / / ! ! ! X! ! !r   rO   zCAST5 has been deprecatedc                  L    e Zd ZdZ eg d          Zd
dZedd            Zd	S )ARC4RC4)rP   8   rC   P   r      r   r   r   r	   c                0    t          | |          | _        d S r   r   r   s     r   r    zARC4.__init__   r!   r   r
   r"   c                0    t          | j                  dz  S r$   r%   r&   s    r   r'   zARC4.key_size   r(   r   Nr)   r*   )	r,   r-   r.   r   r0   r   r    r1   r'   r2   r   r   rU   rU      sc        D	>>>??I/ / / / ! ! ! X! ! !r   rU   c                  N    e Zd Zd ZdZ edg          Zd
dZedd            Z	d	S )IDEArC   r   r   r	   c                0    t          | |          | _        d S r   r   r   s     r   r    zIDEA.__init__   r!   r   r
   r"   c                0    t          | j                  dz  S r$   r%   r&   s    r   r'   zIDEA.key_size   r(   r   Nr)   r*   r+   r2   r   r   r]   r]      sc        DJ	3%  I/ / / / ! ! ! X! ! !r   r]   zIDEA has been deprecatedc                  N    e Zd Zd ZdZ edg          Zd	dZed
d            Z	dS )SEEDr   r   r	   c                0    t          | |          | _        d S r   r   r   s     r   r    zSEED.__init__   r!   r   r
   r"   c                0    t          | j                  dz  S r$   r%   r&   s    r   r'   zSEED.key_size   r(   r   Nr)   r*   r+   r2   r   r   ra   ra      sc        DJ	3%  I/ / / / ! ! ! X! ! !r   ra   zSEED has been deprecatedc                  b    e Zd Zd Z edg          ZddZedd            Zedd	            Z	d
S )ChaCha20r   r   r	   noncec                    t          | |          | _        t          j        d|           t	          |          dk    rt          d          || _        d S )Nrf   rE   z!nonce must be 128-bits (16 bytes))r   r   r   r   r   r   _nonce)r   r   rf   s      r   r    zChaCha20.__init__   sQ    #D#..w...u::@AAAr   r
   c                    | j         S r   )rh   r&   s    r   rf   zChaCha20.nonce   s
    {r   r"   c                0    t          | j                  dz  S r$   r%   r&   s    r   r'   zChaCha20.key_size   r(   r   N)r   r	   rf   r	   )r
   r	   r*   )
r,   r-   r.   r   r0   r   r    r1   rf   r'   r2   r   r   re   re      s~        D	3%  I       X ! ! ! X! ! !r   re   c                  N    e Zd Zd ZdZ edg          Zd	dZed
d            Z	dS )SM4r   r   r	   c                0    t          | |          | _        d S r   r   r   s     r   r    zSM4.__init__   r!   r   r
   r"   c                0    t          | j                  dz  S r$   r%   r&   s    r   r'   zSM4.key_size   r(   r   Nr)   r*   r+   r2   r   r   rl   rl      sc        DJ	3%  I/ / / / ! ! ! X! ! !r   rl   N)r   r   r   r	   r
   r	   )
__future__r   cryptographyr   &cryptography.hazmat.primitives.ciphersr   r   r   r   r4   r9   r<   rA   rH   _BlowfishInternal
deprecatedr,   DeprecatedIn37rO   _CAST5InternalrU   r]   _IDEAInternalra   _SEEDInternalre   rl   r2   r   r   <module>rx      sH  
 # " " " " "                ! ! ! ! !
 ! ! !/ / / / /! / / // / / / /! / / /
! 
! 
! 
! 
!# 
! 
! 
!! ! ! ! !$ ! ! !"
! 
! 
! 
! 
!# 
! 
! 
!    "		   
! 
! 
! 
! 
!  
! 
! 
!   			   	! 	! 	! 	! 	!? 	! 	! 	!
! 
! 
! 
! 
! 
! 
! 
!   		   
! 
! 
! 
! 
! 
! 
! 
!   		   ! ! ! ! ! ! ! !,
! 
! 
! 
! 
!
 
! 
! 
! 
! 
!r   