CSSv2 header for key derivation. More...
#include <mcuxClCss_Common.h>
Go to the source code of this file.
Data Structures | |
union | mcuxClCss_CkdfOption_t |
Internal command option bit field for CKDF functions. More... | |
union | mcuxClCss_HkdfOption_t |
Command option bit field for mcuxClCss_Hkdf_Rfc5869_Async. More... | |
union | mcuxClCss_TlsOption_t |
Internal command option bit field for mcuxClCss_TlsGenerateMasterKeyFromPreMasterKey_Async, and mcuxClCss_TlsGenerateMasterKeyFromPreMasterKey_Async. More... | |
Macros | |
#define | MCUXCLCSS_HKDF_VALUE_RTF_DERIV |
Use RTF as derivation input. More... | |
#define | MCUXCLCSS_HKDF_VALUE_MEMORY_DERIV |
Use derivation input from system memory. More... | |
#define | MCUXCLCSS_CKDF_RTF_DERIV |
Use RTF as derivation input. More... | |
#define | MCUXCLCSS_CKDF_SYSTEM_MEMORY_DERIV |
Use derivation input from system memory. More... | |
#define | MCUXCLCSS_CKDF_DERIVATIONDATA_SIZE |
Size of CKDF derivation data. More... | |
#define | MCUXCLCSS_CKDF_ALGO_SP800108 |
Use SP800-108 algorithm. More... | |
#define | MCUXCLCSS_HKDF_RFC5869_DERIVATIONDATA_SIZE |
Size of HKDF derivation data. More... | |
#define | MCUXCLCSS_HKDF_SP80056C_TARGETKEY_SIZE |
Size of HKDF SP800-56C derived key. More... | |
#define | MCUXCLCSS_HKDF_ALGO_RFC5869 |
Use RFC5869 algorithm. More... | |
#define | MCUXCLCSS_HKDF_ALGO_SP80056C |
Use SP800-56C algorithm. More... | |
#define | MCUXCLCSS_TLS_DERIVATIONDATA_SIZE |
Size of TLS derivation data. More... | |
#define | MCUXCLCSS_TLS_RANDOM_SIZE |
Size of random bytes for TLS. More... | |
#define | MCUXCLCSS_TLS_INIT |
Perform master key generation. More... | |
#define | MCUXCLCSS_TLS_FINALIZE |
Perform session key generation. More... | |
Functions | |
MCUXCLCSS_API mcuxClCss_Status_Protected_t | mcuxClCss_Hkdf_Rfc5869_Async (mcuxClCss_HkdfOption_t options, mcuxClCss_KeyIndex_t derivationKeyIdx, mcuxClCss_KeyIndex_t targetKeyIdx, mcuxClCss_KeyProp_t targetKeyProperties, uint8_t const *pDerivationData) |
Derives a key using the HKDF (HMAC-based key derivation function) according to RFC5869. More... | |
MCUXCLCSS_API mcuxClCss_Status_Protected_t | mcuxClCss_Hkdf_Sp80056c_Async (mcuxClCss_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. More... | |
MCUXCLCSS_API mcuxClCss_Status_Protected_t | mcuxClCss_Ckdf_Sp800108_Async (mcuxClCss_KeyIndex_t derivationKeyIdx, mcuxClCss_KeyIndex_t targetKeyIdx, mcuxClCss_KeyProp_t targetKeyProperties, uint8_t const *pDerivationData) |
Derives a key using the NIST SP 800-108 CMAC-based Extract-and-Expand Key Derivation Function. More... | |
MCUXCLCSS_API mcuxClCss_Status_Protected_t | mcuxClCss_TlsGenerateMasterKeyFromPreMasterKey_Async (uint8_t const *pDerivationData, mcuxClCss_KeyProp_t keyProperties, mcuxClCss_KeyIndex_t keyIdx) |
Generates a TLS master key based on a pre-master key and derivation data, according to the TLS 1.2 specification. More... | |
MCUXCLCSS_API mcuxClCss_Status_Protected_t | mcuxClCss_TlsGenerateSessionKeysFromMasterKey_Async (uint8_t const *pDerivationData, mcuxClCss_KeyProp_t keyProperties, mcuxClCss_KeyIndex_t keyIdx) |
Generates TLS session keys based on a master key and derivation data, according to the TLS 1.2 specification. More... | |
CSSv2 header for key derivation.
This header exposes functions that enable using the CSSv2 for various key derivation commands. The supported key derivation algorithms are:
header exposes functions that enable using the CSSv2 for various key derivation commands. The supported key derivation algorithms are CKDF, HKDF, TLS