Commit graph

130 commits

Author SHA1 Message Date
Sean Bowe
2ccddac674
Split proof/input length checks into separate method of verifier 2020-09-29 17:35:24 -06:00
Sean Bowe
9672bf9725
Minor improvements to check_hx() 2020-09-29 17:14:37 -06:00
Sean Bowe
7d8daa5d05
Refactor h_eval computation into separate, more functional code.
Co-authored-by: str4d <thestr4d@gmail.com>
2020-09-29 16:56:21 -06:00
Sean Bowe
e275d78c7d
Simplify permutations field of ConstraintSystem
Co-authored-by: therealyingtong <yingtong@electriccoin.co>
2020-09-29 08:51:00 -06:00
ebfull
e5fd7914b1
Merge pull request #37 from zcash/remove-srs
Remove SRS and replace with ProvingKey/VerifyingKey abstractions
2020-09-29 08:29:17 -06:00
Sean Bowe
7a3caaad59
Fix comments 2020-09-29 08:28:00 -06:00
Sean Bowe
c97da352ee
Remove SRS and replace with ProvingKey/VerifyingKey abstractions
Co-authored-by: therealyingtong <yingtong@electriccoin.co>
2020-09-29 08:25:04 -06:00
ebfull
865160ca88
Merge pull request #30 from zcash/blinded-accumulator
Faux blinded accumulator
2020-09-28 08:30:51 -06:00
Sean Bowe
4a37e05f49
cargo fmt 2020-09-25 10:21:54 -06:00
Sean Bowe
6d41693af5
Use Blind::default(). 2020-09-25 10:21:15 -06:00
Sean Bowe
56b6d8bd03
Auxilary wires in PLONK are foux blinded just like fixed wires. 2020-09-25 10:21:15 -06:00
Sean Bowe
316a027784
Modify commitment opening argument so that G element can be foux blinded to align with wire blinding in PLONK. 2020-09-25 10:21:15 -06:00
Sean Bowe
3db368b40e
Move Guard and Accumulator implementations into verifier submodule. 2020-09-25 10:21:13 -06:00
ebfull
f3cfd27a8f
Merge pull request #31 from zcash/rename-openingproof
Rename `OpeningProof` to just `Proof`.
2020-09-25 10:19:29 -06:00
Sean Bowe
2d1f69328f
Rename OpeningProof to just Proof. 2020-09-25 09:39:32 -06:00
ebfull
5f6c382546
Merge pull request #29 from zcash/address-clippy-lints
Address clippy lints
2020-09-25 09:31:12 -06:00
Sean Bowe
a37c926a89
Address clippy lints 2020-09-20 13:09:03 -06:00
ebfull
6e7895d8d5
Merge pull request #22 from zcash/aux-wires
Support for auxiliary advice wires
2020-09-20 10:37:07 -06:00
Sean Bowe
60aa2918c3
Remove get_g_scalars() from MSM. 2020-09-19 13:52:33 -06:00
Sean Bowe
6620817d81
Return errors from verifier instead of assuming points aren't at infinity in the proof. 2020-09-19 13:47:37 -06:00
Sean Bowe
73d494a72d
Various changes, including restoring permutation argument to advice wires only for now. 2020-09-19 13:31:56 -06:00
therealyingtong
e8839a7579
Refactor wire pattern matching when computing permutation product 2020-09-19 12:39:04 -06:00
therealyingtong
24fe3fae29
Remove aux_commitments computation from Prover; remove blinding factor when accumulator aux_evals 2020-09-19 12:39:04 -06:00
therealyingtong
c772801f8f
Pass aux_lagrange_polys to prover as a slice 2020-09-19 12:39:04 -06:00
therealyingtong
fd094fccd8
Add aux_commitments and aux_evals to test_proving() example 2020-09-19 12:39:04 -06:00
therealyingtong
9482202a98
Update PLONK test_proving() example 2020-09-19 12:39:04 -06:00
therealyingtong
0bdcbb6c67
Introduce Wire enum for use in permutations 2020-09-19 12:39:04 -06:00
therealyingtong
a257308ba2
Add aux wires to ConstraintSystem 2020-09-19 12:39:04 -06:00
therealyingtong
0caf1d2087
Provide aux_commitments to verifier and aux_lagrange_polys to prover 2020-09-19 12:39:04 -06:00
ebfull
0eed821083
Merge pull request #24 from zcash/remove-fork-hack
Remove fork hack from OpeningProof::create()
2020-09-19 09:52:12 -06:00
therealyingtong
76c49a4df3
Minor refactor 2020-09-19 23:44:00 +08:00
therealyingtong
33261ec1a0
Recover from OpeningProof::create() failure in PLONK prover 2020-09-19 23:19:30 +08:00
therealyingtong
69a612fb59
Increment blinding factor instead of choosing new random blinding factor 2020-09-19 23:04:17 +08:00
therealyingtong
a6f5d0ad5e
Remove fork from OpeningProof prover; add loop in PLONK prover to try different f_blind values 2020-09-19 16:57:32 +08:00
ying tong
208be28113
Merge pull request #20 from zcash/small-multiexp
Small multiexp
2020-09-17 13:00:51 +08:00
therealyingtong
ced73c2bf7
Minor fixes 2020-09-17 05:14:01 +08:00
ebfull
d853d7ae36
Merge pull request #23 from zcash/incorporate-msm
Rename f_eval to msm_eval
2020-09-16 13:23:49 -06:00
Sean Bowe
52a85380bc
Rename f_eval to msm_eval. 2020-09-16 13:15:10 -06:00
ying tong
76f95b08e9
Merge pull request #21 from zcash/incorporate-msm
Incorporate MSM/Guard into PLONK verifier API and arithmetic
2020-09-16 11:29:06 +08:00
therealyingtong
a63602df2a
Inline bit-shifting 2020-09-16 08:56:45 +08:00
therealyingtong
7710b73bff
Rename 'plonk' benchmark to 'arithmetic' 2020-09-16 08:55:39 +08:00
Sean Bowe
68de5db8c6
Mitigate unnecessary scaling operations in commitment verifier. 2020-09-15 17:42:02 -06:00
Sean Bowe
a886663e05
Incorporate MSM/Guard into PLONK verifier API and arithmetic. 2020-09-15 17:32:39 -06:00
therealyingtong
58708c2c20
Remove old 'double-and-add' benchmark 2020-09-16 01:07:45 +08:00
therealyingtong
d70c8cc0d7
Add benchmarks for shared double-and-add 2020-09-16 00:44:56 +08:00
therealyingtong
f2fc068db0
Implement small_multiexp() in arithmetic.rs 2020-09-15 19:15:35 +08:00
ebfull
153f721c1d
Merge pull request #16 from zcash/minor-renames
Rename `ConstraintSystem` to `Assignment`, and `MetaCircuit` to `ConstraintSystem`
2020-09-13 10:31:47 -06:00
Sean Bowe
643077b150
Rename ConstraintSystem to Assignment, and MetaCircuit to ConstraintSystem. 2020-09-13 10:30:02 -06:00
ebfull
626ef64e47
Merge pull request #13 from zcash/accumulator
Support batching and accumulation in polynomial opening argument
2020-09-13 10:25:24 -06:00
Sean Bowe
5ec820f8fd
Fix warning in test. 2020-09-13 10:23:04 -06:00