MCUX CLNS
MCUX Crypto Library Normal Secure
Loading...
Searching...
No Matches
mcuxClRsa_MemoryConsumption.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_MEMORYCONSUMPTION_H_
20
#define MCUXCLRSA_MEMORYCONSUMPTION_H_
21
22
#if defined(MCUXCL_FEATURE_CIPHER_RSA_ENCRYPT) || defined(MCUXCL_FEATURE_CIPHER_RSA_DECRYPT)
23
#define MCUXCLRSA_CIPHER_MODE_SIZE ($(mcuxClRsa_Cipher_AlgorithmMode_Descriptors_Size)u)
24
#endif
/* defined(MCUXCL_FEATURE_CIPHER_RSA_ENCRYPT) || defined(MCUXCL_FEATURE_CIPHER_RSA_DECRYPT) */
25
26
27
#ifdef MCUXCL_FEATURE_CIPHER_RSA_ENCRYPT
28
/****************************************************************************/
29
/* Definitions of workarea sizes for the RSA encryption. */
30
/****************************************************************************/
31
38
#define MCUXCLRSA_ENCRYPT_1024_WACPU_SIZE ($(mcuxClRsa_Util_Encrypt_1024_WaCPU)u)
39
#define MCUXCLRSA_ENCRYPT_2048_WACPU_SIZE ($(mcuxClRsa_Util_Encrypt_2048_WaCPU)u)
40
#define MCUXCLRSA_ENCRYPT_3072_WACPU_SIZE ($(mcuxClRsa_Util_Encrypt_3072_WaCPU)u)
41
#define MCUXCLRSA_ENCRYPT_4096_WACPU_SIZE ($(mcuxClRsa_Util_Encrypt_4096_WaCPU)u)
42
#define MCUXCLRSA_ENCRYPT_WACPU_SIZE(keyBitLength) \
43
((3072u < (keyBitLength)) ? MCUXCLRSA_ENCRYPT_4096_WACPU_SIZE : \
44
((2048u < (keyBitLength)) ? MCUXCLRSA_ENCRYPT_3072_WACPU_SIZE : \
45
((1024u < (keyBitLength)) ? MCUXCLRSA_ENCRYPT_2048_WACPU_SIZE : \
46
MCUXCLRSA_ENCRYPT_1024_WACPU_SIZE)))
47
48
#define MCUXCLRSA_ENCRYPT_1024_WAPKC_SIZE ($(mcuxClRsa_Util_Encrypt_1024_WaPKC)u)
49
#define MCUXCLRSA_ENCRYPT_2048_WAPKC_SIZE ($(mcuxClRsa_Util_Encrypt_2048_WaPKC)u)
50
#define MCUXCLRSA_ENCRYPT_3072_WAPKC_SIZE ($(mcuxClRsa_Util_Encrypt_3072_WaPKC)u)
51
#define MCUXCLRSA_ENCRYPT_4096_WAPKC_SIZE ($(mcuxClRsa_Util_Encrypt_4096_WaPKC)u)
52
#define MCUXCLRSA_ENCRYPT_WAPKC_SIZE(keyBitLength) \
53
((3072u < (keyBitLength)) ? MCUXCLRSA_ENCRYPT_4096_WAPKC_SIZE : \
54
((2048u < (keyBitLength)) ? MCUXCLRSA_ENCRYPT_3072_WAPKC_SIZE : \
55
((1024u < (keyBitLength)) ? MCUXCLRSA_ENCRYPT_2048_WAPKC_SIZE : \
56
MCUXCLRSA_ENCRYPT_1024_WAPKC_SIZE)))
57
59
#endif
/* MCUXCL_FEATURE_CIPHER_RSA_ENCRYPT */
60
#ifdef MCUXCL_FEATURE_CIPHER_RSA_DECRYPT
61
/****************************************************************************/
62
/* Definitions of workarea sizes for the RSA decryption. */
63
/****************************************************************************/
64
71
#define MCUXCLRSA_DECRYPT_1024_WACPU_SIZE ($(mcuxClRsa_Util_Decrypt_1024_WaCPU)u)
72
#define MCUXCLRSA_DECRYPT_2048_WACPU_SIZE ($(mcuxClRsa_Util_Decrypt_2048_WaCPU)u)
73
#define MCUXCLRSA_DECRYPT_3072_WACPU_SIZE ($(mcuxClRsa_Util_Decrypt_3072_WaCPU)u)
74
#define MCUXCLRSA_DECRYPT_4096_WACPU_SIZE ($(mcuxClRsa_Util_Decrypt_4096_WaCPU)u)
75
#define MCUXCLRSA_DECRYPT_WACPU_SIZE(keyBitLength) \
76
((3072u < (keyBitLength)) ? MCUXCLRSA_DECRYPT_4096_WACPU_SIZE : \
77
((2048u < (keyBitLength)) ? MCUXCLRSA_DECRYPT_3072_WACPU_SIZE : \
78
((1024u < (keyBitLength)) ? MCUXCLRSA_DECRYPT_2048_WACPU_SIZE : \
79
MCUXCLRSA_DECRYPT_1024_WACPU_SIZE)))
80
81
#define MCUXCLRSA_DECRYPT_1024_WAPKC_SIZE ($(mcuxClRsa_Util_Decrypt_1024_WaPKC)u)
82
#define MCUXCLRSA_DECRYPT_2048_WAPKC_SIZE ($(mcuxClRsa_Util_Decrypt_2048_WaPKC)u)
83
#define MCUXCLRSA_DECRYPT_3072_WAPKC_SIZE ($(mcuxClRsa_Util_Decrypt_3072_WaPKC)u)
84
#define MCUXCLRSA_DECRYPT_4096_WAPKC_SIZE ($(mcuxClRsa_Util_Decrypt_4096_WaPKC)u)
85
#define MCUXCLRSA_DECRYPT_WAPKC_SIZE(keyBitLength) \
86
((3072u < (keyBitLength)) ? MCUXCLRSA_DECRYPT_4096_WAPKC_SIZE : \
87
((2048u < (keyBitLength)) ? MCUXCLRSA_DECRYPT_3072_WAPKC_SIZE : \
88
((1024u < (keyBitLength)) ? MCUXCLRSA_DECRYPT_2048_WAPKC_SIZE : \
89
MCUXCLRSA_DECRYPT_1024_WAPKC_SIZE)))
90
92
#endif
/* MCUXCL_FEATURE_CIPHER_RSA_DECRYPT */
93
/****************************************************************************/
94
/* Definitions of workarea sizes for the mcuxClRsa Sign */
95
/****************************************************************************/
96
103
#define MCUXCLRSA_SIGN_PLAIN_NOENCODE_1024_WACPU_SIZE (152u)
104
#define MCUXCLRSA_SIGN_PLAIN_NOENCODE_2048_WACPU_SIZE (280u)
105
#define MCUXCLRSA_SIGN_PLAIN_NOENCODE_3072_WACPU_SIZE (408u)
106
#define MCUXCLRSA_SIGN_PLAIN_NOENCODE_4096_WACPU_SIZE (536u)
107
108
#define MCUXCLRSA_SIGN_PLAIN_NOENCODE_WACPU_SIZE(keyBitLength) \
109
((3072u < (keyBitLength)) ? MCUXCLRSA_SIGN_PLAIN_NOENCODE_4096_WACPU_SIZE : \
110
((2048u < (keyBitLength)) ? MCUXCLRSA_SIGN_PLAIN_NOENCODE_3072_WACPU_SIZE : \
111
((1024u < (keyBitLength)) ? MCUXCLRSA_SIGN_PLAIN_NOENCODE_2048_WACPU_SIZE : \
112
MCUXCLRSA_SIGN_PLAIN_NOENCODE_1024_WACPU_SIZE)))
113
114
#define MCUXCLRSA_SIGN_PLAIN_PSSENCODE_1024_WACPU_SIZE (196u)
115
#define MCUXCLRSA_SIGN_PLAIN_PSSENCODE_2048_WACPU_SIZE (280u)
116
#define MCUXCLRSA_SIGN_PLAIN_PSSENCODE_3072_WACPU_SIZE (408u)
117
#define MCUXCLRSA_SIGN_PLAIN_PSSENCODE_4096_WACPU_SIZE (536u)
118
#define MCUXCLRSA_SIGN_PLAIN_PSSENCODE_WACPU_SIZE(keyBitLength) \
119
((3072u < (keyBitLength)) ? MCUXCLRSA_SIGN_PLAIN_PSSENCODE_4096_WACPU_SIZE : \
120
((2048u < (keyBitLength)) ? MCUXCLRSA_SIGN_PLAIN_PSSENCODE_3072_WACPU_SIZE : \
121
((1024u < (keyBitLength)) ? MCUXCLRSA_SIGN_PLAIN_PSSENCODE_2048_WACPU_SIZE : \
122
MCUXCLRSA_SIGN_PLAIN_PSSENCODE_1024_WACPU_SIZE)))
123
124
#define MCUXCLRSA_SIGN_PLAIN_PKCS1V15ENCODE_1024_WACPU_SIZE (196u)
125
#define MCUXCLRSA_SIGN_PLAIN_PKCS1V15ENCODE_2048_WACPU_SIZE (280u)
126
#define MCUXCLRSA_SIGN_PLAIN_PKCS1V15ENCODE_3072_WACPU_SIZE (408u)
127
#define MCUXCLRSA_SIGN_PLAIN_PKCS1V15ENCODE_4096_WACPU_SIZE (536u)
128
#define MCUXCLRSA_SIGN_PLAIN_PKCS1V15ENCODE_WACPU_SIZE(keyBitLength) \
129
((3072u < (keyBitLength)) ? MCUXCLRSA_SIGN_PLAIN_PKCS1V15ENCODE_4096_WACPU_SIZE : \
130
((2048u < (keyBitLength)) ? MCUXCLRSA_SIGN_PLAIN_PKCS1V15ENCODE_3072_WACPU_SIZE : \
131
((1024u < (keyBitLength)) ? MCUXCLRSA_SIGN_PLAIN_PKCS1V15ENCODE_2048_WACPU_SIZE : \
132
MCUXCLRSA_SIGN_PLAIN_PKCS1V15ENCODE_1024_WACPU_SIZE)))
133
134
#define MCUXCLRSA_SIGN_PLAIN_1024_WAPKC_SIZE (1064u)
135
#define MCUXCLRSA_SIGN_PLAIN_2048_WAPKC_SIZE (1960u)
136
#define MCUXCLRSA_SIGN_PLAIN_3072_WAPKC_SIZE (2856u)
137
#define MCUXCLRSA_SIGN_PLAIN_4096_WAPKC_SIZE (3752u)
138
#define MCUXCLRSA_SIGN_PLAIN_WAPKC_SIZE(keyBitLength) \
139
((3072u < (keyBitLength)) ? MCUXCLRSA_SIGN_PLAIN_4096_WAPKC_SIZE : \
140
((2048u < (keyBitLength)) ? MCUXCLRSA_SIGN_PLAIN_3072_WAPKC_SIZE : \
141
((1024u < (keyBitLength)) ? MCUXCLRSA_SIGN_PLAIN_2048_WAPKC_SIZE : \
142
MCUXCLRSA_SIGN_PLAIN_1024_WAPKC_SIZE)))
143
144
#define MCUXCLRSA_SIGN_CRT_NOENCODE_1024_WACPU_SIZE (104u)
145
#define MCUXCLRSA_SIGN_CRT_NOENCODE_2048_WACPU_SIZE (168u)
146
#define MCUXCLRSA_SIGN_CRT_NOENCODE_3072_WACPU_SIZE (232u)
147
#define MCUXCLRSA_SIGN_CRT_NOENCODE_4096_WACPU_SIZE (296u)
148
149
#define MCUXCLRSA_SIGN_CRT_NOENCODE_WACPU_SIZE(keyBitLength) \
150
((3072u < (keyBitLength)) ? MCUXCLRSA_SIGN_CRT_NOENCODE_4096_WACPU_SIZE : \
151
((2048u < (keyBitLength)) ? MCUXCLRSA_SIGN_CRT_NOENCODE_3072_WACPU_SIZE : \
152
((1024u < (keyBitLength)) ? MCUXCLRSA_SIGN_CRT_NOENCODE_2048_WACPU_SIZE : \
153
MCUXCLRSA_SIGN_CRT_NOENCODE_1024_WACPU_SIZE)))
154
155
#define MCUXCLRSA_SIGN_CRT_PSSENCODE_1024_WACPU_SIZE (196u)
156
#define MCUXCLRSA_SIGN_CRT_PSSENCODE_2048_WACPU_SIZE (196u)
157
#define MCUXCLRSA_SIGN_CRT_PSSENCODE_3072_WACPU_SIZE (232u)
158
#define MCUXCLRSA_SIGN_CRT_PSSENCODE_4096_WACPU_SIZE (296u)
159
#define MCUXCLRSA_SIGN_CRT_PSSENCODE_WACPU_SIZE(keyBitLength) \
160
((3072u < (keyBitLength)) ? MCUXCLRSA_SIGN_CRT_PSSENCODE_4096_WACPU_SIZE : \
161
((2048u < (keyBitLength)) ? MCUXCLRSA_SIGN_CRT_PSSENCODE_3072_WACPU_SIZE : \
162
((1024u < (keyBitLength)) ? MCUXCLRSA_SIGN_CRT_PSSENCODE_2048_WACPU_SIZE : \
163
MCUXCLRSA_SIGN_CRT_PSSENCODE_1024_WACPU_SIZE)))
164
165
#define MCUXCLRSA_SIGN_CRT_PKCS1V15ENCODE_1024_WACPU_SIZE (196u)
166
#define MCUXCLRSA_SIGN_CRT_PKCS1V15ENCODE_2048_WACPU_SIZE (196u)
167
#define MCUXCLRSA_SIGN_CRT_PKCS1V15ENCODE_3072_WACPU_SIZE (232u)
168
#define MCUXCLRSA_SIGN_CRT_PKCS1V15ENCODE_4096_WACPU_SIZE (296u)
169
#define MCUXCLRSA_SIGN_CRT_PKCS1V15ENCODE_WACPU_SIZE(keyBitLength) \
170
((3072u < (keyBitLength)) ? MCUXCLRSA_SIGN_CRT_PKCS1V15ENCODE_4096_WACPU_SIZE : \
171
((2048u < (keyBitLength)) ? MCUXCLRSA_SIGN_CRT_PKCS1V15ENCODE_3072_WACPU_SIZE : \
172
((1024u < (keyBitLength)) ? MCUXCLRSA_SIGN_CRT_PKCS1V15ENCODE_2048_WACPU_SIZE : \
173
MCUXCLRSA_SIGN_CRT_PKCS1V15ENCODE_1024_WACPU_SIZE)))
174
175
#define MCUXCLRSA_SIGN_CRT_1024_WAPKC_SIZE (1000u)
176
#define MCUXCLRSA_SIGN_CRT_2048_WAPKC_SIZE (1896u)
177
#define MCUXCLRSA_SIGN_CRT_3072_WAPKC_SIZE (2792u)
178
#define MCUXCLRSA_SIGN_CRT_4096_WAPKC_SIZE (3688u)
179
#define MCUXCLRSA_SIGN_CRT_WAPKC_SIZE(keyBitLength) \
180
((3072u < (keyBitLength)) ? MCUXCLRSA_SIGN_CRT_4096_WAPKC_SIZE : \
181
((2048u < (keyBitLength)) ? MCUXCLRSA_SIGN_CRT_3072_WAPKC_SIZE : \
182
((1024u < (keyBitLength)) ? MCUXCLRSA_SIGN_CRT_2048_WAPKC_SIZE : \
183
MCUXCLRSA_SIGN_CRT_1024_WAPKC_SIZE)))
184
187
/****************************************************************************/
188
/* Definitions of workarea sizes for the mcuxClRsa Verify */
189
/****************************************************************************/
198
#define MCUXCLRSA_VERIFY_NOVERIFY_WACPU_SIZE (20u)
199
#define MCUXCLRSA_VERIFY_PSSVERIFY_WACPU_SIZE (196u)
200
#define MCUXCLRSA_VERIFY_PKCS1V15VERIFY_WACPU_SIZE (196u)
201
202
#define MCUXCLRSA_VERIFY_1024_WAPKC_SIZE (864u)
203
#define MCUXCLRSA_VERIFY_2048_WAPKC_SIZE (1632u)
204
#define MCUXCLRSA_VERIFY_3072_WAPKC_SIZE (2400u)
205
#define MCUXCLRSA_VERIFY_4096_WAPKC_SIZE (3168u)
206
#define MCUXCLRSA_VERIFY_WAPKC_SIZE(keyBitLength) \
207
((3072u < (keyBitLength)) ? MCUXCLRSA_VERIFY_4096_WAPKC_SIZE : \
208
((2048u < (keyBitLength)) ? MCUXCLRSA_VERIFY_3072_WAPKC_SIZE : \
209
((1024u < (keyBitLength)) ? MCUXCLRSA_VERIFY_2048_WAPKC_SIZE : \
210
MCUXCLRSA_VERIFY_1024_WAPKC_SIZE)))
211
212
213
217
/**********************************************************************************/
218
/* Definitions of workarea sizes for the mcuxClRsa_KeyGeneration_Crt function. */
219
/**********************************************************************************/
226
#define MCUXCLRSA_KEYGENERATION_CRT_2048_WACPU_SIZE (632u)
227
#define MCUXCLRSA_KEYGENERATION_CRT_3072_WACPU_SIZE (760u)
228
#define MCUXCLRSA_KEYGENERATION_CRT_4096_WACPU_SIZE (888u)
229
#define MCUXCLRSA_KEYGENERATION_CRT_WACPU_SIZE(keyBitLength) \
230
((3072u < (keyBitLength)) ? MCUXCLRSA_KEYGENERATION_CRT_4096_WACPU_SIZE : \
231
((2048u < (keyBitLength)) ? MCUXCLRSA_KEYGENERATION_CRT_3072_WACPU_SIZE : \
232
MCUXCLRSA_KEYGENERATION_CRT_2048_WACPU_SIZE))
233
234
#define MCUXCLRSA_KEYGENERATION_CRT_2048_WAPKC_SIZE (1864u)
235
#define MCUXCLRSA_KEYGENERATION_CRT_3072_WAPKC_SIZE (2696u)
236
#define MCUXCLRSA_KEYGENERATION_CRT_4096_WAPKC_SIZE (3528u)
237
#define MCUXCLRSA_KEYGENERATION_CRT_WAPKC_SIZE(keyBitLength) \
238
((3072u < (keyBitLength)) ? MCUXCLRSA_KEYGENERATION_CRT_4096_WAPKC_SIZE : \
239
((2048u < (keyBitLength)) ? MCUXCLRSA_KEYGENERATION_CRT_3072_WAPKC_SIZE : \
240
MCUXCLRSA_KEYGENERATION_CRT_2048_WAPKC_SIZE))
241
244
/********************************************************************************/
245
/* Definitions of workarea sizes for the mcuxClRsa_KeyGeneration_Plain function. */
246
/********************************************************************************/
253
#define MCUXCLRSA_KEYGENERATION_PLAIN_2048_WACPU_SIZE (620u)
254
#define MCUXCLRSA_KEYGENERATION_PLAIN_3072_WACPU_SIZE (748u)
255
#define MCUXCLRSA_KEYGENERATION_PLAIN_4096_WACPU_SIZE (876u)
256
#define MCUXCLRSA_KEYGENERATION_PLAIN_WACPU_SIZE(keyBitLength) \
257
((3072u < (keyBitLength)) ? MCUXCLRSA_KEYGENERATION_PLAIN_4096_WACPU_SIZE : \
258
((2048u < (keyBitLength)) ? MCUXCLRSA_KEYGENERATION_PLAIN_3072_WACPU_SIZE : \
259
MCUXCLRSA_KEYGENERATION_PLAIN_2048_WACPU_SIZE))
260
261
#define MCUXCLRSA_KEYGENERATION_PLAIN_2048_WAPKC_SIZE (1992u)
262
#define MCUXCLRSA_KEYGENERATION_PLAIN_3072_WAPKC_SIZE (2888u)
263
#define MCUXCLRSA_KEYGENERATION_PLAIN_4096_WAPKC_SIZE (3784u)
264
#define MCUXCLRSA_KEYGENERATION_PLAIN_WAPKC_SIZE(keyBitLength) \
265
((3072u < (keyBitLength)) ? MCUXCLRSA_KEYGENERATION_PLAIN_4096_WAPKC_SIZE : \
266
((2048u < (keyBitLength)) ? MCUXCLRSA_KEYGENERATION_PLAIN_3072_WAPKC_SIZE : \
267
MCUXCLRSA_KEYGENERATION_PLAIN_2048_WAPKC_SIZE))
268
271
/*************************************************************************************************************************/
272
/* Definitions of generated key data size for the mcuxClRsa_KeyGeneration_Crt and mcuxClRsa_KeyGeneration_Plain functions. */
273
/*************************************************************************************************************************/
280
#define MCUXCLRSA_KEYGENERATION_PLAIN_KEY_DATA_2048_SIZE (556u)
281
#define MCUXCLRSA_KEYGENERATION_PLAIN_KEY_DATA_3072_SIZE (812u)
282
#define MCUXCLRSA_KEYGENERATION_PLAIN_KEY_DATA_4096_SIZE (1068u)
283
284
#define MCUXCLRSA_KEYGENERATION_CRT_KEY_DATA_2048_SIZE (708u)
285
#define MCUXCLRSA_KEYGENERATION_CRT_KEY_DATA_3072_SIZE (1028u)
286
#define MCUXCLRSA_KEYGENERATION_CRT_KEY_DATA_4096_SIZE (1348u)
287
288
#define MCUXCLRSA_KEYGENERATION_PUBLIC_KEY_DATA_2048_SIZE (556u)
289
#define MCUXCLRSA_KEYGENERATION_PUBLIC_KEY_DATA_3072_SIZE (812u)
290
#define MCUXCLRSA_KEYGENERATION_PUBLIC_KEY_DATA_4096_SIZE (1068u)
291
295
#endif
/* MCUXCLRSA_MEMORYCONSUMPTION_H_ */
mcuxClRsa_MemoryConsumption.h
Generated by
1.9.7