def __init__(self):
self.logger = logging.getLogger('<STR_LIT>')<EOL>self._symmetric_key_algorithms = {<EOL>enums.CryptographicAlgorithm.TRIPLE_DES: algorithms.TripleDES,<EOL>enums.CryptographicAlgorithm.AES:        algorithms.AES,<EOL>enums.CryptographicAlgorithm.BLOWFISH:   algorithms.Blowfish,<EOL>enums.CryptographicAlgorithm.CAMELLIA:   algorithms.Camellia,<EOL>enums.CryptographicAlgorithm.CAST5:      algorithms.CAST5,<EOL>enums.CryptographicAlgorithm.IDEA:       algorithms.IDEA,<EOL>enums.CryptographicAlgorithm.RC4:        algorithms.ARC4<EOL>}<EOL>self._asymmetric_key_algorithms = {<EOL>enums.CryptographicAlgorithm.RSA: self._create_rsa_key_pair<EOL>}<EOL>self._hash_algorithms = {<EOL>enums.CryptographicAlgorithm.HMAC_SHA1: hashes.SHA1,<EOL>enums.CryptographicAlgorithm.HMAC_SHA224: hashes.SHA224,<EOL>enums.CryptographicAlgorithm.HMAC_SHA256: hashes.SHA256,<EOL>enums.CryptographicAlgorithm.HMAC_SHA384: hashes.SHA384,<EOL>enums.CryptographicAlgorithm.HMAC_SHA512: hashes.SHA512,<EOL>enums.CryptographicAlgorithm.HMAC_MD5: hashes.MD5<EOL>}<EOL>self._encryption_hash_algorithms = {<EOL>enums.HashingAlgorithm.MD5:     hashes.MD5,<EOL>enums.HashingAlgorithm.SHA_1:   hashes.SHA1,<EOL>enums.HashingAlgorithm.SHA_224: hashes.SHA224,<EOL>enums.HashingAlgorithm.SHA_256: hashes.SHA256,<EOL>enums.HashingAlgorithm.SHA_384: hashes.SHA384,<EOL>enums.HashingAlgorithm.SHA_512: hashes.SHA512<EOL>}<EOL>self._modes = {<EOL>enums.BlockCipherMode.CBC: modes.CBC,<EOL>enums.BlockCipherMode.ECB: modes.ECB,<EOL>enums.BlockCipherMode.OFB: modes.OFB,<EOL>enums.BlockCipherMode.CFB: modes.CFB,<EOL>enums.BlockCipherMode.CTR: modes.CTR<EOL>}<EOL>self._asymmetric_padding_methods = {<EOL>enums.PaddingMethod.OAEP:     asymmetric_padding.OAEP,<EOL>enums.PaddingMethod.PKCS1v15: asymmetric_padding.PKCS1v15,<EOL>enums.PaddingMethod.PSS:      asymmetric_padding.PSS<EOL>}<EOL>self._symmetric_padding_methods = {<EOL>enums.PaddingMethod.ANSI_X923: symmetric_padding.ANSIX923,<EOL>enums.PaddingMethod.PKCS5:     symmetric_padding.PKCS7<EOL>}<EOL>self._no_mode_needed = [<EOL>enums.CryptographicAlgorithm.RC4<EOL>]<EOL>self._no_padding_needed = [<EOL>enums.BlockCipherMode.CTR,<EOL>enums.BlockCipherMode.OFB,<EOL>enums.BlockCipherMode.CFB,<EOL>enums.BlockCipherMode.GCM<EOL>]<EOL>self._digital_signature_algorithms = {<EOL>enums.DigitalSignatureAlgorithm.MD5_WITH_RSA_ENCRYPTION:<EOL>(hashes.MD5, enums.CryptographicAlgorithm.RSA),<EOL>enums.DigitalSignatureAlgorithm.SHA1_WITH_RSA_ENCRYPTION:<EOL>(hashes.SHA1, enums.CryptographicAlgorithm.RSA),<EOL>enums.DigitalSignatureAlgorithm.SHA224_WITH_RSA_ENCRYPTION:<EOL>(hashes.SHA224, enums.CryptographicAlgorithm.RSA),<EOL>enums.DigitalSignatureAlgorithm.SHA256_WITH_RSA_ENCRYPTION:<EOL>(hashes.SHA256, enums.CryptographicAlgorithm.RSA),<EOL>enums.DigitalSignatureAlgorithm.SHA384_WITH_RSA_ENCRYPTION:<EOL>(hashes.SHA384, enums.CryptographicAlgorithm.RSA),<EOL>enums.DigitalSignatureAlgorithm.SHA512_WITH_RSA_ENCRYPTION:<EOL>(hashes.SHA512, enums.CryptographicAlgorithm.RSA)<EOL>}<EOL>
Construct a CryptographyEngine.