3TfTddlmZddlmZddlmZmZd#dZGddeZGddeZ Gd d eZ Gd d eZ Gd deZ GddeZ e Zeje edej"dGddeZeZejeedej"dGddeZGddeZeZejeedej"dGddeZeZejeedej"dGddeZGd d!eZy")$) annotations)utils)BlockCipherAlgorithmCipherAlgorithmctjd|t|dz|jvr1t dj t|dz|j |S)NkeyzInvalid key size ({}) for {}.)r_check_byteslikelen key_sizes ValueErrorformatname) algorithmrs S/usr/lib/python3/dist-packages/cryptography/hazmat/primitives/ciphers/algorithms.py_verify_key_sizers] 5#& 3x!|9... + 2 2C1 inn   JcBeZdZdZdZegdZddZeddZ y)AES)ric&t|||_yNrrselfrs r__init__z AES.__init__"#D#.rc2t|jdzSNr r rrs rkey_sizez AES.key_size%488}q  rNrbytesreturnint __name__ __module__ __qualname__r block_size frozensetr rpropertyr$rrrrs0 DJ./I/!!rrc2eZdZdZdZedgZdZddZy)AES128rrc&t|||_yrrrs rrzAES128.__init__0rrNr& r,r-r.rr/r0r r$rr2rrr4r4*" DJ3% IH/rr4c2eZdZdZdZedgZdZddZy)AES256rrrc&t|||_yrrrs rrzAES256.__init__:rrNr&r6r2rrr9r94r7rr9cBeZdZdZdZegdZddZeddZ y) Camelliacamelliar)rrrc&t|||_yrrrs rrzCamellia.__init__Crrc2t|jdzSr!r"r#s rr$zCamellia.key_sizeFr%rNr&r(r+r2rrr<r<>s/ DJ/*I/!!rr<cBeZdZdZdZegdZddZeddZ y) TripleDES3DES@)rCrrct|dk(r |||zz }nt|dk(r||ddz }t|||_y)Nr )r rrrs rrzTripleDES.__init__PsC s8q= 39 C X^ 3r7NC#D#.rc2t|jdzSr!r"r#s rr$zTripleDES.key_sizeWr%rNr&r(r+r2rrrArAKs/ DJ.)I/!!rrAcNeZdZdZdZeedddZddZe d dZ y) BlowfishrC ir c&t|||_yrrrs rrzBlowfish.__init__arrc2t|jdzSr!r"r#s rr$zBlowfish.key_sizedr%rNr&r( r,r-r.rr/r0ranger rr1r$r2rrrHrH\s8 DJ%C+,I/!!rrHzBlowfish has been deprecated)rcNeZdZdZdZeedddZddZe d dZ y) CAST5rC(r c&t|||_yrrrs rrzCAST5.__init__xrrc2t|jdzSr!r"r#s rr$zCAST5.key_size{r%rNr&r(rLr2rrrOrOss8 DJ%C+,I/!!rrOzCAST5 has been deprecatedc>eZdZdZegdZddZeddZy)ARC4RC4)rP8rCPrrrc&t|||_yrrrs rrz ARC4.__init__rrc2t|jdzSr!r"r#s rr$z ARC4.key_sizer%rNr&r() r,r-r.rr0r rr1r$r2rrrUrUs+ D>?I/!!rrUc@eZdZdZdZedgZddZeddZ y)IDEArCrc&t|||_yrrrs rrz IDEA.__init__rrc2t|jdzSr!r"r#s rr$z IDEA.key_sizer%rNr&r(r+r2rrr]r]s1 DJ3% I/!!rr]zIDEA has been deprecatedc@eZdZdZdZedgZddZeddZ y)SEEDrc&t|||_yrrrs rrz SEED.__init__rrc2t|jdzSr!r"r#s rr$z SEED.key_sizer%rNr&r(r+r2rrraras1 DJ3% I/!!rrazSEED has been deprecatedcNeZdZdZedgZddZeddZeddZ y) ChaCha20rct|||_tjd|t |dk7r t d||_y)NnoncerEz!nonce must be 128-bits (16 bytes))rrrr r r _nonce)rrrgs rrzChaCha20.__init__s?#D#. w. u: @A A rc|jSr)rhr#s rrgzChaCha20.nonces {{rc2t|jdzSr!r"r#s rr$zChaCha20.key_sizer%rN)rr'rgr')r)r'r() r,r-r.rr0r rr1rgr$r2rrreres@ D3% I!!rrec@eZdZdZdZedgZddZeddZ y)SM4rc&t|||_yrrrs rrz SM4.__init__rrc2t|jdzSr!r"r#s rr$z SM4.key_sizer%rNr&r(r+r2rrrlrls1 DJ3% I/!!rrlN)rrrr'r)r') __future__r cryptographyr&cryptography.hazmat.primitives.ciphersrrrrr4r9r<rArH_BlowfishInternal deprecatedr,DeprecatedIn37rO_CAST5InternalrUr] _IDEAInternalra _SEEDInternalrerlr2rrrxsb #  !  !/ !// !/ !# !!$!" !# !  "    ! !      !? ! !  !      !  !     !!, !  !r