4#if defined(USE_ESP32) || defined(USE_ESP8266) || defined(USE_RP2040) || defined(USE_LIBRETINY) || defined(USE_HOST)
8#if defined(USE_ESP32) || defined(USE_LIBRETINY)
22 void init(
const uint8_t *key,
size_t len);
23 void init(
const char *key,
size_t len) { this->
init((
const uint8_t *) key,
len); }
24 void init(
const std::string &key) { this->
init(key.c_str(), key.length()); }
27 void add(
const uint8_t *data,
size_t len);
28 void add(
const char *data,
size_t len) { this->
add((
const uint8_t *) data,
len); }
48#if defined(USE_ESP32) || defined(USE_LIBRETINY)
50 mbedtls_md_context_t
ctx_{};
bool equals_bytes(const uint8_t *expected)
Compare the digest against a provided byte-encoded digest (32 bytes).
mbedtls_md_context_t ctx_
uint8_t digest_[SHA256_DIGEST_SIZE]
static constexpr size_t SHA256_DIGEST_SIZE
bool equals_hex(const char *expected)
Compare the digest against a provided hex-encoded digest (64 bytes).
void add(const char *data, size_t len)
void add(const uint8_t *data, size_t len)
Add bytes of data for the digest.
void get_hex(char *output)
Retrieve the HMAC-SHA256 digest as hex characters.
void get_bytes(uint8_t *output)
Retrieve the HMAC-SHA256 digest as bytes.
void init(const std::string &key)
void calculate()
Compute the digest, based on the provided data.
void init(const uint8_t *key, size_t len)
Initialize a new HMAC-SHA256 digest computation.
void init(const char *key, size_t len)