15 typedef unsigned __int8 uint8_t;
16 typedef unsigned __int64 uint64_t;
42 enum Bits { Keccak224 = 224, Keccak256 = 256, Keccak384 = 384, Keccak512 = 512 };
48 std::string
operator()(
const void* data,
size_t numBytes);
50 std::string
operator()(
const std::string& text);
53 void add(
const void* data,
size_t numBytes);
63 void processBlock(
const void* data);
68 enum { StateSize = 1600 / (8 * 8),
69 MaxBlockSize = 200 - 2 * (224 / 8) };
72 uint64_t m_hash[StateSize];
80 uint8_t m_buffer[MaxBlockSize];
compute Keccak hash (designated SHA3)
Definition: keccak.h:38
void add(const void *data, size_t numBytes)
add arbitrary number of bytes
Definition: keccak.cpp:173
std::string operator()(const void *data, size_t numBytes)
compute hash of a memory block
Definition: keccak.cpp:276
Keccak(Bits bits=Keccak256)
same as reset()
Definition: keccak.cpp:17
Bits
algorithm variants
Definition: keccak.h:42
void reset()
restart
Definition: keccak.cpp:26
std::string getHash()
return latest hash as hex characters
Definition: keccak.cpp:237