alinush / append-only-merkle-prefix-trees

Estimate append-only proof sizes in Merkle prefix trees

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

A more-memory friendly append-only, sparse-prefix tree

This code was written in 2015 to estimate append-only proof sizes in Merkle prefix trees, and later used for a research project on append-only authenticated dictionaries (AADs) in 20191.

The idea here was to not dynamically allocate every tree node with left, right and parent pointers.

Instead, for each tree level, we keep a Go map that maps a node's location on that level to its Merkle hash. This drastically reduced the memory consumption.

Footnotes

  1. Transparency Logs via Append-Only Authenticated Dictionaries, by Tomescu, Alin and Bhupatiraju, Vivek and Papadopoulos, Dimitrios and Papamanthou, Charalampos and Triandopoulos, Nikos and Devadas, Srinivas, in ACM CCS'19, 2019, [URL]

About

Estimate append-only proof sizes in Merkle prefix trees


Languages

Language:Go 86.8%Language:Python 8.8%Language:Shell 4.3%Language:Makefile 0.2%