-
Notifications
You must be signed in to change notification settings - Fork 87
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Implemented Batched Proof for multiple openings and Path Pruning (#130)
* implemented multipath * reverted index logic in verify * fixed compile errors * unittests passing * changed signature of generate_multi_proof to sort indexes * cargo fmt * implemented unit test for multi_proof internals * renamed multi_proof specific test * cargo fmt * commnts in unittest * changed function signatures * cargo fmt * modified use of BtreeSet and HashMap from ark_std crate Co-authored-by: Pratyush Mishra <pratyush795@gmail.com> * modified multipath to derivative(PartialEq...) Co-authored-by: Pratyush Mishra <pratyush795@gmail.com> * keep leaves as iterator in multipath verify Co-authored-by: Marcin <marcin.gorny.94@protonmail.com> * auth_paths to peekable in multipath.verify Co-authored-by: Marcin <marcin.gorny.94@protonmail.com> * updated syntax for iterators in multipath.verify Co-authored-by: Marcin <marcin.gorny.94@protonmail.com> * updated syntax for iterators in multipath.verify Co-authored-by: Marcin <marcin.gorny.94@protonmail.com> * updated syntax for iterators in multipath.verify Co-authored-by: Marcin <marcin.gorny.94@protonmail.com> * shortend init for multipath * fixed build issues and implementing benches * implemented benches for proof and multiproof * removed extra loop in decompress * removed explicit decompress and merged decompression into multipath verification * removed multi_path.compress and merged compression step in generate_multi_proof * implemented prefix_decode_path * removed redundant code with new helper functions * added doc for get_leaf_sibling_hash and made it pub. Renamed compute_path to compute_auth_path * cargo fmt * changed multiproof.verify to use "insert_with" instead of "insert" (this solves a bug where hashes were computed no matter what). This makes the lut optimization effective * cargo fmt * Use iterators in prefix_encode_path * Allow function-specific sample size in merkle tree benches * removed redundant imports (nightly build tests) * cargo fmt * nightly build fix --------- Co-authored-by: Pratyush Mishra <pratyush795@gmail.com> Co-authored-by: Marcin <marcin.gorny.94@protonmail.com> Co-authored-by: Cesar199999 <cesar.descalzo2@gmail.com>
- Loading branch information
1 parent
b93e005
commit fc1c949
Showing
32 changed files
with
525 additions
and
100 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.