Infuse-IoT SDK API 0.0.1
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
security.h File Reference

Infuse Platform Security. More...

#include <stdint.h>
#include <stdbool.h>
#include <zephyr/net/tls_credentials.h>
#include <psa/crypto_types.h>

Go to the source code of this file.

Data Structures

struct  infuse_security_key_params
 Parameters to control key creation. More...
 

Functions

int infuse_security_init (void)
 Initialise core security systems.
 
void infuse_security_disable_dap (void)
 Disable the Debug-Access-Port.
 
psa_key_attributes_t infuse_security_hkdf_attributes (void)
 Retrieve the key attributes required for creating a key compatible with infuse_security_derive_chacha_key.
 
void infuse_security_cloud_public_key (uint8_t public_key[32])
 Retrieve current cloud public key.
 
void infuse_security_device_public_key (uint8_t public_key[32])
 Retrieve current device public key.
 
psa_key_id_t infuse_security_device_root_key (void)
 Get device root key identifier.
 
psa_key_id_t infuse_security_device_sign_key (void)
 Get device signing key identifier.
 
psa_key_id_t infuse_security_network_root_key (void)
 Get network root key identifier.
 
psa_key_id_t infuse_security_secondary_network_root_key (void)
 Get secondary network root key identifier.
 
sec_tag_t infuse_security_coap_dtls_tag (void)
 Get security tag for use with Infuse-IoT COAP server.
 
psa_key_id_t infuse_security_derive_key (const struct infuse_security_key_params *params)
 Derive a key for use with PSA.
 
psa_key_id_t infuse_security_derive_chacha_key (psa_key_id_t base_key, const void *salt, size_t salt_len, const void *info, size_t info_len, bool force_export)
 Derive a key for use with ChaCha20-Poly1305.
 
uint32_t infuse_security_device_key_identifier (void)
 Get the current device key identifier.
 
uint32_t infuse_security_network_key_identifier (void)
 Get the current network key identifier.
 
uint32_t infuse_security_secondary_network_key_identifier (void)
 Get the secondary network key identifier.
 

Detailed Description

Infuse Platform Security.

Author
Jordan Yates jorda.nosp@m.n@em.nosp@m.beint.nosp@m..com

SPDX-License-Identifier: FSL-1.1-ALv2

Infuse platform core security module. Initialises PSA and loads root cryptography keys.