Detecting functional and security-related issues in smart contracts: A systematic literature review

被引:10
作者
Piantadosi, Valentina [1 ]
Rosa, Giovanni [1 ]
Placella, Davide [1 ]
Scalabrino, Simone [1 ]
Oliveto, Rocco [1 ]
机构
[1] Univ Molise, Dept Biosci & Terr, Molise, Italy
关键词
blockchain; smart contracts; VERIFICATION;
D O I
10.1002/spe.3156
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Blockchain is a platform of distributed elaboration, which allows users to provide software for a huge range of next-generation decentralized applications without involving reliable third parties. Smart contracts (SCs) are an important component in blockchain applications: they are programmatic agreements among two or more parties that cannot be rescinded. Furthermore, SCs have an important characteristic: they allow users to implement reliable transactions without involving third parties. However, the advantages of SCs have a price. Like any program, SCs can contain bugs, some of which may also constitute security threats. Writing correct and secure SCs can be extremely difficult because, once deployed, they cannot be modified. Although SCs have been recently introduced, a large number of approaches have been proposed to find bugs and vulnerabilities in SCs. In this article, we present a systematic literature review on the approaches for the automated detection of bugs and vulnerabilities in SCs. We survey 68 papers published between 2015 and 2020, and we annotate each paper according to our classification framework to provide quantitative results and find possible areas not explored yet. Finally, we identify the open problems in this research field to provide possible directions to future researchers.
引用
收藏
页码:465 / 495
页数:31
相关论文
共 114 条
  • [1] ACM Digital Library, About us
  • [2] SolAnalyser: A Framework for Analysing and Testing Smart Contracts
    Akca, Sefa
    Rajan, Ajitha
    Peng, Chao
    [J]. 2019 26TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC), 2019, : 482 - 489
  • [3] SAFEVM: A Safety Verifier for Ethereum Smart Contracts
    Albert, Elvira
    Correas, Jesus
    Gordillo, Pablo
    Roman-Diez, Guillermo
    Rubio, Albert
    [J]. PROCEEDINGS OF THE 28TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS (ISSTA '19), 2019, : 386 - 389
  • [4] Alharby M., BLOCKCHAIN BASED SMA
  • [5] Alharby M, 2018, 2018 INTERNATIONAL CONFERENCE ON CLOUD COMPUTING, BIG DATA AND BLOCKCHAIN (ICCBB 2018), P96
  • [6] Alt Leonardo, 2018, Leveraging Applications of Formal Methods, Verification and Validation. Industrial Practice. 8th International Symposium, ISoLA 2018. Proceedings: Lecture Notes in Computer Science (LNCS 11247), P376, DOI 10.1007/978-3-030-03427-6_28
  • [7] Amani Sidney, 2018, P 7 ACM SIGPLAN INT, P66, DOI DOI 10.1145/3167084
  • [8] Etherolic: A Practical Security Analyzer for Smart Contracts
    Ashouri, Mohammadreza
    [J]. PROCEEDINGS OF THE 35TH ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING (SAC'20), 2020, : 353 - 356
  • [9] Monitoring Smart Contracts: ContractLarva and Open Challenges Beyond
    Azzopardi, Shaun
    Ellul, Joshua
    Pace, Gordon J.
    [J]. RUNTIME VERIFICATION (RV 2018), 2018, 11237 : 113 - 137
  • [10] Formal Modeling and Verification of Smart Contracts
    Bai, Xiaomin
    Cheng, Zijing
    Duan, Zhangbo
    Hu, Kai
    [J]. PROCEEDINGS OF 2018 7TH INTERNATIONAL CONFERENCE ON SOFTWARE AND COMPUTER APPLICATIONS (ICSCA 2018), 2018, : 322 - 326