/*
* File: RijndaelCBCMAC.h
*
* Copyright (c) Freescale Semiconductor, Inc. All rights reserved.
* See included license file for license details.
*/
#if !defined(_RijndaelCBCMAC_h_)
#define _RijndaelCBCMAC_h_
#include "AESKey.h"
#include <string.h>
/*!
* \brief Class to compute CBC-MAC using the AES/Rijndael cipher.
*
* Currently only supports 128-bit keys and block sizes.
*/
class RijndaelCBCMAC
{
public:
enum
{
BLOCK_SIZE = 16 //!< Number of bytes in one cipher block.
};
//! The cipher block data type.
typedef uint8_t block_t[BLOCK_SIZE];
public:
//! \brief Default constructor.
//!
//! The key and IV are both set to zero.
RijndaelCBCMAC() {}