Your IP : 3.138.134.247


Current Path : /opt/alt/python38/lib64/python3.8/__pycache__/
Upload File :
Current File : //opt/alt/python38/lib64/python3.8/__pycache__/hmac.cpython-38.opt-2.pyc

U

i�f��@s�ddlZddlmZzddlZWnek
r<dZdZYnXe	ej
�ZddlZedd�e
d�D��Zedd�e
d�D��ZdZGdd�d�Zdd
d�Zdd
�ZdS)�N)�_compare_digestccs|]}|dAVqdS)�\N���.0�xrr�)/opt/alt/python38/lib64/python3.8/hmac.py�	<genexpr>sr	�ccs|]}|dAVqdS)�6Nrrrrrr	sc@sNeZdZdZddd�Zedd��Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�ZdS)�HMAC�@N�csFt|ttf�s tdt|�j���s,td��t��r<�|_n,t�t�rXd
�fdd�	|_nd�fdd�	|_|��|_	|��|_
|j
j|_t|j
d�r�|j
j
}|dkr�t�d	||jftd
�|j}nt�d|jtd
�|j}||_
t|�|k�r�|�|���}|�|d�}|j	�|�t��|j
�|�t��|dk	�rB|�|�dS)Nz,key: expected bytes or bytearray, but got %rz'Missing required parameter 'digestmod'.�cst��|�S�N��_hashlib�new��d��	digestmodrr�<lambda>8rzHMAC.__init__.<locals>.<lambda>cs
��|�Sr�rrrrrr:r�
block_size�z:block_size of %d seems too small; using our default of %d.�z<No block_size attribute on given digest object; Assuming %d.�)r)r)�
isinstance�bytes�	bytearray�	TypeError�type�__name__�callable�digest_cons�str�outer�inner�digest_size�hasattrr�	_warnings�warn�	blocksize�RuntimeWarning�len�digest�ljust�update�	translate�trans_5C�trans_36)�self�key�msgrr-rrr�__init__!sJ



����
z
HMAC.__init__cCsd|jjS)Nzhmac-)r(�name)r6rrrr:Zsz	HMAC.namecCs|j�|�dSr)r(r2)r6r8rrrr2^szHMAC.updatecCs:|j�|j�}|j|_|j|_|j��|_|j��|_|Sr)�	__class__�__new__r%r)r(�copyr')r6�otherrrrr=bsz	HMAC.copycCs|j��}|�|j���|Sr)r'r=r2r(r0�r6�hrrr�_currentos
z
HMAC._currentcCs|��}|��Sr)rAr0r?rrrr0xszHMAC.digestcCs|��}|��Sr)rA�	hexdigestr?rrrrB�szHMAC.hexdigest)Nr)r#�
__module__�__qualname__r-r9�propertyr:r2r=rAr0rBrrrrrs
9

	
rrcCst|||�Sr)r)r7r8rrrrr�srcs�tdk	r(t�t�r(�tkr(t�||��St��r6�}n(t�t�rPd�fdd�	}nd	�fdd�	}|�}|�}t|dd�}t|�|kr�||���}|d|t|�}|�	|�
t��|�	|�
t��|�	|�|�	|���|��S)
Nrcst��|�Srrr�r0rrr�rzdigest.<locals>.<lambda>cs
��|�SrrrrFrrr�rrr
r)r)r)
�_hashopensslrr&�_openssl_md_methsZhmac_digestr$�getattrr/r0r2r3r5r4)r7r8r0r%r(r'r-rrFrr0�s,	��

r0)Nr)�warningsr+�	_operatorrZcompare_digestrrG�ImportErrorrH�	frozensetZopenssl_md_meth_namesZhashlibr�ranger4r5r)rrr0rrrr�<module>s

n


?>