Defines all functions of mcuxClEls_Kdf.
More...
|
MCUXCLELS_API mcuxClEls_Status_t | mcuxClEls_Hkdf_Rfc5869_Async (mcuxClEls_HkdfOption_t options, mcuxClEls_KeyIndex_t derivationKeyIdx, mcuxClEls_KeyIndex_t targetKeyIdx, mcuxClEls_KeyProp_t targetKeyProperties, uint8_t const *pDerivationData) |
| Derives a key using the HKDF (HMAC-based key derivation function) according to RFC5869.
|
|
MCUXCLELS_API mcuxClEls_Status_t | mcuxClEls_Hkdf_Sp80056c_Async (mcuxClEls_KeyIndex_t derivationKeyIdx, uint8_t *pTagetKey, uint8_t const *pDerivationData, size_t derivationDataLength) |
| Derives a key using the HKDF (HMAC-based key derivation function) according to SP800-56C one-step approach with Sha2-256.
|
|
MCUXCLELS_API mcuxClEls_Status_t | mcuxClEls_Ckdf_Sp800108_Async (mcuxClEls_KeyIndex_t derivationKeyIdx, mcuxClEls_KeyIndex_t targetKeyIdx, mcuxClEls_KeyProp_t targetKeyProperties, uint8_t const *pDerivationData) |
| Derives a key using the NIST SP 800-108 CMAC-based Extract-and-Expand Key Derivation Function.
|
|
MCUXCLELS_API mcuxClEls_Status_t | mcuxClEls_TlsGenerateMasterKeyFromPreMasterKey_Async (uint8_t const *pDerivationData, mcuxClEls_KeyProp_t keyProperties, mcuxClEls_KeyIndex_t keyIdx) |
| Generates a TLS master key based on a pre-master key and derivation data, according to the TLS 1.2 specification.
|
|
MCUXCLELS_API mcuxClEls_Status_t | mcuxClEls_TlsGenerateSessionKeysFromMasterKey_Async (uint8_t const *pDerivationData, mcuxClEls_KeyProp_t keyProperties, mcuxClEls_KeyIndex_t keyIdx) |
| Generates TLS session keys based on a master key and derivation data, according to the TLS 1.2 specification.
|
|
Defines all functions of mcuxClEls_Kdf.
◆ mcuxClEls_Hkdf_Rfc5869_Async()
Derives a key using the HKDF (HMAC-based key derivation function) according to RFC5869.
Call mcuxClEls_WaitForOperation to complete the operation.
- Parameters
-
[in] | options | The command options. For more information, see mcuxClEls_HkdfOption_t. |
[in] | derivationKeyIdx | Key index used for derivation. Must be a 256-bit key with HKDF property bit set to 1. |
[in] | targetKeyIdx | Key bank number of the derived key. Will be a 256-bit key, the user must ensure there is enough space in the keystore to hold the derived key. |
[in] | targetKeyProperties | Requested properties for the derived key. The ksize field will be ignored. |
[in] | pDerivationData | The algorithm-specific derivation data, the length is MCUXCLELS_HKDF_RFC5869_DERIVATIONDATA_SIZE bytes |
- Returns
- An error code that can be any error code in MCUXCLELS_STATUS_, see individual documentation for more information
- Return values
-
◆ mcuxClEls_Hkdf_Sp80056c_Async()
Derives a key using the HKDF (HMAC-based key derivation function) according to SP800-56C one-step approach with Sha2-256.
Call mcuxClEls_WaitForOperation to complete the operation.
- Parameters
-
[in] | derivationKeyIdx | Key index used for derivation. Must be a 256-bit key with HKDF property bit set to 1. |
[out] | pTagetKey | Memory area to store the derived key. Will be a 256-bit key, the user must ensure there is enough space in the keystore to hold the derived key. |
[in] | pDerivationData | The algorithm-specific derivation data |
[in] | derivationDataLength | Length of the derivation data |
- Returns
- An error code that can be any error code in MCUXCLELS_STATUS_, see individual documentation for more information
- Return values
-
◆ mcuxClEls_Ckdf_Sp800108_Async()
Derives a key using the NIST SP 800-108 CMAC-based Extract-and-Expand Key Derivation Function.
Call mcuxClEls_WaitForOperation to complete the operation.
- Parameters
-
[in] | derivationKeyIdx | Key index used for derivation |
[in] | targetKeyIdx | Key bank number of the derived key |
[in] | targetKeyProperties | Requested properties for the derived key. Only set usage bits. |
[in] | pDerivationData | The algorithm-specific derivation data, the length is MCUXCLELS_CKDF_DERIVATIONDATA_SIZE bytes |
- Returns
- An error code that can be any error code in MCUXCLELS_STATUS_, see individual documentation for more information
- Return values
-
◆ mcuxClEls_TlsGenerateMasterKeyFromPreMasterKey_Async()
◆ mcuxClEls_TlsGenerateSessionKeysFromMasterKey_Async()
Generates TLS session keys based on a master key and derivation data, according to the TLS 1.2 specification.
The master key and the following five key indices are overwritten in this operation. The keys are written in the following order:
-
Client Encryption Key
-
Client Message Authentication Key
-
Server Encryption Key
-
Server Message Authentication Key
Call mcuxClEls_WaitForOperation to complete the operation.
- Parameters
-
- Returns
- An error code that can be any error code in MCUXCLELS_STATUS_, see individual documentation for more information
- Return values
-
- Examples
- mcuxClEls_Tls_Master_Key_Session_Keys_example.c.