Lightweight Cryptography Primitives
 All Data Structures Files Functions Variables Typedefs Macros Pages
Data Structures | Macros | Functions
internal-keccak.h File Reference

Internal implementation of the Keccak-p permutation. More...

#include "internal-util.h"

Go to the source code of this file.

Data Structures

union  keccakp_200_state_t
 Structure of the internal state of the Keccak-p[200] permutation. More...
 
union  keccakp_400_state_t
 Structure of the internal state of the Keccak-p[400] permutation. More...
 

Macros

#define KECCAKP_200_STATE_SIZE   25
 Size of the state for the Keccak-p[200] permutation.
 
#define KECCAKP_400_STATE_SIZE   50
 Size of the state for the Keccak-p[400] permutation.
 

Functions

void keccakp_200_permute (keccakp_200_state_t *state)
 Permutes the Keccak-p[200] state. More...
 
void keccakp_400_permute (keccakp_400_state_t *state, unsigned rounds)
 Permutes the Keccak-p[400] state, which is assumed to be in little-endian byte order. More...
 

Detailed Description

Internal implementation of the Keccak-p permutation.

Function Documentation

void keccakp_200_permute ( keccakp_200_state_t state)

Permutes the Keccak-p[200] state.

Parameters
stateThe Keccak-p[200] state to be permuted.
void keccakp_400_permute ( keccakp_400_state_t state,
unsigned  rounds 
)

Permutes the Keccak-p[400] state, which is assumed to be in little-endian byte order.

Parameters
stateThe Keccak-p[400] state to be permuted.
roundsThe number of rounds to perform (up to 20).