6 #ifndef CRYPTOPP_IDEA_H 7 #define CRYPTOPP_IDEA_H 29 #ifdef CRYPTOPP_NATIVE_DWORD_AVAILABLE 40 void ProcessAndXorBlock(
const byte *inBlock,
const byte *xorBlock,
byte *outBlock)
const;
42 void UncheckedSetKey(
const byte *userKey,
unsigned int length,
const NameValuePairs ¶ms);
45 void EnKey(
const byte *);
49 #ifdef IDEA_LARGECACHE 52 static void BuildLogTables();
53 static volatile bool tablesBuilt;
54 static word16 log[0x10000], antilog[0x10000];
unsigned int OptimalDataAlignment() const
Provides input and output data alignment for optimal performance.
Inherited by keyed algorithms with fixed key length.
#define CRYPTOPP_STATIC_CONSTEXPR
Provides Encryption and Decryption typedefs used by derived classes to implement a block cipher...
#define NAMESPACE_BEGIN(x)
FixedSizeSecBlock< Word, 6 *ROUNDS+4 > m_key
Classes and functions for secure memory allocations.
Inherited by algorithms with fixed block size.
Classes and functions for implementing secret key algorithms.
Provides class member functions to key a block cipher.
BlockCipherFinal< ENCRYPTION, Base > Encryption
BlockCipherFinal< DECRYPTION, Base > Decryption
Inherited by algorithms with fixed number of rounds.
CRYPTOPP_STATIC_CONSTEXPR const char * StaticAlgorithmName()
#define CRYPTOPP_NO_VTABLE
IDEA::Encryption IDEAEncryption
Provides a base implementation of Algorithm and SimpleKeyingInterface for block ciphers.
IDEA block cipher information.
IDEA::Decryption IDEADecryption
Interface for retrieving values given their names.