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

CBC-MAC. More...

#include <cbcmac.h>

Inheritance diagram for CBC_MAC< T >:
MessageAuthenticationCodeImpl< CBC_MAC_Base, CBC_MAC< T > > SameKeyLengthAs< T, IV_REQ, IV_L > AlgorithmImpl< BASE, ALGORITHM_INFO >

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.
 
- Public Member Functions inherited from AlgorithmImpl< BASE, ALGORITHM_INFO >
std::string AlgorithmName () const
 The algorithm name.
 
- Public Member Functions inherited from SameKeyLengthAs< T, IV_REQ, IV_L >
 CRYPTOPP_CONSTANT (MIN_KEYLENGTH=T::MIN_KEYLENGTH)
 The minimum key length used by the algorithm provided as a constant.
 
 CRYPTOPP_CONSTANT (MAX_KEYLENGTH=T::MAX_KEYLENGTH)
 The maximum key length used by the algorithm provided as a constant.
 
 CRYPTOPP_CONSTANT (DEFAULT_KEYLENGTH=T::DEFAULT_KEYLENGTH)
 The default key length used by the algorithm provided as a constant.
 
 CRYPTOPP_CONSTANT (IV_REQUIREMENT=IV_REQ)
 The default IV requirements for the algorithm provided as a constant.
 
 CRYPTOPP_CONSTANT (IV_LENGTH=IV_L)
 The default initialization vector length for the algorithm provided as a constant.
 
CRYPTOPP_STATIC_CONSTEXPR size_t CRYPTOPP_API StaticGetValidKeyLength (size_t keylength)
 Provides a valid key length for the algorithm provided by a static function.
 

Static Public Member Functions

static std::string StaticAlgorithmName ()
 
- Static Public Member Functions inherited from AlgorithmImpl< BASE, ALGORITHM_INFO >
static std::string CRYPTOPP_API StaticAlgorithmName ()
 The algorithm name.
 

Detailed Description

template<class T>
class CBC_MAC< T >

CBC-MAC.

Template Parameters
TBlockCipherDocumentation 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() [1/2]

template<class T >
CBC_MAC< T >::CBC_MAC ( )
inline

Construct a CBC_MAC.

Definition at line 47 of file cbcmac.h.

◆ CBC_MAC() [2/2]

template<class T >
CBC_MAC< T >::CBC_MAC ( const byte key,
size_t  length = SameKeyLengthAs<T>::DEFAULT_KEYLENGTH 
)
inline

Construct a CBC_MAC.

Parameters
keya byte buffer used to key the cipher
lengththe length of the byte buffer

Definition at line 51 of file cbcmac.h.

Member Function Documentation

◆ StaticAlgorithmName()

template<class T >
static std::string CBC_MAC< T >::StaticAlgorithmName ( )
inlinestatic

Definition at line 54 of file cbcmac.h.


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