9 Commits

Author SHA1 Message Date
Nicolas Gailly
7db2d30972 PST/SQRT + Benches (#35)
* first version of the sqrt PST without the MIPP

* snarkpack integration

* snarkpack integration

* adding mipp as submodule directly

* snarkpack integration

* finalizing

* snarkpack integration

* update mipp with latestest optimisations and add preliminary
documentation

* improve codebase documentation

* remove unused imports and apply cargo fix changes

* passing v0.4

* adding gh action

* correct workflow item

* correct working dir and msrv

* remove unnecessary stuff

* wip

* wip

* remove circuit in fq as it's not needed now

* done for tonight

* wip

* wip

* sip

* prallelise commitment and groth16 verification

* finalise comments for mipp

* wip

* finalise comments

* wip

* compiling but test failing

* putting back non random blinds

* using absorb when we can

* absorbing scalar

* with bls12-381

* stuff

* trying to bring ark-blst to testudo

* correcting random implementation

* with square in place

* works with blst

* works with blst

* fix: don't require nightly Rust

With removing the `test` feature, it can also be built with a stable
Rust release and don't require a nightly Rust version.

* using ark-blst main branch

* started cleanup and added testudo benchmark

* add testudo snark and nizk in separate files

* rename functions that perform setups and add comments

* prototyping

* explain testudo-nizk

* add support for odd case in sqrt_pst

* add missing constraints and correct proof size for benchmarks

* add support for odd case in sqrt_pst

* fix typo in comment

* Documentation #31

* fix typo in comment

* Fix Cargo.toml and add benchmark for sqrt pst (#34)

* add benchmark for sqrt pst

* fix typo in comment

* add README

* comment from readme not executing

---------

Co-authored-by: Mara Mihali <maramihali@google.com>
Co-authored-by: Mara Mihali <mihalimara22@gmail.com>
Co-authored-by: Volker Mische <volker.mische@gmail.com>
2023-03-22 23:48:28 +01:00
Volker Mische
44d1f10588 chore: format Rust code the usual way
Remove the custom formatting rules and run `cargo fmt`.
2023-02-08 11:07:09 +01:00
Mara Mihali
c76f136006 implement spartan verifier as a circuit and verify it with groth16 2022-11-11 15:42:16 +00:00
Mara Mihali
cc345b6451 arkworks migration to bls12377 2022-10-12 19:13:39 -04:00
François Garillot
9e4c166edb Refactor to idiomatic Result/Option patterns (#25)
This:
- introduces a small [thiserror](https://github.com/dtolnay/thiserror)-powered enum to improve ProofVerifyError's messages,
- refactors point decompression errors into a variant of that enum, thereby suppressing the panics which occur when decompresison fails.
- folds other panics into the Error cases of their enclosing `Result` return
2020-09-29 15:18:43 -07:00
Srinath Setty
1bb98a36b1 additional error checking 2020-09-01 10:13:53 -07:00
Srinath Setty
2d22bff71f Add APIs to specify an R1CS Instance (#24) 2020-08-31 14:11:42 -07:00
Srinath Setty
2bfc333896 Address Clippy warnings 2020-07-24 14:42:09 -07:00
Srinath Setty
95b9ad35a6 initial commit 2020-07-24 14:41:48 -07:00