MCUX CLNS
MCUX Crypto Library Normal Secure
 
Loading...
Searching...
No Matches
mcuxClRsa_Functions.h
Go to the documentation of this file.
1/*--------------------------------------------------------------------------*/
2/* Copyright 2020-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
19#ifndef MCUXCLRSA_FUNCTIONS_H_
20#define MCUXCLRSA_FUNCTIONS_H_
21
22#include <mcuxClConfig.h> // Exported features flags header
23#include <mcuxClSession.h>
26#include <mcuxClKey_Types.h>
27#include <mcuxClRsa_Types.h>
28#include <mcuxClBuffer.h>
29
30#ifdef __cplusplus
31extern "C" {
32#endif
33
120 mcuxClSession_Handle_t pSession,
121 const mcuxClRsa_Key * const pKey,
122 mcuxCl_InputBuffer_t pMessageOrDigest,
123 const uint32_t messageLength,
124 const mcuxClRsa_SignVerifyMode pPaddingMode,
125 const uint32_t saltLength,
126 const uint32_t options,
127 mcuxCl_Buffer_t pSignature
128);
129
203 mcuxClSession_Handle_t pSession,
204 const mcuxClRsa_Key * const pKey,
205 mcuxCl_InputBuffer_t pMessageOrDigest,
206 const uint32_t messageLength,
207 mcuxCl_Buffer_t pSignature,
208 const mcuxClRsa_SignVerifyMode pVerifyMode,
209 const uint32_t saltLength,
210 const uint32_t options,
211 mcuxCl_Buffer_t pOutput
212);
213
214
284 mcuxClSession_Handle_t pSession,
285 mcuxClKey_Type_t type,
286 mcuxClKey_Protection_t protection,
287 mcuxClKey_Handle_t privKey,
288 uint8_t * pPrivData,
289 uint32_t * const pPrivDataLength,
290 mcuxClKey_Handle_t pubKey,
291 uint8_t * pPubData,
292 uint32_t * const pPubDataLength
293 );
294
295
365 mcuxClSession_Handle_t pSession,
366 mcuxClKey_Type_t type,
367 mcuxClKey_Protection_t protection,
368 mcuxClKey_Handle_t privKey,
369 uint8_t * pPrivData,
370 uint32_t * const pPrivDataLength,
371 mcuxClKey_Handle_t pubKey,
372 uint8_t * pPubData,
373 uint32_t * const pPubDataLength
374 );
375
376 /* mcuxClRsa_Functions */
380
381#ifdef __cplusplus
382} /* extern "C" */
383#endif
384
385#endif /* MCUXCLRSA_FUNCTIONS_H_ */
386
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 mcuxClRsa component.
Top-level include file 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
const mcuxClKey_TypeDescriptor_t * mcuxClKey_Type_t
Key type handle type.
Definition mcuxClKey_Types.h:111
const mcuxClKey_ProtectionDescriptor_t * mcuxClKey_Protection_t
Key protection mechanism type.
Definition mcuxClKey_Types.h:141
mcuxClKey_Descriptor_t *const mcuxClKey_Handle_t
Key handle type.
Definition mcuxClKey_Types.h:88
mcuxClRsa_Status_t mcuxClRsa_KeyGeneration_Plain(mcuxClSession_Handle_t pSession, mcuxClKey_Type_t type, mcuxClKey_Protection_t protection, mcuxClKey_Handle_t privKey, uint8_t *pPrivData, uint32_t *const pPrivDataLength, mcuxClKey_Handle_t pubKey, uint8_t *pPubData, uint32_t *const pPubDataLength)
RSA key generation of private plain key operation.
mcuxClRsa_Status_t mcuxClRsa_verify(mcuxClSession_Handle_t pSession, const mcuxClRsa_Key *const pKey, mcuxCl_InputBuffer_t pMessageOrDigest, const uint32_t messageLength, mcuxCl_Buffer_t pSignature, const mcuxClRsa_SignVerifyMode pVerifyMode, const uint32_t saltLength, const uint32_t options, mcuxCl_Buffer_t pOutput)
RSA verify operation.
mcuxClRsa_Status_t mcuxClRsa_KeyGeneration_Crt(mcuxClSession_Handle_t pSession, mcuxClKey_Type_t type, mcuxClKey_Protection_t protection, mcuxClKey_Handle_t privKey, uint8_t *pPrivData, uint32_t *const pPrivDataLength, mcuxClKey_Handle_t pubKey, uint8_t *pPubData, uint32_t *const pPubDataLength)
Generates an RSA key in CRT format.
mcuxClRsa_Status_t mcuxClRsa_sign(mcuxClSession_Handle_t pSession, const mcuxClRsa_Key *const pKey, mcuxCl_InputBuffer_t pMessageOrDigest, const uint32_t messageLength, const mcuxClRsa_SignVerifyMode pPaddingMode, const uint32_t saltLength, const uint32_t options, mcuxCl_Buffer_t pSignature)
RSA sign operation.
mcuxClRsa_SignVerifyMode_t * mcuxClRsa_SignVerifyMode
Pointer type to Sign/Verify mode.
Definition mcuxClRsa_Types.h:185
uint32_t mcuxClRsa_Status_t
Type for RSA status codes.
Definition mcuxClRsa_Types.h:116
mcuxClSession_Descriptor_t *const mcuxClSession_Handle_t
Type for mcuxClSession Handle.
Definition mcuxClSession_Types.h:113
#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
Structure type for Rsa key, specifying key type and key entries.
Definition mcuxClRsa_Types.h:145