6 #ifndef CRYPTOPP_IDEA_H 7 #define CRYPTOPP_IDEA_H 18 CRYPTOPP_STATIC_CONSTEXPR
const char* StaticAlgorithmName() {
return "IDEA";}
27 #ifdef CRYPTOPP_NATIVE_DWORD_AVAILABLE 37 unsigned int OptimalDataAlignment()
const {
return 2;}
38 void ProcessAndXorBlock(
const byte *inBlock,
const byte *xorBlock, byte *outBlock)
const;
40 void UncheckedSetKey(
const byte *userKey,
unsigned int length,
const NameValuePairs ¶ms);
43 void EnKey(
const byte *);
47 #ifdef IDEA_LARGECACHE 48 static inline void LookupMUL(word &a, word b);
50 static void BuildLogTables();
51 static volatile bool tablesBuilt;
52 static word16 log[0x10000], antilog[0x10000];
Inherited by keyed algorithms with fixed key length.
Provides Encryption and Decryption typedefs used by derived classes to implement a block cipher...
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.
Inherited by algorithms with fixed number of rounds.
Provides a base implementation of Algorithm and SimpleKeyingInterface for block ciphers.
Crypto++ library namespace.
IDEA block cipher information.
Interface for retrieving values given their names.