|
SmartSnippets DA1459x SDK
|
Go to the documentation of this file.
42 #ifndef SDK_CRYPTO_INCLUDE_CRYPTO_ECC_PROVIDER_PARAMS_H_
43 #define SDK_CRYPTO_INCLUDE_CRYPTO_ECC_PROVIDER_PARAMS_H_
49 #define SODIUM_LIB_ID 2
58 CRYPTO_ECC_PROVIDER_LAST_VALUE,
65 ECC_CRYPTO_SECP160R1 =0,
66 ECC_CRYPTO_SECP192R1 =1,
67 ECC_CRYPTO_SECP224R1 =2,
68 ECC_CRYPTO_SECP256R1 =3,
69 ECC_CRYPTO_SECP256K1 =4,
70 ECC_CRYPTO_CURVE25519 =5,
94 #define dg_ALLOW_DYNAMIC_LIB_PROVIDER 0
99 #define dg_USE_CURVE_SECP160R1 1
100 #define dg_USE_CURVE_SECP192R1 1
101 #define dg_USE_CURVE_SECP224R1 1
102 #define dg_USE_CURVE_SECP256R1 1
103 #define dg_USE_CURVE_SECP256K1 1
104 #define dg_USE_CURVE_25519 1
109 #define dg_USE_HW_ECC 0
110 #define dg_USE_UECC_LIB 1
111 #define dg_USE_SODIUM_LIB 1
114 #if ( ((!dg_USE_HW_ECC)&&(dg_configUSE_HW_ECC)) || ((dg_USE_HW_ECC)&&(!dg_configUSE_HW_ECC)) )
115 #error "In order to (exclude/include) hw_ecc, dg_configUSE_HW_ECC must also be set to (0/1) in config_*.h"
126 #define CURVE_SECP160R1_DEFAULT_LIB_PROVIDER UECC_LIB_ID
127 #define CURVE_SECP192R1_DEFAULT_LIB_PROVIDER UECC_LIB_ID
128 #define CURVE_SECP224R1_DEFAULT_LIB_PROVIDER UECC_LIB_ID
129 #define CURVE_SECP256R1_DEFAULT_LIB_PROVIDER UECC_LIB_ID
130 #define CURVE_SECP256K1_DEFAULT_LIB_PROVIDER UECC_LIB_ID
131 #define CURVE_25519_DEFAULT_LIB_PROVIDER SODIUM_LIB_ID
Definition: crypto_ecc_provider_params.h:57
Definition: crypto_ecc_provider_params.h:78
Definition: crypto_ecc_provider_params.h:83
CRYPTO_ECC_PROVIDER_RET
ECC Provider API return codes.
Definition: crypto_ecc_provider_params.h:77
const bool lib_provider_truthtable[ECC_CRYPTO_LAST_VALUE][CRYPTO_ECC_PROVIDER_LAST_VALUE]
Truth table informs if a curve is provided by the respective library.
ECC_CRYPTO_LIB_PROVIDER curve_lib_provider_index[ECC_CRYPTO_LAST_VALUE]
Index table informs which curve is implemented by which library provider.
Definition: crypto_ecc_provider_params.h:84
Definition: crypto_ecc_provider_params.h:79
Definition: crypto_ecc_provider_params.h:80
Definition: crypto_ecc_provider_params.h:81
ECC_CRYPTO_LIB_PROVIDER
ECC library providers.
Definition: crypto_ecc_provider_params.h:54
Definition: crypto_ecc_provider_params.h:56
Definition: crypto_ecc_provider_params.h:55
Definition: crypto_ecc_provider_params.h:82
CRYPTO_ECC_CURVE
ECC supported curves type.
Definition: crypto_ecc_provider_params.h:64