MCUX CLNS
MCUX Crypto Library Normal Secure
mcuxClHashModes_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 
17 #ifndef MCUXCLHASHMODES_MEMORYCONSUMPTION_H_
18 #define MCUXCLHASHMODES_MEMORYCONSUMPTION_H_
19 
27 /****************************************************************************/
28 /* Definitions of workarea buffer sizes for the mcuxClHashModes functions. */
29 /****************************************************************************/
30 
31 #define MCUXCLHASH_COMPUTE_CPU_WA_BUFFER_SIZE_SHA2_224 (96u)
32 #define MCUXCLHASH_COMPARE_CPU_WA_BUFFER_SIZE_SHA2_224 MCUXCLHASH_COMPUTE_CPU_WA_BUFFER_SIZE_SHA2_224
33 #define MCUXCLHASH_PROCESS_CPU_WA_BUFFER_SIZE_SHA2_224 (4u)
34 #define MCUXCLHASH_FINISH_CPU_WA_BUFFER_SIZE_SHA2_224 (96u)
35 #define MCUXCLHASH_VERIFY_CPU_WA_BUFFER_SIZE_SHA2_224 MCUXCLHASH_FINISH_CPU_WA_BUFFER_SIZE_SHA2_224
36 #define MCUXCLHASH_COMPUTE_CPU_WA_BUFFER_SIZE_SHA2_256 (96u)
37 #define MCUXCLHASH_COMPARE_CPU_WA_BUFFER_SIZE_SHA2_256 MCUXCLHASH_COMPUTE_CPU_WA_BUFFER_SIZE_SHA2_256
38 #define MCUXCLHASH_PROCESS_CPU_WA_BUFFER_SIZE_SHA2_256 (4u)
39 #define MCUXCLHASH_FINISH_CPU_WA_BUFFER_SIZE_SHA2_256 (96u)
40 #define MCUXCLHASH_VERIFY_CPU_WA_BUFFER_SIZE_SHA2_256 MCUXCLHASH_FINISH_CPU_WA_BUFFER_SIZE_SHA2_256
41 #define MCUXCLHASH_COMPUTE_CPU_WA_BUFFER_SIZE_SHA2_384 (192u)
42 #define MCUXCLHASH_COMPARE_CPU_WA_BUFFER_SIZE_SHA2_384 MCUXCLHASH_COMPUTE_CPU_WA_BUFFER_SIZE_SHA2_384
43 #define MCUXCLHASH_PROCESS_CPU_WA_BUFFER_SIZE_SHA2_384 (4u)
44 #define MCUXCLHASH_FINISH_CPU_WA_BUFFER_SIZE_SHA2_384 (192u)
45 #define MCUXCLHASH_VERIFY_CPU_WA_BUFFER_SIZE_SHA2_384 MCUXCLHASH_FINISH_CPU_WA_BUFFER_SIZE_SHA2_384
46 #define MCUXCLHASH_COMPUTE_CPU_WA_BUFFER_SIZE_SHA2_512 (192u)
47 #define MCUXCLHASH_COMPUTE_CPU_WA_BUFFER_SIZE_SHA2_512_224 (192u)
48 #define MCUXCLHASH_COMPUTE_CPU_WA_BUFFER_SIZE_SHA2_512_256 (192u)
49 #define MCUXCLHASH_COMPARE_CPU_WA_BUFFER_SIZE_SHA2_512 MCUXCLHASH_COMPUTE_CPU_WA_BUFFER_SIZE_SHA2_512
50 #define MCUXCLHASH_COMPARE_CPU_WA_BUFFER_SIZE_SHA2_512_224 MCUXCLHASH_COMPUTE_CPU_WA_BUFFER_SIZE_SHA2_512_224
51 #define MCUXCLHASH_COMPARE_CPU_WA_BUFFER_SIZE_SHA2_512_256 MCUXCLHASH_COMPUTE_CPU_WA_BUFFER_SIZE_SHA2_512_256
52 #define MCUXCLHASH_PROCESS_CPU_WA_BUFFER_SIZE_SHA2_512 (4u)
53 #define MCUXCLHASH_PROCESS_CPU_WA_BUFFER_SIZE_SHA2_512_224 (4u)
54 #define MCUXCLHASH_PROCESS_CPU_WA_BUFFER_SIZE_SHA2_512_256 (4u)
55 #define MCUXCLHASH_FINISH_CPU_WA_BUFFER_SIZE_SHA2_512 (192u)
56 #define MCUXCLHASH_FINISH_CPU_WA_BUFFER_SIZE_SHA2_512_224 (192u)
57 #define MCUXCLHASH_FINISH_CPU_WA_BUFFER_SIZE_SHA2_512_256 (192u)
58 #define MCUXCLHASH_VERIFY_CPU_WA_BUFFER_SIZE_SHA2_512 MCUXCLHASH_FINISH_CPU_WA_BUFFER_SIZE_SHA2_512
59 #define MCUXCLHASH_VERIFY_CPU_WA_BUFFER_SIZE_SHA2_512_224 MCUXCLHASH_FINISH_CPU_WA_BUFFER_SIZE_SHA2_512_224
60 #define MCUXCLHASH_VERIFY_CPU_WA_BUFFER_SIZE_SHA2_512_256 MCUXCLHASH_FINISH_CPU_WA_BUFFER_SIZE_SHA2_512_256
61 
71 /**************************************************************************************************************/
72 /* Definitions of context sizes and state buffer sizes for mcuxClHash_export_state and mcuxClHash_import_state */
73 /**************************************************************************************************************/
74 
75 #define MCUXCLHASH_CONTEXT_SIZE_SHA2_224_IN_WORDS (120u / sizeof(uint32_t))
76 #define MCUXCLHASH_EXPORT_IMPORT_STATE_SIZE_SHA2_224 (40u)
77 #define MCUXCLHASH_CONTEXT_SIZE_SHA2_256_IN_WORDS (120u / sizeof(uint32_t))
78 #define MCUXCLHASH_EXPORT_IMPORT_STATE_SIZE_SHA2_256 (40u)
79 #define MCUXCLHASH_CONTEXT_SIZE_SHA2_384_IN_WORDS (216u / sizeof(uint32_t))
80 #define MCUXCLHASH_EXPORT_IMPORT_STATE_SIZE_SHA2_384 (80u)
81 #define MCUXCLHASH_CONTEXT_SIZE_SHA2_512_IN_WORDS (216u / sizeof(uint32_t))
82 #define MCUXCLHASH_EXPORT_IMPORT_STATE_SIZE_SHA2_512 (80u)
83 
86 #endif /* MCUXCLHASHMODES_MEMORYCONSUMPTION_H_ */