18 #define USE_ESP_CRYPTO 19 #include <esp_crypto.h> 26 #define CRYPTO_NAME(hash, name) crypto_##hash##_##name 27 #define CRYPTO_CTX(hash) CRYPTO_NAME(hash, context_t) 28 #define CRYPTO_FUNC_INIT(hash) void CRYPTO_NAME(hash, init)(CRYPTO_CTX(hash) * ctx) 29 #define CRYPTO_FUNC_UPDATE(hash) \ 30 void CRYPTO_NAME(hash, update)(CRYPTO_CTX(hash) * ctx, const void* input, uint32_t length) 31 #define CRYPTO_FUNC_FINAL(hash) void CRYPTO_NAME(hash, final)(uint8_t * digest, CRYPTO_CTX(hash) * ctx) 32 #define CRYPTO_FUNC_GET_STATE(hash) uint64_t CRYPTO_NAME(hash, get_state)(CRYPTO_CTX(hash) * ctx, void* state) 33 #define CRYPTO_FUNC_SET_STATE(hash) \ 34 void CRYPTO_NAME(hash, set_state)(CRYPTO_CTX(hash) * ctx, const void* state, uint64_t count) 36 #define CRYPTO_FUNC_HMAC(hash) \ 37 void CRYPTO_NAME(hash, hmac)(const uint8_t* msg, int msg_len, const uint8_t* key, int key_len, uint8_t* digest) 38 #define CRYPTO_FUNC_HMAC_V(hash) \ 39 void CRYPTO_NAME(hash, hmac_v)(const uint8_t** msg, int* msg_len, int count, const uint8_t* key, int key_len, \ 47 #define MD5_STATESIZE 16 48 #define MD5_BLOCKSIZE 64 52 #define crypto_md5_context_t ESP_MD5_CTX 54 #define crypto_md5_init ESP_MD5_Init 55 #define crypto_md5_update ESP_MD5_Update 56 #define crypto_md5_final ESP_MD5_Final 79 ESP_hmac_md5_v(key, key_len, 1, &msg, &msg_len, digest);
84 ESP_hmac_md5_v(key, key_len, count, msg, msg_len, digest);
93 crypto_md5_hmac_v(&msg, &msg_len, 1, key, key_len, digest);
103 #define SHA1_STATESIZE 20 104 #define SHA1_BLOCKSIZE 64 106 #ifdef USE_ESP_CRYPTO 108 #define crypto_sha1_context_t ESP_SHA1_CTX 109 #define crypto_sha1_init ESP_SHA1_Init 110 #define crypto_sha1_update ESP_SHA1_Update 111 #define crypto_sha1_final ESP_SHA1_Final 130 #ifdef USE_ESP_CRYPTO 134 ESP_hmac_sha1_v(key, key_len, 1, &msg, &msg_len, digest);
139 ESP_hmac_sha1_v(key, key_len, count, msg, msg_len, digest);
148 crypto_sha1_hmac_v(&msg, &msg_len, 1, key, key_len, digest);
157 #define SHA224_SIZE 28 158 #define SHA224_STATESIZE 32 159 #define SHA224_BLOCKSIZE 64 177 #define SHA256_SIZE 32 178 #define SHA256_STATESIZE 32 179 #define SHA256_BLOCKSIZE 64 192 crypto_sha256_hmac_v(&msg, &msg_len, 1, key, key_len, digest);
199 #define SHA384_SIZE 48 200 #define SHA384_STATESIZE 64 201 #define SHA384_BLOCKSIZE 128 219 crypto_sha384_hmac_v(&msg, &msg_len, 1, key, key_len, digest);
226 #define SHA512_SIZE 64 227 #define SHA512_STATESIZE 64 228 #define SHA512_BLOCKSIZE 128 242 crypto_sha512_hmac_v(&msg, &msg_len, 1, key, key_len, digest);
#define MD5_STATESIZE
Definition: HashApi.h:47
#define CRYPTO_FUNC_UPDATE(hash)
Definition: HashApi.h:29
#define CRYPTO_FUNC_HMAC(hash)
Definition: HashApi.h:36
uint32_t count
Definition: HashApi.h:205
#define CRYPTO_FUNC_FINAL(hash)
Definition: HashApi.h:31
#define SHA384_BLOCKSIZE
Definition: HashApi.h:201
uint32_t count
Definition: HashApi.h:163
void sha1(unsigned char h[SHA1_SIZE], const void *_sha1_restrict p, size_t n)
Definition: HashApi.h:161
#define MD5_BLOCKSIZE
Definition: HashApi.h:48
#define SHA1_BLOCKSIZE
Definition: HashApi.h:104
#define SHA224_BLOCKSIZE
Definition: HashApi.h:159
uint32_t count
Bytes in message.
Definition: HashApi.h:62
crypto_sha384_context_t crypto_sha512_context_t
Definition: HashApi.h:230
#define SHA1_STATESIZE
Definition: HashApi.h:103
Definition: HashApi.h:115
#define CRYPTO_FUNC_GET_STATE(hash)
Definition: HashApi.h:32
Definition: HashApi.h:203
uint32_t count
Message length in bytes.
Definition: HashApi.h:117
#define CRYPTO_FUNC_HMAC_V(hash)
Definition: HashApi.h:38
#define CRYPTO_FUNC_INIT(hash)
Definition: HashApi.h:28
#define CRYPTO_FUNC_SET_STATE(hash)
Definition: HashApi.h:33
crypto_sha224_context_t crypto_sha256_context_t
Definition: HashApi.h:181