31 #ifndef _STM32U5XX_CRYPTO_PKC_H
32 #define _STM32U5XX_CRYPTO_PKC_H
38 #ifndef STM32U5XX_CRYPTO_PKC_SUPPORT
39 #define STM32U5XX_CRYPTO_PKC_SUPPORT DISABLED
40 #elif (STM32U5XX_CRYPTO_PKC_SUPPORT != ENABLED && STM32U5XX_CRYPTO_PKC_SUPPORT != DISABLED)
41 #error STM32U5XX_CRYPTO_PKC_SUPPORT parameter is not valid
45 #define PKA_MAX_ROS 4160
47 #define PKA_MAX_EOS 640
50 #define PKA_CR_MODE_MODULAR_EXP 0x00
51 #define PKA_CR_MODE_MONTGOMERY_PARAM 0x01
52 #define PKA_CR_MODE_MODULAR_EXP_FAST 0x02
53 #define PKA_CR_MODE_MODULAR_EXP_PROTECTED 0x03
54 #define PKA_CR_MODE_RSA_CRT_EXP 0x07
55 #define PKA_CR_MODE_MODULAR_INV 0x08
56 #define PKA_CR_MODE_ARITHMETIC_ADD 0x09
57 #define PKA_CR_MODE_ARITHMETIC_SUB 0x0A
58 #define PKA_CR_MODE_ARITHMETIC_MUL 0x0B
59 #define PKA_CR_MODE_COMPARISON 0x0C
60 #define PKA_CR_MODE_MODULAR_RED 0x0D
61 #define PKA_CR_MODE_MODULAR_ADD 0x0E
62 #define PKA_CR_MODE_MODULAR_SUB 0x0F
63 #define PKA_CR_MODE_MONTGOMERY_MUL 0x10
64 #define PKA_CR_MODE_ECC_MUL 0x20
65 #define PKA_CR_MODE_ECC_COMPLETE_ADD 0x23
66 #define PKA_CR_MODE_ECDSA_SIGN 0x24
67 #define PKA_CR_MODE_ECDSA_VERIFY 0x26
68 #define PKA_CR_MODE_DOUBLE_BASE_LADDER 0x27
69 #define PKA_CR_MODE_POINT_CHECK 0x28
70 #define PKA_CR_MODE_ECC_PROJECTIVE_AFF 0x2F
73 #define PKA_STATUS_SUCCESS 0xD60D
74 #define PKA_STATUS_INVALID 0x0000
General definitions for cryptographic algorithms.
error_t pkaInit(void)
PKA module initialization.