Mbed OS Reference
|
The interfaces defined in this file are meant to provide the following attributes of the device: More...
Go to the source code of this file.
Macros | |
#define | INSTANCE_ID_MAX_SIZE (33u) |
Maximum size of instance ID in bytes. More... | |
#define | IMPLEMENTATION_ID_MAX_SIZE (32u) |
Maximum size of implementation ID in bytes. More... | |
#define | HW_VERSION_MAX_SIZE (18u) |
Maximum size of hardware version in bytes. More... | |
Functions | |
enum tfm_plat_err_t | tfm_plat_get_instance_id (uint32_t *size, uint8_t *buf) |
Get the UEID of the device. More... | |
enum tfm_plat_err_t | tfm_plat_get_implementation_id (uint32_t *size, uint8_t *buf) |
Get the Implementation ID of the device. More... | |
enum tfm_plat_err_t | tfm_plat_get_hw_version (uint32_t *size, uint8_t *buf) |
Get the hardware version of the device. More... | |
The interfaces defined in this file are meant to provide the following attributes of the device:
Definition in file tfm_plat_device_id.h.
#define INSTANCE_ID_MAX_SIZE (33u) |
Maximum size of instance ID in bytes.
Definition at line 37 of file tfm_plat_device_id.h.
#define IMPLEMENTATION_ID_MAX_SIZE (32u) |
Maximum size of implementation ID in bytes.
Definition at line 44 of file tfm_plat_device_id.h.
#define HW_VERSION_MAX_SIZE (18u) |
Maximum size of hardware version in bytes.
Recommended to use the European Article Number format: EAN-13+5
Definition at line 53 of file tfm_plat_device_id.h.
enum tfm_plat_err_t tfm_plat_get_instance_id | ( | uint32_t * | size, |
uint8_t * | buf | ||
) |
Get the UEID of the device.
This mandatory claim represents the unique identifier of the instance. In the PSA definition is a hash of the public attestation key of the instance. The claim will be represented by the EAT standard claim UEID of type GUID. The EAT definition of a GUID type is that it will be between 128 & 256 bits but this implementation will use the full 256 bits to accommodate a hash result.
[in,out] | size | As an input value it indicates the size of the caller allocated buffer (in bytes) to store the UEID. At return its value is updated with the exact size of the UEID. |
[out] | buf | Pointer to the buffer to store the UEID |
enum tfm_plat_err_t tfm_plat_get_implementation_id | ( | uint32_t * | size, |
uint8_t * | buf | ||
) |
Get the Implementation ID of the device.
This mandatory claim represents the original implementation signer of the attestation key and identifies the contract between the report and verification. A verification service will use this claim to locate the details of the verification process. The claim will be represented by a custom EAT claim with a value consisting of a CBOR byte string. The size of this string will normally be 32 bytes to accommodate a 256 bit hash.
[in,out] | size | As an input value it indicates the size of the caller allocated buffer (in bytes) to store the implementation ID. At return its value is updated with the exact size of the implementation ID. |
[out] | buf | Pointer to the buffer to store the implementation ID |
enum tfm_plat_err_t tfm_plat_get_hw_version | ( | uint32_t * | size, |
uint8_t * | buf | ||
) |
Get the hardware version of the device.
This optional claim provides metadata linking the token to the GDSII that went to fabrication for this instance. It is represented as CBOR text string. It is recommended to use for identification the format of the European Article Number: EAN-13+5.
[in,out] | size | As an input value it indicates the size of the caller allocated buffer (in bytes) to store the HW version. At return its value is updated with the exact size of the HW version. |
[out] | buf | Pointer to the buffer to store the HW version |