re/include/re_hmac.h

27 lines
677 B
C
Raw Permalink Normal View History

2010-11-03 11:34:14 +00:00
/**
* @file re_hmac.h Interface to HMAC functions
*
* Copyright (C) 2010 Creytiv.com
*/
void hmac_sha1(const uint8_t *k, /* secret key */
size_t lk, /* length of the key in bytes */
const uint8_t *d, /* data */
size_t ld, /* length of data in bytes */
uint8_t* out, /* output buffer, at least "t" bytes */
size_t t);
2014-03-26 14:04:58 +00:00
enum hmac_hash {
2016-02-01 08:04:53 +00:00
HMAC_HASH_SHA1,
HMAC_HASH_SHA256
2014-03-26 14:04:58 +00:00
};
struct hmac;
int hmac_create(struct hmac **hmacp, enum hmac_hash hash,
const uint8_t *key, size_t key_len);
int hmac_digest(struct hmac *hmac, uint8_t *md, size_t md_len,
const uint8_t *data, size_t data_len);