ZooBC wiki

Changes to “The archive and reading the past”

#79 (zoobc.how, 2026-10-26 20:39 UTC) → #147 (zoobc.how, 2026-10-26 21:37 UTC): Seed article updated

…
## The archive
 
+ > [!design] **Planned design.** The decentralised storage keeps every snapshot from block 0. Each snapshot's pieces are held by a few registered nodes chosen by lot, five by default (`storage_replication`), as for any stored file ([[storage-pool]]). Every node keeps only its last snapshots; no node keeps them all.
− > **Planned design.** The decentralised storage keeps every snapshot from block 0. Each snapshot's pieces are held by a few registered nodes chosen by lot, five by default (`storage_replication`), as for any stored file ([[storage-pool]]). Every node keeps only its last snapshots; no node keeps them all.
>
> No single machine holds the history, so no single operator can lose it or withhold it. An archive server run by one organisation, even the ZooBC Foundation, would be exactly that single point. Nothing is thrown away either: the archive goes back to the very first snapshot.
…
## Reading the past
 
+ > [!design] **Planned design.** A reader who wants the state at a past time walks the spine back to the snapshot taken at that time and reads its manifest. It fetches the snapshot's pieces from their holders and checks each one against its hash in the manifest, so a holder cannot slip in a false piece. Then it reassembles the snapshot, checks the hash of the whole, and rebuilds the state at that height: every balance, seat and record of that moment. No single node holds the history, and no archival node is needed.
− > **Planned design.** A reader who wants the state at a past time walks the spine back to the snapshot taken at that time and reads its manifest. It fetches the snapshot's pieces from their holders and checks each one against its hash in the manifest, so a holder cannot slip in a false piece. Then it reassembles the snapshot, checks the hash of the whole, and rebuilds the state at that height: every balance, seat and record of that moment. No single node holds the history, and no archival node is needed.
 
![Planned design: walk the spine, read the manifest, fetch and check the pieces, rebuild the state.](storage-012.svg)
…

History