MCUX CLNS
MCUX Crypto Library Normal Secure
mcuxClPsaDriver_Oracle.h
Go to the documentation of this file.
1 /*--------------------------------------------------------------------------*/
2 /* Copyright 2022-2023 NXP */
3 /* */
4 /* NXP Confidential. This software is owned or controlled by NXP and may */
5 /* only be used strictly in accordance with the applicable license terms. */
6 /* By expressly accepting such terms or by downloading, installing, */
7 /* activating and/or otherwise using the software, you are agreeing that */
8 /* you have read, and that you agree to comply with and are bound by, such */
9 /* license terms. If you do not agree to be bound by the applicable license */
10 /* terms, then you may not retain, install, activate or otherwise use the */
11 /* software. */
12 /*--------------------------------------------------------------------------*/
13 
17 #ifndef MCUXCLPSADRIVERORACLE_H_
18 #define MCUXCLPSADRIVERORACLE_H_
19 
20 #include <crypto.h>
21 #include <mcuxClKey.h>
22 #include <mcuxClConfig.h> // Exported features flags header
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
28 // GENERAL NOTE
29 // do not use mcuxClKey_setKeyproperties on any of these keys as it will overwrite pAuxData
30 
44  uint8_t *data,
45  size_t data_size,
46  size_t *data_length,
47  bool internal_representation);
48 
87 
100 
114 
127 
140 
152 
179  const uint8_t *data,
180  size_t data_length,
181  size_t *key_buffer_length,
182  size_t *bits);
183 
203 MCUX_CSSL_ANALYSIS_START_PATTERN_DESCRIPTIVE_IDENTIFIER()
204 psa_status_t mcuxClPsaDriver_Oracle_GetKeyBufferSizeFromKeyData(const psa_key_attributes_t *attributes,
205  const uint8_t *data,
206  size_t data_length,
207  size_t *key_buffer_length);
208 MCUX_CSSL_ANALYSIS_STOP_PATTERN_DESCRIPTIVE_IDENTIFIER()
209 
220 MCUX_CSSL_ANALYSIS_START_PATTERN_DESCRIPTIVE_IDENTIFIER()
221 psa_status_t mcuxClPsaDriver_Oracle_GetBuiltinKeyBufferSize(mbedtls_svc_key_id_t key_id, size_t *key_buffer_size);
222 MCUX_CSSL_ANALYSIS_STOP_PATTERN_DESCRIPTIVE_IDENTIFIER()
223 
236 MCUX_CSSL_ANALYSIS_START_PATTERN_DESCRIPTIVE_IDENTIFIER()
237 psa_status_t mcuxClPsaDriver_Oracle_GetBuiltinKeyBuffer(psa_key_attributes_t *attributes,
238  uint8_t *key_buffer,
239  size_t key_buffer_size,
240  size_t *key_buffer_length);
241 MCUX_CSSL_ANALYSIS_STOP_PATTERN_DESCRIPTIVE_IDENTIFIER()
242 
243 #ifdef __cplusplus
244 } /* extern "C" */
245 #endif
246 
247 #endif /* MCUXCLPSADRIVERORACLE_H_ */
psa_status_t mcuxClPsaDriver_Oracle_UnloadKey(mcuxClKey_Descriptor_t *pKey)
Oracle function for 'unloading' a previously loaded key.
psa_status_t mcuxClPsaDriver_Oracle_GetBuiltinKeyBuffer(psa_key_attributes_t *attributes, uint8_t *key_buffer, size_t key_buffer_size, size_t *key_buffer_length)
Oracle function for making keys that are installed upon boot in S50 and keys derived from those (buil...
psa_status_t mcuxClPsaDriver_Oracle_GetBuiltinKeyBufferSize(mbedtls_svc_key_id_t key_id, size_t *key_buffer_size)
Oracle function for making keys that are installed upon boot in S50 and keys derived from those (buil...
psa_status_t mcuxClPsaDriver_Oracle_GetKeyBufferSizeFromKeyData(const psa_key_attributes_t *attributes, const uint8_t *data, size_t data_length, size_t *key_buffer_length)
Oracle function for determine the size required for a key buffer from the data supplied when importin...
psa_status_t mcuxClPsaDriver_Oracle_LoadKey(mcuxClKey_Descriptor_t *pKey)
Oracle function for loading a key.
psa_status_t mcuxClPsaDriver_Oracle_ResumeKey(mcuxClKey_Descriptor_t *pKey)
Oracle function for 'resuming' a previously 'suspended' key.
struct mcuxClKey_Descriptor mcuxClKey_Descriptor_t
Key descriptor type.
Definition: mcuxClKey_Types.h:81
psa_status_t mcuxClPsaDriver_Oracle_ExportPublicKey(mcuxClKey_Descriptor_t *pKey, uint8_t *data, size_t data_size, size_t *data_length, bool internal_representation)
Oracle function for exporting of the public key created in ELS during KEY_GEN command.
psa_status_t mcuxClPsaDriver_Oracle_StoreKey(mcuxClKey_Descriptor_t *pKey)
Oracle function for saving a key.
psa_status_t mcuxClPsaDriver_Oracle_ReserveKey(mcuxClKey_Descriptor_t *pKey)
Oracle function for allocating storage for a key that will be created by the psa driver.
psa_status_t mcuxClPsaDriver_Oracle_ImportKey(mcuxClKey_Descriptor_t *pKey, const uint8_t *data, size_t data_length, size_t *key_buffer_length, size_t *bits)
Oracle function for executing S50 specific activities when the import of key is done the PSA library ...
psa_status_t mcuxClPsaDriver_Oracle_SuspendKey(mcuxClKey_Descriptor_t *pKey)
Oracle function for 'suspending' a key.
Top-level include file for the mcuxClKey component.