HEX
Server: Apache
System: Linux 185.122.168.184.host.secureserver.net 5.14.0-570.60.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Nov 5 05:00:59 EST 2025 x86_64
User: barbeatleanalyti (1024)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //var/opt/nydus/ops/cryptography/hazmat/backends/openssl/__pycache__/x25519.cpython-39.pyc
a

�,�h��@sjddlZddlmZddlmZddlmZmZejrBddl	m
Z
dZGdd�de�ZGd	d
�d
e�Z
dS)�N)�_evp_pkey_derive)�
serialization)�X25519PrivateKey�X25519PublicKey)�Backend� c@s>eZdZdd�dd�Zejejed�dd�Zed�d	d
�Z	dS)�_X25519PublicKeyr��backendcCs||_||_dS�N��_backend�	_evp_pkey��selfr
�evp_pkey�r�^/opt/nydus/tmp/pip-target-wkfpz8uv/lib64/python/cryptography/hazmat/backends/openssl/x25519.py�__init__sz_X25519PublicKey.__init__)�encoding�format�returncCsV|tjjus|tjjur@|tjjus0|tjjur8td��|��S|j�||||jd�S)Nz3When using Raw both encoding and format must be Raw)	r�Encoding�Raw�PublicFormat�
ValueError�_raw_public_bytesr
Z_public_key_bytesr)rrrrrr�public_bytess
�
�
�
���z_X25519PublicKey.public_bytes�rcCs||jj�d�}|jj�|j|�}|j�|dk�|j�|d|jjjk�|jj�|d|jjj	�}|jj�
||�dd�S)Nzunsigned char **rr)r
�_ffi�new�_libZEVP_PKEY_get1_tls_encodedpointr�openssl_assert�NULL�gcZOPENSSL_free�buffer)rZucharpp�res�datarrrr1s��z"_X25519PublicKey._raw_public_bytesN)
�__name__�
__module__�__qualname__rrrr�bytesrrrrrrrs�rc@s`eZdZdd�dd�Zed�dd�Zeed�d	d
�Zej	ej
ejed�dd
�Zed�dd�Z
dS)�_X25519PrivateKeyrr	cCs||_||_dSrrrrrrr?sz_X25519PrivateKey.__init__rcCsz|j��}|jj�||j�}|j�|dk�|jj�||jjj�}|j�||jjjk�|jj�	||jjj
�}t|j|�S)N�)r
�_create_mem_bio_gcr!Zi2d_PUBKEY_biorr"Zd2i_PUBKEY_biorr#r$Z
EVP_PKEY_freer)r�bior&rrrr�
public_keyCs

�
�z_X25519PrivateKey.public_key)�peer_public_keyrcCs"t|t�std��t|j|j|�S)Nz(peer_public_key must be X25519PublicKey.)�
isinstancer�	TypeErrorrr
r)rr1rrr�exchangePs
z_X25519PrivateKey.exchange)rr�encryption_algorithmrcCsd|tjjus|tjjurL|tjjus<|tjjus<t|tj�sDtd��|��S|j	�
|||||jd�S)NzcWhen using Raw both encoding and format must be Raw and encryption_algorithm must be NoEncryption())rrrr�
PrivateFormatr2ZNoEncryptionr�_raw_private_bytesr
Z_private_key_bytesr)rrrr5rrr�
private_bytesVs&
�
�
�
�����z_X25519PrivateKey.private_bytesc	Cs||j��}|jj�||j|jjj|jjjd|jjj|jjj�}|j�|dk�|j�|�}|j�t	|�dk�|t
d�S)Nrr-�0)r
r.r!Zi2d_PKCS8PrivateKey_biorrr#r"Z
_read_mem_bio�len�_X25519_KEY_SIZE)rr/r&Zpkcs8rrrr7rs
�	z$_X25519PrivateKey._raw_private_bytesN)r(r)r*rrr0r+r4rrr6ZKeySerializationEncryptionr8r7rrrrr,>s
�r,)�typingZ*cryptography.hazmat.backends.openssl.utilsrZcryptography.hazmat.primitivesrZ0cryptography.hazmat.primitives.asymmetric.x25519rr�
TYPE_CHECKINGZ,cryptography.hazmat.backends.openssl.backendrr;rr,rrrr�<module>s)