diff options
Diffstat (limited to 'src/crypto/fipsmodule/ec/ec_test.cc')
-rw-r--r-- | src/crypto/fipsmodule/ec/ec_test.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/crypto/fipsmodule/ec/ec_test.cc b/src/crypto/fipsmodule/ec/ec_test.cc index 1219e2b4..c0ad61f5 100644 --- a/src/crypto/fipsmodule/ec/ec_test.cc +++ b/src/crypto/fipsmodule/ec/ec_test.cc @@ -764,7 +764,15 @@ TEST_P(ECCurveTest, P224Bug) { ASSERT_TRUE(BN_set_word(bn32.get(), 32)); ASSERT_TRUE(EC_POINT_mul(group(), ret.get(), bn32.get(), p.get(), bn31.get(), nullptr)); + EXPECT_EQ(0, EC_POINT_cmp(group(), ret.get(), g, nullptr)); + // Repeat the computation with |ec_point_mul_scalar_public|, which ties the + // additions together. + EC_SCALAR sc31, sc32; + ASSERT_TRUE(ec_bignum_to_scalar(group(), &sc31, bn31.get())); + ASSERT_TRUE(ec_bignum_to_scalar(group(), &sc32, bn32.get())); + ASSERT_TRUE( + ec_point_mul_scalar_public(group(), &ret->raw, &sc32, &p->raw, &sc31)); EXPECT_EQ(0, EC_POINT_cmp(group(), ret.get(), g, nullptr)); } |