libosmogsm 1.9.0.196-9975
Osmocom GSM library
KeccakP-1600-3gpp.c File Reference

Macros

#define ROTATE64(value, n)   ((((uint64_t)(value))<<(n)) | (((uint64_t)(value))>>(64-(n))))
 

Functions

void Keccak_f_64 (uint64_t s[25])
 
void Keccak_f_8 (uint8_t s[200])
 
void Keccak_f_32 (uint32_t s[50])
 

Variables

const uint8_t Rho [25]
 
const uint8_t Pi [25]
 
const uint8_t Iota [24]
 

Macro Definition Documentation

◆ ROTATE64

#define ROTATE64 (   value,
  n 
)    ((((uint64_t)(value))<<(n)) | (((uint64_t)(value))>>(64-(n))))

Function Documentation

◆ Keccak_f_32()

void Keccak_f_32 ( uint32_t  s[50])

References Iota, Pi, and Rho.

◆ Keccak_f_64()

void Keccak_f_64 ( uint64_t  s[25])

References Iota, Pi, Rho, and ROTATE64.

Referenced by tuak_core().

◆ Keccak_f_8()

void Keccak_f_8 ( uint8_t  s[200])

References Iota, Pi, and Rho.

Variable Documentation

◆ Iota

const uint8_t Iota[24]
Initial value:
= {1,146,218,112,155,33,241,89,138,136,57,42,187,203,
217,83,82,192,26,106,241,208,33,120}

Referenced by Keccak_f_32(), Keccak_f_64(), and Keccak_f_8().

◆ Pi

const uint8_t Pi[25]
Initial value:
= {0,6,12,18,24,3,9,10,16,22,1,7,13,19,20,4,5,11,17,
23,2,8,14,15,21}

Referenced by Keccak_f_32(), Keccak_f_64(), and Keccak_f_8().

◆ Rho

const uint8_t Rho[25]
Initial value:
= {0,1,62,28,27,36,44,6,55,20,3,10,43,25,39,41,45,
15,21,8,18,2,61,56,14}

Referenced by Keccak_f_32(), Keccak_f_64(), and Keccak_f_8().