#pragma once #ifndef MESSMER_CPPUTILS_CRYPTO_SYMMETRIC_CIPHERS_H_ #define MESSMER_CPPUTILS_CRYPTO_SYMMETRIC_CIPHERS_H_ #include #include #include #include #include #include "GCM_Cipher.h" #include "CFB_Cipher.h" namespace cpputils { static_assert(32 == CryptoPP::AES::MAX_KEYLENGTH, "If AES offered larger keys, we should offer a variant with it"); using AES256_GCM = GCM_Cipher; using AES256_CFB = CFB_Cipher; using AES128_GCM = GCM_Cipher; using AES128_CFB = CFB_Cipher; static_assert(32 == CryptoPP::Twofish::MAX_KEYLENGTH, "If Twofish offered larger keys, we should offer a variant with it"); using Twofish256_GCM = GCM_Cipher; using Twofish256_CFB = CFB_Cipher; using Twofish128_GCM = GCM_Cipher; using Twofish128_CFB = CFB_Cipher; static_assert(32 == CryptoPP::Serpent::MAX_KEYLENGTH, "If Serpent offered larger keys, we should offer a variant with it"); using Serpent256_GCM = GCM_Cipher; using Serpent256_CFB = CFB_Cipher; using Serpent128_GCM = GCM_Cipher; using Serpent128_CFB = CFB_Cipher; static_assert(32 == CryptoPP::CAST256::MAX_KEYLENGTH, "If Cast offered larger keys, we should offer a variant with it"); using Cast256_GCM = GCM_Cipher; using Cast256_CFB = CFB_Cipher; static_assert(56 == CryptoPP::MARS::MAX_KEYLENGTH, "If Mars offered larger keys, we should offer a variant with it"); using Mars448_GCM = GCM_Cipher; using Mars448_CFB = CFB_Cipher; using Mars256_GCM = GCM_Cipher; using Mars256_CFB = CFB_Cipher; using Mars128_GCM = GCM_Cipher; using Mars128_CFB = CFB_Cipher; } #endif