Файловый менеджер - Редактировать - /opt/imh-python/lib/python3.9/site-packages/Cryptodome/Cipher/__pycache__/AES.cpython-39.pyc
Ðазад
a c�ha% � @ s� d Z ddlZddlmZ ddlmZmZmZmZm Z ddl mZ ddlm Z dZede�Zz"dZe�� rzed e�d d��ZW n ey� Y n0 dd � Zdd� Zdd� ZdZdZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#dS )a� Module's constants for the modes of operation supported with AES: :var MODE_ECB: :ref:`Electronic Code Book (ECB) <ecb_mode>` :var MODE_CBC: :ref:`Cipher-Block Chaining (CBC) <cbc_mode>` :var MODE_CFB: :ref:`Cipher FeedBack (CFB) <cfb_mode>` :var MODE_OFB: :ref:`Output FeedBack (OFB) <ofb_mode>` :var MODE_CTR: :ref:`CounTer Mode (CTR) <ctr_mode>` :var MODE_OPENPGP: :ref:`OpenPGP Mode <openpgp_mode>` :var MODE_CCM: :ref:`Counter with CBC-MAC (CCM) Mode <ccm_mode>` :var MODE_EAX: :ref:`EAX Mode <eax_mode>` :var MODE_GCM: :ref:`Galois Counter Mode (GCM) <gcm_mode>` :var MODE_SIV: :ref:`Syntethic Initialization Vector (SIV) <siv_mode>` :var MODE_OCB: :ref:`Offset Code Book (OCB) <ocb_mode>` � N)�_create_cipher)�load_pycryptodome_raw_lib�VoidPointer�SmartPointer�c_size_t�c_uint8_ptr)� _cpu_features)�get_random_bytesa int AES_start_operation(const uint8_t key[], size_t key_len, void **pResult); int AES_encrypt(const void *state, const uint8_t *in, uint8_t *out, size_t data_len); int AES_decrypt(const void *state, const uint8_t *in, uint8_t *out, size_t data_len); int AES_stop_operation(void *state); zCryptodome.Cipher._raw_aeszCryptodome.Cipher._raw_aesniZAESZAESNIc C s� | � dd�}z| � d�}W n ty4 td��Y n0 t|�tvrRtdt|� ��|rhtrhtj}tj}nt j }t j}t� }|t |�tt|��|�� �}|r�td| ��t|�� |�S )z}This method instantiates and returns a handle to a low-level base cipher. It will absorb named parameters in the process.� use_aesniT�keyzMissing 'key' parameterz#Incorrect AES key length (%d bytes)z+Error %X while instantiating the AES cipher)�pop�KeyError� TypeError�len�key_size� ValueError�_raw_aesni_libZAESNI_start_operationZAESNI_stop_operation�_raw_aes_libZAES_start_operationZAES_stop_operationr r r Z address_ofr �get)Zdict_parametersr r Zstart_operationZstop_operation�cipher�result� r ��/root/rpmbuild/BUILDROOT/imh-python39-modules-3.9.7-92.el8.x86_64/opt/imh-python/lib/python3.9/site-packages/Cryptodome/Cipher/AES.py�_create_base_cipherQ s, ��r c C sd t | �dkrtd��|du r&td�}nt |�dkr:td��t| dd� t��|�}| dd� ||fS )zvDerive a tuple (r, s, nonce) for a Poly1305 MAC. If nonce is ``None``, a new 16-byte nonce is generated. � z(Poly1305 with AES requires a 32-byte keyN� z*Poly1305 with AES requires a 16-byte nonce)r r r �new�MODE_ECBZencrypt)r �nonce�sr r r �_derive_Poly1305_key_pairp s r c O s( d|d<