smc_range_proof 0.1.0

Range proofs based on set-membership check and sumsets
Documentation

Zero-knowledge range proof protocols based on set-membership check

Implements the following range proof and set-membership protocols.

  1. Set membership protocol using BB signature. Described in Fig.1 of the paper [1]. Code
  2. Range proof protocol as described in Fig.3 of the paper [1]. Considers a perfect-range, i.e. range of the form [0, u^l) where u is the base and the upper bound is a power of the base. Code
  3. Range proof protocol as described in section 4.4 of the paper [1]. Considers an arbitrary range [min, max). Code
  4. Range proof using sumsets, based on Protocol 2 from the paper [2]. Code
  5. Implements the Keyed-Verification of the above protocols where the verifier knows the secret key of the BB sig. This makes the proof generation and verification more efficient by removing the need for pairings. This idea is taken from this PhD. thesis.

Above protocols use a pairing based signature called the BB signature.

References:

[1]: Efficient Protocols for Set Membership and Range Proofs

[2]: Additive Combinatorics and Discrete Logarithm Based Range Protocols