37 memcpy(i_key_pad, key, keylen);
45 memset(i_key_pad, 0,
sizeof(i_key_pad));
61 memset(hash, 0,
sizeof(hash));
66 void hmac_sha256(uint8_t *
key, uint32_t keylen, uint8_t *msg, uint32_t msglen, uint8_t *hmac) {
#define SHA256_BLOCK_LENGTH
ICACHE_FLASH_ATTR void sha256_raw(uint8_t *data, size_t len, uint8_t digest[SHA256_DIGEST_LENGTH])
#define ICACHE_FLASH_ATTR
ICACHE_FLASH_ATTR void hmac_sha256(uint8_t *key, uint32_t keylen, uint8_t *msg, uint32_t msglen, uint8_t *hmac)
ICACHE_FLASH_ATTR void hmac_sha256_update(hmac_sha256_ctx_t *hctx, uint8_t *msg, uint32_t msglen)
ICACHE_FLASH_ATTR void sha256_final(sha256_ctx_t *context, uint8_t digest[SHA256_DIGEST_LENGTH])
uint8_t o_key_pad[SHA256_BLOCK_LENGTH]
ICACHE_FLASH_ATTR void hmac_sha256_final(hmac_sha256_ctx_t *hctx, uint8_t *hmac)
ICACHE_FLASH_ATTR void sha256_init(sha256_ctx_t *context)
#define SHA256_DIGEST_LENGTH
ICACHE_FLASH_ATTR void sha256_update(sha256_ctx_t *context, uint8_t *data, size_t len)
ICACHE_FLASH_ATTR void hmac_sha256_init(hmac_sha256_ctx_t *hctx, uint8_t *key, uint32_t keylen)