Secure element driver registration#

Modules#

psa_drv_se_t

Functions#

psa_register_se_driver(psa_key_location_t location, const psa_drv_se_t *methods)

Register an external cryptoprocessor (secure element) driver.

Macros#

#define

The current version of the secure element driver HAL.

Function Documentation#

psa_register_se_driver#

psa_status_t psa_register_se_driver (psa_key_location_t location, const psa_drv_se_t * methods)

Register an external cryptoprocessor (secure element) driver.

Parameters
N/Alocation

The location value through which this driver will be exposed to applications. This driver will be used for all keys such that location == #PSA_KEY_LIFETIME_GET_LOCATION( lifetime ). The value PSA_KEY_LOCATION_LOCAL_STORAGE is reserved and may not be used for drivers. Implementations may reserve other values.

[in]methods

The method table of the driver. This structure must remain valid for as long as the cryptography module keeps running. It is typically a global constant.

This function is only intended to be used by driver code, not by application code. In implementations with separation between the PSA cryptography module and applications, this function should only be available to callers that run in the same memory space as the cryptography module, and should not be exposed to applications running in a different memory space.

This function may be called before psa_crypto_init(). It is implementation-defined whether this function may be called after psa_crypto_init().

Note

  • Implementations store metadata about keys including the lifetime value, which contains the driver's location indicator. Therefore, from one instantiation of the PSA Cryptography library to the next one, if there is a key in storage with a certain lifetime value, you must always register the same driver (or an updated version that communicates with the same secure element) with the same location value.

Returns


Definition at line 1385 of file util/third_party/mbedtls/include/psa/crypto_se_driver.h

Macro Definition Documentation#

PSA_DRV_SE_HAL_VERSION#

#define PSA_DRV_SE_HAL_VERSION
Value:
0x00000005

The current version of the secure element driver HAL.


Definition at line 1331 of file util/third_party/mbedtls/include/psa/crypto_se_driver.h