MCUX CLNS
MCUX Crypto Library Normal Secure
 
Loading...
Searching...
No Matches
mcuxClKey_DerivationAlgorithms_NIST_SP800_56C.h
Go to the documentation of this file.
1/*--------------------------------------------------------------------------*/
2/* Copyright 2023 NXP */
3/* */
4/* NXP Proprietary. 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 */
10/* license terms, then you may not retain, install, activate or otherwise */
11/* use the software. */
12/*--------------------------------------------------------------------------*/
13
19#ifndef MCUXCLKEY_DERIVATIONALGORITHMS_NIST_SP800_56C_H_
20#define MCUXCLKEY_DERIVATIONALGORITHMS_NIST_SP800_56C_H_
21
22#include <mcuxClConfig.h> // Exported features flags header
23
24#include <mcuxCsslAnalysis.h>
25#include <mcuxClKey.h>
26#include <mcuxClMac.h>
27#include <mcuxClHash.h>
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
49 mcuxClKey_DerivationMode_t * pDerivationMode,
50 const mcuxClKey_DerivationAlgorithmDescriptor_t * derivationAlgorithm,
51 mcuxClMac_Mode_t macMode,
52 mcuxClHash_Algo_t hashFunction,
53 uint32_t options // no options for this mode, might remove the parameter
54);
55
59extern const mcuxClKey_DerivationAlgorithmDescriptor_t mcuxClKey_DerivationAlgorithmDescriptor_NIST_SP800_56C_OneStep;
60extern const mcuxClKey_DerivationAlgorithmDescriptor_t mcuxClKey_DerivationAlgorithmDescriptor_NIST_SP800_56C_TwoStep;
61
73MCUX_CSSL_ANALYSIS_START_SUPPRESS_DECLARED_BUT_NEVER_REFERENCED("Consumed by user / customer. Hence, it is declared but never referenced.")
75MCUX_CSSL_ANALYSIS_STOP_SUPPRESS_DECLARED_BUT_NEVER_REFERENCED()
76
85MCUX_CSSL_ANALYSIS_START_SUPPRESS_DECLARED_BUT_NEVER_REFERENCED("Consumed by user / customer. Hence, it is declared but never referenced.")
86static mcuxClKey_DerivationAlgorithm_t mcuxClKey_DerivationAlgorithm_NIST_SP800_56C_TwoStep = &mcuxClKey_DerivationAlgorithmDescriptor_NIST_SP800_56C_TwoStep;
87MCUX_CSSL_ANALYSIS_STOP_SUPPRESS_DECLARED_BUT_NEVER_REFERENCED()
88
89#ifdef __cplusplus
90} /* extern "C" */
91#endif
92
93#endif /* MCUXCLKEY_DERIVATIONALGORITHMS_NIST_SP800_56C_H_ */
Top-level include file for the mcuxClHash component.
Top-level include file for the mcuxClKey component.
static mcuxClKey_DerivationAlgorithm_t mcuxClKey_DerivationAlgorithm_NIST_SP800_56C_OneStep
NIST SP800-56C key derivation algorithm types.
Definition mcuxClKey_DerivationAlgorithms_NIST_SP800_56C.h:74
static mcuxClKey_DerivationAlgorithm_t mcuxClKey_DerivationAlgorithm_NIST_SP800_56C_TwoStep
SP800 56C TwoStep derivation algorithm type.
Definition mcuxClKey_DerivationAlgorithms_NIST_SP800_56C.h:86
mcuxClKey_Status_t mcuxClKey_Derivation_ModeConstructor_NIST_SP800_56C(mcuxClKey_DerivationMode_t *pDerivationMode, const mcuxClKey_DerivationAlgorithmDescriptor_t *derivationAlgorithm, mcuxClMac_Mode_t macMode, mcuxClHash_Algo_t hashFunction, uint32_t options)
Construct a key derivation function (KDF) mode according to NIST SP800-56C.
const mcuxClKey_DerivationAlgorithmDescriptor_t mcuxClKey_DerivationAlgorithmDescriptor_NIST_SP800_56C_OneStep
NIST SP800-56C key derivation algorithm descriptors.
Top-level include file for the mcuxClMac component.
const mcuxClHash_AlgorithmDescriptor_t *const mcuxClHash_Algo_t
Hash mode/algorithm type.
Definition mcuxClHash_Types.h:50
uint32_t mcuxClKey_Status_t
Type for Key component error codes.
Definition mcuxClKey_Types.h:47
const mcuxClMac_ModeDescriptor_t *const mcuxClMac_Mode_t
MAC mode/algorithm type.
Definition mcuxClMac_Types.h:67
#define MCUX_CSSL_FP_FUNCTION_DECL(...)
Declaration of a flow protected function.
Definition mcuxCsslFlowProtection.h:125
#define MCUX_CSSL_FP_PROTECTED_TYPE(resultType)
Based on a given base type, builds a return type with flow protection.
Definition mcuxCsslFlowProtection.h:81