Software Weakness Detection in Solidity Smart Contracts Using Control and Data Flow Analysis: A Novel Approach with Graph Neural Networks
Smart contracts on blockchain platforms are susceptible to security issues that can lead to significant financial losses. This study converts the Solidity code into abstract syntax trees and generates control flow graphs and data flow graphs. These graphs train a graph convolutional network model to detect security weaknesses. The proposed system outperforms traditional tools, achieving higher accuracy, recall, precision, and F1 scores when detecting weaknesses such as integer overflow/underflow, reentrancy, delegate call to the untrusted callee, and time-based issues. This study demonstrates that leveraging control and data flow analysis with graph neural networks significantly enhances smart contract security and provides a robust and reliable solution.
Authors
- YangSun Lee (ORCID: https://orcid.org/0000-0001-5443-8073)
- Yunsik Son (ORCID: https://orcid.org/0000-0002-2580-4393)
- Aria Seo (ORCID: https://orcid.org/0000-0001-7517-0088)
- Young-Tak Kim (ORCID: https://orcid.org/0000-0003-3604-6580)
- Ji Seok Yang
Institutions
- Korea University (KR)
- Dongguk University (KR)
- Seokyeong University (KR)
Publication Details
- Journal
- Electronics
- Published
- 2024-08-10
- DOI
- https://doi.org/10.3390/electronics13163162
- Citations
- 2
- Primary Topic
- Blockchain Technology Applications and Security
- Type
- article
- Field-Weighted Citation Impact
- 1.56