U
    l5{i#
  ã                   @  s¢   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dS )é    )Úannotations)ÚBlockCipherAlgorithmÚCipherAlgorithmÚ_verify_key_sizec                	   @  sH   e Zd ZdZedddddddd	gƒZd
dœdd„Zeddœdd„ƒZdS )ÚARC4ZRC4é(   é8   é@   éP   é€   é    éÀ   é   Úbytes©Úkeyc                 C  s   t | |ƒ| _d S ©N©r   r   ©Úselfr   © r   úS/tmp/pip-unpacked-wheel-6hw_jadn/cryptography/hazmat/decrepit/ciphers/algorithms.pyÚ__init__   s    zARC4.__init__Úint©Úreturnc                 C  s   t | jƒd S ©Né   ©Úlenr   ©r   r   r   r   Úkey_size   s    zARC4.key_sizeN)	Ú__name__Ú
__module__Ú__qualname__ÚnameÚ	frozensetÚ	key_sizesr   Úpropertyr!   r   r   r   r   r      s
   r   c                   @  sB   e Zd ZdZdZedddgƒZddœdd„Zed	d
œdd„ƒZ	dS )Ú	TripleDESZ3DESr	   r   r   r   r   c                 C  sF   t |ƒdkr||| 7 }nt |ƒdkr6||d d… 7 }t| |ƒ| _d S )Nr   é   )r   r   r   r   r   r   r   r      s
    zTripleDES.__init__r   r   c                 C  s   t | jƒd S r   r   r    r   r   r   r!   &   s    zTripleDES.key_sizeN©
r"   r#   r$   r%   Ú
block_sizer&   r'   r   r(   r!   r   r   r   r   r)      s   r)   c                   @  s   e Zd ZdZdS )Ú_DESr	   N)r"   r#   r$   r!   r   r   r   r   r-   ,   s   r-   c                   @  sD   e Zd Zd ZdZeedddƒƒZddœdd„Ze	d	d
œdd„ƒZ
dS )ÚBlowfishr	   é    iÁ  r   r   r   c                 C  s   t | |ƒ| _d S r   r   r   r   r   r   r   5   s    zBlowfish.__init__r   r   c                 C  s   t | jƒd S r   r   r    r   r   r   r!   8   s    zBlowfish.key_sizeN©r"   r#   r$   r%   r,   r&   Úranger'   r   r(   r!   r   r   r   r   r.   0   s   r.   c                   @  sD   e Zd Zd ZdZeedddƒƒZddœdd„Ze	d	d
œdd„ƒZ
dS )ÚCAST5r	   r   é�   r   r   r   c                 C  s   t | |ƒ| _d S r   r   r   r   r   r   r   B   s    zCAST5.__init__r   r   c                 C  s   t | jƒd S r   r   r    r   r   r   r!   E   s    zCAST5.key_sizeNr0   r   r   r   r   r2   =   s   r2   c                   @  s>   e Zd Zd ZdZedgƒZddœdd„Zeddœdd	„ƒZ	d
S )ÚSEEDr   r   r   c                 C  s   t | |ƒ| _d S r   r   r   r   r   r   r   O   s    zSEED.__init__r   r   c                 C  s   t | jƒd S r   r   r    r   r   r   r!   R   s    zSEED.key_sizeNr+   r   r   r   r   r4   J   s   
r4   c                   @  s>   e Zd Zd ZdZedgƒZddœdd„Zeddœd	d
„ƒZ	dS )ÚIDEAr	   r   r   r   c                 C  s   t | |ƒ| _d S r   r   r   r   r   r   r   \   s    zIDEA.__init__r   r   c                 C  s   t | jƒd S r   r   r    r   r   r   r!   _   s    zIDEA.key_sizeNr+   r   r   r   r   r5   W   s   
r5   c                   @  s>   e Zd Zd ZdZedgƒZddœdd„Zeddœd	d
„ƒZ	dS )ÚRC2r	   r   r   r   c                 C  s   t | |ƒ| _d S r   r   r   r   r   r   r   k   s    zRC2.__init__r   r   c                 C  s   t | jƒd S r   r   r    r   r   r   r!   n   s    zRC2.key_sizeNr+   r   r   r   r   r6   f   s   
r6   N)Ú
__future__r   Z/cryptography.hazmat.primitives._cipheralgorithmr   r   r   r   r)   r-   r.   r2   r4   r5   r6   r   r   r   r   Ú<module>   s   