当前位置: X-MOL 学术Empir. Software Eng. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
A fly in the ointment: an empirical study on the characteristics of Ethereum smart contract code weaknesses
Empirical Software Engineering ( IF 4.1 ) Pub Date : 2023-11-30 , DOI: 10.1007/s10664-023-10398-5
Majd Soud , Grischa Liebel , Mohammad Hamdaqa

Context

Smart contracts are programs that are automatically executed on the blockchain. Code weaknesses in their implementation have led to severe loss of cryptocurrency. It is essential to understand the nature of code weaknesses in Ethereum smart contracts to prevent them in the future. Existing classifications are limited in several ways, e.g., in the breadth of data sources, and the generality of proposed categories.

Objective

We aim to characterize code weaknesses in Ethereum smart contracts written in Solidity, and provide an overview of existing classification schemes in relation to this characterization.

Method

We extracted code weaknesses in Ethereum smart contracts from two public coding platforms and two vulnerability databases and categorized them using an open card sorting approach. We devised a classification scheme of smart contract code weaknesses according to their error source and impact. Afterwards, we mapped existing classification schemes to our classification.

Results

The resulting classification consists of 11 categories describing the error source of code weaknesses and 13 categories describing potential impacts. Our findings show that the language specific coding and the structural data flow categories are the dominant categories, but that the frequency of occurrence differs substantially between the data sources.

Conclusions

Our findings enable researchers to better understand smart contract code weaknesses by defining various dimensions of the problem and supporting our classification with mappings with literature-based classifications and frequency distributions of the defined categories.



中文翻译:

美中不足:以太坊智能合约代码弱点特征实证研究

语境

智能合约是在区块链上自动执行的程序。其实施中的代码缺陷导致了加密货币的严重损失。有必要了解以太坊智能合约中代码缺陷的本质,以防止将来再次出现此类问题。现有的分类在几个方面受到限制,例如数据源的广度和所提出的类别的普遍性。

客观的

我们的目标是描述以 Solidity 编写的以太坊智能合约中的代码弱点,并概述与此特征相关的现有分类方案。

方法

我们从两个公共编码平台和两个漏洞数据库中提取了以太坊智能合约中的代码漏洞,并使用开放卡片分类方法对其进行了分类。我们根据错误来源和影响设计了智能合约代码弱点的分类方案。之后,我们将现有的分类方案映射到我们的分类中。

结果

最终的分类包含 11 个描述代码缺陷的错误源的类别和 13 个描述潜在影响的类别。我们的研究结果表明,语言特定编码和结构数据流类别是主要类别,但数据源之间的出现频率存在很大差异。

结论

我们的研究结果使研究人员能够通过定义问题的各个维度并通过基于文献的分类和定义类别的频率分布的映射来支持我们的分类,从而更好地了解智能合约代码的弱点。

更新日期:2023-12-02
down
wechat
bug