o
    ™¨Êhw  ã                   @   s\   d dl mZmZmZ d dlZd dlmZ d dlmZ d dl	m
Z
 dd„ Zdd	„ Zd
d„ ZdS )é    )Úabsolute_importÚdivisionÚprint_functionN)Úutils)Úhashes)Ú	Prehashedc                 C   sN   t |tƒst || ¡}| |¡ | ¡ }n|j}t|ƒ|jkr#t	dƒ‚||fS )NzNThe provided data must be the same length as the hash algorithm's digest size.)
Ú
isinstancer   r   ÚHashÚupdateÚfinalizeÚ
_algorithmÚlenÚdigest_sizeÚ
ValueError)ÚbackendÚdataÚ	algorithmÚhash_ctx© r   ú\/var/www/html/env/lib/python3.10/site-packages/cryptography/hazmat/backends/openssl/utils.pyÚ_calculate_digest_and_algorithm   s   


ÿr   c                 C   s   t | tƒr	tdƒ‚d S )NzfPrehashed is only supported in the sign and verify methods. It cannot be used with signer or verifier.)r   r   Ú	TypeError)Úsignature_algorithmr   r   r   Ú_check_not_prehashed   s
   
ÿÿr   c                   C   s   t jdtjdd� d S )NzMsigner and verifier have been deprecated. Please use sign and verify instead.é   )Ú
stacklevel)ÚwarningsÚwarnr   ÚPersistentlyDeprecatedr   r   r   r   Ú_warn_sign_verify_deprecated'   s
   
ür   )Ú
__future__r   r   r   r   Úcryptographyr   Úcryptography.hazmat.primitivesr   Ú/cryptography.hazmat.primitives.asymmetric.utilsr   r   r   r   r   r   r   r   Ú<module>   s   