aboutsummaryrefslogtreecommitdiff
path: root/tests/unit_tests/ringct.cpp
diff options
context:
space:
mode:
authorluigi1111 <luigi1111w@gmail.com>2019-08-28 02:22:00 -0500
committerluigi1111 <luigi1111w@gmail.com>2019-08-28 02:22:00 -0500
commit85014813cf51c5704ebf77fc9af3d196c859b373 (patch)
treec847aad919542e885f276a78346ade72878998dc /tests/unit_tests/ringct.cpp
parentMerge pull request #5844 (diff)
parentMLSAG speedup and additional checks (diff)
downloadmonero-85014813cf51c5704ebf77fc9af3d196c859b373.tar.xz
Merge pull request #5707
3a0451a MLSAG speedup and additional checks (SarangNoether)
Diffstat (limited to 'tests/unit_tests/ringct.cpp')
-rw-r--r--tests/unit_tests/ringct.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/tests/unit_tests/ringct.cpp b/tests/unit_tests/ringct.cpp
index d2b2c3109..075aeac40 100644
--- a/tests/unit_tests/ringct.cpp
+++ b/tests/unit_tests/ringct.cpp
@@ -788,7 +788,20 @@ TEST(ringct, HPow2)
{
key G = scalarmultBase(d2h(1));
- key H = hashToPointSimple(G);
+ // Note that H is computed differently than standard hashing
+ // This method is not guaranteed to return a curvepoint for all inputs
+ // Don't use it elsewhere
+ key H = cn_fast_hash(G);
+ ge_p3 H_p3;
+ int decode = ge_frombytes_vartime(&H_p3, H.bytes);
+ ASSERT_EQ(decode, 0); // this is known to pass for the particular value G
+ ge_p2 H_p2;
+ ge_p3_to_p2(&H_p2, &H_p3);
+ ge_p1p1 H8_p1p1;
+ ge_mul8(&H8_p1p1, &H_p2);
+ ge_p1p1_to_p3(&H_p3, &H8_p1p1);
+ ge_p3_tobytes(H.bytes, &H_p3);
+
for (int j = 0 ; j < ATOMS ; j++) {
ASSERT_TRUE(equalKeys(H, H2[j]));
addKeys(H, H, H);