MCUX CLNS
MCUX Crypto Library Normal Secure
mcuxClEcc_Constants.h
Go to the documentation of this file.
1 /*--------------------------------------------------------------------------*/
2 /* Copyright 2021-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 /* TODO: domain parameters are not verified, and will be verified in CLNS-5817 */
20 
21 #ifndef MCUXCLECC_CONSTANTS_H_
22 #define MCUXCLECC_CONSTANTS_H_
23 
24 #include <mcuxClConfig.h> // Exported features flags header
25 #include <mcuxClEcc_Types.h>
26 
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30 
39 /* Curve25519 domain parameters */
40 extern const mcuxClEcc_MontDH_DomainParams_t mcuxClEcc_MontDH_DomainParams_Curve25519;
41 
42 /* Curve448 domain parameters */
43 extern const mcuxClEcc_MontDH_DomainParams_t mcuxClEcc_MontDH_DomainParams_Curve448;
44 
45 /* secp160k1 domain parameters */
46 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_secp160k1;
47 
48 /* secp192k1 domain parameters */
49 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_secp192k1;
50 
51 /* sec224k1 domain parameters */
52 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_secp224k1;
53 
54 /* secp256k1 domain parameters */
55 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_secp256k1;
56 
57 /* secp192r1 domain parameters */
58 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_secp192r1;
59 
60 /* secp224r1 domain parameters */
61 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_secp224r1;
62 
63 /* secp256r1 domain parameters */
64 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_secp256r1;
65 
66 /* secp384r1 domain parameters */
67 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_secp384r1;
68 
69 /* secp521r1 domain parameters */
70 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_secp521r1;
71 
72 /* nistp192r1 domain parameters */
73 #define mcuxClEcc_Weier_DomainParams_NIST_P192 mcuxClEcc_Weier_DomainParams_secp192r1
74 
75 /* nistp224r1 domain parameters */
76 #define mcuxClEcc_Weier_DomainParams_NIST_P224 mcuxClEcc_Weier_DomainParams_secp224r1
77 
78 /* nistp256r1 domain parameters */
79 #define mcuxClEcc_Weier_DomainParams_NIST_P256 mcuxClEcc_Weier_DomainParams_secp256r1
80 
81 /* nistp384r1 domain parameters */
82 #define mcuxClEcc_Weier_DomainParams_NIST_P384 mcuxClEcc_Weier_DomainParams_secp384r1
83 
84 /* nistp521r1 domain parameters */
85 #define mcuxClEcc_Weier_DomainParams_NIST_P521 mcuxClEcc_Weier_DomainParams_secp521r1
86 
87 /* brainpoolP160r1 domain parameters */
88 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_brainpoolP160r1;
89 
90 /* brainpoolP192r1 domain parameters */
91 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_brainpoolP192r1;
92 
93 /* brainpoolP224r1 domain parameters */
94 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_brainpoolP224r1;
95 
96 /* brainpoolP256r1 domain parameters */
97 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_brainpoolP256r1;
98 
99 /* brainpoolP320r1 domain parameters */
100 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_brainpoolP320r1;
101 
102 /* brainpoolP384r1 domain parameters */
103 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_brainpoolP384r1;
104 
105 /* brainpoolP512r1 domain parameters */
106 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_brainpoolP512r1;
107 
108 /* brainpoolP160t1 domain parameters */
109 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_brainpoolP160t1;
110 
111 /* brainpoolP192t1 domain parameters */
112 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_brainpoolP192t1;
113 
114 /* brainpoolP224t1 domain parameters */
115 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_brainpoolP224t1;
116 
117 /* brainpoolP256t1 domain parameters */
118 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_brainpoolP256t1;
119 
120 /* brainpoolP320t1 domain parameters */
121 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_brainpoolP320t1;
122 
123 /* brainpoolP384t1 domain parameters */
124 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_brainpoolP384t1;
125 
126 /* brainpoolP512t1 domain parameters */
127 extern const mcuxClEcc_Weier_DomainParams_t mcuxClEcc_Weier_DomainParams_brainpoolP512t1;
128 
129 
130 /* Ed25519 domain parameters */
131 extern const mcuxClEcc_EdDSA_DomainParams_t mcuxClEcc_EdDSA_DomainParams_Ed25519;
132 
133 /* Ed448 domain parameters */
134 extern const mcuxClEcc_EdDSA_DomainParams_t mcuxClEcc_EdDSA_DomainParams_Ed448;
135 
136 /* phflag values for EdDSA */
137 #define MCUXCLECC_EDDSA_PHFLAG_ZERO 0u
138 #define MCUXCLECC_EDDSA_PHFLAG_ONE 1u
139  /* mcuxClEcc_Constants */
143 
144 #ifdef __cplusplus
145 } /* extern "C" */
146 #endif
147 
148 #endif /* MCUXCLECC_CONSTANTS_H_ */
struct mcuxClEcc_MontDH_DomainParams mcuxClEcc_MontDH_DomainParams_t
Type for MontDH domain parameters.
Definition: mcuxClEcc_Types.h:92
struct mcuxClEcc_Weier_DomainParams mcuxClEcc_Weier_DomainParams_t
Type for Weierstrass ECC domain parameters.
Definition: mcuxClEcc_Types.h:120
struct mcuxClEcc_EdDSA_DomainParams mcuxClEcc_EdDSA_DomainParams_t
Type for EdDSA domain parameters.
Definition: mcuxClEcc_Types.h:96
Type definitions of mcuxClEcc component.