c64e115f |
1 | /* |
2 | The Keccak sponge function, designed by Guido Bertoni, Joan Daemen, |
3 | Michaƫl Peeters and Gilles Van Assche. For more information, feedback or |
4 | questions, please refer to our website: http://keccak.noekeon.org/ |
5 | |
6 | Implementation by the designers, |
7 | hereby denoted as "the implementer". |
8 | |
9 | To the extent possible under law, the implementer has waived all copyright |
10 | and related or neighboring rights to the source code in this file. |
11 | http://creativecommons.org/publicdomain/zero/1.0/ |
12 | */ |
13 | |
14 | #ifndef _KeccakPermutationInterface_h_ |
15 | #define _KeccakPermutationInterface_h_ |
16 | |
17 | #include "KeccakF-1600-int-set.h" |
18 | |
19 | void KeccakInitialize( void ); |
20 | void KeccakInitializeState(unsigned char *state); |
21 | void KeccakPermutation(unsigned char *state); |
22 | #ifdef ProvideFast576 |
23 | void KeccakAbsorb576bits(unsigned char *state, const unsigned char *data); |
24 | #endif |
25 | #ifdef ProvideFast832 |
26 | void KeccakAbsorb832bits(unsigned char *state, const unsigned char *data); |
27 | #endif |
28 | #ifdef ProvideFast1024 |
29 | void KeccakAbsorb1024bits(unsigned char *state, const unsigned char *data); |
30 | #endif |
31 | #ifdef ProvideFast1088 |
32 | void KeccakAbsorb1088bits(unsigned char *state, const unsigned char *data); |
33 | #endif |
34 | #ifdef ProvideFast1152 |
35 | void KeccakAbsorb1152bits(unsigned char *state, const unsigned char *data); |
36 | #endif |
37 | #ifdef ProvideFast1344 |
38 | void KeccakAbsorb1344bits(unsigned char *state, const unsigned char *data); |
39 | #endif |
40 | void KeccakAbsorb(unsigned char *state, const unsigned char *data, unsigned int laneCount); |
41 | #ifdef ProvideFast1024 |
42 | void KeccakExtract1024bits(const unsigned char *state, unsigned char *data); |
43 | #endif |
44 | void KeccakExtract(const unsigned char *state, unsigned char *data, unsigned int laneCount); |
45 | |
46 | #endif |