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