Crypto++ 8.6 Free C++ class library of cryptographic schemes

Public Member Functions | Static Public Member Functions | List of all members
CBC_MAC< T > Class Template Reference

CBC-MAC. More...

Inheritance diagram for CBC_MAC< T >:

## Public Member Functions
| CBC_MAC ()
| Construct a CBC_MAC.
| CBC_MAC (const byte *key, size_t length=SameKeyLengthAs< T >::DEFAULT_KEYLENGTH)
| Construct a CBC_MAC. More...
Public Member Functions inherited from AlgorithmImpl< BASE, ALGORITHM_INFO >
std::string | AlgorithmName () const
| The algorithm name. More...

## Static Public Member Functions
static std::string | StaticAlgorithmName ()
Static Public Member Functions inherited from AlgorithmImpl< BASE, ALGORITHM_INFO >
static std::string | StaticAlgorithmName ()
| The algorithm name. More...
Static Public Member Functions inherited from SameKeyLengthAs< T, IV_REQ, IV_L >
static size_t | StaticGetValidKeyLength (size_t keylength)
| Provides a valid key length for the algorithm provided by a static function. More...

## Additional Inherited Members
Static Public Attributes inherited from SameKeyLengthAs< T, IV_REQ, IV_L >
static const int | MIN_KEYLENGTH =T::MIN_KEYLENGTH
| The minimum key length used by the algorithm provided as a constant. More...
static const int | MAX_KEYLENGTH =T::MAX_KEYLENGTH
| The maximum key length used by the algorithm provided as a constant. More...
static const int | DEFAULT_KEYLENGTH =T::DEFAULT_KEYLENGTH
| The default key length used by the algorithm provided as a constant. More...
static const int | IV_REQUIREMENT =IV_REQ
| The default IV requirements for the algorithm provided as a constant. More...
static const int | IV_LENGTH =IV_L
| The default initialization vector length for the algorithm provided as a constant. More...

## Detailed Description

### template<class T>
class CBC_MAC< T >

CBC-MAC.

Template Parameters

  T | BlockCipherDocumentation derived class

CBC-MAC is compatible with FIPS 113. The MAC is secure only for fixed length messages. For variable length messages use CMAC or DMAC.

See also
  CBC-MAC

Since
  Crypto++ 3.1

Definition at line 43 of file cbcmac.h.

## Constructor & Destructor Documentation

## ◆ CBC_MAC()

template<class T >

CBC_MAC< T >::CBC_MAC | ( | const byte * | key,
|  | size_t | length = `SameKeyLengthAs<T>::DEFAULT_KEYLENGTH`
| ) |  |
| inline

Construct a CBC_MAC.

Parameters

  key | a byte buffer used to key the cipher
  length | the length of the byte buffer

Definition at line 51 of file cbcmac.h.

The documentation for this class was generated from the following file:

- cbcmac.h