Commit Graph

9 Commits

Author SHA1 Message Date
Mara Mihali
adf96ae8bc fix transcript inconsistency 2023-01-09 17:32:56 +01:00
Mara Mihali
f88d29fb0c first version of PST 2022-12-12 16:35:55 +02:00
maramihali
923c8a727f update workflows for testudo 2022-11-12 00:47:04 +00:00
Srinath Setty
4f56acf724 support for stable Rust (#51)
* support for stable Rust

* add no default to stable

* add no default to stable

* update CI
2022-11-11 14:23:03 +00:00
Srinath Setty
19d1d63703 Update to latest Rust and fix Clippy warnings (#37)
* Update to latest Rust and fix Clippy warnings

* cleanup
2021-10-14 16:11:19 -07:00
Lef Ioannidis
7bbc366e5d Arbitrary number of variables and contraints (#34)
* This commit makes adding an arbitrary number of variables and inputs possible and removes the
  implementation leaking to the interface for

  num_inps + 1 <= num_vars, num_vars: a power of 2, num_cons: a power of 2, but not 1.

  1. When creating a new R1CS Instance throught the public interface,
     it is required # constraints and # of vars be a power of 2. I remove
     that requirement by padding with dummy constraints and vars until the nearest
     power of 2.
  2. The sumcheck protocol in src/sumcheck.rs does not work for 1 constraint, even
     though 1 is a power of 2. I have to pad to a minimum of two constraints.
  3. Added a test in src/r1csproof.rs called test_padded_constraints.

* Move test to src/lib.rs

* Remove padding metadata

* remove unused use

* Simplify padding to power of 2

* run cargo fmt

* Fix indexing bug

* Rayon is optional, depending on 'multicore' feature

* Update rust toolchain

* cargo fmt

* cleaner to track num_vars_padded and num_cons_padded

* cleanup

* further cleanup

* Cleanup & comments

* small fixes

* adjust code for padding constraints

* fix a bug with pad call

* add comment about num_nz_entries

* extend padding to NIZK methods

extend padding to NIZK methods

Co-authored-by: Lef Ioannidis <elefthei@seas.upenn.edu>
Co-authored-by: Srinath Setty <srinath@microsoft.com>
2021-04-22 10:27:54 -07:00
Srinath Setty
096c07910a upgrade to use crates.io (#32) 2021-01-12 12:20:30 -08:00
Jakub Konka
7b102a241f Add example proving knowledge of cubic equation solution (#26) 2020-09-16 09:41:13 -07:00
Srinath Setty
95b9ad35a6 initial commit 2020-07-24 14:41:48 -07:00