以太坊跨分片跨EE原子用户级ETH传输算法
Algorithm for Cross-shard Cross-EE Atomic User-level ETH Transfer in Ethereum
摘要:
分片是解决区块链技术中可扩展性问题的一种方法。以太坊是一种著名的区块链技术,它将分片纳入了其路线图,以提高吞吐量。该计划还包括多个执行环境。我们解决了在多个执行环境中原子跨分片值传输的问题。我们利用所提出的以太坊架构,更具体地说是Beacon链和交叉链接,并在EE级原子以太坊传输的净平衡方法之上提出了一个解决方案。我们将跨分片转账分为两个交易:借记和贷记。首先,借记交易在源分片处处理。相应的信用交易在后续块中的目的地碎片处处理。我们使用{ \em neted}分片状态作为通道来传递挂起信用和挂起还原。我们讨论了借记失败和信用失败的各种情况下,并显示我们的方法,即使在拜占庭块提议者的存在,确保原子性。我们的方法的好处是,我们不使用任何锁,也不对Block Proposer施加任何约束来选择特定的事务。然而,我们继承了从所有其他分片查询部分状态的净平衡方法的昂贵操作的限制。我们还展示了这种分片间状态读取的大小的界限。
英文摘要:
Sharding is a way to address scalability problem in blockchain technologies. Ethereum, a prominent blockchain technology, has included sharding in its roadmap to increase its throughput. The plan is also to include multiple execution environments. We address the problem of atomic cross shard value transfer in the presence of multiple execution environments. We leverage on the proposed Ethereum architecture, more specificially on Beacon chain and crosslinks, and propose a solution on top of the netted-balance approach that was proposed for EE-level atomic ðtransfers. We split a cross-shard transfer into two transactions: a debit and a credit. First, the debit transaction is processed at the source shard. The corresponding credit transaction is processed at the destination shard in a subsequent block. We use {\em netted} shard states as channels to communicate pending credits and pending reverts. We discuss various scenarios of debit failures and credit failures, and show our approach ensures atomicity even in the presence of a Byzantine Block proposer. The benefits of our approach are that we do not use any locks nor impose any constraints on the Block Proposer to select specific transactions. However we inherit the limitation of an expensive operation from the netted-balance approach of querying partial states from all other shards. We also show a bound on the size of such inter-shard state reads.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。