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

�,�h� �@sddlZddlmZejrVddlmZddlmZmZm	Z	m
Z
mZejeee	e
efZ
dZdZded�dd	�Zed
d�dd
�Zd
eeeejeeed�dd�Zd
edd�dd�Zd
edd�dd�Zd
eed�dd�Zd
deeejeeed�dd�Zd
deeejeeed�dd�ZdS)�N)�
InvalidTag)�Backend��AESCCM�AESGCM�AESOCB3�AESSIV�ChaCha20Poly1305��_AEAD_TYPES)�cipher�returncCs�ddlm}m}m}m}m}t||�r*dSt||�rPdt|j�d�d��	d�St||�rvdt|j�d�d��	d�St||�r�dt|j�dd	�d
��	d�St||�s�J�dt|j�d�d��	d�SdS)Nrrschacha20-poly1305zaes-�z-ccm�asciiz-ocb�z-sivz-gcm)
�+cryptography.hazmat.primitives.ciphers.aeadrrrrr	�
isinstance�len�_key�encode)rrrrrr	�r�\/opt/nydus/tmp/pip-target-wkfpz8uv/lib64/python/cryptography/hazmat/backends/openssl/aead.py�_aead_cipher_names



 rr)�cipher_name�backendcCsj|�d�rH|j�|jj||jj�}|�||jjk�|j�||jj�}n|j�|�}|�||jjk�|S)Ns-siv)	�endswith�_libZEVP_CIPHER_fetch�_ffi�NULL�openssl_assert�gcZEVP_CIPHER_freeZEVP_get_cipherbyname)rr�
evp_cipherrrr�_evp_cipher2s
�r")rr�key�nonce�tag�tag_len�	operationc
Cslt||�}|j��}|j�||jj�}|j�|||jj|jj|jjt|t	k��}	|�
|	dk�|j�|t|��}	|�
|	dk�|j�
||jjt|�|jj�}	|�
|	dk�|tkr�|dus�J�|j�
||jjt|�|�}	|�
|	dk�n4|�d��r|j�
||jj||jj�}	|�
|	dk�|j�|�}
|j�|�}|j�||jj|jj||
t|t	k��}	|�
|	dk�|S)Nrs-ccm)r"rZEVP_CIPHER_CTX_newrr ZEVP_CIPHER_CTX_freeZEVP_CipherInit_exr�int�_ENCRYPTrZEVP_CIPHER_CTX_set_key_lengthr�EVP_CIPHER_CTX_ctrlZEVP_CTRL_AEAD_SET_IVLEN�_DECRYPTZEVP_CTRL_AEAD_SET_TAGr�from_buffer)rrr#r$r%r&r'r!�ctx�resZ	nonce_ptrZkey_ptrrrr�_aead_setupBsX	


����
�r/)r�data_lenr
cCs:|j�d�}|j�||jj||jj|�}|�|dk�dS�N�int *r)r�newr�EVP_CipherUpdaterr)rr-r0Zintptrr.rrr�_set_lengthzs
�r5)r�associated_datar
cCs:|j�d�}|j�||jj||t|��}|�|dk�dSr1)rr3rr4rrr)rr-r6�outlenr.rrr�_process_aad�s
�r8)r�datar
cCsd|j�d�}|j�dt|��}|j�||||t|��}|dkrJ|��t�|j�||d�dd�S)Nr2�unsigned char[]r)rr3rrr4�_consume_errorsr�buffer)rr-r9r7�bufr.rrr�
_process_data�sr>)rrr$r9r6�
tag_lengthr
cCs8ddlm}m}t|�}t|||j|d|t�}	t||�rHt||	t	|��|D]}
t
||	|
�qLt||	|�}|j�
d�}|j�
dd�}
|j�|	|
|�}|�|dk�||j�|
|d�dd�7}|j�
d|�}|j�|	|jj||�}|�|dk�|j�|�dd�}t||��r,|�t	|�dk�||S||SdS)Nr�rrr2r:�)rrrrr/rr)rr5rr8r>rr3r�EVP_CipherFinal_exrr<r*ZEVP_CTRL_AEAD_GET_TAG)rrr$r9r6r?rrrr-�ad�processed_datar7r=r.Ztag_bufr%rrr�_encrypt�s2�
�rEcCs�ddlm}m}t|�|kr t�t||�rD|d|�}||d�}n||d�}|d|�}t|�}	t||	|j|||t	�}
t||�r�t
||
t|��|D]}t||
|�q�t||��r"|j�
d�}|j�
dt|��}
|j�|
|
||t|��}|dk�r|��t�|j�|
|d�dd�}njt||
|�}|j�
d�}|j�
dd�}
|j�|
|
|�}||j�|
|d�dd�7}|dk�r�|��t�|S)Nrr@r2r:r
rA)rrrrrrrr/rr+r5r8rr3rr4r;r<r>rB)rrr$r9r6r?rrr%rr-rCr7r=r.rDrrr�_decrypt�sB
�


rF)�typingZcryptography.exceptionsr�
TYPE_CHECKINGZ,cryptography.hazmat.backends.openssl.backendrrrrrrr	�Unionrr)r+�bytesrr"�Optionalr(r/r5r8r>�ListrErFrrrr�<module>sL��8�0�