MMR trees API (#118)

The main design goals of this mmr implementation were

1. Avoid database callbacks. As it is implemented, calling side must just smartly pre-load MMR nodes from the database (about log2(tree length) for append, twice as much for deletion).

2. Reuse as much code/logic between rust and c++ clients.

3. Close to zero memory consumption.
This commit is contained in:
Nikolay Volf
2019-12-04 13:24:26 -08:00
committed by str4d
parent dd112813a1
commit 9ea0427678
8 changed files with 480 additions and 0 deletions

View File

@@ -28,6 +28,7 @@ libc = "0.2"
pairing = { version = "0.15.0", path = "../pairing" }
lazy_static = "1"
rand_core = "0.5.1"
zcash_mmr = { git = "https://github.com/nikvolf/zcash-mmr" }
zcash_primitives = { version = "0.1.0", path = "../zcash_primitives" }
zcash_proofs = { version = "0.1.0", path = "../zcash_proofs" }