15 typedef unsigned __int8 uint8_t;
16 typedef unsigned __int64 uint64_t;
40 enum Bits { Keccak224 = 224, Keccak256 = 256, Keccak384 = 384, Keccak512 = 512 };
46 std::string
operator()(
const void* data,
size_t numBytes);
48 std::string
operator()(
const std::string& text);
51 void add(
const void* data,
size_t numBytes);
61 void processBlock(
const void* data);
66 enum { StateSize = 1600 / (8 * 8),
67 MaxBlockSize = 200 - 2 * (224 / 8) };
70 uint64_t m_hash[StateSize];
78 uint8_t m_buffer[MaxBlockSize];
void add(const void *data, size_t numBytes)
add arbitrary number of bytes
Definition: keccak.cpp:172
void reset()
restart
Definition: keccak.cpp:25
std::string operator()(const void *data, size_t numBytes)
compute hash of a memory block
Definition: keccak.cpp:275
Bits
algorithm variants
Definition: keccak.h:40
Keccak(Bits bits=Keccak256)
same as reset()
Definition: keccak.cpp:16
compute Keccak hash (designated SHA3)
Definition: keccak.h:36
std::string getHash()
return latest hash as hex characters
Definition: keccak.cpp:236