32 #include "../System/databuffer.h"
41 static std::shared_ptr<SHA512>
create();
51 virtual void hash(
unsigned char out_hash[hash_size])
const = 0;
54 virtual void reset() = 0;
62 virtual void set_hmac(
const void *key_data,
int key_size) = 0;
65 virtual void add(
const void *data,
int size) = 0;
virtual void set_hmac(const void *key_data, int key_size)=0
Enable a HMAC based calculation.
virtual void add(const void *data, int size)=0
Adds data to be hashed.
std::shared_ptr< SHA512 > SHA512Ptr
Definition: sha512.h:76
static std::shared_ptr< SHA512 > create()
Constructs a SHA-512 hash generator.
static const int hash_size
Definition: sha512.h:43
virtual std::string hash(bool uppercase=false) const =0
Returns the calculated hash.
std::shared_ptr< DataBuffer > DataBufferPtr
Definition: databuffer.h:66
virtual void reset()=0
Resets the hash generator.
virtual void calculate()=0
Finalize hash calculation.
SHA-512 hash function class.
Definition: sha512.h:37
Definition: Application/application.h:35