rijndael(9)
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_DE - CRYPT) 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 sup - plied 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 hex - adecimal
string (and binary keys are not set), and TRUE otherwise.
AUTHORS
- Mark R V Murray
- BSD February 6, 2002