-
Notifications
You must be signed in to change notification settings - Fork 478
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Multiscalar multiplication with precomputation. #230
Multiscalar multiplication with precomputation. #230
Conversation
7d29d34
to
27daa52
Compare
This doesn't (yet) give any speedup over the non-precomputed multiscalar multiplication, and it's not clear that it's a good idea to commit to supporting it in the future. Removing it means that it's not committed-to as part of the public API, but the source is still there in the tree if we want to revisit it later.
This avoids potentially misleading benchmark results where the memory cost of precomputation becomes "free" as re-running the benchmark loop lifts exactly the required table entries into the highest-level caches.
29687b6
to
47967b4
Compare
I removed the constant-time precomputation support for the reason mentioned in the commit:
|
The CI failures are related to issues in the rand crate again, merging this before fixing them. |
Change from_bytes methods to take fixed-size array argument
Closes #125.
Adds two traits,
PrecomputedMultiscalarMul
andVartimePrecomputedMultiscalarMul
, provides implementations forEdwardsPoints
andRistrettoPoint
s, and reworks the benchmarks to provide precomputation timings.