hmac_sha256/hmac_sha256.h

37 lines
805 B
C
Raw Normal View History

2019-05-20 03:43:18 +00:00
/*
hmac_sha256.h
Originally written by https://github.com/h5p9sl
*/
#ifndef _HMAC_SHA256_H_
#define _HMAC_SHA256_H_
2019-07-05 02:27:00 +00:00
#ifdef __cplusplus
extern "C" {
#endif // __cplusplus
2019-07-05 02:27:00 +00:00
#include <stddef.h>
size_t // Returns the number of bytes written to `out`
hmac_sha256(
// [in]: The key and its length.
// Should be at least 32 bytes long for optimal security.
const void* key,
const size_t keylen,
// [in]: The data to hash alongside the key.
const void* data,
const size_t datalen,
// [out]: The output hash.
// Should be 32 bytes long. If it's less than 32 bytes,
// the resulting hash will be truncated to the specified length.
void* out,
const size_t outlen);
2019-05-20 03:43:18 +00:00
2019-07-05 02:27:00 +00:00
#ifdef __cplusplus
}
#endif // __cplusplus
2019-05-20 03:43:18 +00:00
#endif // _HMAC_SHA256_H_