X-Git-Url: https://git.cryptolib.org/?a=blobdiff_plain;f=aes_keyschedule.h;h=b013971df759b2b74f26d5c40c6e6bedeed94f5b;hb=7f4bda01ca923c4a9aca6da3370a7c4793426a5c;hp=2e0906644d4b497eea7d1ba62a83a8ba1e8a892e;hpb=d6a35f05fd2b5ee79d5ad8424434ad1a068be453;p=avr-crypto-lib.git diff --git a/aes_keyschedule.h b/aes_keyschedule.h index 2e09066..b013971 100644 --- a/aes_keyschedule.h +++ b/aes_keyschedule.h @@ -1,6 +1,6 @@ /* aes_keyschedule.h */ /* - This file is part of the Crypto-avr-lib/microcrypt-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_ */ +