/pybullet-plus

Proof-of-concept implementation of aggregated Bulletproofs+ supporting batch verification and commitment mask recovery

Primary LanguagePythonMIT LicenseMIT

PyBullet+

This is a proof-of-concept implementation of the Bulletproofs+ range proving system that supports single-party aggregation and efficient batch verification. Additionally, it supports recovery of commitment masks in the non-aggregated case, given a common seed used by the prover and verifier.

This code is experimental and not intended for use in production. It is not written with secure implementation in mind, has not been formally reviewed, and likely contains errors.

Requirements

This code requires an active Python 3 release.

Testing

A test workflow in this repository runs against all active Python 3 release minor versions.

Test status

Run the test suite locally using either:

  • python3 -m unittest discover
  • pytest