Infuse-IoT SDK API 0.0.1
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
keys.h
Go to the documentation of this file.
1
10#ifndef INFUSE_SDK_INCLUDE_INFUSE_EPACKET_KEYS_H_
11#define INFUSE_SDK_INCLUDE_INFUSE_EPACKET_KEYS_H_
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
17#include <stdint.h>
18
19#include <zephyr/sys/util.h>
20
21#include <psa/crypto.h>
22
33
42
59int epacket_key_derive(psa_key_id_t base_key, const uint8_t *info, uint8_t info_len, uint32_t salt,
60 psa_key_id_t *output_key_id);
61
72psa_key_id_t epacket_key_id_get(uint8_t key_type, uint32_t key_identifier, uint32_t key_rotation);
73
81int epacket_key_delete(psa_key_id_t key_id);
82
83#ifdef CONFIG_INFUSE_SECURITY_CHACHA_KEY_EXPORT
84
94int epacket_key_export(psa_key_id_t key_id, uint8_t key[32]);
95
96#endif /* CONFIG_INFUSE_SECURITY_CHACHA_KEY_EXPORT */
97
109int epacket_key_extension_network_add(psa_key_id_t key_id, uint32_t network_id);
110
115#ifdef __cplusplus
116}
117#endif
118
119#endif /* INFUSE_SDK_INCLUDE_INFUSE_EPACKET_KEYS_H_ */
int epacket_key_extension_network_add(psa_key_id_t key_id, uint32_t network_id)
Add another network to the key module.
int epacket_key_derive(psa_key_id_t base_key, const uint8_t *info, uint8_t info_len, uint32_t salt, psa_key_id_t *output_key_id)
HKDF-SHA256 based key derivation.
int epacket_key_delete(psa_key_id_t key_id)
Delete a PSA key ID.
epacket_key_type
Definition keys.h:29
psa_key_id_t epacket_key_id_get(uint8_t key_type, uint32_t key_identifier, uint32_t key_rotation)
Get PSA key ID from ePacket key ID.
epacket_key_interface
Definition keys.h:34
@ EPACKET_KEY_DEVICE
Definition keys.h:31
@ EPACKET_KEY_NETWORK
Definition keys.h:30
@ EPACKET_KEY_INTERFACE_NUM
Definition keys.h:39
@ EPACKET_KEY_INTERFACE_MASK
Definition keys.h:40
@ EPACKET_KEY_INTERFACE_BT_ADV
Definition keys.h:37
@ EPACKET_KEY_INTERFACE_UDP
Definition keys.h:36
@ EPACKET_KEY_INTERFACE_SERIAL
Definition keys.h:35
@ EPACKET_KEY_INTERFACE_BT_GATT
Definition keys.h:38