Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

Rijndael Class Reference

#include <rijndael.h>

List of all members.

Public Types

enum  Direction { Encrypt, Decrypt }
enum  Mode { ECB, CBC, CFB1 }
enum  KeyLength { Key16Bytes, Key24Bytes, Key32Bytes }

Public Member Functions

 Rijndael ()
 ~Rijndael ()
int init (Mode mode, Direction dir, const UINT8 *key, KeyLength keyLen, UINT8 *initVector=0)
int blockEncrypt (const UINT8 *input, int inputLen, UINT8 *outBuffer)
int padEncrypt (const UINT8 *input, int inputOctets, UINT8 *outBuffer)
int blockDecrypt (const UINT8 *input, int inputLen, UINT8 *outBuffer)
int padDecrypt (const UINT8 *input, int inputOctets, UINT8 *outBuffer)

Protected Types

enum  State { Valid, Invalid }

Protected Member Functions

void keySched (UINT8 key[_MAX_KEY_COLUMNS][4])
void keyEncToDec ()
void encrypt (const UINT8 a[16], UINT8 b[16])
void decrypt (const UINT8 a[16], UINT8 b[16])

Protected Attributes

State m_state
Mode m_mode
Direction m_direction
UINT8 m_initVector [MAX_IV_SIZE]
UINT32 m_uRounds
UINT8 m_expandedKey [_MAX_ROUNDS+1][4][4]


Member Enumeration Documentation

enum Rijndael::Direction
 

Enumeration values:
Encrypt 
Decrypt 

enum Rijndael::KeyLength
 

Enumeration values:
Key16Bytes 
Key24Bytes 
Key32Bytes 

enum Rijndael::Mode
 

Enumeration values:
ECB 
CBC 
CFB1 

enum Rijndael::State [protected]
 

Enumeration values:
Valid 
Invalid 


Constructor & Destructor Documentation

Rijndael::Rijndael  ) 
 

Rijndael::~Rijndael  ) 
 


Member Function Documentation

int Rijndael::blockDecrypt const UINT8 input,
int  inputLen,
UINT8 outBuffer
 

int Rijndael::blockEncrypt const UINT8 input,
int  inputLen,
UINT8 outBuffer
 

void Rijndael::decrypt const UINT8  a[16],
UINT8  b[16]
[protected]
 

void Rijndael::encrypt const UINT8  a[16],
UINT8  b[16]
[protected]
 

int Rijndael::init Mode  mode,
Direction  dir,
const UINT8 key,
KeyLength  keyLen,
UINT8 initVector = 0
 

void Rijndael::keyEncToDec  )  [protected]
 

void Rijndael::keySched UINT8  key[_MAX_KEY_COLUMNS][4]  )  [protected]
 

int Rijndael::padDecrypt const UINT8 input,
int  inputOctets,
UINT8 outBuffer
 

int Rijndael::padEncrypt const UINT8 input,
int  inputOctets,
UINT8 outBuffer
 


Member Data Documentation

Direction Rijndael::m_direction [protected]
 

UINT8 Rijndael::m_expandedKey[_MAX_ROUNDS+1][4][4] [protected]
 

UINT8 Rijndael::m_initVector[MAX_IV_SIZE] [protected]
 

Mode Rijndael::m_mode [protected]
 

State Rijndael::m_state [protected]
 

UINT32 Rijndael::m_uRounds [protected]
 


The documentation for this class was generated from the following file:
Generated on Sun Mar 6 13:36:09 2005 for Komssys by doxygen 1.3.8