论代币智能合约的同步能力
分布式、并行与集群计算
2021-01-15 v1 密码学与安全
摘要
现代区块链支持加密货币之外的多种分布式应用,包括智能合约——它让用户以分布式和去中心化的方式执行任意代码。无论预期应用为何,区块链平台都隐式地假设共识对于智能合约的正确执行是必要的,从而要求所有交易被全序排列。直到最近才认识到,与普遍看法相反,共识对于防止加密货币中的双花并非必要(Guerraoui 等人,PODC'19)。这一结果表明,当前实现可能因将交易同步得比实际所需紧密得多而牺牲了效率与可扩展性。本文中,我们研究了以太坊 ERC20 代币合约(应用最广泛的智能合约之一)的同步需求。具体而言,我们将智能合约代币建模为并发对象,并分析其作为同步能力度量的共识数。我们表明,与标准加密货币相比,ERC20 代币所支持的更丰富方法集合导致了严格更强的同步需求。更令人惊讶的是,ERC20 代币的同步能力取决于对象的状态,因而可被方法调用所改变。为证明该结果,我们开发了一个专用框架来表达对象状态如何影响所需的同步级别。我们的发现表明,ERC20 代币以及其他代币标准比普通加密货币更强大且更通用,并受到动态需求的约束。开发利用这些动态需求的特定同步协议,将为更健壮且可扩展的区块链平台铺平道路。
引用
@article{arxiv.2101.05543,
title = {On the Synchronization Power of Token Smart Contracts},
author = {Orestis Alpos and Christian Cachin and Giorgia Azzurra Marson and Luca Zanolini},
journal= {arXiv preprint arXiv:2101.05543},
year = {2021}
}