一种基于图卷积神经网络的智能合约死循环检测方法技术

技术编号:23085327 阅读:44 留言:0更新日期:2020-01-11 01:14
本发明专利技术公开了一种基于图卷积神经网络的智能合约死循环检测方法,其通过GCN模型的训练和学习实现了智能合约死循环的自动判断,具体包括:收集并设计智能合约死循环案例,制作智能合约源码数据集;对死循环智能合约数据集进行案例分析;将死循环智能合约源码数据集转换成结构统一的核心结点图数据集;并将图数据特征消融到核心结点上;利用向量转换工具,将核心结点特征映射为向量;构建GCN模型进行学习和训练,自动输出智能合约死循环判断结果。该方法实现了比现有的基于传统方法的智能合约检测工具更高的准确率,填补了当前基于深度学习的智能合约安全漏洞检测的空缺,不仅具有良好的通用性和实用价值,而且具有很好的借鉴意义。

An intelligent contract dead cycle detection method based on graph convolution neural network

【技术实现步骤摘要】
一种基于图卷积神经网络的智能合约死循环检测方法
本专利技术属于区块链智能合约安全漏洞检测
,具体涉及一种基于图卷积神经网络的智能合约死循环检测方法。
技术介绍
近年来,计算机技术发展迅速,但随之产生的计算机安全漏洞问题也越来越多,尤其是一些安全漏洞如果被不法分子利用,不仅会增加计算机被攻击的机率,而且可能会导致重要信息的丢失,从而造成重大损失。如何及时发现与修补漏洞,不断提高计算机的安全性,一直是公众关注的热点问题。区块链智能合约是一种运行在区块链上的计算机协议,其具有高效性、实时更新、不可篡改、去中心化等特点,但是智能合约执行过程中存在的安全漏洞问题却给用户带来了较大困扰。自智能合约发行以来,区块链安全漏洞案例频发,例如:美链蒸发60亿事件;区块链最大众筹项目(TheDAO)被攻击事件;MyEtherWallet遭域名系统DomainNameSystem(DNS)劫持致使用户以太币(ETH)被盗事件等等。从“TheDAO”被攻击到Fomo3D奖池被盗,每次智能合约安全问题造成的破坏力都是巨大的,如何正确防范智能合约安全漏洞成了当本文档来自技高网...

【技术保护点】
1.一种基于图卷积神经网络的智能合约死循环检测方法,其特征在于,通过图卷积神经网络模型的训练和学习实现智能合约死循环的自动化检测,所述智能合约死循环检测方法具体包括如下步骤:/n(1)收集并设计智能合约死循环漏洞的案例,制作智能合约源码数据集;/n(2)对步骤(1)得到的智能合约源码数据集逐个分析;/n(3)利用智能合约自动化抽图工具,将通过步骤(1)得到的智能合约源码数据集转换成结构统一的图数据集;/n(4)利用特征消融工具,将步骤(3)的图数据集中有向边、VAR变量结点的特征消融到核心结点上;/n(5)利用向量转换工具,将步骤(4)消融后的核心结点特征映射为向量;/n(6)构建图卷积神经网...

【技术特征摘要】
1.一种基于图卷积神经网络的智能合约死循环检测方法,其特征在于,通过图卷积神经网络模型的训练和学习实现智能合约死循环的自动化检测,所述智能合约死循环检测方法具体包括如下步骤:
(1)收集并设计智能合约死循环漏洞的案例,制作智能合约源码数据集;
(2)对步骤(1)得到的智能合约源码数据集逐个分析;
(3)利用智能合约自动化抽图工具,将通过步骤(1)得到的智能合约源码数据集转换成结构统一的图数据集;
(4)利用特征消融工具,将步骤(3)的图数据集中有向边、VAR变量结点的特征消融到核心结点上;
(5)利用向量转换工具,将步骤(4)消融后的核心结点特征映射为向量;
(6)构建图卷积神经网络模型,将核心节点的特征向量输入图卷积神经网络模型进行训练,图卷积神经网络模型训练完成后,输入测试集,模型输出智能合约死循环判断结果。


2.根据权利要求1所述的智能合约死循环检测方法,其特征在于,所述步骤(1)的具体实现方式为:设计并实现相应的基于solidity和C语言的智能合约死循环案例。


3.根据权利要求1所述的智能合约死循环检测方法,其特征在于,所述步骤(2)的具体实现过程如下:
(1-1)For循环案例分析,包括通过添加“OVERLIMIT”标记为死循环,使用“INNLIMIT”标记为正常循环;
(1-2)While循环案例分析,包括通过添加“ABNORM”标记为while恒成立,即为死循环,使用“NORM”标记为正常循环;
(1-3)函数调用循环案例分析,包括在出现函数自我回调的情况下,用“SELFCALL”表示函数自身调用的死循...

【专利技术属性】
技术研发人员:黄步添刘振广钱鹏周伟华陈建海周峰
申请(专利权)人:杭州云象网络技术有限公司
类型:发明
国别省市:浙江;33

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

1