Paper 2021/1361

Plumo: An Ultralight Blockchain Client

Psi Vesely, Kobi Gurkan, Michael Straka, Ariel Gabizon, Philipp Jovanovic, Georgios Konstantopoulos, Asa Oines, Marek Olszewski, and Eran Tromer

Abstract

Syncing the latest state of a blockchain can be a resource-intensive task, driving (especially mobile) end users towards centralized services offering instant access. To expand full decentralized access to anyone with a mobile phone, we introduce a consensus-agnostic compiler for constructing {\em ultralight clients}, providing secure and highly efficient blockchain syncing via a sequence of SNARK-based state transition proofs, and prove its security formally. Instantiating this, we present Plumo, an ultralight client for the Celo blockchain capable of syncing the latest network state summary in just a few seconds even on a low-end mobile phone. In Plumo, each transition proof covers four months of blockchain history and can be produced for just $25 USD of compute. Plumo achieves this level of efficiency thanks to two new SNARK-friendly constructions, which may also be of independent interest: a new BLS-based offline aggregate multisignature scheme in which signers do not have to know the members of their multisignature group in advance, and a new composite algebraic-symmetric cryptographic hash function.

Metadata
Available format(s)
PDF
Category
Applications
Publication info
Published elsewhere. Minor revision. Financial Cryptography and Data Security 2022
Keywords
Ultralight clientsSNARKsaggregate multisignatures
Contact author(s)
psi @ ucsd edu
mstraka @ clabs co
History
2022-04-05: last of 2 revisions
2021-10-12: received
See all versions
Short URL
https://ia.cr/2021/1361
License
Creative Commons Attribution
CC BY

BibTeX

@misc{cryptoeprint:2021/1361,
      author = {Psi Vesely and Kobi Gurkan and Michael Straka and Ariel Gabizon and Philipp Jovanovic and Georgios Konstantopoulos and Asa Oines and Marek Olszewski and Eran Tromer},
      title = {Plumo: An Ultralight Blockchain Client},
      howpublished = {Cryptology {ePrint} Archive, Paper 2021/1361},
      year = {2021},
      url = {https://eprint.iacr.org/2021/1361}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.