summaryrefslogtreecommitdiff
path: root/libs/libaxolotl/src/hkdf.h
blob: 8e939485c362b4f6c5dbbdf4b960416c65b95aa9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#ifndef HKDF_H
#define HKDF_H

#include <stdint.h>
#include <stddef.h>
#include "axolotl_types.h"

#ifdef __cplusplus
extern "C" {
#endif

int hkdf_create(hkdf_context **context, int message_version, axolotl_context *global_context);

ssize_t hkdf_derive_secrets(hkdf_context *context,
        uint8_t **output,
        const uint8_t *input_key_material, size_t input_key_material_len,
        const uint8_t *salt, size_t salt_len,
        const uint8_t *info, size_t info_len,
        size_t output_len);

int hkdf_compare(const hkdf_context *context1, const hkdf_context *context2);

void hkdf_destroy(axolotl_type_base *type);

#ifdef __cplusplus
}
#endif

#endif /* HKDF_H */