Paper 2024/1680
Sunfish: Reading Ledgers with Sparse Nodes
Abstract
The increased throughput offered by modern blockchains, such as Sui, Aptos, and Solana, enables processing thousands of transactions per second, but it also introduces higher costs for decentralized application (dApp) developers who need to track and verify changes in the state of their application. This is true because dApp developers run full nodes, which download and re-execute every transaction to track the global state of the chain. However, this becomes prohibitively expensive for high-throughput chains due to high bandwidth, computational, and storage requirements. A common alternative is to use light nodes. However, light nodes only verify the inclusion of a set of transactions and have no guarantees that the set is complete, i.e., that includes all relevant transactions. Under a dishonest majority, light nodes can also be tricked into accepting invalid transactions. To bridge the gap between full and light nodes, we propose and formalize a new type of blockchain node: the sparse node. A sparse node tracks only a subset of the blockchain’s state: it verifies that the received set of transactions touching the substate is complete, and re-executes those transactions to assess their validity. A sparse node retains important security properties even under adversarial majorities, and requires an amount of resources proportional to the number of transactions in the substate and to the size of the substate itself. We further present Sunfish, an instantiation of a sparse node protocol. Our analysis and evaluation show that Sunfish reduces the bandwidth consumption of real blockchain applications by several orders of magnitude when compared to a full node.
Metadata
- Available format(s)
- Category
- Cryptographic protocols
- Publication info
- Preprint.
- Keywords
- blockchainblockchain clientBFT consensuslight clientfull node
- Contact author(s)
-
giulia scaffino @ tuwien ac at
karl @ mystenlabs com
deepak @ mystenlabs com
alberto @ mystenlabs com
lefteris @ mystenlabs com - History
- 2024-10-18: approved
- 2024-10-16: received
- See all versions
- Short URL
- https://ia.cr/2024/1680
- License
-
CC BY-SA
BibTeX
@misc{cryptoeprint:2024/1680, author = {Giulia Scaffino and Karl Wüst and Deepak Maram and Alberto Sonnino and Lefteris Kokoris-Kogias}, title = {Sunfish: Reading Ledgers with Sparse Nodes}, howpublished = {Cryptology {ePrint} Archive, Paper 2024/1680}, year = {2024}, url = {https://eprint.iacr.org/2024/1680} }