HEX
Server: LiteSpeed
System: Linux php-prod-1.spaceapp.ru 5.15.0-157-generic #167-Ubuntu SMP Wed Sep 17 21:35:53 UTC 2025 x86_64
User: xnsbb3110 (1041)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //usr/local/CyberPanel/lib64/python3.10/site-packages/asyncssh/__pycache__/mac.cpython-310.pyc
o

�h��@s4UdZddlmZmZmZmZmZmZddlZddl	m
Z
mZmZm
Z
ddlmZmZzddlmZmZdZWneyBd	ZYnwe
eeeeee
efZe
eee
fZe
eeefZd
ZdeZgZeeed<gZ eeed
<iZ!e
eefed<iZ"e
eefed<Gdd�d�Z#Gdd�de#�Z$Gdd�de#�Z%Gdd�de#�Z&dededededede
deddfd d!�Z'deefd"d#�Z(deefd$d%�Z)dedefd&d'�Z*ded(ede#fd)d*�Z+d+ddd	e$d,dffZ,e
ed-fed.<e�re,d/ed0d1de&efdfd2ed0d0de&efdff7Z,e,d3ed4d4de%efdfd5ed6d6de%efdfd7ed8d8de%efdfd9ed0d0de%efd	fd:ed4d;de%efd	fd<ed6d;de%efd	fd=ed8d;de%efd	fd>ed0d;de%efd	ff7Z,e�r�e,d/ed0d1d	e&efdfd2ed0d0d	e&efdff7Z,e,d3d4d4d	e%efdfd5d6d6d	e%efdfd7d8d8d	e%efdfd?d4d4d	e%efdfd@dAdAd	e%efdfdBd0d4d	e%efdfdCdDdDd	e%efdfdEd6d6d	e%efdfd9d0d0d	e%efd	fd:d4d;d	e%efd	fd<d6d;d	e%efd	fd=d8d;d	e%efd	fd>d0d;d	e%efd	ff
7Z,e,D]\Z-Z.Z/Z0Z1Z2Z3e'e-e.e/e0e1e2e3��qdS)Fz#SSH message authentication handlers�)�md5�sha1�sha224�sha256�sha384�sha512N)�Dict�Callable�List�Tuple�)�UInt32�UInt64)�umac64�umac128TFs@openssh.coms-etm�	_mac_algs�_default_mac_algs�_mac_handler�_mac_paramsc@sReZdZdZdedefdd�Zdededefd	d
�Zdedededefdd
�Z	dS)�MACz4Parent class for SSH message authentication handlers�key�	hash_sizecCs||_||_dS�N)�_key�
_hash_size)�selfrr�r�B/usr/local/CyberPanel/lib/python3.10/site-packages/asyncssh/mac.py�__init__5s
zMAC.__init__�seq�packet�returncC�t���!Compute a signature for a message��NotImplementedError�rrr rrr�sign9�zMAC.sign�sigcCr"��!Verify the signature of a messager%�rrr r*rrr�verify>r)z
MAC.verifyN)
�__name__�
__module__�__qualname__�__doc__�bytes�intrr(�boolr.rrrrr2s
rc@s@eZdZdZdededefdd�Zdedededefdd	�Zd
S)�_NullMACz#Null message authentication handlerrr r!cCsdS)r$�rr'rrrr(Gr)z
_NullMAC.signr*cCs|dkS)r,r7rr-rrrr.Lsz_NullMAC.verifyN)	r/r0r1r2r4r3r(r5r.rrrrr6Dsr6c�^eZdZdZdededef�fdd�Zdeded	efd
d�Zdededed	e	fd
d�Z
�ZS)�_HMACz)HMAC-based message authentication handlerrr�hash_algc�t��||�||_dSr)�superr�	_hash_alg)rrrr:��	__class__rrrU�
z_HMAC.__init__rr r!cCs0t|�|}t�|j||j���}|d|j�S)r$N)r
�hmac�newrr=�digestr)rrr �datar*rrrr(Ysz
_HMAC.signr*cC�t�|�||�|�Sr+�rA�compare_digestr(r-rrrr.`�z_HMAC.verify�r/r0r1r2r3r4r	rr(r5r.�
__classcell__rrr>rr9Rs
"r9cr8)�_UMACz)UMAC-based message authentication handlerrr�umac_algcr;r)r<r�	_umac_alg)rrrrLr>rrrir@z_UMAC.__init__rr r!cCs|�|j|t|����Sr#)rMrrrCr'rrrr(msz
_UMAC.signr*cCrEr+rFr-rrrr.rrHz_UMAC.verifyrIrrr>rrKfs
"rK�mac_alg�key_sizer�etm�handler�args�defaultr!cCs<|rt�|�|rt�|�|||ft|<|||ft|<dS)zRegister a MAC algorithmN)r�appendrrr)rNrOrrPrQrRrSrrr�register_mac_algxs

rUcC�tS)zReturn supported MAC algorithms)rrrrr�get_mac_algs�r)rWcCrV)zReturn default MAC algorithms)rrrrr�get_default_mac_algs�r)rXcCst|S)z�Get parameters of a MAC algorithm

       This function returns the key and hash sizes of a MAC algorithm and
       whether or not to compute the MAC before or after encryption.

    )r)rNrrr�get_mac_params�srYrcCs t|\}}}|||g|�R�S)z�Return a MAC handler

       This function returns a MAC object initialized with the specified
       key that can be used for data signing and verification.

    )r)rNrrQrrRrrr�get_mac�srZr7r.�_mac_algs_listsumac-64��sumac-128s
hmac-sha2-256� s
hmac-sha2-512�@s	hmac-sha1�shmac-md5shmac-sha2-256-96�shmac-sha2-512-96shmac-sha1-96shmac-md5-96shmac-sha256-2@ssh.comshmac-sha224@ssh.com�shmac-sha256@ssh.comshmac-sha384@ssh.com�0shmac-sha512@ssh.com)4r2�hashlibrrrrrrrA�typingrr	r
rr r
r�cryptorr�_umac_available�ImportErrorr3r4r5�_MACAlgsArgs�_MACHandler�
_MACParams�_OPENSSH�_ETMr�__annotations__rrrrr6r9rKrUrWrXrYrZr[�_alg�	_key_sizer�_etm�_mac_alg�_args�_defaultrrrr�<module>s� �����
�
���
���
��