Uname : Linux serv1.rebootns.com 5.14.0-570.62.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Nov 11 10:10:59 EST 2025 x86_64
Soft : LiteSpeed
Ip : 139.99.125.122
Port : 443
~
/
usr
/
lib64
/
python3.9
/
site-packages
/
cryptography
/
hazmat
/
backends
/
openssl
/
__pycache__
[ HOME ]
Exec
Submit
cmac.cpython-39.pyc
a �a � @ sL d dl mZ d dlmZmZmZ d dlmZ d dlm Z G dd� de �ZdS )� )�utils)�InvalidSignature�UnsupportedAlgorithm�_Reasons)� constant_time)�CBCc @ s\ e Zd Zddd�Ze�d�Zedd�dd�Zed�d d �Z d d�dd�Z edd �dd�ZdS )�_CMACContextNc C s� |� |�stdtj��|| _|j| _|| _|jd | _ |d u r�| jj }|t|�tf }|| j|t�}| jj �� }| j�|| jjjk� | jj�|| jj j�}| jj�| j�}| jj �||t| j�|| jjj�}| j�|dk� || _d S )Nz#This backend does not support CMAC.� � )Zcmac_algorithm_supportedr r ZUNSUPPORTED_CIPHER�_backend�keyZ_key� _algorithmZ block_size�_output_lengthZ_cipher_registry�typer �_lib�CMAC_CTX_new�openssl_assert�_ffiZNULL�gc� CMAC_CTX_freeZfrom_bufferZ CMAC_Init�len�_ctx) �selfZbackend� algorithm�ctx�registryZadapterZ evp_cipherZkey_ptr�res� r �O/usr/lib64/python3.9/site-packages/cryptography/hazmat/backends/openssl/cmac.py�__init__ s4 ��z_CMACContext.__init__r )�data�returnc C s, | j j�| j|t|��}| j �|dk� d S )Nr )r r ZCMAC_Updater r r )r r r r r r �update6 s z_CMACContext.update)r! c C sd | j j�d| j�}| j j�d| j�}| j j�| j||�}| j �|dk� d | _| j j�|�d d � S )Nzunsigned char[]zsize_t *r ) r r �newr r Z CMAC_Finalr r �buffer)r �buf�lengthr r r r �finalize: s z_CMACContext.finalizec C sV | j j�� }| j j�|| j jj�}| j j�|| j�}| j �|dk� t | j | j |d�S )Nr )r )r r r r r r Z CMAC_CTX_copyr r r r )r Z copied_ctxr r r r �copyD s �z_CMACContext.copy)� signaturer! c C s | � � }t�||�std��d S )NzSignature did not match digest.)r'