/opt/imh-python/lib/python3.9/site-packages/Crypto/Cipher
NameSizeModeActions
__pycache__/-0755rm
AES.py95410644editdlrm
AES.pyi13430644editdlrm
ARC2.py70100644editdlrm
ARC2.pyi9540644editdlrm
ARC4.py51520644editdlrm
ARC4.pyi4310644editdlrm
Blowfish.py59640644editdlrm
Blowfish.pyi9900644editdlrm
CAST.py60710644editdlrm
CAST.pyi9550644editdlrm
ChaCha20.py107340644editdlrm
ChaCha20.pyi7620644editdlrm
ChaCha20_Poly1305.py115290644editdlrm
ChaCha20_Poly1305.pyi10680644editdlrm
DES.py59470644editdlrm
DES.pyi9350644editdlrm
DES3.py69250644editdlrm
DES3.pyi10050644editdlrm
PKCS1_OAEP.py88240644editdlrm
PKCS1_OAEP.pyi11790644editdlrm
PKCS1_v1_5.py79430644editdlrm
PKCS1_v1_5.pyi5670644editdlrm
Salsa20.py63490644editdlrm
Salsa20.pyi7440644editdlrm
_ARC4.cpython-39-x86_64-linux-gnu.so80720755editdlrm
_chacha20.cpython-39-x86_64-linux-gnu.so110240755editdlrm
_EKSBlowfish.py52050644editdlrm
_EKSBlowfish.pyi2660644editdlrm
_mode_cbc.py109510644editdlrm
_mode_cbc.pyi6870644editdlrm
_mode_ccm.py244440644editdlrm
_mode_ccm.pyi16000644editdlrm
_mode_cfb.py108010644editdlrm
_mode_cfb.pyi7270644editdlrm
_mode_ctr.py158800644editdlrm
_mode_ctr.pyi8000644editdlrm
_mode_eax.py145110644editdlrm
_mode_eax.pyi15450644editdlrm
_mode_ecb.py82100644editdlrm
_mode_ecb.pyi5920644editdlrm
_mode_gcm.py213580644editdlrm
_mode_gcm.pyi15410644editdlrm
_mode_ocb.py197940644editdlrm
_mode_ocb.pyi12310644editdlrm
_mode_ofb.py102810644editdlrm
_mode_ofb.pyi6910644editdlrm
_mode_openpgp.py70530644editdlrm
_mode_openpgp.pyi5560644editdlrm
_mode_siv.py140620644editdlrm
_mode_siv.pyi12610644editdlrm
_raw_aes.cpython-39-x86_64-linux-gnu.so268160755editdlrm
_raw_aesni.cpython-39-x86_64-linux-gnu.so116480755editdlrm
_raw_arc2.cpython-39-x86_64-linux-gnu.so105280755editdlrm
_raw_blowfish.cpython-39-x86_64-linux-gnu.so135680755editdlrm
_raw_cast.cpython-39-x86_64-linux-gnu.so198640755editdlrm
_raw_cbc.cpython-39-x86_64-linux-gnu.so86720755editdlrm
_raw_cfb.cpython-39-x86_64-linux-gnu.so89280755editdlrm
_raw_ctr.cpython-39-x86_64-linux-gnu.so92000755editdlrm
_raw_des.cpython-39-x86_64-linux-gnu.so451200755editdlrm
_raw_des3.cpython-39-x86_64-linux-gnu.so454080755editdlrm
_raw_ecb.cpython-39-x86_64-linux-gnu.so65280755editdlrm
_raw_eksblowfish.cpython-39-x86_64-linux-gnu.so188880755editdlrm
_raw_ocb.cpython-39-x86_64-linux-gnu.so114560755editdlrm
_raw_ofb.cpython-39-x86_64-linux-gnu.so74960755editdlrm
_Salsa20.cpython-39-x86_64-linux-gnu.so88240755editdlrm
__init__.py28440644editdlrm
__init__.pyi00644editdlrm
Edit: /opt/imh-python/lib/python3.9/site-packages/Crypto/Cipher/__init__.py (2844B)
# # A block cipher is instantiated as a combination of: # 1. A base cipher (such as AES) # 2. A mode of operation (such as CBC) # # Both items are implemented as C modules. # # The API of #1 is (replace "AES" with the name of the actual cipher): # - AES_start_operaion(key) --> base_cipher_state # - AES_encrypt(base_cipher_state, in, out, length) # - AES_decrypt(base_cipher_state, in, out, length) # - AES_stop_operation(base_cipher_state) # # Where base_cipher_state is AES_State, a struct with BlockBase (set of # pointers to encrypt/decrypt/stop) followed by cipher-specific data. # # The API of #2 is (replace "CBC" with the name of the actual mode): # - CBC_start_operation(base_cipher_state) --> mode_state # - CBC_encrypt(mode_state, in, out, length) # - CBC_decrypt(mode_state, in, out, length) # - CBC_stop_operation(mode_state) # # where mode_state is a a pointer to base_cipher_state plus mode-specific data. import os from Crypto.Cipher._mode_ecb import _create_ecb_cipher from Crypto.Cipher._mode_cbc import _create_cbc_cipher from Crypto.Cipher._mode_cfb import _create_cfb_cipher from Crypto.Cipher._mode_ofb import _create_ofb_cipher from Crypto.Cipher._mode_ctr import _create_ctr_cipher from Crypto.Cipher._mode_openpgp import _create_openpgp_cipher from Crypto.Cipher._mode_ccm import _create_ccm_cipher from Crypto.Cipher._mode_eax import _create_eax_cipher from Crypto.Cipher._mode_siv import _create_siv_cipher from Crypto.Cipher._mode_gcm import _create_gcm_cipher from Crypto.Cipher._mode_ocb import _create_ocb_cipher _modes = { 1:_create_ecb_cipher, 2:_create_cbc_cipher, 3:_create_cfb_cipher, 5:_create_ofb_cipher, 6:_create_ctr_cipher, 7:_create_openpgp_cipher, 9:_create_eax_cipher } _extra_modes = { 8:_create_ccm_cipher, 10:_create_siv_cipher, 11:_create_gcm_cipher, 12:_create_ocb_cipher } def _create_cipher(factory, key, mode, *args, **kwargs): kwargs["key"] = key modes = dict(_modes) if kwargs.pop("add_aes_modes", False): modes.update(_extra_modes) if not mode in modes: raise ValueError("Mode not supported") if args: if mode in (8, 9, 10, 11, 12): if len(args) > 1: raise TypeError("Too many arguments for this mode") kwargs["nonce"] = args[0] elif mode in (2, 3, 5, 7): if len(args) > 1: raise TypeError("Too many arguments for this mode") kwargs["IV"] = args[0] elif mode == 6: if len(args) > 0: raise TypeError("Too many arguments for this mode") elif mode == 1: raise TypeError("IV is not meaningful for the ECB mode") return modes[mode](factory, **kwargs)