Sound analysis and migration of data from Ethereum smart contracts

被引:0
|
作者
Ayub, Maha [1 ]
Khan, Muhammad Waiz [1 ]
Janjua, Muhammmad Umar [1 ]
机构
[1] Informat Technol Univ, Dept Comp Sci, Lahore, Punjab, Pakistan
关键词
Blockchain; Smart contract; State extraction; Migration; State verification;
D O I
10.1007/s10515-024-00422-3
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
With the addition of multiple blockchain platforms in the ecosystem, the Dapp owners need to migrate their smart contracts from one platform to another to remain competitive, cost-effective, and secure. A smart contract is a piece of code that contains logic and data. To migrate a smart contract, whether it's on the same blockchain platform or a different one, we need both its source code that represents the logic and data that indicate the state of the contract. The source code can be easily set up, but to complete the migration, we have to extract the current state of the contract. In this paper, we have developed an advanced state extraction technique that uses static analysis to analyze the smart contract's call graph and events, and extracts the entire storage state from the storage trie, along with the proper associations across function calls, enabling users to visualize, manage, and transform the state as desired for migration. The soundness of the extracted state was confirmed using the method of abstract interpretation. Further, the migration adapter is designed to transform the extracted state into slot-value pairs and migrate it to the target blockchain. Using our new approach, we were able to completely analyze 14% more smart contracts with the extraction of 53% more data by analyzing function calls and event logs from 67,993 contracts and also migrated some contracts to the multiple popular EVM-compatible blockchains.
引用
收藏
页数:28
相关论文
共 50 条
  • [1] Sound analysis and migration of data from Ethereum smart contracts
    Maha Ayub
    Muhammad Waiz Khan
    Muhammmad Umar Janjua
    Automated Software Engineering, 2024, 31
  • [2] eThor: Practical and Provably Sound Static Analysis of Ethereum Smart Contracts
    Schneidewind, Clara
    Grishchenko, Ilya
    Scherer, Markus
    Maffei, Matteo
    CCS '20: PROCEEDINGS OF THE 2020 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2020, : 621 - 640
  • [3] 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
  • [4] An Extensive Security Analysis on Ethereum Smart Contracts
    Ashouri, Mohammadreza
    SECURITY AND PRIVACY IN COMMUNICATION NETWORKS, SECURECOMM 2021, PT I, 2021, 398 : 144 - 163
  • [5] Detection and Analysis of Ethereum Energy Smart Contracts
    Lashkari, Bahareh
    Musilek, Petr
    APPLIED SCIENCES-BASEL, 2023, 13 (10):
  • [6] SmartCheck: Static Analysis of Ethereum Smart Contracts
    Tikhomirov, Sergei
    Voskresenskaya, Ekaterina
    Ivanitskiy, Ivan
    Takhaviev, Ramil
    Marchenko, Evgeny
    Alexandrov, Yaroslav
    2018 IEEE/ACM 1ST INTERNATIONAL WORKSHOP ON EMERGING TRENDS IN SOFTWARE ENGINEERING FOR BLOCKCHAIN (WETSEB), 2018, : 9 - 16
  • [7] Confidential Ethereum Smart Contracts
    Yuan, Michael Juntao
    Hynes, Nick
    Long, Ju
    IT PROFESSIONAL, 2022, 24 (06) : 54 - 58
  • [8] GASOL: Gas Analysis and Optimization for Ethereum Smart Contracts
    Albert, Elvira
    Correas, Jesus
    Gordillo, Pablo
    Roman-Diez, Guillermo
    Rubio, Albert
    TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, PT II, TACAS 2020, 2020, 12079 : 118 - 125
  • [9] ATL Model Checking for Analysis of Ethereum Smart Contracts
    Nam W.
    Kil H.
    Transactions of the Korean Institute of Electrical Engineers, 2021, 70 (12): : 2006 - 2014
  • [10] Foundations and Tools for the Static Analysis of Ethereum Smart Contracts
    Grishchenko, Ilya
    Maffei, Matteo
    Schneidewind, Clara
    COMPUTER AIDED VERIFICATION (CAV 2018), PT I, 2018, 10981 : 51 - 78