Unix
Mac OS X
Windows
Options
Unix
Windows

# Module aes Methods

## AcquireAESInfo

AcquireAESInfo() allocate the AESInfo structure.

The format of the AcquireAESInfo method is:

      AESInfo *AcquireAESInfo(void)

## DecipherAESBlock

DecipherAESBlock() deciphers a single block of ciphertext to produce a block of plaintext.

The format of the DecipherAESBlock method is:

           void DecipherAES(AESInfo *aes_info,const unsigned char *ciphertext,
       unsigned char *plaintext)

A description of each parameter follows:

##### aes_info

The cipher context.

##### ciphertext

The cipher text.

##### plainttext

The plaint text.

## DestroyAESInfo

DestroyAESInfo() zeros memory associated with the AESInfo structure.

The format of the DestroyAESInfo method is:

      AESInfo *DestroyAESInfo(AESInfo *aes_info)

A description of each parameter follows:

##### aes_info

The cipher context.

## EncipherAESBlock

EncipherAESBlock() enciphers a single block of plaintext to produce a block of ciphertext.

The format of the EncipherAESBlock method is:

      void EncipherAES(AESInfo *aes_info,const unsigned char *plaintext,
        unsigned char *ciphertext)

A description of each parameter follows:

##### aes_info

The cipher context.

##### plaintext

The plain text.

##### ciphertext

The cipher text.

## GetAESBlocksize

GetAESBlocksize() returns the AES blocksize.

The format of the GetAESBlocksize method is:

      unsigned int *GetAESBlocksize(const AESInfo *aes_info)

A description of each parameter follows:

##### aes_info

The aes info.

## SetAESKey

SetAESKey() sets the key for the AES cipher. The key length is specified in bits. Valid values are 128, 192, or 256 requiring a key buffer length in bytes of 16, 24, and 32 respectively.

The format of the SetAESKey method is:

      SetAESKey(AESInfo *aes_info,const StringInfo *key)

A description of each parameter follows:

##### aes_info

The cipher context.

##### key

The key.

Discourse Server