Crypto++
8.6
Free C++ class library of cryptographic schemes
|
Go to the documentation of this file.
7 #ifndef CRYPTOPP_CBCMAC_H
8 #define CRYPTOPP_CBCMAC_H
23 void Update(
const byte *input,
size_t length);
33 unsigned int m_counter;
52 {this->
SetKey(key, length);}
54 static std::string StaticAlgorithmName() {
return std::string(
"CBC-MAC(") + T::StaticAlgorithmName() +
")";}
58 typename T::Encryption m_cipher;
virtual void SetKey(const byte *key, size_t length, const NameValuePairs ¶ms=g_nullNameValuePairs)
Sets or reset the key of this object.
Classes and functions for secure memory allocations.
void UncheckedSetKey(const byte *key, unsigned int length, const NameValuePairs ¶ms)
Sets the key for this object without performing parameter validation.
void TruncatedFinal(byte *mac, size_t size)
Computes the hash of the current message.
Provides key lengths based on another class's key length.
Classes and functions for implementing secret key algorithms.
unsigned int DigestSize() const
Provides the digest size of the hash.
Provides a base implementation of Algorithm and SimpleKeyingInterface for message authentication code...
Crypto++ library namespace.
void Update(const byte *input, size_t length)
Updates a hash with additional input.
CBC_MAC(const byte *key, size_t length=SameKeyLengthAs< T >::DEFAULT_KEYLENGTH)
Construct a CBC_MAC.
Interface for one direction (encryption or decryption) of a block cipher.
CBC_MAC()
Construct a CBC_MAC.
Interface for message authentication codes.
Interface for retrieving values given their names.