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