Font Size: a A A

A Study Of Graph Neural Networks Based Vulnerabilities Detection Algorithm For Ethereum Smart Contract

Posted on:2022-01-01Degree:MasterType:Thesis
Country:ChinaCandidate:J G ZhouFull Text:PDF
GTID:2518306335456734Subject:Automation Technology
Abstract/Summary:PDF Full Text Request
The development of the information society constantly gives birth to a variety of disruptive technologies,the blockchain bring profound changes to the society within various technologies.Due to its decentralized characteristics,the application scenarios of blockchain become broad.The application of blockchain system is constantly innovating,and it is also in constant reform.The enabling of smart contract greatly promotes the development of blockchain.Smart contracts can provide safe and reliable services and efficiently solve credit problems arising from transactions.At present,the Ethereum as the best deployment platform of smart contract,under its facilities exist once deployed cannot modify the characteristics of the contract,causing the intelligent contract code written part of the developers there are different levels of security,and to have completed deployment of smart contract repair ability is very limited,which lead to hackers steal from defective contract up to tens of millions of dollars in funds.Therefore,before releasing a smart contract,it is extremely important to detect the potential security risks of the contract.This paper designs and implements a graph neural network-based detection algorithm for Ethereum smart contract security called Graph CVP(Graph Contract Vulnerabilities Prediction).The algorithm first reads the structured information of the source code of the smart contract written by the Solidity language,and converts it into the graph structure.After learning through the graph neural network,the semantic expression of the contract on the layer surface is obtained,and the four types of smart Contract vulnerabilities are detected,and the main tasks are as follows:(1)Through a detailed analysis of the Solidity language characteristics,a graph network structure algorithm transformed from the Solidity source code into a multi-node type and multi-connected edge type is designed.(2)The nodes and connecting edges in the graph come from the structured information extraction of the contract source code.Based on the semantic characteristics of each node and different connecting edges,it is combined with natural language processing and other technologies to provide different graph nodes and connecting edges.The edge generates its feature vector expression.(3)According to the characteristics of the constructed graph structure,the relation aggregation operator is designed,and the graph convolution and graph pooling mechanisms are combined to obtain the global graph embedding.(4)Discussed several classic smart contract security detection algorithms based on static analysis schemes,as well as several variants and extensions of Graph CVP.Through a large number of experimental comparisons,the results show that,compared with other static smart contract vulnerability detection algorithms,Graph CVP can achieve a relatively significant improvement in the detection indicators under the same batch of contracts within various vulnerabilities type.Among them,the accuracy rate is increased by at most %1 to 11%,and the F1 value is increased by 2% to 9% maximum.
Keywords/Search Tags:Blockchain, Smart contract security, Graph neural networks, Static analysis
PDF Full Text Request
Related items