X-Git-Url: https://git.cryptolib.org/?a=blobdiff_plain;f=aes_keyschedule.h;h=b013971df759b2b74f26d5c40c6e6bedeed94f5b;hb=7701e318e4e2bac7f84dbf6e368f1501814948fc;hp=109446ac40aa1a39dc5c489018aead75107f7bc1;hpb=17332291e15183d71d88ed868275e3cb53917180;p=avr-crypto-lib.git diff --git a/aes_keyschedule.h b/aes_keyschedule.h index 109446a..b013971 100644 --- a/aes_keyschedule.h +++ b/aes_keyschedule.h @@ -1,6 +1,6 @@ /* aes_keyschedule.h */ /* - This file is part of the This file is part of the AVR-Crypto-Lib. + This file is part of the AVR-Crypto-Lib. Copyright (C) 2008 Daniel Otte (daniel.otte@rub.de) This program is free software: you can redistribute it and/or modify @@ -22,7 +22,7 @@ * \author Daniel Otte * \date 2008-12-30 * \license GPLv3 or later - * + * \ingroup AES */ @@ -30,11 +30,46 @@ #define AES_KEYSCHEDULE_H_ #include "aes.h" - +/** \fn void aes_init(const void* key, uint16_t keysize_b, aes_genctx_t* ctx) + * \brief initialize the keyschedule + * + * This function computes the keyschedule from a given key with a given length + * and stores it in the context variable + * \param key pointer to the key material + * \param keysize_b length of the key in bits (valid are 128, 192 and 256) + * \param ctx pointer to the context where the keyschedule should be stored + */ void aes_init(const void* key, uint16_t keysize_b, aes_genctx_t* ctx); +/** \fn void aes128_init(const void* key, aes128_ctx_t* ctx) + * \brief initialize the keyschedule for 128 bit key + * + * This function computes the keyschedule from a given 128 bit key + * and stores it in the context variable + * \param key pointer to the key material + * \param ctx pointer to the context where the keyschedule should be stored + */ void aes128_init(const void* key, aes128_ctx_t* ctx); + +/** \fn void aes192_init(const void* key, aes192_ctx_t* ctx) + * \brief initialize the keyschedule for 192 bit key + * + * This function computes the keyschedule from a given 192 bit key + * and stores it in the context variable + * \param key pointer to the key material + * \param ctx pointer to the context where the keyschedule should be stored + */ void aes192_init(const void* key, aes192_ctx_t* ctx); + +/** \fn void aes256_init(const void* key, aes256_ctx_t* ctx) + * \brief initialize the keyschedule for 256 bit key + * + * This function computes the keyschedule from a given 256 bit key + * and stores it in the context variable + * \param key pointer to the key material + * \param ctx pointer to the context where the keyschedule should be stored + */ void aes256_init(const void* key, aes256_ctx_t* ctx); #endif /* AES_KEYSCHEDULE_H_ */ +