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

AES128 Class Reference

128-bit Advanced Encryption Standard. More...

#include <AES128.h>

List of all members.

Public Member Functions

void set_key (const unsigned char in_key[16])
void encrypt16 (unsigned char buffer[16])
void decrypt16 (unsigned char buffer[16])

Protected Member Functions

unsigned char GF2M (unsigned char k, unsigned char b)
void AddRoundKey (unsigned char *m, unsigned char *rk)
void ShiftRows (unsigned char *m)
void iShiftRows (unsigned char *m)
void Substitution (unsigned char *m)
void iSubstitution (unsigned char *m)
void MixColumns (unsigned char *m)
void iMixColumns (unsigned char *m)
unsigned int RolSubByte (unsigned int n)

Private Attributes

unsigned char key_schedule [11][16]


Detailed Description

128-bit Advanced Encryption Standard.

A class providing encryption facilities. It provide 128-bits Advanced Encryption Standard.


Member Function Documentation

void AES128::AddRoundKey unsigned char *  m,
unsigned char *  rk
[protected]
 

void AES128::decrypt16 unsigned char  buffer[16]  ) 
 

Decrypt 16 byte of data

Parameters:
buffer 16 byte length buffer of data to decrypt

void AES128::encrypt16 unsigned char  buffer[16]  ) 
 

Crypt 16 byte of data

Parameters:
buffer 16 byte length buffer of data to crypt

unsigned char AES128::GF2M unsigned char  k,
unsigned char  b
[protected]
 

void AES128::iMixColumns unsigned char *  m  )  [protected]
 

void AES128::iShiftRows unsigned char *  m  )  [protected]
 

void AES128::iSubstitution unsigned char *  m  )  [protected]
 

void AES128::MixColumns unsigned char *  m  )  [protected]
 

unsigned int AES128::RolSubByte unsigned int  n  )  [protected]
 

void AES128::set_key const unsigned char  in_key[16]  ) 
 

Set the current key

Parameters:
in_key The key to use for encryption

void AES128::ShiftRows unsigned char *  m  )  [protected]
 

void AES128::Substitution unsigned char *  m  )  [protected]
 


Member Data Documentation

unsigned char AES128::key_schedule[11][16] [private]
 


The documentation for this class was generated from the following files:
Generated on Mon May 30 17:45:41 2005 for raknet by  doxygen 1.4.2