˺hrddlmZddlZddlmZGddejZGddeZdd ZdS)) annotationsN)utilsceZdZeejd dZeejd dZeejd dZdS) CipherAlgorithmreturnstrcdS)zE A string naming this mode (e.g. "AES", "Camellia"). Nselfs /builddir/build/BUILD/imunify360-venv-2.5.2/opt/imunify360/venv/lib64/python3.11/site-packages/cryptography/hazmat/primitives/_cipheralgorithm.pynamezCipherAlgorithm.namefrozenset[int]cdS)z< Valid key sizes for this algorithm in bits Nr r s r key_sizeszCipherAlgorithm.key_sizesrrintcdS)zW The size of the key being used as an integer in bits (e.g. 128, 256). Nr r s r key_sizezCipherAlgorithm.key_sizerrN)rr)rrrr) __name__ __module__ __qualname__propertyabcabstractmethodrrrr rr rrs    X    X    X   rr) metaclasscLeZdZUded<eejddZdS)BlockCipherAlgorithmbyteskeyrrcdS)zK The size of a block as an integer in bits (e.g. 64, 128). Nr r s r block_sizezBlockCipherAlgorithm.block_size)rrNr)rrr__annotations__rrrr$r rr r r &sKJJJ    X   rr algorithmr"r!rctjd|t|dz|jvr+t dt|dzd|jd|S)Nr"zInvalid key size (z) for .)r_check_byteslikelenr ValueErrorr)r&r"s r _verify_key_sizer-1sj 5#&&& 3xx!|9... FSA F FY^ F F F    Jr)r&rr"r!rr!) __future__rr cryptographyrABCMetarr r-r rr r1s #"""""            .     ?         r