29 #ifndef MBEDTLS_HKDF_H
30 #define MBEDTLS_HKDF_H
32 #if !defined(MBEDTLS_CONFIG_FILE)
35 #include MBEDTLS_CONFIG_FILE
44 #define MBEDTLS_ERR_HKDF_BAD_INPUT_DATA -0x5F80
76 size_t salt_len,
const unsigned char *ikm,
size_t ikm_len,
77 const unsigned char *info,
size_t info_len,
78 unsigned char *okm,
size_t okm_len );
105 const unsigned char *salt,
size_t salt_len,
106 const unsigned char *ikm,
size_t ikm_len,
107 unsigned char *prk );
136 size_t prk_len,
const unsigned char *info,
137 size_t info_len,
unsigned char *okm,
size_t okm_len );
int mbedtls_hkdf(const mbedtls_md_info_t *md, const unsigned char *salt, size_t salt_len, const unsigned char *ikm, size_t ikm_len, const unsigned char *info, size_t info_len, unsigned char *okm, size_t okm_len)
This is the HMAC-based Extract-and-Expand Key Derivation Function (HKDF).
Configuration options (set of defines)
int mbedtls_hkdf_expand(const mbedtls_md_info_t *md, const unsigned char *prk, size_t prk_len, const unsigned char *info, size_t info_len, unsigned char *okm, size_t okm_len)
Expand the supplied prk into several additional pseudorandom keys, which is the output of the HKDF...
int mbedtls_hkdf_extract(const mbedtls_md_info_t *md, const unsigned char *salt, size_t salt_len, const unsigned char *ikm, size_t ikm_len, unsigned char *prk)
Take the input keying material ikm and extract from it a fixed-length pseudorandom key prk...
This file contains the generic message-digest wrapper.
struct mbedtls_md_info_t mbedtls_md_info_t