Blockchain Smart Contracts Static Analysis for Software Assurance

被引:2
|
作者
Schmeelk, Suzanna [1 ]
Rosado, Bryan [1 ]
Black, Paul E. [2 ]
机构
[1] St Johns Univ, Comp Sci Math & Sci, New York, NY 10003 USA
[2] NIST, Gaithersburg, MD 20899 USA
来源
INTELLIGENT COMPUTING, VOL 2 | 2021年 / 284卷
关键词
Blockchain; Smart contracts; Solidity; Ethereum Virtual Machine (EVM); Software Assurance; Static analysis;
D O I
10.1007/978-3-030-80126-7_62
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
This paper examines blockchain smart contract software assurance through the lens of static analysis. Smart contracts are immutable. Once they are deployed, it is impossible to patch or redevelop the smart contracts on active chains. This paper explores specific blockchain smart contract bugs to further understand categories of vulnerabilities for bug detection prior to smart contract deployment. Specifically, this work focuses on smart contract concerns in Solidity v0.6.2 which are unchecked by static analysis tools. Solidity, influenced by C++, Python and JavaScript, is designed to target the Ethereum Virtual Machine (EVM). Many, if not all, of the warnings we categorize are currently neither integrated into Solidity static analysis tools nor earlier versions of the Solidity compiler itself. Thus, the prospective bug detection lies entirely on smart contract developers and the Solidity compiler to determine if contracts potentially qualify for bugs, concerns, issues, and vulnerabilities. We aggregate and categorize these known concerns into categories and build a model for integrating the checking of these categories into a static analysis tool engine. The static analysis engine could be employed prior to deployment to improve smart contract software assurance. Finally, we connect our fault categories with other tools to show that our introduced categories are not yet considered during static analysis.
引用
收藏
页码:881 / 890
页数:10
相关论文
共 50 条
  • [21] Securing Smart Contracts in Blockchain
    Kongmanee, Jaturong
    Kijsanayothin, Phongphun
    Hewett, Rattikorn
    2019 34TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING WORKSHOPS (ASEW 2019), 2019, : 69 - 76
  • [22] Digesting smart contracts in Ethereum blockchain networks
    Sparbrodt, Fabian
    Garcia-Valls, Marisol
    2022 5TH CONFERENCE ON CLOUD AND INTERNET OF THINGS, CIOT, 2022, : 60 - 66
  • [23] Blockchain and Smart Contracts for Digital Copyright Protection
    Frattolillo, Franco
    FUTURE INTERNET, 2024, 16 (05)
  • [24] On and Off-Blockchain Enforcement of Smart Contracts
    Molina-Jimenez, Carlos
    Solaiman, Ellis
    Sfyrakis, Ioannis
    Ng, Irene
    Crowcroft, Jon
    EURO-PAR 2018: PARALLEL PROCESSING WORKSHOPS, 2019, 11339 : 342 - 354
  • [25] Smart Contracts in Blockchain Technology: A Critical Review
    Taherdoost, Hamed
    INFORMATION, 2023, 14 (02)
  • [26] Recycling Smart Contracts: Compression of the Ethereum Blockchain
    Pontiveros, Beltran Borja Fiz
    Norvill, Robert
    State, Radu
    2018 9TH IFIP INTERNATIONAL CONFERENCE ON NEW TECHNOLOGIES, MOBILITY AND SECURITY (NTMS), 2018,
  • [27] IoT Applications Using Blockchain and Smart Contracts
    Roriz, Rui
    Pereira, Jose Luis
    DIGITAL SCIENCE, 2019, 850 : 426 - 434
  • [28] Analysis of smart contracts balances
    Laneve, Cosimo
    Coen, Claudio Sacerdoti
    BLOCKCHAIN-RESEARCH AND APPLICATIONS, 2021, 2 (03):
  • [29] Formal Verification of Blockchain Smart Contracts via ATL Model Checking
    Nam, Wonhong
    Kil, Hyunyoung
    IEEE ACCESS, 2022, 10 : 8151 - 8162
  • [30] Towards Effective Static Analysis Approaches for Security Vulnerabilities in Smart Contracts
    Ghaleb, Asem
    PROCEEDINGS OF THE 37TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE 2022, 2022,