core: ltc: add SM2 curve parameters
Adds the recommended curve parameters for SM2 [1] [2].
[1] http://www.gmbz.org.cn/main/postDetail.html?id=20180724110812
[2] https://tools.ietf.org/id/draft-ribose-openpgp-oscca-00.html
Signed-off-by: Jerome Forissier <jerome@forissier.org>
diff --git a/core/lib/libtomcrypt/src/pk/ecc/ecc.c b/core/lib/libtomcrypt/src/pk/ecc/ecc.c
index 175d437..15802f7 100644
--- a/core/lib/libtomcrypt/src/pk/ecc/ecc.c
+++ b/core/lib/libtomcrypt/src/pk/ecc/ecc.c
@@ -433,6 +433,18 @@
/* OID */ "1.3.36.3.3.2.8.1.1.14"
},
#endif
+#ifdef LTC_ECC_SM2
+{
+ /* prime */ "FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFF",
+ /* A */ "FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFC",
+ /* B */ "28E9FA9E9D9F5E344D5A9E4BCF6509A7F39789F515AB8F92DDBCBD414D940E93",
+ /* order */ "FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFF7203DF6B21C6052B53BBF40939D54123",
+ /* Gx */ "32C4AE2C1F1981195F9904466A39C9948FE30BBFF2660BE1715A4589334C74C7",
+ /* Gy */ "BC3736A2F4F6779C59BDCEE36B692153D0A9877CC62A474002DF32E52139F0A0",
+ /* cofactor */ 1,
+ /* OID */ "1.2.156.10197.1.301"
+},
+#endif
{
NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL
}
diff --git a/core/lib/libtomcrypt/src/pk/ecc/ecc_find_curve.c b/core/lib/libtomcrypt/src/pk/ecc/ecc_find_curve.c
index 16b749c..607d0a1 100644
--- a/core/lib/libtomcrypt/src/pk/ecc/ecc_find_curve.c
+++ b/core/lib/libtomcrypt/src/pk/ecc/ecc_find_curve.c
@@ -186,6 +186,11 @@
"1.3.36.3.3.2.8.1.1.14", { "BRAINPOOLP512T1", NULL }
},
#endif
+#ifdef LTC_ECC_SM2
+ {
+ "1.2.156.10197.1.301", { "SM2", NULL }
+ },
+#endif
{
NULL, { NULL }
}