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__/eddsa.cpython-310.pyc
o

�h��@s\dZddlmZmZmZmZddlmZmZm	Z	m
Z
ddlmZm
Z
ddlmZmZddlmZmZddlmZmZmZdd	lmZmZdd
lmZmZddlmZeeZeeZGdd
�d
e�ZGdd�de�Z Gdd�de�Z!er�ede d�eddde ed�e j"D]Z#ee#d�q�er�ede!d�eddde!ed�e!j"D]	Z#ee#d�q�dSdS)z#EdDSA public key encryption handler�)�Optional�Tuple�Union�cast�)�ASN1DecodeError�ObjectIdentifier�
der_encode�
der_decode)�EdDSAPrivateKey�EdDSAPublicKey)�ed25519_available�ed448_available)�String�	SSHPacket)�OMIT�SSHKey�SSHOpenSSHCertificateV01)�KeyImportError�KeyExportError)�register_public_key_alg�register_certificate_alg)�register_x509_certificate_algc@sveZdZUdZeeefed<dZde	de
fdd�Zdefdd	�Z
ed
eddfdd��Zed
e	defdd��Zed
e	defdd��Zede	dedeefdd��Zede	dedeefdd��Zededefdd��Zededefdd��Zdee	e	ffdd�Zdee	e	ffdd �Zdefd!d"�Zdefd#d$�Z defd%d&�Z!ded'edefd(d)�Z"ded'edede
fd*d+�Z#d,S)-�_EdKeyz'Handler for EdDSA public key encryption�_key��other�returncCs.t|t|��o|jj|jjko|jj|jjkS�N)�
isinstance�typer�public_value�
private_value)�selfr�r$�D/usr/local/CyberPanel/lib/python3.10/site-packages/asyncssh/eddsa.py�__eq__.s
��z
_EdKey.__eq__cCst|jj|jjf�Sr)�hashrr!r"�r#r$r$r%�__hash__6sz_EdKey.__hash__�	algorithmcCs|t�|dd���S)z Generate a new EdDSA private key�N)r�generate)�clsr*r$r$r%r,9sz_EdKey.generate�
key_paramsc	C�Fztt|�\}|t�|jdd�|��WSttfy"td�d�w)zConstruct an EdDSA private keyr+NzInvalid EdDSA private key)r�_PrivateKeyArgsr�	constructr*�	TypeError�
ValueErrorr)r-r.r"r$r$r%�make_privateB��
�z_EdKey.make_privatec	Cr/)zConstruct an EdDSA public keyr+NzInvalid EdDSA public key)r�_PublicKeyArgsrr1r*r2r3r)r-r.r!r$r$r%�make_publicNr5z_EdKey.make_public�
alg_params�datacCs(z	ttt|��fWStyYdSw)z(Decode a PKCS#8 format EdDSA private keyN)r�bytesr
r�r-r8r9r$r$r%�decode_pkcs8_privateZs
�z_EdKey.decode_pkcs8_privatecCs|fS)z'Decode a PKCS#8 format EdDSA public keyr$r;r$r$r%�decode_pkcs8_publicfsz_EdKey.decode_pkcs8_public�packetcCs$|��}|��}|dt|��fS)z&Decode an SSH format EdDSA private keyN)�
get_string�len)r-r>r!r"r$r$r%�decode_ssh_privateosz_EdKey.decode_ssh_privatecCs|��}|fS)z%Decode an SSH format EdDSA public key)r?)r-r>r!r$r$r%�decode_ssh_publicxsz_EdKey.decode_ssh_publiccCs |jjstd��tt|jj�fS)z(Encode a PKCS#8 format EdDSA private key�Key is not private)rr"rrr	r(r$r$r%�encode_pkcs8_private�sz_EdKey.encode_pkcs8_privatecCst|jjfS)z'Encode a PKCS#8 format EdDSA public key)rrr!r(r$r$r%�encode_pkcs8_public��z_EdKey.encode_pkcs8_publiccCs:|jjdur
td��d�t|jj�t|jj|jj�f�S)z&Encode an SSH format EdDSA private keyNrCr)rr"r�joinrr!r(r$r$r%�encode_ssh_private�s��z_EdKey.encode_ssh_privatecCst|jj�S)z%Encode an SSH format EdDSA public key)rrr!r(r$r$r%�encode_ssh_public�rFz_EdKey.encode_ssh_publiccCs|��S)z3Encode EdDSA certificate private key data for agent)rHr(r$r$r%�encode_agent_cert_private�sz _EdKey.encode_agent_cert_private�
sig_algorithmcCs |jjstd��t|j�|��S)z6Compute an SSH-encoded signature of the specified datazPrivate key needed for signing)rr"r3r�sign)r#r9rKr$r$r%�sign_ssh�sz_EdKey.sign_sshcCs|��}|��|j�||�S)z5Verify an SSH-encoded signature of the specified data)r?�	check_endr�verify)r#r9rKr>�sigr$r$r%�
verify_ssh�sz_EdKey.verify_sshN)$�__name__�
__module__�__qualname__�__doc__rrr�__annotations__r*�object�boolr&�intr)�classmethodr:r,rr4r7rr0r<r6r=rrArBrrDrErHrIrJrMrQr$r$r$r%r'sN
����


��rc@�4eZdZdZdZed�ZefZdefZe	e�Z
dS)�_Ed25519Keyz,Handler for Curve25519 public key encryption�ssh-ed25519z1.3.101.112�x509v3-N�rRrSrTrUr*r�	pkcs8_oid�sig_algorithms�x509_algorithms�set�all_sig_algorithmsr$r$r$r%r\��
r\c@r[)�	_Ed448Keyz*Handler for Curve448 public key encryption�	ssh-ed448z1.3.101.113r^Nr_r$r$r$r%rf�rerfr]Ts ssh-ed25519-cert-v01@openssh.comrgsssh-ed448-cert-v01@openssh.comN)$rU�typingrrrr�asn1rrr	r
�cryptorrr
rr>rr�
public_keyrrrrrrrrr:r0r6rr\rfrb�algr$r$r$r%�<module>sB

�
�
�