nRF Connect SDK API 2.8.0
Loading...
Searching...
No Matches
modem_attest_token.h File Reference

Modem attestation token and parsing. More...

#include <zephyr/types.h>

Go to the source code of this file.

Data Structures

struct  nrf_attestation_token
 Base64url attestation and COSE strings. More...
 
struct  nrf_attestation_data
 Parsed attestation token data. More...
 
struct  nrf_device_uuid
 Device UUID string (UUID v4 format) More...
 
struct  nrf_modem_fw_uuid
 Modem firmware UUID string (UUID v4 format) More...
 

Macros

#define NRF_UUID_BYTE_SZ   16
 
#define NRF_DEVICE_UUID_SZ   NRF_UUID_BYTE_SZ
 
#define NRF_MODEM_FW_UUID_SZ   NRF_UUID_BYTE_SZ
 
#define NRF_ATTEST_NONCE_SZ   16
 
#define NRF_UUID_V4_STR_LEN   ((NRF_UUID_BYTE_SZ * 2) + 4)
 
#define NRF_DEVICE_UUID_STR_LEN   NRF_UUID_V4_STR_LEN
 
#define NRF_MODEM_FW_UUID_STR_LEN   NRF_UUID_V4_STR_LEN
 

Enumerations

enum  nrf_id_srvc_msg_type {
  NRF_ID_SRVC_MSG_TYPE_INVALID = -1 , NRF_ID_SRVC_MSG_TYPE_ID_V1 = 1 , NRF_ID_SRVC_MSG_TYPE_PROV_RESP_V1 = 5 , NRF_ID_SRVC_MSG_TYPE_PUB_KEY_V2 = 8 ,
  NRF_ID_SRVC_MSG_TYPE_CSR_V2 = 9
}
 
enum  nrf_device_type { NRF_DEVICE_TYPE_INVALID = -1 , NRF_DEVICE_TYPE_9160_SIAA = 1 , NRF_DEVICE_TYPE_9160_SIBA = 2 , NRF_DEVICE_TYPE_9160_SICA = 3 }
 

Functions

int modem_attest_token_get (struct nrf_attestation_token *const token)
 Gets the device attestation token from the modem. If successful, the base64url attestation string and base64url COSE string will be stored in the supplied struct. This function will allocate memory for the strings if buffers are not provided by the user. In that case, the user is responsible for freeing the memory by calling modem_attest_token_free.
 
void modem_attest_token_free (struct nrf_attestation_token *const token)
 Frees the memory allocated by modem_attest_token_get.
 
int modem_attest_token_parse (struct nrf_attestation_token const *const token_in, struct nrf_attestation_data *const data_out)
 Parses attestation token.
 
int modem_attest_token_get_uuids (struct nrf_device_uuid *dev, struct nrf_modem_fw_uuid *mfw)
 Gets the device and/or modem firmware UUID from the modem and returns it as a NULL terminated string in the supplied struct(s).
 

Detailed Description

Modem attestation token and parsing.