一种基于图神经网络的智能合约漏洞检测方法技术

技术编号:44776728 阅读:26 留言:0更新日期:2025-03-26 12:54
本发明专利技术提供一种基于图神经网络的智能合约漏洞检测方法,从智能合约代码中提取出程序控制流程图和抽象语法图,然后将其输入到图神经网络转化为高维度特征向量并进行分类,针对区块链上部署了源代码的合约,实现了一种以合约源代码、字节码为输入的智能合约漏洞检测;针对区块链上没有部署源代码的合约,实现了一种仅针对智能合约EVM字节码的智能合约漏洞检测;对比传统的静态分析方法,最大的优势之一就在于运行速度快,本发明专利技术能够在保障检测性能的条件下拥有高检测效率;同时,现有其他方法往往只研究了针对单一漏洞进行检测的情况,本发明专利技术在此基础上还可以同时对多种漏洞进行检测,仅通过字节码也具有良好的漏洞检测性能。

【技术实现步骤摘要】

本专利技术属于机器学习中的图神经网络,尤其涉及一种基于图神经网络的智能合约漏洞检测方法


技术介绍

1、以太坊是目前最活跃的区块链平台,拥有非常多用户和开发者,到目前为止,市值已经达到4441亿。智能合约是以太坊上自动执行的协议,其条款直接写入代码。智能合约的存在使得去中心化应用程序(dapps)成为现实,开发者可以使用代码控制数字资产。然而,与其他代码一样,智能合约很容易出现各种各样的漏洞,由于编程方法、语言和工具链的缺陷,存在诸多漏洞。例如整数溢出漏洞、重入和调用注入(或称为代码注入)、访问控制缺陷漏洞等。由于以太坊的经济价值日益提高,攻击者逐渐关注这一平台。已经出现过涉及数百万美元的大型攻击案件,比如dao、parity等等。各种漏洞甚至已经花费了数千万数亿美元。

2、虽然以太坊区块链上只有大约1/3的合约源码是公开的,其余均只有evm字节码。相比于剩下的2/3,由于语义方便理解,这部分合约更容易受到攻击。现有的工作大部分针对字节码分析,但是字节码相较于高级语言solidity,其中蕴含的信息非常有限(如无法表达结构体、继承关系等),会影本文档来自技高网...

【技术保护点】

1.一种基于图神经网络的智能合约漏洞检测方法,其特征在于,包括以下步骤:

2.如权利要求1所述的一种基于图神经网络的智能合约漏洞检测方法,其特征在于,所述图神经网络为集成有图神经记忆模块的GCN网络,且所述操作一中,分别将抽象语法图ASG和程序控制流程图CFG作为图G输入图神经网络中,得到对应的图嵌入的方法具体为:

3.如权利要求2所述的一种基于图神经网络的智能合约漏洞检测方法,其特征在于,图神经记忆的更新函数FT(·)表征的更新操作如下:

4.如权利要求2所述的一种基于图神经网络的智能合约漏洞检测方法,其特征在于,节点显著性的更新函数FP(·)表征的...

【技术特征摘要】

1.一种基于图神经网络的智能合约漏洞检测方法,其特征在于,包括以下步骤:

2.如权利要求1所述的一种基于图神经网络的智能合约漏洞检测方法,其特征在于,所述图神经网络为集成有图神经记忆模块的gcn网络,且所述操作一中,分别将抽象语法图asg和程序控制流程图cfg作为图g输入图神经网络中,得到对应的图嵌入的方法具体为:

3.如权利要求2所述的一种基于图神经网络的智能合约漏洞检测方法,其特征在于,图神经记忆的更新函数ft(·)表征的更新操作如下:

4.如权利要求2所述的一种基于图神经网络的智能合约漏洞检测方法,其特征在于,节点显著性的更新函数fp(·)表征的更新操作如下:

5.如权利要求1所述的一种基于图神...

【专利技术属性】
技术研发人员:徐畅徐怀钰祝烈煌沈啸东
申请(专利权)人:北京理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1