Ver código fonte

feat(mbedtls): support ecp fixed-point multiplication configurable

Jiang Guang Ming 2 anos atrás
pai
commit
3f2746688c

+ 10 - 0
components/mbedtls/Kconfig

@@ -982,6 +982,16 @@ menu "mbedTLS"
 
             Disabling this option saves some code size.
 
+    config MBEDTLS_ECP_FIXED_POINT_OPTIM
+        bool "Enable fixed-point multiplication optimisations"
+        depends on MBEDTLS_ECP_C
+        default y
+        help
+            This configuration option enables optimizations to speedup (about 3 ~ 4 times) the ECP
+            fixed point multiplication using pre-computed tables in the flash memory.
+            Disabling this configuration option saves flash footprint (about 29KB if all Elliptic Curve selected)
+            in the application binary.
+
             # end of Elliptic Curve options
 
     config MBEDTLS_POLY1305_C

+ 13 - 0
components/mbedtls/port/include/mbedtls/esp_config.h

@@ -488,6 +488,19 @@
 #undef MBEDTLS_ECP_NIST_OPTIM
 #endif
 
+/**
+ * \def MBEDTLS_ECP_FIXED_POINT_OPTIM
+ *
+ * Enable speed up fixed-point multiplication.
+ *
+ * Comment this macro to disable FIXED POINT curves optimisation.
+ */
+#ifdef CONFIG_MBEDTLS_ECP_FIXED_POINT_OPTIM
+#define MBEDTLS_ECP_FIXED_POINT_OPTIM 1
+#else
+#define MBEDTLS_ECP_FIXED_POINT_OPTIM 0
+#endif
+
 /**
  * \def MBEDTLS_ECDSA_DETERMINISTIC
  *