Skip to main content

One post tagged with "Merkle Trie"

View All Tags

Merkle Tries and Verifiable Blockchain State

· 18 min read
Ross Bulat
Full Stack Engineer

Blockchains are often introduced as ledgers, but the more interesting engineering problem is state.

Modern chains maintain a large key-value database that changes every block: account balances, staking ledgers, governance tracks, scheduler queues, proxy definitions, identity records, parachain heads, smart contract storage, and anything else the runtime decides to persist.

That database needs a property that ordinary application databases do not usually need: anyone should be able to verify a small part of it without trusting the machine that served the data. This is where Merkle tries come in.

In this article I will walk through what Merkle tries are, how a typical database layout can support them, how querying works in a blockchain context, and how the Polkadot SDK implements the idea through its state trie stack.