HEX
Server: Apache
System: Linux scp1.abinfocom.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: confeduphaar (1010)
PHP: 8.1.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //lib/python3/dist-packages/cryptography/hazmat/backends/openssl/__pycache__/utils.cpython-38.pyc
U

�e�]#	�@sdddlmZmZmZddlZddlmZddlmZddl	m
Z
dd�Zdd	�Zd
d�Z
dd
�ZdS)�)�absolute_import�division�print_functionN)�utils)�hashes)�	PrehashedcCs�|j�||jj�}|�||jjk�|j�||jj�}|j�|�}|�|dk�|j�||j	�}|�|dk�|j�
d�}|j�||jj|�}|�|dk�|�|ddk�|j�
d|d�}|j�|||�}|dkr�td��|j�
||d�dd�S)N�zsize_t *rzunsigned char[]z1Null shared key derived from public/private pair.)Z_libZEVP_PKEY_CTX_newZ_ffiZNULLZopenssl_assert�gcZEVP_PKEY_CTX_freeZEVP_PKEY_derive_initZEVP_PKEY_derive_set_peerZ	_evp_pkey�newZEVP_PKEY_derive�
ValueError�buffer)�backendZevp_pkeyZpeer_public_keyZctx�resZkeylenZbuf�r�L/usr/lib/python3/dist-packages/cryptography/hazmat/backends/openssl/utils.py�_evp_pkey_derives*��rcCsNt|t�s*t�||�}|�|�|��}n|j}t|�|jkrFt	d��||fS)NzNThe provided data must be the same length as the hash algorithm's digest size.)
�
isinstancerrZHash�update�finalizeZ
_algorithm�lenZdigest_sizer)r
�data�	algorithmZhash_ctxrrr�_calculate_digest_and_algorithm&s


�rcCst|t�rtd��dS)NzfPrehashed is only supported in the sign and verify methods. It cannot be used with signer or verifier.)rr�	TypeError)Zsignature_algorithmrrr�_check_not_prehashed7s
�rcCstjdtjdd�dS)NzMsigner and verifier have been deprecated. Please use sign and verify instead.�)�
stacklevel)�warnings�warnrZPersistentlyDeprecated2017rrrr�_warn_sign_verify_deprecated?s
�r)Z
__future__rrrrZcryptographyrZcryptography.hazmat.primitivesrZ/cryptography.hazmat.primitives.asymmetric.utilsrrrrrrrrr�<module>s