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 条
  • [41] Deductive verification of solidity smart contracts with SSCalc
    Marmsoler, Diego
    Thornton, Billy
    SCIENCE OF COMPUTER PROGRAMMING, 2025, 243
  • [42] Investigation on Vulnerabilities Location in Solidity Smart Contracts
    Staderini, Mirko
    Bondavalli, Andrea
    BLOCKCHAIN AND APPLICATIONS, 2022, 320 : 199 - 211
  • [43] A Data Extraction Methodology for Ethereum Smart Contracts
    Corradini, Flavio
    Marcelletti, Alessandro
    Morichetta, Andrea
    Re, Barbara
    2024 IEEE INTERNATIONAL CONFERENCE ON PERVASIVE COMPUTING AND COMMUNICATIONS WORKSHOPS AND OTHER AFFILIATED EVENTS, PERCOM WORKSHOPS, 2024, : 524 - 529
  • [44] Security Issues of Smart Contracts in Ethereum Platforms
    Krupa, Tomas
    Ries, Michal
    Kotuliak, Ivan
    Kostal, Kristi'an
    Bencel, Rastislav
    PROCEEDINGS OF THE 28TH CONFERENCE OF OPEN INNOVATIONS ASSOCIATION FRUCT, 2021, : 208 - 214
  • [45] 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
  • [46] The Risks and Challenges of Implementing Ethereum Smart Contracts
    Harris, Christopher G.
    2019 IEEE INTERNATIONAL CONFERENCE ON BLOCKCHAIN AND CRYPTOCURRENCY (ICBC), 2019, : 104 - 107
  • [47] A Framework and DataSet for Bugs in Ethereum Smart Contracts
    Zhang, Pengcheng
    Xiao, Feng
    Luo, Xiapu
    2020 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2020), 2020, : 139 - 150
  • [48] Not so Immutable: Upgradeability of Smart Contracts on Ethereum
    Salehi, Mehdi
    Clark, Jeremy
    Mannan, Mohammad
    FINANCIAL CRYPTOGRAPHY AND DATA SECURITY. FC 2022 INTERNATIONAL WORKSHOPS, 2023, 13412 : 539 - 554
  • [49] Gas Estimation and Optimization for Smart Contracts on Ethereum
    Li, Chunmiao
    2021 36TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING ASE 2021, 2021, : 1082 - 1086
  • [50] Library Usage Detection in Ethereum Smart Contracts
    Hefele, Alexander
    Gallersdoerfer, Ulrich
    Matthes, Florian
    ON THE MOVE TO MEANINGFUL INTERNET SYSTEMS: OTM 2019 CONFERENCES, 2019, 11877 : 310 - 317