MCUX CLNS
MCUX Crypto Library Normal Secure
 
Loading...
Searching...
No Matches
mcuxClSignature_Functions.h
1/*--------------------------------------------------------------------------*/
2/* Copyright 2020-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
14#ifndef MCUXCLSIGNATURE_FUNCTIONS_H_
15#define MCUXCLSIGNATURE_FUNCTIONS_H_
16
17#include <mcuxClConfig.h> // Exported features flags header
18#include <mcuxClCore_Platform.h>
19#include <mcuxClBuffer.h>
20
21#include <mcuxClSession_Types.h>
22#include <mcuxClKey_Types.h>
23#include <mcuxClSignature_Types.h>
24
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
40#ifdef MCUXCL_FEATURE_SIGNATURE_ONESHOT
48#ifdef MCUXCL_FEATURE_SIGNATURE_SIGN
81MCUX_CSSL_FP_FUNCTION_DECL(mcuxClSignature_sign)
87 uint32_t inSize,
88 mcuxCl_Buffer_t pSignature,
89 uint32_t * const pSignatureSize
90); /* oneshot sign */
91#endif /* MCUXCL_FEATURE_SIGNATURE_SIGN */
92
93#ifdef MCUXCL_FEATURE_SIGNATURE_VERIFY
124MCUX_CSSL_FP_FUNCTION_DECL(mcuxClSignature_verify)
130 uint32_t inSize,
131 mcuxCl_InputBuffer_t pSignature,
132 uint32_t signatureSize
133); /* oneshot verification */
135#endif /* MCUXCL_FEATURE_SIGNATURE_VERIFY */
136#endif /* MCUXCL_FEATURE_SIGNATURE_ONESHOT */
137
138#ifdef MCUXCL_FEATURE_SIGNATURE_SELFTEST
158MCUX_CSSL_FP_FUNCTION_DECL(mcuxClSignature_selftest)
163); /* selftest */
164#endif /* MCUXCL_FEATURE_SIGNATURE_SELFTEST */
165
166
167#ifdef __cplusplus
168} /* extern "C" */
169#endif
170
171#endif /* MCUXCLSIGNATURE_FUNCTIONS_H_ */
Provides the API for the CL buffer types.
Definition of function identifiers for the flow protection mechanism.
Type definitions for the mcuxClKey component.
Type definitions for the mcuxClSession component.
Provides the API for the CSSL flow protection mechanism.
const uint8_t * mcuxCl_InputBuffer_t
Input buffer type.
Definition mcuxClBuffer_Pointer.h:46
uint8_t * mcuxCl_Buffer_t
Input/output buffer type.
Definition mcuxClBuffer_Pointer.h:55
mcuxClKey_Descriptor_t *const mcuxClKey_Handle_t
Key handle type.
Definition mcuxClKey_Types.h:88
mcuxClSession_Descriptor_t *const mcuxClSession_Handle_t
Type for mcuxClSession Handle.
Definition mcuxClSession_Types.h:113
const mcuxClSignature_TestDescriptor_t *const mcuxClSignature_Test_t
Signature selftest mode/algorithm type.
Definition mcuxClSignature_Types.h:83
uint32_t mcuxClSignature_Status_t
Signature status code.
Definition mcuxClSignature_Types.h:107
const mcuxClSignature_ModeDescriptor_t *const mcuxClSignature_Mode_t
Signature mode/algorithm type.
Definition mcuxClSignature_Types.h:60
#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