Current File : //usr/lib64/python3.9/site-packages/cryptography/hazmat/primitives/__pycache__/hmac.cpython-39.pyc |
a
�a� � @ sB d dl Z d dlmZ d dlmZ d dlmZ G dd� dej�ZdS )� N)�utils)�AlreadyFinalized)�hashesc @ st e Zd Zdeejejd�dd�Ze ejd�dd��Z
edd�d d
�Zd d�dd�Zed�d
d�Z
edd�dd�ZdS )�HMACN)�key� algorithm�backendc C sP t |tj�std��|| _|| _|d u rFddlm} |�|| j �| _
n|| _
d S )Nz*Expected instance of hashes.HashAlgorithm.r )r )�
isinstancer �
HashAlgorithm� TypeError�
_algorithm�_keyZ,cryptography.hazmat.backends.openssl.backendr Zcreate_hmac_ctxr �_ctx)�selfr r r �ctxZossl� r �I/usr/lib64/python3.9/site-packages/cryptography/hazmat/primitives/hmac.py�__init__ s z
HMAC.__init__)�returnc C s | j S )N)r �r r r r r % s zHMAC.algorithm)�datar c C s. | j d u rtd��t�d|� | j �|� d S )N�Context was already finalized.r )r r r Z_check_byteslike�update)r r r r r r ) s
zHMAC.updatec C s* | j d u rtd��t| j| j| j �� d�S )Nr )r )r r r r
r �copyr r r r r / s
�z HMAC.copyc C s&