RIJNDAEL(9) | FreeBSD Kernel Developer's Manual | RIJNDAEL(9) |
名称
rijndael_makeKey, rijndael_cipherInit, rijndael_blockEncrypt, rijndael_padEncrypt, rijndael_blockDecrypt, rijndael_padDecrypt — AES 暗号化書式
#include < sys/types.h>#include < crypto/rijndael.h>
int
rijndael_makeKey( keyInstance *key, uint8_t direction, int keyLen, char *keyMaterial);
int
rijndael_cipherInit( cipherInstance *cipher, uint8_t mode, char *IV);
int
rijndael_blockEncrypt( cipherInstance *cipher, keyInstance *key, uint8_t *input, int inputLen, uint8_t *outBuffer);
int
rijndael_padEncrypt( cipherInstance *cipher, keyInstance *key, uint8_t *input, int inputOctets, uint8_t *outBuffer);
int
rijndael_blockDecrypt( cipherInstance *cipher, keyInstance *key, uint8_t *input, int inputLen, uint8_t *outBuffer);
int
rijndael_padDecrypt( cipherInstance *cipher, keyInstance *key, uint8_t *input, int inputOctets, uint8_t *outBuffer);
解説
rijndael_makeKey() 関数は、 key でキースケジュールを設定するために使用されます。 ( DIR_ENCRYPT または DIR_DECRYPT であるかもしれない) direction は、キーの意図された使用を指定します。 (ビット単位の) キーの長さは、 keyLen, で与えられ、128、192 または 256 でなければなりません。実際のキーは、 keyMaterial によって指されたバッファで供給されます。この構成要素は、生のバイナリデータ、または rijndael_makeKey ソース BINARY_KEY_MATERIAL でのコンパイル時オプションに依存している、生のバイナリデータの 16 進表現を含む ASCII 文字列であるかもしれません。戻り値
rijndael_makeKey() 関数は、 NULL key が渡されたならば、 BAD_KEY_INSTANCE を返し、 direction が DIR_ENCRYPT または DIR_DECRYPT であるなら、 BAD_KEY_DIR を返し、キー構成要素が 16 進文字列 (でバイナリキーは設定されない) なら、 BAD_KEY_MAT を返し、そうでなければ TRUE を返します。作者
February 6, 2002 | FreeBSD |