input-output-hk / scrypto

Cryptographic primitives for Scala

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Write specification for AVL+ implementation

kushti opened this issue · comments

Scrypto has an implementation of AVL+ tree described in briefly in https://eprint.iacr.org/2016/994 , see BatchAVLProver/BatchAVLVerifier classes and further scorex.crypto.authds.avltree.batch package.

In particular, this tree is tailored for blockchain applications. See the presentation from RWC2017 https://www.youtube.com/watch?v=PHY7JnLrK5o

There's no detailed specification for the tree (construction, serialization) and proofs (algorithms, serialization) yet, but it is needed, as the tree is used in Ergo blockchain (core, contracts), and possibly , somewhere else.