Your IP : 18.226.214.1


Current Path : /opt/alt/python312/lib64/python3.12/__pycache__/
Upload File :
Current File : //opt/alt/python312/lib64/python3.12/__pycache__/hmac.cpython-312.opt-2.pyc

�

�Q�f$���	ddlZ	ddlZejZeej�ZddlZed�e
d�D��Zed�e
d�D��ZdZGd�d�Zd
d�Zd	�Zy#e$r
dZdZddl	m
ZY�SwxYw)�N)�_compare_digestc#�&K�|]	}|dz���y�w)�\N���.0�xs  �+/opt/alt/python312/lib64/python3.12/hmac.py�	<genexpr>r�����0�Z��!�d�(�Z����c#�&K�|]	}|dz���y�w)�6Nrrs  r
rrrr
c�X�eZdZ	dZdZd
d�Zd�Zd�Zed��Z	d�Z
d	�Zd
�Zd�Z
d�Zy)�HMAC�@)�_hmac�_inner�_outer�
block_size�digest_sizeNc�n�	t|ttf�s!tdt	|�j
z��|std��tr+t|ttf�r	|j|||�y|j|||�y#tj$r|j|||�YywxYw)Nz,key: expected bytes or bytearray, but got %rz&Missing required argument 'digestmod'.)�
isinstance�bytes�	bytearray�	TypeError�type�__name__�_hashopenssl�str�	_functype�
_init_hmac�UnsupportedDigestmodError�	_init_old��self�key�msg�	digestmods    r
�__init__z
HMAC.__init__&s���	��#��y�1�2��J�T�RU�Y�M_�M_�_�`�`���D�E�E��J�y�3�	�2B�C�
4�����S�)�4�
�N�N�3��Y�/�� �9�9�
4����s�C��3�
4�s�#B�&B4�3B4c��tj|||��|_|jj|_|jj|_y)N)r*)r �hmac_newrrrr&s    r
r#zHMAC._init_hmacBs;��!�*�*�3��y�I��
��:�:�1�1����*�*�/�/���c�b��t��r�}nt�t�rd	�fd�	}nd	�fd�	}d|_|�|_|�|_|j
j|_t|j
d�rR|j
j}|dkrktjd||jfztd�|j}n4tjd|jztd�|j}t|�|kDr||�j�}||_|j|d�}|jj!|j#t$��|j
j!|j#t&��|�|j!|�yy)
Nc�0��tj�|�S�N��_hashlib�new��dr*s �r
�<lambda>z HMAC._init_old.<locals>.<lambda>Ks������Y��(Br.c�&���j|�Sr1�r4r5s �r
r7z HMAC._init_old.<locals>.<lambda>Ms���	�
�
�a�(8r.r�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.)�callablerr!rrrr�hasattrr�	_warnings�warn�	blocksize�RuntimeWarning�len�digest�ljust�update�	translate�trans_5C�trans_36)r'r(r)r*�digest_consrBs   `  r
r%zHMAC._init_oldGsW����I��#�K�
�	�3�
'�B�K�8�K���
�!�m���!�m����;�;�2�2����4�;�;��-����.�.�I��2�~���� 0�3<�d�n�n�2M� N�-�q�2�!�N�N�	��N�N�*�-1�^�^�=�)�1�
.����I��s�8�i���c�"�)�)�+�C�$����i�i�	�5�)�������3�=�=��2�3������3�=�=��2�3��?��K�K���r.c�x�|jr|jjSd|jj��S)Nzhmac-)r�namer)r's r
rMz	HMAC.namens/���:�:��:�:�?�?�"��4�;�;�+�+�,�-�-r.c�\�	|jxs|j}|j|�yr1)rrrG)r'r)�insts   r
rGzHMAC.updateus#��:��z�z�(�T�[�[�����C�r.c�t�	|jj|j�}|j|_|jr/|jj	�|_dx|_|_|Sd|_|j
j	�|_|jj	�|_|Sr1)�	__class__�__new__rr�copyrr)r'�others  r
rSz	HMAC.copyzs���	�
���&�&�t�~�~�6�� �,�,����:�:��*�*�/�/�+�E�K�*.�.�E�L�5�<�
���E�K��;�;�+�+�-�E�L��;�;�+�+�-�E�L��r.c��	|jr|jS|jj�}|j|jj��|Sr1)rrrSrGrrE�r'�hs  r
�_currentz
HMAC._current�sJ��	��:�:��:�:����� � �"�A�
�H�H�T�[�[�'�'�)�*��Hr.c�D�	|j�}|j�Sr1)rXrErVs  r
rEzHMAC.digest�s ��	�
�M�M�O���x�x�z�r.c�D�	|j�}|j�Sr1)rX�	hexdigestrVs  r
r[zHMAC.hexdigest�s��	��M�M�O���{�{�}�r.�N�)r�
__module__�__qualname__rB�	__slots__r+r#r%�propertyrMrGrSrXrEr[rr.r
rrsR����I��I�0�80�
%�N�.��.��
�"
��r.rc��	t|||�Sr1)r)r(r)r*s   r
r4r4�s��� ��S�)�$�$r.c���	t�.t�ttf�r	tj||��St
��r�}nt�t�rd�fd�	}nd�fd�	}|�}|�}t|dd�}t|�|kDr||�j�}|d|t|�z
zz}|j|jt��|j|jt��|j|�|j|j��|j�S#tj
$rY��wxYw)Nc�0��tj�|�Sr1r2�r6rEs �r
r7zdigest.<locals>.<lambda>�s���H�L�L���$;r.c�&���j|�Sr1r9res �r
r7zdigest.<locals>.<lambda>�s
���F�J�J�q�Mr.rrr<r=)r rr!r"�hmac_digestr$r>�getattrrDrErGrHrJrI)r(r)rErK�inner�outerrBs  `    r
rErE�s������J�v��Y�7G�$H�	��+�+�C��f�=�=������	�F�C�	 �;��1���M�E��M�E���|�R�0�I�
�3�x�)���#��%�%�'��

��9�s�3�x�/�0�
0�C�	�L�L����x�(�)�	�L�L����x�(�)�	�L�L���	�L�L����� ��<�<�>���)�5�5�	��	�s�D=�=E�Er\)�warningsr@r3r �compare_digestr�openssl_sha256r"�ImportError�	_operatorr�hashlibr�rangerIrJrrr4rErr.r
�<module>rrs����
�2�#�"�0�0�N��\�0�0�1�I���0�U�3�Z�0�0���0�U�3�Z�0�0����J�J�X%�( ��e�<��L��I�;�<�s�A+�+A=�<A=

?>