Main Page | Modules | Data Structures | File List | Data Fields | Globals | Related Pages

aes.h File Reference

AES block cipher, as specified by NIST FIPS 197. More...

#include "beecrypt.h"
#include "aesopt.h"

Go to the source code of this file.

Data Structures

struct  aesParam
 Holds all the parameters necessary for the AES cipher. More...


Functions

int aesSetup (aesParam *ap, const byte *key, size_t keybits, cipherOperation op)
 This function performs the cipher's key expansion.

int aesSetIV (aesParam *ap, const byte *iv)
 This function sets the Initialization Vector.

int aesEncrypt (aesParam *ap, uint32_t *dst, const uint32_t *src)
 This function performs the raw AES encryption; it encrypts one block of 128 bits.

int aesDecrypt (aesParam *ap, uint32_t *dst, const uint32_t *src)
 This function performs the raw AES decryption; it decrypts one block of 128 bits.

uint32_t * aesFeedback (aesParam *ap)

Variables

const blockCipher aes
 Holds the full API description of the AES algorithm.


Detailed Description

AES block cipher, as specified by NIST FIPS 197.

Author:
Bob Deblier <bob.deblier@pandora.be>

Definition in file aes.h.


Function Documentation

aesDecrypt aesParam ap,
uint32_t *  dst,
const uint32_t *  src
 

This function performs the raw AES decryption; it decrypts one block of 128 bits.

Parameters:
ap The cipher's parameter block.
dst The cleartext; should be aligned on 32-bit boundary.
src The ciphertext; should be aligned on 32-bit boundary.
Return values:
0 on success.

aesEncrypt aesParam ap,
uint32_t *  dst,
const uint32_t *  src
 

This function performs the raw AES encryption; it encrypts one block of 128 bits.

Parameters:
ap The cipher's parameter block.
dst The ciphertext; should be aligned on 32-bit boundary.
src The cleartext; should be aligned on 32-bit boundary.
Return values:
0 on success.

uint32_t* aesFeedback aesParam ap  ) 
 

int aesSetIV aesParam ap,
const byte iv
 

This function sets the Initialization Vector.

Note:
This function is only useful in block chaining or feedback modes.
Parameters:
ap The cipher's parameter block.
iv The initialization vector; may be null.
Return values:
0 on success.

int aesSetup aesParam ap,
const byte key,
size_t  keybits,
cipherOperation  op
 

This function performs the cipher's key expansion.

Parameters:
ap The cipher's parameter block.
key The key value.
keybits The number of bits in the key; legal values are: 128, 192 and 256.
op ENCRYPT or DECRYPT.
Return values:
0 on success.
-1 on failure.


Variable Documentation

aes
 

Holds the full API description of the AES algorithm.


Generated on Wed Mar 24 13:56:53 2004 for BeeCrypt by doxygen 1.3.6