38 lines
646 B
C
38 lines
646 B
C
#ifndef iotelic_kdf_H
|
|
#define iotelic_kdf_H
|
|
|
|
#include <stdint.h>
|
|
#include "hash.h"
|
|
|
|
typedef enum {
|
|
KDF_INVALID = -1,
|
|
KDF_2 = 0,
|
|
} KDF_TYPE;
|
|
|
|
typedef enum {
|
|
KDF_ERROR_GENERAL = -1,
|
|
} KDF_RESULT;
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
int
|
|
kdf(KDF_TYPE kdf_type,
|
|
HASH_TYPE hash_type,
|
|
const uint8_t * input, size_t input_sz,
|
|
uint8_t * output, size_t output_sz);
|
|
|
|
int
|
|
hkdf(HASH_TYPE hash_type,
|
|
const uint8_t * input, size_t input_sz,
|
|
const uint8_t * salt, size_t salt_sz,
|
|
const uint8_t * info, size_t info_sz,
|
|
uint8_t * output, size_t output_sz);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // iotelic_kdf_H
|