Go to file
NikVolf 08806cc109 proper elapsed time calc 2019-09-24 13:47:32 +02:00
examples proper elapsed time calc 2019-09-24 13:47:32 +02:00
src add invariant about number of returned links 2019-09-24 13:15:35 +02:00
.gitignore initial commit 2019-08-20 18:05:14 +03:00
.travis.yml add .travis.yml 2019-09-08 00:17:40 +03:00
Cargo.toml get rid of derive_more 2019-09-24 12:19:25 +02:00
LICENSE-APACHE license and readme 2019-09-07 19:23:13 +03:00
LICENSE-MIT license and readme 2019-09-07 19:23:13 +03:00
README.md update readme 2019-09-24 10:36:28 +02:00

README.md

zcash_mmr

Special implementation of merkle mountain ranges (MMR) for ZCash!

Build Status

The main design goals of this mmr implementation are

  • Allow zero-cache and avoid db 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).

  • Reuse as much logic between rust and c++ clients and place it here and librustzcash.

  • Close to zero memory consumption.

License

zcash_mmr is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0), at your choice.

See LICENSE-APACHE, and LICENSE-MIT for details.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in zcash_mmr by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.