首页> 外文会议>International Conference on Networked Systems >Efficient Concurrent Execution of Smart Contracts in Blockchains Using Object-Based Transactional Memory
【24h】

Efficient Concurrent Execution of Smart Contracts in Blockchains Using Object-Based Transactional Memory

机译:使用基于对象的事务存储器在BlockChains中高效执行智能合同

获取原文

摘要

Several popular blockchains such as Ethereum execute complex transactions through user-defined scripts. A block of the chain typically consists of multiple smart contract transactions (SCTs). To append a block into the blockchain, a miner executes these SCTs. On receiving this block, other nodes act as validators, who re-execute these SCTs as part of the consensus protocol to validate the block. In Ethereum and other blockchains that support cryptocurren-cies, a miner gets an incentive every time such a valid block is successfully added to the blockchain. When executing SCTs sequentially, miners and validators fail to harness the power of multiprocessing offered by the prevalence of multi-core processors, thus degrading throughput. By leveraging multiple threads to execute SCTs, we can achieve better efficiency and higher throughput. Recently, Read-Write Software Transactional Memory Systems (RWSTMs) were used for concurrent execution of SCTs. It is known that Object-based STMs (OSTMs), using higher-level objects (such as hash-tables or lists), achieve better throughput as compared to RWSTMs. Even greater concurrency can be obtained using Multi-Version OSTMs (MVOSTMs), which maintain multiple versions for each shared data item as opposed to Single-Version OSTMs (SVOSTMs). This paper proposes an efficient framework to execute SCTs concurrently based on object semantics, using optimistic SVOSTMs and MVOSTMs. In our framework, a multi-threaded miner constructs a Block Graph (BG), capturing the object-conflicts relations between SCTs, and stores it in the block. Later, validators re-execute the same SCTs concurrently and deterministically relying on this BG. A malicious miner can modify the BG to harm the blockchain, e.g.. to cause double spending. To identify malicious miners, we propose Smart Multi-threaded Validator (SMV). Experimental analysis shows that proposed multi-threaded miner and validator achieve significant performance gains over state-of-the-art SCT execution framework.
机译:几个流行的区块链,如以外域通过用户定义的脚本执行复杂的事务。链条块通常由多个智能合同交易(SCT)组成。要将块追加到区块链中,矿工执行这些SCT。接收此块时,其他节点充当验证器,验证器作为验证块的共识协议的一部分重新执行这些SCT。在以太统计和其他支持Cryptocurren-CIE的区块中,矿工每次成功添加到区块链时都会获得激励。顺序执行SCTS时,矿工和验证器无法利用多核处理器的普遍性提供的多处理的功率,从而降低吞吐量。通过利用多个线程来执行SCTS,我们可以实现更好的效率和更高的吞吐量。最近,读写软件事务内存系统(RWSTMS)用于并发执行SCT。众所周知,与RWSTM相比,基于对象的STMS(oSTMS),使用更高级别对象(例如哈希表或列表),实现更好的吞吐量。使用多版OSTMS(MVOSTMS)可以获得更大的并发性,这对每个共享数据项维护多个版本,而不是单个版本OSTMS(SVOSTMS)。本文提出了一种高效的框架,用于基于对象语义,使用乐观的SVOSTMS和MVOSTMS执行SCTS。在我们的框架中,一个多线程矿工构造一个块图(BG),捕获SCTS之间的对象冲突,并将其存储在块中。稍后,验证器同时重新执行相同的SCT,并确定此BG。恶意矿工可以修改BG伤害区块链,例如,造成双重消费。要识别恶意矿工,我们提出了智能多线程验证器(SMV)。实验分析表明,提出的多线程矿工和验证器实现了最先进的SCT执行框架的显着性能。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号