Provided by: freebsd-manpages_8.0-1_all bug

NAME

     rijndael_makeKey, rijndael_cipherInit, rijndael_blockEncrypt,
     rijndael_padEncrypt, rijndael_blockDecrypt, rijndael_padDecrypt - AES
     encryption

SYNOPSIS

     #include <sys/types.h>
     #include <crypto/rijndael.h>

     int
     rijndael_makeKey(keyInstance *key, u_int8_t direction, int keyLen,
             char *keyMaterial);

     int
     rijndael_cipherInit(cipherInstance *cipher, u_int8_t mode, char *IV);

     int
     rijndael_blockEncrypt(cipherInstance *cipher, keyInstance *key,
             u_int8_t *input, int inputLen, u_int8_t *outBuffer);

     int
     rijndael_padEncrypt(cipherInstance *cipher, keyInstance *key,
             u_int8_t *input, int inputOctets, u_int8_t *outBuffer);

     int
     rijndael_blockDecrypt(cipherInstance *cipher, keyInstance *key,
             u_int8_t *input, int inputLen, u_int8_t *outBuffer);

     int
     rijndael_padDecrypt(cipherInstance *cipher, keyInstance *key,
             u_int8_t *input, int inputOctets, u_int8_t *outBuffer);

DESCRIPTION

     The rijndael_makeKey() function is used to set up the key schedule in
     key.  The direction (which may be DIR_ENCRYPT or DIR_DECRYPT) specifies
     the intended use of the key.  The length of the key (in bits) is given in
     keyLen, and must be 128, 192 or 256.  The actual key is supplied in the
     buffer pointed to by keyMaterial.  This material may be raw binary data,
     or an ASCII string containing a hexadecimal rendition of the raw binary
     data, dependent on a compile-time option in the rijndael_makeKey sources,
     BINARY_KEY_MATERIAL.

RETURN VALUES

     The rijndael_makeKey() function will return BAD_KEY_INSTANCE if a NULL
     key is passed, BAD_KEY_DIR if direction is not DIR_ENCRYPT or
     DIR_DECRYPT, BAD_KEY_MAT if the key materials are not a hexadecimal
     string (and binary keys are not set), and TRUE otherwise.

AUTHORS

     Mark R V Murray