15 typedef unsigned __int8 uint8_t;
16 typedef unsigned __int32 uint32_t;
17 typedef unsigned __int64 uint64_t;
41 enum { BlockSize = 512 / 8, HashBytes = 32 };
47 std::string
operator()(
const void* data,
size_t numBytes);
49 std::string
operator()(
const std::string& text);
52 void add(
const void* data,
size_t numBytes);
57 void getHash(
unsigned char buffer[HashBytes]);
64 void processBlock(
const void* data);
73 uint8_t m_buffer[BlockSize];
75 enum { HashValues = HashBytes / 4 };
77 uint32_t m_hash[HashValues];
compute SHA256 hash
Definition: sha256.h:37
void add(const void *data, size_t numBytes)
add arbitrary number of bytes
Definition: sha256.cpp:241
void reset()
restart
Definition: sha256.cpp:23
std::string operator()(const void *data, size_t numBytes)
compute SHA256 of a memory block
Definition: sha256.cpp:397
SHA256()
same as reset()
Definition: sha256.cpp:16
std::string getHash()
return latest hash as 64 hex characters
Definition: sha256.cpp:351