Multi-point multiplication support #473

pull sipa wants to merge 4 commits into bitcoin-core:master from sipa:20170816_multistrauss changing 13 files +877 −57
  1. sipa commented at 1:27 am on August 17, 2017: contributor
    This uses the algorithm (Strauss with wNAF) from #464 to implement multi-multiplication, together with the API, tests, and scratch space support from #461.
  2. add resizeable scratch space API
    Alignment support by Pieter Wuille.
    10b9c8eb22
  3. sipa cross-referenced this on Aug 17, 2017 from issue Strauss-wNAF multimul by sipa
  4. apoelstra cross-referenced this on Aug 17, 2017 from issue [WIP] Aggregate signature module implementation by apoelstra
  5. Generalize Strauss to support multiple points
    API by Andrew Poelstra.
    78e5b52eb7
  6. Add ecmult_multi tests 1627688e35
  7. Add bench_ecmult f84a2af79b
  8. in src/tests.c:2566 in f1693485d3 outdated
    2561+        pt[0] = ptg;
    2562+        pt[1] = secp256k1_ge_const_g;
    2563+
    2564+        /* 1-point */
    2565+        secp256k1_ecmult(&ctx->ecmult_ctx, &r2, &ptgj, &sc[0], &szero);
    2566+        secp256k1_ecmult_multi(&ctx->ecmult_ctx, scratch, &ctx->error_callback, &r, &szero, ecmult_multi_callback, &data, 1);
    


    jonasnick commented at 7:07 pm on August 17, 2017:
    The tests should check the return value of secp256k1_ecmult_multi
  9. sipa force-pushed on Sep 13, 2017
  10. sipa commented at 7:27 am on September 13, 2017: contributor
    Added an ecmult_multi benchmark tool.
  11. in src/bench_ecmult.c:135 in f84a2af79b
    130+    /* Run the benchmark. */
    131+    sprintf(str, includes_g ? "ecmult_%ig" : "ecmult_%i", (int)count);
    132+    run_benchmark(str, bench_ecmult, bench_ecmult_setup, bench_ecmult_teardown, data, 10, count * (1 + ITERS / count));
    133+}
    134+
    135+int main(int argc, char **argv) {
    


    jonasnick commented at 9:45 pm on September 13, 2017:
    Unused arguments
  12. jonasnick cross-referenced this on Nov 13, 2017 from issue Add pippenger_wnaf for multi-multiplication by jonasnick
  13. apoelstra commented at 5:45 pm on November 13, 2017: contributor
    superceded by #486
  14. apoelstra closed this on Nov 13, 2017

  15. sipa referenced this in commit c77fc08597 on Dec 8, 2017

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin-core/secp256k1. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-12-23 07:15 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me