A. Aldweesh, Maher Alharby, E. Solaiman, A. Moorsel
{"title":"Performance Benchmarking of Smart Contracts to Assess Miner Incentives in Ethereum","authors":"A. Aldweesh, Maher Alharby, E. Solaiman, A. Moorsel","doi":"10.1109/EDCC.2018.00034","DOIUrl":null,"url":null,"abstract":"A defining feature of the Ethereum blockchain is its ability to execute smart contracts, providing a Turing complete programming model for distributed applications in non-trusted environments. The successful operation of the Ethereum blockchain depends on whether the miners' incentives (in the form of fees) to execute contracts is proportional to the miners' cost (in terms of energy usage, and thus CPU usage). In general, if the received fee is not proportional to the computational cost, miners would prefer some tasks over others, thus potentially adversely affecting the continuing dependable operation of the blockchain. In this paper we design a benchmark to compare smart contract execution time with the award a miner would receive, to determine if incentives align. We present the design of the benchmarking approach and provide initial results for the Python Ethereum client running on a Mac. The results indicate that for functions in Ethereum's most popular contracts the difference of reward per CPU second can be up to a factor of almost 50. In addition, contract creation, which is done once for each new contract, can be up to 6 times more lucrative than the regular execution of contract functions. Potentially, these discrepancies result in misaligned incentives that impact the dependable operation of the blockchain.","PeriodicalId":129399,"journal":{"name":"2018 14th European Dependable Computing Conference (EDCC)","volume":"10 1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2018-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"33","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2018 14th European Dependable Computing Conference (EDCC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/EDCC.2018.00034","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 33
Abstract
A defining feature of the Ethereum blockchain is its ability to execute smart contracts, providing a Turing complete programming model for distributed applications in non-trusted environments. The successful operation of the Ethereum blockchain depends on whether the miners' incentives (in the form of fees) to execute contracts is proportional to the miners' cost (in terms of energy usage, and thus CPU usage). In general, if the received fee is not proportional to the computational cost, miners would prefer some tasks over others, thus potentially adversely affecting the continuing dependable operation of the blockchain. In this paper we design a benchmark to compare smart contract execution time with the award a miner would receive, to determine if incentives align. We present the design of the benchmarking approach and provide initial results for the Python Ethereum client running on a Mac. The results indicate that for functions in Ethereum's most popular contracts the difference of reward per CPU second can be up to a factor of almost 50. In addition, contract creation, which is done once for each new contract, can be up to 6 times more lucrative than the regular execution of contract functions. Potentially, these discrepancies result in misaligned incentives that impact the dependable operation of the blockchain.