Find a file
arnaucube c101d94530
implement the specified sparse merkletree (#82)
* wip

* prototype custom predicates 1b

* feat: implement custom pred recursion

* files reorg, add github CI for rustfmt checks

* start sparsemerkletree. impl add_leaf method, initial Leaf & Intermediate types with methods

* mt: add hash computation of all the nodes in the tree, add method to print the tree to visualize it as a graphviz

* mt: add  (till the leaf) method which is used by get,contains,prove methods

* mt: add verify (of inclusion) method

* mt: update 'down' method to reuse siblings, update get,contains,prove methods (the three use 'down' under the hood)

* Add nonexistence proofs and iterator

* Add iterator test

* migrate usage of old merkletree to the new merkletree impl in POD2 code

---------

Co-authored-by: Eduard S. <eduardsanou@posteo.net>
Co-authored-by: Ahmad <root@ahmadafuni.com>
2025-02-21 11:13:58 +10:00
.github/workflows Prototype custom predicates (#74) 2025-02-21 10:55:36 +10:00
book feat: add architecture doc (#73) 2025-02-18 16:31:39 +01:00
src implement the specified sparse merkletree (#82) 2025-02-21 11:13:58 +10:00
.gitignore Merge changes to docs (#41) 2025-02-10 19:06:45 +01:00
Cargo.toml feat: add middleware and signer traits (#18) 2025-02-04 12:35:32 +01:00
README.md Extend merkletree spec, init SignedPod section, add typos checker in CI (#31) 2025-02-05 16:37:16 +01:00
rust-toolchain.toml add initial MerkleTree implementation (#13) 2025-02-03 18:03:45 +01:00

POD2

Usage

  • Run tests: cargo test --release

Book

The book contains the specification of POD2. A rendered version of the site can be found at: https://0xparc.github.io/pod2/

To run it locally:

  • Requirements
  • Go to the book directory: cd book
  • Run the mdbook: mdbook serve