Skip to content

simonkamp/curve-trees

Repository files navigation

Curve Trees

This is a benchmarking implementation of Curve Trees. It is not for production purposes.

This repository contains:

  • A modified version of dalek bulletproofs, which is adapted to support any curve implemented using the arkworks algebra library in addition to batch verification and vector commitments (see Generalized Bulletproofs).
  • Bulletproof constraints to show that a commitment is a rerandomization of a member of the set represented by a curve tree. I.e. the select and rerandomize relation.
  • Extensions for proving that batches of elements are in the set (Curve Forests)
  • Benchmarks of the VCash anonymous payment system.
  • Benchmarks of an accumulator based on opening a commitment extracted using the select and rerandomize relation.

Running Benchmarks

To replicate the benchmarks in the Curve Trees paper run: cargo bench --features bench_prover.

To get single core benchmarks disable default features: cargo bench --features bench_prover --no-default-features.

Acknowledgements

The bulletproofs implementation is based on dalek bulletproofs and the arkworks algebra library.

LICENSE

This code is released under the MIT License.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •