Two new Curve25519 implementations (generic "i31" code, and optimised code with MUL31).
[BearSSL] / test / test_crypto.c
index 46c8fa2..a5f6246 100644 (file)
@@ -5004,12 +5004,24 @@ test_EC_c25519_i15(void)
        test_EC_c25519("EC_c25519_i15", &br_ec_c25519_i15);
 }
 
+static void
+test_EC_c25519_i31(void)
+{
+       test_EC_c25519("EC_c25519_i31", &br_ec_c25519_i31);
+}
+
 static void
 test_EC_c25519_m15(void)
 {
        test_EC_c25519("EC_c25519_m15", &br_ec_c25519_m15);
 }
 
+static void
+test_EC_c25519_m31(void)
+{
+       test_EC_c25519("EC_c25519_m31", &br_ec_c25519_m31);
+}
+
 static const unsigned char EC_P256_PUB_POINT[] = {
        0x04, 0x60, 0xFE, 0xD4, 0xBA, 0x25, 0x5A, 0x9D,
        0x31, 0xC9, 0x61, 0xEB, 0x74, 0xC6, 0x35, 0x6D,
@@ -5555,9 +5567,10 @@ static const struct {
        STU(EC_prime_i15),
        STU(EC_prime_i31),
        STU(EC_p256_m15),
-       /* STU(EC_prime_i32), */
        STU(EC_c25519_i15),
+       STU(EC_c25519_i31),
        STU(EC_c25519_m15),
+       STU(EC_c25519_m31),
        STU(ECDSA_i15),
        STU(ECDSA_i31),
        { 0, 0 }