Towards Analyzing the Complexity Landscape of Solidity Based Ethereum Smart Contracts

被引:33
|
作者
Hegedus, Peter [1 ]
机构
[1] MTA SZTE Res Grp Artificial Intelligence, H-6720 Szeged, Hungary
关键词
static analysis; ethereum; smart contracts; metrics; complexity; blockchain; METRICS; SOFTWARE; VALIDATION;
D O I
10.3390/technologies7010006
中图分类号
T [工业技术];
学科分类号
08 ;
摘要
Blockchain-based decentralized cryptocurrency platforms are currently one of the hottest topics in technology. Although most of the interest is generated by cryptocurrency related activities, it is becoming apparent that a much wider spectrum of applications can leverage the blockchain technology. The primary concepts enabling such general use of the blockchain are the so-called smart contracts, which are special programs that run on the blockchain. One of the most popular blockchain platforms that supports smart contracts is Ethereum. As smart contracts typically handle money, ensuring their low number of faults and vulnerabilities are essential. To aid smart contract developers and help to mature the technology, we need analysis tools and studies for smart contracts. As an initiative for this, we propose the adoption of some well-known OO metrics for Solidity smart contracts. Furthermore, we analyze more than 40 thousand Solidity source files with our prototype tool. The results suggest that smart contract programs are short, neither overly complex nor coupled too much, do not rely heavily on inheritance, and either quite well-commented or not commented at all. Moreover, smart contracts could benefit from an external library and dependency management mechanism, as more than 85% of the defined libraries in Solidity files code the same functionalities.
引用
收藏
页数:16
相关论文
共 50 条
  • [21] Towards a Dynamic Testing Approach for Checking the Correctness of Ethereum Smart Contracts
    Hammami, Mohamed Amin
    Lahami, Mariam
    Maalej, Afef Jmal
    RISKS AND SECURITY OF INTERNET AND SYSTEMS, CRISIS 2022, 2023, 13857 : 85 - 100
  • [22] SSCalc: A Calculus for Solidity Smart Contracts
    Marmsoler, Diego
    Thornton, Billy
    SOFTWARE ENGINEERING AND FORMAL METHODS, SEFM 2023, 2023, 14323 : 184 - 204
  • [23] Defect Prediction for Solidity Smart Contracts Based on Software Measurement
    Yang H.-W.
    Cui Z.-Q.
    Chen X.
    Jia M.-H.
    Zheng L.-W.
    Liu J.-B.
    Ruan Jian Xue Bao/Journal of Software, 2022, 33 (05): : 1587 - 1611
  • [24] Ethereum Smart Contracts: Vulnerabilities and their Classifications
    Khan, Zulfiqar Ali
    Namin, Akbar Siami
    2020 IEEE INTERNATIONAL CONFERENCE ON BIG DATA (BIG DATA), 2020,
  • [25] Termination of Ethereum's Smart Contracts
    Genet, Thomas
    Jensen, Thomas
    Sauvage, Justine
    PROCEEDINGS OF THE 17TH INTERNATIONAL JOINT CONFERENCE ON E-BUSINESS AND TELECOMMUNICATIONS (SECRYPT), VOL 1, 2020, : 39 - 51
  • [26] Blockchain-based Traceability of Carbon Footprint: A Solidity Smart Contract for Ethereum
    Rosado da Cruz, Antonio Miguel
    Santos, Francisco
    Mendes, Paulo
    Cruz, Estrela Ferreira
    PROCEEDINGS OF THE 22ND INTERNATIONAL CONFERENCE ON ENTERPRISE INFORMATION SYSTEMS (ICEIS), VOL 2, 2020, : 258 - 268
  • [27] Runtime Verification of Ethereum Smart Contracts
    Ellul, Joshua
    Pace, Gordon
    2018 14TH EUROPEAN DEPENDABLE COMPUTING CONFERENCE (EDCC 2018), 2018, : 158 - 163
  • [28] Security Vulnerabilities in Ethereum Smart Contracts
    Dika, Ardit
    Nowostawski, Mariusz
    IEEE 2018 INTERNATIONAL CONGRESS ON CYBERMATICS / 2018 IEEE CONFERENCES ON INTERNET OF THINGS, GREEN COMPUTING AND COMMUNICATIONS, CYBER, PHYSICAL AND SOCIAL COMPUTING, SMART DATA, BLOCKCHAIN, COMPUTER AND INFORMATION TECHNOLOGY, 2018, : 955 - 962
  • [29] DevOps for Ethereum Blockchain Smart Contracts
    Woehrer, Maximilian
    Zdun, Uwe
    2021 IEEE INTERNATIONAL CONFERENCE ON BLOCKCHAIN (BLOCKCHAIN 2021), 2021, : 244 - 251
  • [30] Security Vulnerabilities in Ethereum Smart Contracts
    Mense, Alexander
    Flatscher, Markus
    IIWAS2018: THE 20TH INTERNATIONAL CONFERENCE ON INFORMATION INTEGRATION AND WEB-BASED APPLICATIONS & SERVICES, 2014, : 375 - 380