o
    <‘ðiî  ã                   @  sÆ   d dl mZ d dlZd dlmZ d dlmZmZmZ G dd„ deƒZ	G dd„ deƒZ
G d	d
„ d
ƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZdS )é    )ÚannotationsN)Úutils)ÚBlockCipherAlgorithmÚCipherAlgorithmÚ_verify_key_sizec                   @  s4   e Zd ZdZeg d¢ƒZddd„Zedd	d
„ƒZdS )ÚARC4ÚRC4)é(   é8   é@   éP   é€   é    éÀ   é   ÚkeyÚbytesc                 C  ó   t | |ƒ| _d S ©N©r   r   ©Úselfr   © r   ún/root/parts/websockify/install/lib/python3.10/site-packages/cryptography/hazmat/decrepit/ciphers/algorithms.pyÚ__init__   ó   zARC4.__init__ÚreturnÚintc                 C  ó   t | jƒd S ©Né   ©Úlenr   ©r   r   r   r   Úkey_size   ó   zARC4.key_sizeN©r   r   ©r   r   )	Ú__name__Ú
__module__Ú__qualname__ÚnameÚ	frozensetÚ	key_sizesr   Úpropertyr$   r   r   r   r   r      s    
r   c                   @  ó8   e Zd ZdZdZeg d¢ƒZddd„Zedd
d„ƒZ	dS )Ú	TripleDESÚ3DESr   )r   r   r   r   r   c                 C  sj   t |ƒdkrtjdtjdd || | }nt |ƒdkr-tjdtjdd ||d d…  }t| |ƒ| _d S )Nr    z“Single-key TripleDES (8-byte keys) is deprecated and support will be removed in a future release. Use 24-byte keys instead (e.g., key + key + key).é   )Ú
stacklevelé   zTwo-key TripleDES (16-byte keys) is deprecated and support will be removed in a future release. Use 24-byte keys instead (e.g., key + key[:8]).)r"   ÚwarningsÚwarnr   ÚDeprecatedIn47r   r   r   r   r   r   r   "   s   ûûzTripleDES.__init__r   r   c                 C  r   r   r!   r#   r   r   r   r$   7   r%   zTripleDES.key_sizeNr&   r'   ©
r(   r)   r*   r+   Ú
block_sizer,   r-   r   r.   r$   r   r   r   r   r0      s    
r0   c                   @  s   e Zd ZdZdS )Ú_DESr   N)r(   r)   r*   r$   r   r   r   r   r:   =   s    r:   c                   @  ó<   e Zd Zd ZdZeedddƒƒZddd„Ze	ddd„ƒZ
dS )ÚBlowfishr   é    iÁ  r    r   r   c                 C  r   r   r   r   r   r   r   r   F   r   zBlowfish.__init__r   r   c                 C  r   r   r!   r#   r   r   r   r$   I   r%   zBlowfish.key_sizeNr&   r'   ©r(   r)   r*   r+   r9   r,   Úranger-   r   r.   r$   r   r   r   r   r<   A   ó    
r<   c                   @  r;   )ÚCAST5r   r	   é   r    r   r   c                 C  r   r   r   r   r   r   r   r   S   r   zCAST5.__init__r   r   c                 C  r   r   r!   r#   r   r   r   r$   V   r%   zCAST5.key_sizeNr&   r'   r>   r   r   r   r   rA   N   r@   rA   c                   @  s6   e Zd Zd ZdZedgƒZddd„Zeddd	„ƒZ	d
S )ÚSEEDr   r   r   c                 C  r   r   r   r   r   r   r   r   `   r   zSEED.__init__r   r   c                 C  r   r   r!   r#   r   r   r   r$   c   r%   zSEED.key_sizeNr&   r'   r8   r   r   r   r   rC   [   ó    

rC   c                   @  ó6   e Zd Zd ZdZedgƒZddd„Zedd	d
„ƒZ	dS )ÚIDEAr   r   r   r   c                 C  r   r   r   r   r   r   r   r   m   r   zIDEA.__init__r   r   c                 C  r   r   r!   r#   r   r   r   r$   p   r%   zIDEA.key_sizeNr&   r'   r8   r   r   r   r   rF   h   rD   rF   c                   @  r/   )ÚCamelliaÚcamelliar   )r   r   r   r   r   c                 C  r   r   r   r   r   r   r   r   z   r   zCamellia.__init__r   r   c                 C  r   r   r!   r#   r   r   r   r$   }   r%   zCamellia.key_sizeNr&   r'   r8   r   r   r   r   rG   u   s    
rG   c                   @  rE   )ÚRC2r   r   r   r   c                 C  r   r   r   r   r   r   r   r   ‰   r   zRC2.__init__r   r   c                 C  r   r   r!   r#   r   r   r   r$   Œ   r%   zRC2.key_sizeNr&   r'   r8   r   r   r   r   rI   „   rD   rI   )Ú
__future__r   r5   Úcryptographyr   Ú/cryptography.hazmat.primitives._cipheralgorithmr   r   r   r   r0   r:   r<   rA   rC   rF   rG   rI   r   r   r   r   Ú<module>   s    