45 releases (22 stable)
| 2.1.1 | Jan 24, 2026 |
|---|---|
| 2.1.0 | Aug 28, 2025 |
| 2.0.6 | Jan 24, 2026 |
| 2.0.4 | Jul 15, 2025 |
| 0.82.0-alpha.0 | Dec 26, 2024 |
#9 in #tiered
340 downloads per month
Used in 35 crates
(18 directly)
5MB
111K
SLoC
penumbra-tct
The tiered state commitment tree for Penumbra.
lib.rs:
The tiered commitment tree for Penumbra.
Eternity┃ ╱╲ ◀───────────── Anchor
Tree┃ ╱││╲ = Global Tree Root
┃ * ** * ╮
┃ * * * * │ 8 levels
┃ * * * * ╯
┃ ╱╲ ╱╲ ╱╲ ╱╲
┃ ╱││╲ ╱││╲ ╱││╲ ╱││╲ ◀─── Global Tree Leaf
▲ = Epoch Root
┌──┘
│
│
Epoch┃ ╱╲ ◀───────────── Epoch Root
Tree┃ ╱││╲
┃ * ** * ╮
┃ * * * * │ 8 levels
┃ * * * * ╯
┃ ╱╲ ╱╲ ╱╲ ╱╲
┃ ╱││╲ ╱││╲ ╱││╲ ╱││╲ ◀─── Epoch Leaf
▲ = Block Root
└───┐
│
│
Block┃ ╱╲ ◀───────────── Block Root
Tree┃ ╱││╲
┃ * ** * ╮
┃ * * * * │ 8 levels
┃ * * * * ╯
┃ ╱╲ ╱╲ ╱╲ ╱╲
┃ ╱││╲ ╱││╲ ╱││╲ ╱││╲ ◀─── Block Leaf
= Note Commitment
Builders for individual epochs and blocks: useful when constructing a Tree
in parallel, but unnecessary in a single thread.
Build individual epochs to insert into Trees.
Build individual blocks to insert into epoch::Builders or
Trees.
Dependencies
~41MB
~751K SLoC