관리-도구
편집 파일: Blowfish.cpython-311.pyc
� O�DgL � � � d Z ddlZddlmZ ddlmZmZmZmZm Z edd� � Z d� Zd� Zd Z d ZdZdZd ZdZdZdZ edd� � ZdS )a� Module's constants for the modes of operation supported with Blowfish: :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_EAX: :ref:`EAX Mode <eax_mode>` � N)�_create_cipher)�load_pycryptodome_raw_lib�VoidPointer�SmartPointer�c_size_t�c_uint8_ptrzCrypto.Cipher._raw_blowfishaT int Blowfish_start_operation(const uint8_t key[], size_t key_len, void **pResult); int Blowfish_encrypt(const void *state, const uint8_t *in, uint8_t *out, size_t data_len); int Blowfish_decrypt(const void *state, const uint8_t *in, uint8_t *out, size_t data_len); int Blowfish_stop_operation(void *state); c � � | � d� � }n# t $ r t d� � �w xY wt |� � t vrt dt |� � z � � �t j }t j }t � � } |t |� � t t |� � � � |� � � � � }|rt d|z � � �t |� � � |� � S )z�This method instantiates and returns a smart pointer to a low-level base cipher. It will absorb named parameters in the process.�keyzMissing 'key' parameterz(Incorrect Blowfish key length (%d bytes)z0Error %X while instantiating the Blowfish cipher)�pop�KeyError� TypeError�len�key_size� ValueError�_raw_blowfish_lib�Blowfish_start_operation�Blowfish_stop_operationr r r � address_ofr �get)�dict_parametersr �start_operation�stop_operation�void_p�results �x/builddir/build/BUILD/imunify360-venv-2.4.0/opt/imunify360/venv/lib64/python3.11/site-packages/Crypto/Cipher/Blowfish.py�_create_base_cipherr <