Commit History

Author SHA1 Message Date
  Ian Goldberg b2d950a090 The underlying sigma-rs crate supports scalar_var * scalar_const but not the other way around, so change the tests to do that 3 months ago
  Ian Goldberg 0f1e6699cb Typo fix to range proof generated statement 3 months ago
  Ian Goldberg f77454f70e Simplify the proto_witness_codegen API a bit 3 months ago
  Ian Goldberg 9bf1745c9a Move leaf_true, is_leaf_true, and leaf_true_test into StatementTree 3 months ago
  Ian Goldberg 8222e13d60 Ensure sigma_rs is visible to the generated code 3 months ago
  Ian Goldberg 828b37a001 Generalize expr_type_tokens to expr_type_tokens_id_closure 3 months ago
  Ian Goldberg 82a074f53c Start on the codegen glue to the sigma-rs API 3 months ago
  Ian Goldberg 5d0e38b711 Allow sigma::codegen to modify the StatementTree 3 months ago
  Ian Goldberg b5fc2df4c9 prove() and verify() now take a session id as an additional argument 3 months ago
  Ian Goldberg cf329f2828 Don't mark the generated r and s variables as "rand" since they have correlated values 3 months ago
  Ian Goldberg d8d24b7ac9 Finish range proofs 3 months ago
  Ian Goldberg 9a00db39b3 Add a range demo test 3 months ago
  Ian Goldberg 46e240d6d4 Compute all the variables needed for range proofs 3 months ago
  Ian Goldberg 110a9eacb1 Functions to compute a bit representation for a range proof 3 months ago
  Ian Goldberg 37afe1ede0 Constant-time and variable-time runtime bit decomposition for range proofs 3 months ago
  Ian Goldberg d9ca5c733f Convert commitments and randomness of one LinScalar to that of another LinScalar of the same variable 3 months ago
  Ian Goldberg 3247addd99 Make clippy happier 3 months ago
  Ian Goldberg ed1a2ab347 Implement and test LinScalar::to_expr() 3 months ago
  Ian Goldberg 90f3f371de Find or generate a Pedersen commitment to start handling range statements 3 months ago
  Ian Goldberg d080daa250 PedersenAssignment::var() convenience function 3 months ago
  Ian Goldberg af0748ec23 Prepare for handing range statements by finding all Pedersen assignment statements in the StatementTree 3 months ago
  Ian Goldberg 1a6011d2f7 Clarify in a comment that ranges must always have strictly more than 1 element in them 3 months ago
  Ian Goldberg 9b8cbf4558 Refactor the substitution transformation into its own module 3 months ago
  Ian Goldberg 45a262b32c Add a test for range statement recognition with public Scalar expressions for the range endpoints 3 months ago
  Ian Goldberg 65afb16310 Start on range statements 3 months ago
  Ian Goldberg 22dd8f33fd Add a recognizer for expressions that evaluate to public Scalars 3 months ago
  Ian Goldberg 676304ef47 Add a recognizer for LinScalar expressions 3 months ago
  Ian Goldberg 90da138200 prove() will require an RNG that is an impl CryptoRng + RngCore 3 months ago
  Ian Goldberg 76c318c74f Return VerificationFailure rather than assert!()ing if the witness doesn't satisfy the statements 3 months ago
  Ian Goldberg 28e485e5ed Add a test using public Scalars 3 months ago