join 1.0
lightweight network framework library
Loading...
Searching...
No Matches
join::Hmac Class Reference

HMAC stream. More...

#include <hmac.hpp>

Inheritance diagram for join::Hmac:
Collaboration diagram for join::Hmac:

Public Member Functions

 Hmac (Digest::Algorithm algo, const std::string &key)
 default constructor.
 
 Hmac (const Hmac &other)=delete
 copy constructor.
 
Hmacoperator= (const Hmac &other)=delete
 copy assignment operator.
 
 Hmac (Hmac &&other)
 move constructor.
 
Hmacoperator= (Hmac &&other)
 move assignment operator.
 
virtual ~Hmac ()=default
 destroy HMAC stream instance.
 
BytesArray finalize ()
 get keyed-hash message authentication code.
 

Static Public Member Functions

static BytesArray md5bin (const char *message, std::streamsize size, const std::string &key)
 get MD5 keyed-hash message authentication code.
 
static BytesArray md5bin (const BytesArray &message, const std::string &key)
 get MD5 keyed-hash message authentication code.
 
static BytesArray md5bin (const std::string &message, const std::string &key)
 get MD5 keyed-hash message authentication code.
 
static std::string md5hex (const char *data, std::streamsize size, const std::string &key)
 get MD5 keyed-hash message authentication code.
 
static std::string md5hex (const BytesArray &data, const std::string &key)
 get MD5 keyed-hash message authentication code.
 
static std::string md5hex (const std::string &data, const std::string &key)
 get MD5 keyed-hash message authentication code.
 
static BytesArray sha1bin (const char *message, std::streamsize size, const std::string &key)
 get SHA1 keyed-hash message authentication code.
 
static BytesArray sha1bin (const BytesArray &message, const std::string &key)
 get SHA1 keyed-hash message authentication code.
 
static BytesArray sha1bin (const std::string &message, const std::string &key)
 get SHA1 keyed-hash message authentication code.
 
static std::string sha1hex (const char *data, std::streamsize size, const std::string &key)
 get SHA1 keyed-hash message authentication code.
 
static std::string sha1hex (const BytesArray &data, const std::string &key)
 get SHA1 keyed-hash message authentication code.
 
static std::string sha1hex (const std::string &data, const std::string &key)
 get SHA1 keyed-hash message authentication code.
 
static BytesArray sha224bin (const char *message, std::streamsize size, const std::string &key)
 get SHA224 keyed-hash message authentication code.
 
static BytesArray sha224bin (const BytesArray &message, const std::string &key)
 get SHA224 keyed-hash message authentication code.
 
static BytesArray sha224bin (const std::string &message, const std::string &key)
 get SHA224 keyed-hash message authentication code.
 
static std::string sha224hex (const char *data, std::streamsize size, const std::string &key)
 get SHA224 keyed-hash message authentication code.
 
static std::string sha224hex (const BytesArray &data, const std::string &key)
 get SHA224 keyed-hash message authentication code.
 
static std::string sha224hex (const std::string &data, const std::string &key)
 get SHA224 keyed-hash message authentication code.
 
static BytesArray sha256bin (const char *message, std::streamsize size, const std::string &key)
 get SHA256 keyed-hash message authentication code.
 
static BytesArray sha256bin (const BytesArray &message, const std::string &key)
 get SHA256 keyed-hash message authentication code.
 
static BytesArray sha256bin (const std::string &message, const std::string &key)
 get SHA256 keyed-hash message authentication code.
 
static std::string sha256hex (const char *data, std::streamsize size, const std::string &key)
 get SHA256 keyed-hash message authentication code.
 
static std::string sha256hex (const BytesArray &data, const std::string &key)
 get SHA256 keyed-hash message authentication code.
 
static std::string sha256hex (const std::string &data, const std::string &key)
 get SHA256 keyed-hash message authentication code.
 
static BytesArray sha384bin (const char *message, std::streamsize size, const std::string &key)
 get SHA384 keyed-hash message authentication code.
 
static BytesArray sha384bin (const BytesArray &message, const std::string &key)
 get SHA384 keyed-hash message authentication code.
 
static BytesArray sha384bin (const std::string &message, const std::string &key)
 get SHA384 keyed-hash message authentication code.
 
static std::string sha384hex (const char *data, std::streamsize size, const std::string &key)
 get SHA384 keyed-hash message authentication code.
 
static std::string sha384hex (const BytesArray &data, const std::string &key)
 get SHA384 keyed-hash message authentication code.
 
static std::string sha384hex (const std::string &data, const std::string &key)
 get SHA384 keyed-hash message authentication code.
 
static BytesArray sha512bin (const char *message, std::streamsize size, const std::string &key)
 get SHA512 keyed-hash message authentication code.
 
static BytesArray sha512bin (const BytesArray &message, const std::string &key)
 get SHA512 keyed-hash message authentication code.
 
static BytesArray sha512bin (const std::string &message, const std::string &key)
 get SHA512 keyed-hash message authentication code.
 
static std::string sha512hex (const char *data, std::streamsize size, const std::string &key)
 get SHA512 keyed-hash message authentication code.
 
static std::string sha512hex (const BytesArray &data, const std::string &key)
 get SHA512 keyed-hash message authentication code.
 
static std::string sha512hex (const std::string &data, const std::string &key)
 get SHA512 keyed-hash message authentication code.
 
static BytesArray sm3bin (const char *message, std::streamsize size, const std::string &key)
 get SM3 keyed-hash message authentication code.
 
static BytesArray sm3bin (const BytesArray &message, const std::string &key)
 get SM3 keyed-hash message authentication code.
 
static BytesArray sm3bin (const std::string &message, const std::string &key)
 get SM3 keyed-hash message authentication code.
 
static std::string sm3hex (const char *data, std::streamsize size, const std::string &key)
 get SM3 keyed-hash message authentication code.
 
static std::string sm3hex (const BytesArray &data, const std::string &key)
 get SM3 keyed-hash message authentication code.
 
static std::string sm3hex (const std::string &data, const std::string &key)
 get SM3 keyed-hash message authentication code.
 

Protected Attributes

Hmacbuf _hmacbuf
 associated HMAC stream buffer.
 

Detailed Description

HMAC stream.

Constructor & Destructor Documentation

◆ Hmac() [1/3]

Hmac::Hmac ( Digest::Algorithm algo,
const std::string & key )

default constructor.

Parameters
algothe message digest algorithm used.
keykey.

◆ Hmac() [2/3]

join::Hmac::Hmac ( const Hmac & other)
delete

copy constructor.

Parameters
otherother object to copy.

◆ Hmac() [3/3]

Hmac::Hmac ( Hmac && other)

move constructor.

Parameters
otherother object to move.

◆ ~Hmac()

virtual join::Hmac::~Hmac ( )
virtualdefault

destroy HMAC stream instance.

Member Function Documentation

◆ finalize()

BytesArray Hmac::finalize ( )

get keyed-hash message authentication code.

Returns
keyed-hash message authentication code.

◆ md5bin() [1/3]

BytesArray Hmac::md5bin ( const BytesArray & message,
const std::string & key )
static

get MD5 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
MD5 keyed-hash message authentication code.

◆ md5bin() [2/3]

BytesArray Hmac::md5bin ( const char * message,
std::streamsize size,
const std::string & key )
static

get MD5 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
sizemessage size.
keykey.
Returns
MD5 keyed-hash message authentication code.

◆ md5bin() [3/3]

BytesArray Hmac::md5bin ( const std::string & message,
const std::string & key )
static

get MD5 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
MD5 keyed-hash message authentication code.

◆ md5hex() [1/3]

std::string Hmac::md5hex ( const BytesArray & data,
const std::string & key )
static

get MD5 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
MD5 keyed-hash message authentication code.

◆ md5hex() [2/3]

std::string Hmac::md5hex ( const char * data,
std::streamsize size,
const std::string & key )
static

get MD5 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
sizemessage size.
keykey.
Returns
MD5 keyed-hash message authentication code.

◆ md5hex() [3/3]

std::string Hmac::md5hex ( const std::string & data,
const std::string & key )
static

get MD5 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
MD5 keyed-hash message authentication code.

◆ operator=() [1/2]

Hmac & join::Hmac::operator= ( const Hmac & other)
delete

copy assignment operator.

Parameters
otherother object to assign.
Returns
current object.

◆ operator=() [2/2]

Hmac & Hmac::operator= ( Hmac && other)

move assignment operator.

Parameters
otherother object to assign.
Returns
current object.

◆ sha1bin() [1/3]

BytesArray Hmac::sha1bin ( const BytesArray & message,
const std::string & key )
static

get SHA1 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA1 keyed-hash message authentication code.

◆ sha1bin() [2/3]

BytesArray Hmac::sha1bin ( const char * message,
std::streamsize size,
const std::string & key )
static

get SHA1 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
sizemessage size.
keykey.
Returns
SHA1 keyed-hash message authentication code.

◆ sha1bin() [3/3]

BytesArray Hmac::sha1bin ( const std::string & message,
const std::string & key )
static

get SHA1 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA1 keyed-hash message authentication code.

◆ sha1hex() [1/3]

std::string Hmac::sha1hex ( const BytesArray & data,
const std::string & key )
static

get SHA1 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA1 keyed-hash message authentication code.

◆ sha1hex() [2/3]

std::string Hmac::sha1hex ( const char * data,
std::streamsize size,
const std::string & key )
static

get SHA1 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
sizemessage size.
keykey.
Returns
SHA1 keyed-hash message authentication code.

◆ sha1hex() [3/3]

std::string Hmac::sha1hex ( const std::string & data,
const std::string & key )
static

get SHA1 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA1 keyed-hash message authentication code.

◆ sha224bin() [1/3]

BytesArray Hmac::sha224bin ( const BytesArray & message,
const std::string & key )
static

get SHA224 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA224 keyed-hash message authentication code.

◆ sha224bin() [2/3]

BytesArray Hmac::sha224bin ( const char * message,
std::streamsize size,
const std::string & key )
static

get SHA224 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
sizemessage size.
keykey.
Returns
SHA224 keyed-hash message authentication code.

◆ sha224bin() [3/3]

BytesArray Hmac::sha224bin ( const std::string & message,
const std::string & key )
static

get SHA224 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA224 keyed-hash message authentication code.

◆ sha224hex() [1/3]

std::string Hmac::sha224hex ( const BytesArray & data,
const std::string & key )
static

get SHA224 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA224 keyed-hash message authentication code.

◆ sha224hex() [2/3]

std::string Hmac::sha224hex ( const char * data,
std::streamsize size,
const std::string & key )
static

get SHA224 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
sizemessage size.
keykey.
Returns
SHA224 keyed-hash message authentication code.

◆ sha224hex() [3/3]

std::string Hmac::sha224hex ( const std::string & data,
const std::string & key )
static

get SHA224 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA224 keyed-hash message authentication code.

◆ sha256bin() [1/3]

BytesArray Hmac::sha256bin ( const BytesArray & message,
const std::string & key )
static

get SHA256 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA256 keyed-hash message authentication code.

◆ sha256bin() [2/3]

BytesArray Hmac::sha256bin ( const char * message,
std::streamsize size,
const std::string & key )
static

get SHA256 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
sizemessage size.
keykey.
Returns
SHA256 keyed-hash message authentication code.

◆ sha256bin() [3/3]

BytesArray Hmac::sha256bin ( const std::string & message,
const std::string & key )
static

get SHA256 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA256 keyed-hash message authentication code.

◆ sha256hex() [1/3]

std::string Hmac::sha256hex ( const BytesArray & data,
const std::string & key )
static

get SHA256 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA256 keyed-hash message authentication code.

◆ sha256hex() [2/3]

std::string Hmac::sha256hex ( const char * data,
std::streamsize size,
const std::string & key )
static

get SHA256 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
sizemessage size.
keykey.
Returns
SHA256 keyed-hash message authentication code.

◆ sha256hex() [3/3]

std::string Hmac::sha256hex ( const std::string & data,
const std::string & key )
static

get SHA256 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA256 keyed-hash message authentication code.

◆ sha384bin() [1/3]

BytesArray Hmac::sha384bin ( const BytesArray & message,
const std::string & key )
static

get SHA384 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA384 keyed-hash message authentication code.

◆ sha384bin() [2/3]

BytesArray Hmac::sha384bin ( const char * message,
std::streamsize size,
const std::string & key )
static

get SHA384 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
sizemessage size.
keykey.
Returns
SHA384 keyed-hash message authentication code.

◆ sha384bin() [3/3]

BytesArray Hmac::sha384bin ( const std::string & message,
const std::string & key )
static

get SHA384 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA384 keyed-hash message authentication code.

◆ sha384hex() [1/3]

std::string Hmac::sha384hex ( const BytesArray & data,
const std::string & key )
static

get SHA384 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA384 keyed-hash message authentication code.

◆ sha384hex() [2/3]

std::string Hmac::sha384hex ( const char * data,
std::streamsize size,
const std::string & key )
static

get SHA384 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
sizemessage size.
keykey.
Returns
SHA384 keyed-hash message authentication code.

◆ sha384hex() [3/3]

std::string Hmac::sha384hex ( const std::string & data,
const std::string & key )
static

get SHA384 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA384 keyed-hash message authentication code.

◆ sha512bin() [1/3]

BytesArray Hmac::sha512bin ( const BytesArray & message,
const std::string & key )
static

get SHA512 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA512 keyed-hash message authentication code.

◆ sha512bin() [2/3]

BytesArray Hmac::sha512bin ( const char * message,
std::streamsize size,
const std::string & key )
static

get SHA512 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
sizemessage size.
keykey.
Returns
SHA512 keyed-hash message authentication code.

◆ sha512bin() [3/3]

BytesArray Hmac::sha512bin ( const std::string & message,
const std::string & key )
static

get SHA512 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA512 keyed-hash message authentication code.

◆ sha512hex() [1/3]

std::string Hmac::sha512hex ( const BytesArray & data,
const std::string & key )
static

get SHA512 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA512 keyed-hash message authentication code.

◆ sha512hex() [2/3]

std::string Hmac::sha512hex ( const char * data,
std::streamsize size,
const std::string & key )
static

get SHA512 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
sizemessage size.
keykey.
Returns
SHA512 keyed-hash message authentication code.

◆ sha512hex() [3/3]

std::string Hmac::sha512hex ( const std::string & data,
const std::string & key )
static

get SHA512 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SHA512 keyed-hash message authentication code.

◆ sm3bin() [1/3]

BytesArray Hmac::sm3bin ( const BytesArray & message,
const std::string & key )
static

get SM3 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SM3 keyed-hash message authentication code.

◆ sm3bin() [2/3]

BytesArray Hmac::sm3bin ( const char * message,
std::streamsize size,
const std::string & key )
static

get SM3 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
sizemessage size.
keykey.
Returns
SM3 keyed-hash message authentication code.

◆ sm3bin() [3/3]

BytesArray Hmac::sm3bin ( const std::string & message,
const std::string & key )
static

get SM3 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SM3 keyed-hash message authentication code.

◆ sm3hex() [1/3]

std::string Hmac::sm3hex ( const BytesArray & data,
const std::string & key )
static

get SM3 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SM3 keyed-hash message authentication code.

◆ sm3hex() [2/3]

std::string Hmac::sm3hex ( const char * data,
std::streamsize size,
const std::string & key )
static

get SM3 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
sizemessage size.
keykey.
Returns
SM3 keyed-hash message authentication code.

◆ sm3hex() [3/3]

std::string Hmac::sm3hex ( const std::string & data,
const std::string & key )
static

get SM3 keyed-hash message authentication code.

Parameters
messagemessage to hash using keyed-hash.
keykey.
Returns
SM3 keyed-hash message authentication code.

Member Data Documentation

◆ _hmacbuf

Hmacbuf join::Hmac::_hmacbuf
protected

associated HMAC stream buffer.


The documentation for this class was generated from the following files: