Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sudiptab2100/incremental-merkle-tree-python
Incremental Merkle Tree (IMT) - a specialized form of a Merkle tree designed to allow for efficient appending of new elements
https://github.com/sudiptab2100/incremental-merkle-tree-python
circom circomlib ethereum groth16 incremental-merkle-tree merkle-proof merkle-root merkle-tree mimc sha256 tornado-cash tornadocash web3 zero-knowledge zksnark zksnarks
Last synced: 16 days ago
JSON representation
Incremental Merkle Tree (IMT) - a specialized form of a Merkle tree designed to allow for efficient appending of new elements
- Host: GitHub
- URL: https://github.com/sudiptab2100/incremental-merkle-tree-python
- Owner: sudiptab2100
- Created: 2024-04-05T13:37:56.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-04-11T13:21:19.000Z (9 months ago)
- Last Synced: 2024-04-11T15:32:58.963Z (9 months ago)
- Topics: circom, circomlib, ethereum, groth16, incremental-merkle-tree, merkle-proof, merkle-root, merkle-tree, mimc, sha256, tornado-cash, tornadocash, web3, zero-knowledge, zksnark, zksnarks
- Language: Python
- Homepage:
- Size: 35.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Incremental Merkle Tree (IMT) - Python
Incremental Merkle Tree is a specialized form of a Merkle tree designed to allow for efficient appending of new elements, making it useful in applications where the dataset is expected to grow over time and updates need to be processed efficiently.
## Advantages
- ### Efficiency
New elements can be appended without recomputing the entire tree.
- ### Consistent Growth
The structure can grow dynamically as new elements are added, making it suitable for scenarios where the dataset size isn't fixed.
- ### Proofs
Similar to traditional Merkle trees, the IMT allows for the creation of Merkle proofs, which prove the inclusion of a particular element in the tree without revealing other elements.## Code
- #### `prog.py`
Incremental Merkle Tree class implemented with all the functionalities.
- #### `MiMC5Sponge.py`
Implementation of MiMC5Sponge hasher. MiMC is a hash function family specially designed for SNARK applications. The low multiplicative complexity of MiMC over prime fields makes it suitable for ZK-SNARK applications
- ### `files/MiMC_settings.json`
It includes the parameters for MiMC implementation.