Cryptology ePrint Archive: Report 2021/782

On the deployment of FlyClient as a velvet fork: chain-sewing attacks and countermeasures

Tristan Nemoz and Alexei Zamyatin

Abstract: Because of the everlasting need of space to store even the headers of a blockchain, Ethereum requiring for example more than 4 GiB for such a task, superlight clients stood out as a necessity, for instance to enable deployment on wearable devices or smart contracts. Among them is FlyClient, whose main benefit was to be non-interactive. However, it is still to be shown how a such protocol can be deployed on an already existing chain, without contentious soft or hard forks. FlyClient suggests the use of velvet forks, a recently introduced mechanism for conflict-free deployment of blockchain consensus upgrades yet the impact on the security of the light client protocol remains unclear. In this work, we provide a comprehensive analysis of the security of FlyClient under a velvet fork deployment. We discover that a naive velvet fork implementation exposes FlyClient to chain-sewing attacks, a novel type of attack, concurrently observed in similar superlight clients. Specifically, we show how an adversary subverting only a small fraction of the hash rate or consensus participants can not only execute doublespending attacks against velvet FlyClient nodes, but also print fake coins with high probability of success. We then present three potential mitigations to this attack and prove their security both under velvet and, more traditional soft and hard fork deployment. In particular, our mitigations do not necessarily require a majority of honest, up-to-date miners.

Category / Keywords: cryptographic protocols / Blockchain, Superlight clients, FlyClient, Velvet forks, Cross-chain communication, Chain-sewing

Date: received 9 Jun 2021

Contact author: tristan nemoz19 at imperial ac uk, alexei zamyatin17 at imperial ac uk

Available format(s): PDF | BibTeX Citation

Version: 20210610:085557 (All versions of this report)

Short URL: ia.cr/2021/782


[ Cryptology ePrint archive ]