Defining Smart Contract Defects on EthereumJournal-First
Thu 27 May 2021 02:30 - 02:50 at Blended Sessions Room 4 - 2.3.4. Smart Contracts
Smart contracts are programs running on a blockchain. They are immutable to change, and hence can not be patched for bugs once deployed. Thus it is critical to ensure they are bug-free and well-designed before deployment. A Contract defect is an error, flaw or fault in a smart contract that causes it to produce an incorrect or unexpected result, or to behave in unintended ways. The detection of contract defects is a method to avoid potential bugs and improve the design of existing code. Since smart contracts contain numerous distinctive features, such as the gas system. decentralized, it is important to find smart contract specified defects. To fill this gap, we collected smart-contract-related posts from Ethereum StackExchange, as well as real-world smart contracts. We manually analyzed these posts and contracts; using them to define 20 kinds of contract defects. We categorized them into indicating potential security, availability, performance, maintainability and reusability problems. To validate if practitioners consider these contract as harmful, we created an online survey and received 138 responses from 32 different countries. Feedback showed these contract defects are harmful and removing them would improve the quality and robustness of smart contracts. We manually identified our defined contract defects in 587 real world smart contract and publicly released our dataset. Finally, we summarized 5 impacts caused by contract defects. These help developers better understand the symptoms of the defects and removal priority.
Wed 26 MayDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
14:30 - 15:30 | 2.3.4. Smart ContractsJournal-First Papers / Technical Track at Blended Sessions Room 4 +12h Chair(s): Oscar Pastor Universitat Politecnica de Valencia | ||
14:30 20mPaper | Defining Smart Contract Defects on EthereumJournal-First Journal-First Papers Jiachi Chen Monash University, Xin Xia Huawei Software Engineering Application Technology Lab, David Lo Singapore Management University, John Grundy Monash University, Xiapu Luo The Hong Kong Polytechnic University, Ting Chen University of Electronic Science and Technology of China DOI Pre-print Media Attached | ||
14:50 20mPaper | Smart Contract Security: a Practitioners’ PerspectiveTechnical Track Technical Track Zhiyuan Wan Zhejiang University, Xin Xia Huawei Software Engineering Application Technology Lab, David Lo Singapore Management University, Jiachi Chen Monash University, Xiapu Luo The Hong Kong Polytechnic University, Xiaohu Yang Zhejiang University Pre-print Media Attached | ||
15:10 20mPaper | An exploratory study of smart contracts in the Ethereum blockchain platformJournal-First Journal-First Papers Gustavo A. Oliva Queen's University, Ahmed E. Hassan School of Computing, Queen's University, Zhen Ming (Jack) Jiang York University Link to publication DOI Pre-print Media Attached |
Thu 27 MayDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
02:30 - 03:30 | |||
02:30 20mPaper | Defining Smart Contract Defects on EthereumJournal-First Journal-First Papers Jiachi Chen Monash University, Xin Xia Huawei Software Engineering Application Technology Lab, David Lo Singapore Management University, John Grundy Monash University, Xiapu Luo The Hong Kong Polytechnic University, Ting Chen University of Electronic Science and Technology of China DOI Pre-print Media Attached | ||
02:50 20mPaper | Smart Contract Security: a Practitioners’ PerspectiveTechnical Track Technical Track Zhiyuan Wan Zhejiang University, Xin Xia Huawei Software Engineering Application Technology Lab, David Lo Singapore Management University, Jiachi Chen Monash University, Xiapu Luo The Hong Kong Polytechnic University, Xiaohu Yang Zhejiang University Pre-print Media Attached | ||
03:10 20mPaper | An exploratory study of smart contracts in the Ethereum blockchain platformJournal-First Journal-First Papers Gustavo A. Oliva Queen's University, Ahmed E. Hassan School of Computing, Queen's University, Zhen Ming (Jack) Jiang York University Link to publication DOI Pre-print Media Attached |