Electroneum
groestl.h File Reference
#include <stdint.h>
Include dependency graph for groestl.h:

Go to the source code of this file.

Classes

struct  hashState
 

Macros

#define ROWS   8
 
#define LENGTHFIELDLEN   ROWS
 
#define COLS512   8
 
#define SIZE512   (ROWS*COLS512)
 
#define ROUNDS512   10
 
#define HASH_BIT_LEN   256
 
#define ROTL32(v, n)   ((((v)<<(n))|((v)>>(32-(n))))&li_32(ffffffff))
 
#define li_32(h)   0x##h##u
 
#define EXT_BYTE(var, n)   ((uint8_t)((uint32_t)(var) >> (8*n)))
 
#define u32BIG(a)
 

Typedefs

typedef unsigned char BitSequence
 
typedef unsigned long long DataLength
 

Functions

void groestl (const BitSequence *, DataLength, BitSequence *)
 

Macro Definition Documentation

◆ COLS512

#define COLS512   8

Definition at line 47 of file groestl.h.

◆ EXT_BYTE

#define EXT_BYTE (   var,
 
)    ((uint8_t)((uint32_t)(var) >> (8*n)))

Definition at line 58 of file groestl.h.

◆ HASH_BIT_LEN

#define HASH_BIT_LEN   256

Definition at line 52 of file groestl.h.

◆ LENGTHFIELDLEN

#define LENGTHFIELDLEN   ROWS

Definition at line 46 of file groestl.h.

◆ li_32

#define li_32 (   h)    0x##h##u

Definition at line 57 of file groestl.h.

◆ ROTL32

#define ROTL32 (   v,
 
)    ((((v)<<(n))|((v)>>(32-(n))))&li_32(ffffffff))

Definition at line 54 of file groestl.h.

◆ ROUNDS512

#define ROUNDS512   10

Definition at line 51 of file groestl.h.

◆ ROWS

#define ROWS   8

Definition at line 45 of file groestl.h.

◆ SIZE512

#define SIZE512   (ROWS*COLS512)

Definition at line 49 of file groestl.h.

◆ u32BIG

#define u32BIG (   a)
Value:
((ROTL32(a,8) & li_32(00FF00FF)) | \
(ROTL32(a,24) & li_32(FF00FF00)))
#define ROTL32(v, n)
Definition: groestl.h:54
#define li_32(h)
Definition: groestl.h:57
const GenericPointer< typename T::ValueType > T2 T::AllocatorType & a
Definition: pointer.h:1124

Definition at line 59 of file groestl.h.

Typedef Documentation

◆ BitSequence

typedef unsigned char BitSequence

Definition at line 65 of file groestl.h.

◆ DataLength

typedef unsigned long long DataLength

Definition at line 66 of file groestl.h.

Function Documentation

◆ groestl()

void groestl ( const BitSequence ,
DataLength  ,
BitSequence  
)