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: sport3497 (1034)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //usr/local/CyberCP/lib64/python3.10/site-packages/paramiko/__pycache__/kex_group1.cpython-310.pyc
o

�hl�@s�dZddlZddlmZddlmZddlmZmZm	Z	m
Z
ddlmZddl
mZedd	�\ZZd
d�edd	�D�\ZZe	d�ed
ZedZGdd�d�ZdS)z�
Standard SSH key exchange ("kex" if you wanna sound cool).  Diffie-Hellman of
1024 bit key halves, using a known "p" prime and "g" generator.
�N)�sha1)�util)�max_byte�	zero_byte�byte_chr�	byte_mask)�Message)�SSHException�� cCsg|]}t|��qS�)r)�.0�crr�F/usr/local/CyberCP/lib/python3.10/site-packages/paramiko/kex_group1.py�
<listcomp>"sr���c@sLeZdZdZdZdZeZdd�Zdd�Z	dd	�Z
d
d�Zdd
�Zdd�Z
dS)�	KexGroup1lE����8�{3If?�E y�Z�3�V�58n�oP�e�?a-�
�tBL�
�y3W[�<�p�6m5��P��&a�F!�33*�w& �AR�M;L}.�c|&A�@�h\�&&#-D�v�d�����zdiffie-hellman-group1-sha1cCs||_d|_d|_d|_dS)Nr)�	transport�x�e�f)�selfrrrr�__init__1s
zKexGroup1.__init__cCs�|��|jjrt|j|j|j�|_|j�t	�dSt|j|j|j�|_
t�}|�t
�|�|j
�|j�|�|j�t�dS)N)�_generate_xr�server_mode�pow�Gr�Pr�_expect_packet�_MSG_KEXDH_INITrr�add_byte�c_MSG_KEXDH_INIT�	add_mpint�
_send_message�_MSG_KEXDH_REPLY)r�mrrr�	start_kex7s
zKexGroup1.start_kexcCsF|jjr
|tkr
|�|�S|jjs|tkr|�|�Sd}t|�|���)Nz*KexGroup1 asked to handle packet type {:d})rrr"�_parse_kexdh_initr'�_parse_kexdh_replyr	�format)r�ptyper(�msgrrr�
parse_nextFs

zKexGroup1.parse_nextcCsZ	t�d�}t|dd�|dd�}|dd�tkr$|dd�tkr$nqt�|�|_dS)N��rrr)�os�urandomr�b7fffffffffffffff�b0000000000000000r�inflate_longr)r�x_bytesrrrrPs
�zKexGroup1._generate_xcCs�|��}|��|_|jdks|j|jdkrtd��|��}t|j|j|j�}t�}|�	|j
j|j
j|j
j
|j
j�|�|�|�|j�|�|j�|�|�|j
�||�|������|j
�||�|j
��dS)Nr0zServer kex "f" is out of range)�
get_string�	get_mpintrr r	�
get_binaryrrr�addr�
local_version�remote_version�local_kex_init�remote_kex_init�
add_stringr%r�_set_K_H�	hash_algo�asbytes�digest�_verify_key�_activate_outbound)rr(�host_key�sig�K�hmrrrr+as(
�

zKexGroup1._parse_kexdh_replycCs|��|_|jdks|j|jdkrtd��t|j|j|j�}|j����}t	�}|�
|jj|jj|jj
|jj�|�|�|�|j�|�|j�|�|�|�|�����}|j�||�|j���||jj�}t	�}|�t�|�|�|�|j�|�|�|j�|�|j��dS)Nr0zClient kex "e" is out of range)r9rr r	rrr�get_server_keyrCrr;r=r<r?r>r@r%rrBrDrA�
sign_ssh_data�
host_key_typer#�c_MSG_KEXDH_REPLYr&rF)rr(rI�keyrJ�HrHrrrr*zs8
�


�


zKexGroup1._parse_kexdh_initN)�__name__�
__module__�__qualname__r r�namerrBrr)r/rr+r*rrrrr(s
r)�__doc__r2�hashlibr�paramikor�paramiko.commonrrrr�paramiko.messager�paramiko.ssh_exceptionr	�ranger"r'r$rNr4r5rrrrr�<module>s