Crypto++
8.4
Free C++ class library of cryptographic schemes
|
Go to the documentation of this file.
10 #ifndef CRYPTOPP_CHAM_H
11 #define CRYPTOPP_CHAM_H
18 #if (CRYPTOPP_BOOL_X64 || CRYPTOPP_BOOL_X32 || CRYPTOPP_BOOL_X86)
19 # define CRYPTOPP_CHAM128_ADVANCED_PROCESS_BLOCKS 1
24 #if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x5120)
25 # undef CRYPTOPP_CHAM128_ADVANCED_PROCESS_BLOCKS
76 void UncheckedSetKey(
const byte *userKey,
unsigned int keyLength,
const NameValuePairs ¶ms);
87 class CRYPTOPP_NO_VTABLE
Enc :
public Base
90 void ProcessAndXorBlock(
const byte *inBlock,
const byte *xorBlock,
byte *outBlock)
const;
97 class CRYPTOPP_NO_VTABLE
Dec :
public Base
100 void ProcessAndXorBlock(
const byte *inBlock,
const byte *xorBlock,
byte *outBlock)
const;
130 void UncheckedSetKey(
const byte *userKey,
unsigned int keyLength,
const NameValuePairs ¶ms);
131 std::string AlgorithmProvider()
const;
145 void ProcessAndXorBlock(
const byte *inBlock,
const byte *xorBlock,
byte *outBlock)
const;
147 #if CRYPTOPP_CHAM128_ADVANCED_PROCESS_BLOCKS
148 size_t AdvancedProcessBlocks(
const byte *inBlocks,
const byte *xorBlocks,
byte *outBlocks,
size_t length,
word32 flags)
const;
159 void ProcessAndXorBlock(
const byte *inBlock,
const byte *xorBlock,
byte *outBlock)
const;
161 #if CRYPTOPP_CHAM128_ADVANCED_PROCESS_BLOCKS
162 size_t AdvancedProcessBlocks(
const byte *inBlocks,
const byte *xorBlocks,
byte *outBlocks,
size_t length,
word32 flags)
const;
179 #endif // CRYPTOPP_CHAM_H
CHAM128::Encryption CHAM128Encryption
CHAM128 encryption.
BlockCipherFinal< DECRYPTION, Dec > Decryption
CHAM128 decryption.
Encryption transformation.
CHAM block cipher transformation functions.
CHAM64::Decryption CHAM64Decryption
CHAM64 decryption.
Decryption transformation.
Classes and functions for secure memory allocations.
CHAM64::Encryption CHAM64Encryption
CHAM64 encryption.
CHAM block cipher information.
CHAM block cipher information.
unsigned int word32
32-bit unsigned datatype
CHAM 128-bit block cipher.
Inherited by algorithms with fixed block size.
Provides a base implementation of Algorithm and SimpleKeyingInterface for block ciphers.
Inherited by keyed algorithms with fixed key length.
BlockCipherFinal< ENCRYPTION, Enc > Encryption
CHAM64 encryption.
static const std::string StaticAlgorithmName()
The algorithm name.
Encryption transformation.
Provides Encryption and Decryption typedefs used by derived classes to implement a block cipher.
BlockCipherFinal< ENCRYPTION, Enc > Encryption
CHAM128 encryption.
Classes and functions for implementing secret key algorithms.
static const std::string StaticAlgorithmName()
The algorithm name.
CHAM block cipher transformation functions.
Crypto++ library namespace.
Library configuration file.
CHAM 64-bit block cipher.
BlockCipherFinal< DECRYPTION, Dec > Decryption
CHAM64 decryption.
Interface for retrieving values given their names.
Decryption transformation.
Classes for working with NameValuePairs.
CHAM128::Decryption CHAM128Decryption
CHAM128 decryption.
Inherited by keyed algorithms with variable key length.