diff options
Diffstat (limited to 'crypto_aead/lilliputaei128v1/ref/tweakey.h')
| -rw-r--r-- | crypto_aead/lilliputaei128v1/ref/tweakey.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/crypto_aead/lilliputaei128v1/ref/tweakey.h b/crypto_aead/lilliputaei128v1/ref/tweakey.h new file mode 100644 index 0000000..8018f9c --- /dev/null +++ b/crypto_aead/lilliputaei128v1/ref/tweakey.h @@ -0,0 +1,34 @@ +#pragma once + +#include <stddef.h> +#include <stdio.h> /* debug */ +#include <stdint.h> + + +#define TWEAK_LENGTH_BITS 192 +#define KEY_LENGTH_BITS 128 +#define ROUND_TWEAKEY_BITS 64 + + +struct tweakey_state +{ + FILE* debug; +}; + +typedef struct tweakey_state tweakey_state; + + +void tweakey_state_init( + tweakey_state *TK, + const uint8_t key[KEY_LENGTH_BITS/8], + const uint8_t tweak[TWEAK_LENGTH_BITS/8], + FILE* debug +); + +void tweakey_state_extract( + const tweakey_state *TK, + uint8_t round_tweakey[ROUND_TWEAKEY_BITS/8], /* output */ + uint8_t i /* round constant */ +); + +void tweakey_state_update(tweakey_state *TK); |
