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__/ed25519.cpython-39.pyc
a

�,�h �@snddlZddlmZddlmZddlmZmZmZm	Z	ej
rJddlmZGdd�de�Z
Gdd	�d	e�ZdS)
�N)�
exceptions)�
serialization)�Ed25519PrivateKey�Ed25519PublicKey�_ED25519_KEY_SIZE�_ED25519_SIG_SIZE)�Backendc@sPeZdZdd�dd�Zejejed�dd�Zed�d	d
�Z	eedd�d
d�Z
dS)�_Ed25519PublicKeyr��backendcCs||_||_dS�N��_backend�	_evp_pkey��selfrZevp_pkey�r�_/opt/nydus/tmp/pip-target-wkfpz8uv/lib64/python/cryptography/hazmat/backends/openssl/ed25519.py�__init__sz_Ed25519PublicKey.__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_bytesrZ_public_key_bytesr)rrrrrr�public_bytess
�
�
�
���z_Ed25519PublicKey.public_bytes�rcCsp|jj�dt�}|jj�dt�}|jj�|j||�}|j�|dk�|j�|dtk�|jj�|t�dd�S�Nzunsigned char []�size_t *�r)	r�_ffi�newr�_lib�EVP_PKEY_get_raw_public_keyr�openssl_assert�buffer�r�buf�buflen�resrrrr0s�z#_Ed25519PublicKey._raw_public_bytesN)�	signature�datarcCs�|jj��}|j�||jjjk�|jj�||jjj�}|jj�||jjj|jjj|jjj|j	�}|j�|dk�|jj�
||t|�|t|��}|dkr�|j��t
j�dS)Nr!)rr$�EVP_MD_CTX_newr&r"�NULL�gc�EVP_MD_CTX_freeZEVP_DigestVerifyInitrZEVP_DigestVerify�lenZ_consume_errorsrZInvalidSignature)rr,r-�
evp_md_ctxr+rrr�verify:s&
���
z_Ed25519PublicKey.verify)�__name__�
__module__�__qualname__rrrr�bytesrrr4rrrrr	s�
r	c@s`eZdZdd�dd�Zed�dd�Zeed�d	d
�Zej	ej
ejed�dd
�Zed�dd�Z
dS)�_Ed25519PrivateKeyrr
cCs||_||_dSrr
rrrrrQsz_Ed25519PrivateKey.__init__rcCsz|jj�dt�}|jj�dt�}|jj�|j||�}|j�|dk�|j�|dtk�|jj�|�dd�}|j�	|�Sr)
rr"r#rr$r%rr&r'Zed25519_load_public_bytes)rr)r*r+rrrr�
public_keyUs�z_Ed25519PrivateKey.public_key)r-rcCs�|jj��}|j�||jjjk�|jj�||jjj�}|jj�||jjj|jjj|jjj|j	�}|j�|dk�|jj�
dt�}|jj�
dt|��}|jj�
||||t|��}|j�|dk�|j�|dtk�|jj�||d�dd�S)Nr!zunsigned char[]r r)rr$r.r&r"r/r0r1ZEVP_DigestSignInitrr#rr2ZEVP_DigestSignr')rr-r3r+r)r*rrr�sign`s*
���z_Ed25519PrivateKey.sign)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�
PrivateFormat�
isinstanceZNoEncryptionr�_raw_private_bytesrZ_private_key_bytesr)rrrr<rrr�
private_bytesws&
�
�
�
�����z _Ed25519PrivateKey.private_bytescCsp|jj�dt�}|jj�dt�}|jj�|j||�}|j�|dk�|j�|dtk�|jj�|t�dd�Sr)	rr"r#rr$ZEVP_PKEY_get_raw_private_keyrr&r'r(rrrr?�s�z%_Ed25519PrivateKey._raw_private_bytesN)r5r6r7rrr:r8r;rrr=ZKeySerializationEncryptionr@r?rrrrr9Ps�r9)�typingZcryptographyrZcryptography.hazmat.primitivesrZ1cryptography.hazmat.primitives.asymmetric.ed25519rrrr�
TYPE_CHECKINGZ,cryptography.hazmat.backends.openssl.backendrr	r9rrrr�<module>s<