23 #ifndef LW_INTERNAL_SPOOK_H
24 #define LW_INTERNAL_SPOOK_H
26 #include "internal-util.h"
40 #define CLYDE128_BLOCK_SIZE 16
45 #define CLYDE128_KEY_SIZE 16
50 #define CLYDE128_TWEAK_SIZE 16
58 #define CLYDE128_STEPS 6
63 #define SHADOW512_STATE_SIZE 64
68 #define SHADOW512_RATE 32
73 #define SHADOW384_STATE_SIZE 48
78 #define SHADOW384_RATE 16
#define CLYDE128_BLOCK_SIZE
Size of the block for the Clyde-128 block cipher.
Definition: internal-spook.h:40
#define SHADOW384_STATE_SIZE
Size of the state for Shadow-384.
Definition: internal-spook.h:73
Internal state of the Shadow-512 permutation.
Definition: internal-spook.h:83
void clyde128_decrypt(const unsigned char key[CLYDE128_KEY_SIZE], uint32_t output[CLYDE128_BLOCK_SIZE/4], const unsigned char input[CLYDE128_BLOCK_SIZE], const uint32_t tweak[CLYDE128_TWEAK_SIZE/4])
Decrypts a block with the Clyde-128 block cipher.
Definition: internal-spook.c:150
void clyde128_encrypt(const unsigned char key[CLYDE128_KEY_SIZE], uint32_t output[CLYDE128_BLOCK_SIZE/4], const uint32_t input[CLYDE128_BLOCK_SIZE/4], const uint32_t tweak[CLYDE128_TWEAK_SIZE/4])
Encrypts a block with the Clyde-128 block cipher.
Definition: internal-spook.c:39
void clyde128_encrypt_masked(const unsigned char key[CLYDE128_KEY_SIZE], uint32_t output[CLYDE128_BLOCK_SIZE/4], const uint32_t input[CLYDE128_BLOCK_SIZE/4], const uint32_t tweak[CLYDE128_TWEAK_SIZE/4])
Encrypts a block with the Clyde-128 block cipher in masked mode.
Definition: internal-spook-m.c:187
void shadow384(shadow384_state_t *state)
Performs the Shadow-384 permutation on a state.
Definition: internal-spook.c:424
Internal state of the Shadow-384 permutation.
Definition: internal-spook.h:93
#define CLYDE128_KEY_SIZE
Size of the key for the Clyde-128 block cipher.
Definition: internal-spook.h:45
void clyde128_decrypt_masked(const unsigned char key[CLYDE128_KEY_SIZE], uint32_t output[CLYDE128_BLOCK_SIZE/4], const unsigned char input[CLYDE128_BLOCK_SIZE], const uint32_t tweak[CLYDE128_TWEAK_SIZE/4])
Decrypts a block with the Clyde-128 block cipher in masked mode.
Definition: internal-spook-m.c:277
#define CLYDE128_TWEAK_SIZE
Size of the tweak for the Clyde-128 block cipher.
Definition: internal-spook.h:50
#define SHADOW512_STATE_SIZE
Size of the state for Shadow-512.
Definition: internal-spook.h:63
void shadow512(shadow512_state_t *state)
Performs the Shadow-512 permutation on a state.
Definition: internal-spook.c:260