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 <private/qglobal_p.h>
18 
19 #if QT_CONFIG(sha3_fast)
20 #include "KeccakF-1600-int-set.h"
21 #endif
22 
23 static void KeccakInitialize( void );
24 static void KeccakInitializeState(unsigned char *state);
25 static void KeccakPermutation(unsigned char *state);
26 #ifdef ProvideFast576
27 static void KeccakAbsorb576bits(unsigned char *state, const unsigned char *data);
28 #endif
29 #ifdef ProvideFast832
30 static void KeccakAbsorb832bits(unsigned char *state, const unsigned char *data);
31 #endif
32 #ifdef ProvideFast1024
33 static void KeccakAbsorb1024bits(unsigned char *state, const unsigned char *data);
34 #endif
35 #ifdef ProvideFast1088
36 static void KeccakAbsorb1088bits(unsigned char *state, const unsigned char *data);
37 #endif
38 #ifdef ProvideFast1152
39 static void KeccakAbsorb1152bits(unsigned char *state, const unsigned char *data);
40 #endif
41 #ifdef ProvideFast1344
42 static void KeccakAbsorb1344bits(unsigned char *state, const unsigned char *data);
43 #endif
44 static void KeccakAbsorb(unsigned char *state, const unsigned char *data, unsigned int laneCount);
45 #ifdef ProvideFast1024
46 static void KeccakExtract1024bits(const unsigned char *state, unsigned char *data);
47 #endif
48 static void KeccakExtract(const unsigned char *state, unsigned char *data, unsigned int laneCount);
49 
50 #endif
51