aboutsummaryrefslogtreecommitdiff
path: root/src/ringct/rctOps.cpp
diff options
context:
space:
mode:
authorluigi1111 <luigi1111w@gmail.com>2020-05-02 15:14:41 -0500
committerluigi1111 <luigi1111w@gmail.com>2020-05-02 15:14:41 -0500
commit8185054db7acc3e7c514ac55bceb0d82611a5b9a (patch)
treec2245ed862d9045433a60fda02d1e3049854194d /src/ringct/rctOps.cpp
parenta5cc613a68e5c8edca7c9816b1a3d8e4c60e5eb6 (diff)
parent4ed60b626a368132fccad4449f1c4d50e312b60c (diff)
downloadmonzero-core-8185054db7acc3e7c514ac55bceb0d82611a5b9a.tar.gz
monzero-core-8185054db7acc3e7c514ac55bceb0d82611a5b9a.tar.xz
monzero-core-8185054db7acc3e7c514ac55bceb0d82611a5b9a.zip
Merge pull request #6451
4ed60b6 Bulletproofs: verification speedup (SarangNoether)
Diffstat (limited to 'src/ringct/rctOps.cpp')
-rw-r--r--src/ringct/rctOps.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/ringct/rctOps.cpp b/src/ringct/rctOps.cpp
index 6e4d063df..b2dd32ada 100644
--- a/src/ringct/rctOps.cpp
+++ b/src/ringct/rctOps.cpp
@@ -408,6 +408,18 @@ namespace rct {
return res;
}
+ //Computes 8P without byte conversion
+ void scalarmult8(ge_p3 &res, const key &P)
+ {
+ ge_p3 p3;
+ CHECK_AND_ASSERT_THROW_MES_L1(ge_frombytes_vartime(&p3, P.bytes) == 0, "ge_frombytes_vartime failed at "+boost::lexical_cast<std::string>(__LINE__));
+ ge_p2 p2;
+ ge_p3_to_p2(&p2, &p3);
+ ge_p1p1 p1;
+ ge_mul8(&p1, &p2);
+ ge_p1p1_to_p3(&res, &p1);
+ }
+
//Computes lA where l is the curve order
bool isInMainSubgroup(const key & A) {
ge_p3 p3;