1 #ifndef CRYPTOPP_IDEA_H
2 #define CRYPTOPP_IDEA_H
10 NAMESPACE_BEGIN(CryptoPP)
15 static const char *StaticAlgorithmName() {
return "IDEA";}
22 #ifdef CRYPTOPP_NATIVE_DWORD_AVAILABLE
32 unsigned int OptimalDataAlignment()
const {
return 2;}
33 void ProcessAndXorBlock(
const byte *inBlock,
const byte *xorBlock, byte *outBlock)
const;
35 void UncheckedSetKey(
const byte *userKey,
unsigned int length,
const NameValuePairs ¶ms);
38 void EnKey(
const byte *);
42 #ifdef IDEA_LARGECACHE
43 static inline void LookupMUL(word &a, word b);
45 static void BuildLogTables();
46 static volatile bool tablesBuilt;
47 static word16 log[0x10000], antilog[0x10000];
to be inherited by keyed algorithms with fixed key length
These objects usually should not be used directly. See CipherModeDocumentation instead.
to be inherited by block ciphers with fixed block size
to be inherited by ciphers with fixed number of rounds
interface for retrieving values given their names