FlyClient is a lightweight blockchain verification protocol that enables proof-of-work validation using minimal data, making it ideal for resource-constrained environments like mobile wallets, Internet-of-Things devices or cross-chain bridges implemented with smart contracts. Despite its strong potential for enabling lightweight blockchain verification, FlyClient protocol is still in the experimental stages, with limited real-world deployments and performance evaluations under diverse conditions. In this paper we bridge the gap between theory and deployment, by addressing several technical challenges to advance FlyClient to a production-ready solution. Namely, our contribution is three-fold: (i) we formally introduce an adversary model alternative to the original FlyClient one, that allows us to parametrize a verifier under a concrete economic interpretation, while also saving some proof space; (ii) we provide the first practical FlyClient prover implementation for a production blockchain (Zcash), and we estimate its performance under different configurations; (iii) we introduce and evaluate two optimizations that minimize the size of FlyClient proofs, the first of which does not require any consensus change.
翻译:FlyClient是一种轻量级区块链验证协议,能够利用最少的数据实现工作量证明验证,特别适用于资源受限环境,如移动钱包、物联网设备或通过智能合约实现的跨链桥。尽管该协议在实现轻量级区块链验证方面具有巨大潜力,FlyClient仍处于实验阶段,在真实环境中的部署有限,且缺乏多样化条件下的性能评估。本文通过解决多项技术挑战,弥合理论与实际部署之间的差距,推动FlyClient成为可投产的解决方案。具体而言,我们的贡献包含三个方面:(i) 我们正式提出了一种替代原始FlyClient协议的对手模型,该模型允许在具体经济解释下参数化验证者,同时节省部分证明空间;(ii) 我们提供了首个面向实际生产区块链(Zcash)的FlyClient证明者实现,并评估了其在不同配置下的性能;(iii) 我们引入并评估了两种优化方案,用于最小化FlyClient证明的尺寸,其中第一种方案无需任何共识变更。