X-Git-Url: https://git.cryptolib.org/?a=blobdiff_plain;f=rc6.h;h=f1f78e953c37f19bbc9c25836c606232ece39c07;hb=bddd3069b50823af3bc567f073f574dff74d416c;hp=35887bc44be8ae900fbc5ed07e2c653274b82a18;hpb=083d7d2a1375304e61c08048426a80e2cc41c55d;p=avr-crypto-lib.git diff --git a/rc6.h b/rc6.h index 35887bc..f1f78e9 100644 --- a/rc6.h +++ b/rc6.h @@ -7,22 +7,28 @@ * This implementation is restricted to 32-bit words, but free in the choice of number of rounds (0 to 255). * so it is RC6-32/r/b */ + +#ifndef RC6_H_ +#define RC6_H_ + - #include +#include - typedef struct rc6_ctx_st{ - uint8_t rounds; /* specifys the number of rounds; default: 20 */ +typedef struct rc6_ctx_st{ + uint8_t rounds; /* specifys the number of rounds; default: 20 */ uint32_t* S; /* the round-keys */ - } rc6_ctx_t; - +} rc6_ctx_t; - uint8_t rc6_init(rc6_ctx_t *s,void* key, uint16_t keylength); - uint8_t rc6_initl(rc6_ctx_t *s,void* key, uint16_t keylength, uint8_t rounds); +uint8_t rc6_init(void* key, uint16_t keylength_b, rc6_ctx_t *s); - void rc6_enc(rc6_ctx_t *s, void* block); +uint8_t rc6_initl(void* key, uint16_t keylength_b, uint8_t rounds, rc6_ctx_t *s); - void rc6_dec(rc6_ctx_t *s, void* block); +void rc6_enc(void* block, rc6_ctx_t *s); + +void rc6_dec(void* block, rc6_ctx_t *s); - void rc6_free(rc6_ctx_t *s); +void rc6_free(rc6_ctx_t *s); + +#endif /* RC6_H_ */