PSA key slot management function declarations. More...
PSA key slot management function declarations.
Definition in file psa_crypto_slot_management.h.
 Include dependency graph for psa_crypto_slot_management.h:
 This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Data Structures | |
| struct | psa_key_slot_t | 
| Structure of a virtual key slot in local memory.  More... | |
Macros | |
| #define | PSA_PROTECTED_KEY_COUNT (CONFIG_PSA_PROTECTED_KEY_COUNT) | 
| Number of allocated slots for keys in protected memory or secure elements.   | |
| #define | PSA_ASYMMETRIC_KEYPAIR_COUNT (CONFIG_PSA_ASYMMETRIC_KEYPAIR_COUNT) | 
| Number of allocated slots for asymmetric key pairs.   | |
| #define | PSA_SINGLE_KEY_COUNT (CONFIG_PSA_SINGLE_KEY_COUNT) | 
| Number of allocated slots for single keys in local memory.   | |
| #define | PSA_KEY_SLOT_COUNT | 
| Complete number of available key slots.   | |
| #define | PSA_KEY_ID_VOLATILE_MIN (PSA_KEY_ID_VENDOR_MIN) | 
| Minimum key id for volatile keys.   | |
| #define | PSA_KEY_ID_VOLATILE_MAX (PSA_KEY_ID_VENDOR_MAX) | 
| Maximum key id for volatile keys.   | |
Functions | |
| void | psa_init_key_slots (void) | 
| Initializes the allocated key slots and prepares the internal key slot lists.  | |
| static int | psa_key_id_is_volatile (psa_key_id_t key_id) | 
| Check whether a key identifier is a volatile key identifier.   | |
| static int | psa_is_key_slot_locked (psa_key_slot_t *slot) | 
| Check whether a key slot is locked.   | |
| psa_key_slot_number_t * | psa_key_slot_get_slot_number (const psa_key_slot_t *slot) | 
| Get slot number in protected memory.   | |
| static int | psa_key_lifetime_is_external (psa_key_lifetime_t lifetime) | 
| Check whether a key is stored on an external device.   | |
| psa_status_t | psa_wipe_key_slot (psa_key_slot_t *slot) | 
| Wipe volatile key slot and its contents.   | |
| void | psa_wipe_all_key_slots (void) | 
| Wipe all existing volatile key slots.  | |
| psa_status_t | psa_get_and_lock_key_slot (psa_key_id_t id, psa_key_slot_t **slot) | 
| Find a key slot in local memory and lock it.   | |
| psa_status_t | psa_persist_key_slot_in_storage (psa_key_slot_t *slot) | 
| Store a key slot in persistent storage.   | |
| psa_status_t | psa_allocate_empty_key_slot (psa_key_id_t *id, const psa_key_attributes_t *attr, psa_key_slot_t **p_slot) | 
| Find a currently empty key slot that is appropriate for the key.   | |
| psa_status_t | psa_lock_key_slot (psa_key_slot_t *slot) | 
| Increase lock count.   | |
| psa_status_t | psa_unlock_key_slot (psa_key_slot_t *slot) | 
| Decrease lock count.   | |
| psa_status_t | psa_validate_key_location (psa_key_lifetime_t lifetime, psa_se_drv_data_t **driver) | 
| Check if key location exists.   | |
| psa_status_t | psa_validate_key_persistence (psa_key_lifetime_t lifetime) | 
| Validate key persistence.   | |
| int | psa_is_valid_key_id (psa_key_id_t id, int vendor) | 
| Check if provided key ID is either a valid user ID or vendor ID.   | |
| size_t | psa_get_key_data_from_key_slot (const psa_key_slot_t *slot, uint8_t **key_data, size_t **key_bytes) | 
| Get key data and key size from key slot.   | |
| void | psa_get_public_key_data_from_key_slot (const psa_key_slot_t *slot, uint8_t **pubkey_data, size_t **pubkey_data_len) | 
| Get public key data and size from key slot.   | |