From 0216cc1beed7bf225771ae2c6610251c1855bb67 Mon Sep 17 00:00:00 2001
From: Paul Bakker
Date: Sat, 26 Mar 2011 13:40:23 +0000
Subject: [PATCH] - Added flag to disable Chinese Remainder Theorem when using
RSA private operation (POLARSSL_RSA_NO_CRT)
---
include/polarssl/config.h | 10 ++++++++++
library/rsa.c | 2 +-
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/include/polarssl/config.h b/include/polarssl/config.h
index f248bdc84..09807fa77 100644
--- a/include/polarssl/config.h
+++ b/include/polarssl/config.h
@@ -143,6 +143,16 @@
*
#define POLARSSL_AES_ROM_TABLES
*/
+
+/**
+ * \def POLARSSL_RSA_NO_CRT
+ *
+ * Do not use the Chinese Remainder Theorem for the RSA private operation.
+ *
+ * Uncomment this macro to disable the use of CRT in RSA.
+ *
+#define POLARSSL_RSA_NO_CRT
+ */
/* \} name */
/**
diff --git a/library/rsa.c b/library/rsa.c
index 0a6c490f0..a0f750ea2 100644
--- a/library/rsa.c
+++ b/library/rsa.c
@@ -253,7 +253,7 @@ int rsa_private( rsa_context *ctx,
return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
}
-#if 0
+#if defined(POLARSSL_RSA_NO_CRT)
MPI_CHK( mpi_exp_mod( &T, &T, &ctx->D, &ctx->N, &ctx->RN ) );
#else
/*