[发明专利]一种基于智能合约知识图谱的合约缺陷检测方法在审
申请号: | 202110249359.2 | 申请日: | 2021-03-08 |
公开(公告)号: | CN112860263A | 公开(公告)日: | 2021-05-28 |
发明(设计)人: | 李必信;胡甜媛;潘振宇 | 申请(专利权)人: | 东南大学 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F16/36;G06F16/242 |
代理公司: | 南京众联专利代理有限公司 32206 | 代理人: | 张天哲 |
地址: | 210096 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 智能 合约 知识 图谱 缺陷 检测 方法 | ||
本发明公布了一种基于智能合约知识图谱的合约缺陷检测方法,主要用于检测以太坊平台上Solidity语言编写的智能合约的代码缺陷。智能合约代码缺陷是指智能合约中的错误、故障或者漏洞,它可能导致智能合约执行出现不正确或者意外的结果。通过分析智能合约缺陷,定义智能合约缺陷模式。针对待检测的智能合约,基于Solidity语法解析智能合约源码,生成智能合约抽象语法树;通过抽象语法树获取智能合约的基础知识实体及其关系,从而构建智能合约知识图谱,将其存储在RDF三元组数据库中;在智能合约知识图谱基础上,应用知识图谱查询语句进行推理查询,将智能合约与缺陷模式进行匹配,检测智能合约存在的缺陷及位置。
技术领域
本发明属于区块链系统的智能合约缺陷检测领域,涉及一种基于智能合约知识图谱的合约缺陷检测方法。
背景技术
区块链作为对等网络中的一种分布式公共账本技术,在各个领域的应用范围越来越广。但是,智能合约本身仍然存在安全问题,影响了区块链技术的进一步推广使用。智能合约自身存在的缺陷、合约之间的调用等都是影响合约安全的重要因素。在智能合约上线之前,必须对智能合约进行全面深入的缺陷检测,充分分析潜在的安全威胁,尽可能规避缺陷,以更高的标准保证智能合约代码的逻辑正确性、涉及资产的安全性。
目前,已有的智能合约缺陷检测方法集中在定理证明的形式化验证、符号执行、模型检测、模糊测试等方法。定理证明的形式化验证方法使用通用方法来构造代码模式和定理,证明智能合约的安全性,整个验证过程很难实现完全自动化,因此需要大量的人工来构建智能合约的证明和分析。模型检测方法的优势是自动化程度较高,即便是只给出部分描述的合约,通过搜索也可以提供关于已知部分正确性的有用信息,该方法存在的不足是存在状态爆炸问题,模型检测算法将会随着模型检测工具中的状态数目增多而造成运算时间爆炸式增长和运算空间上资源消耗的膨胀。模糊测试方法是通过监视智能合约动态运行过程检测合约的,因此可以更加精确的检测出合约的真实漏洞,该方法的不足是测试用例随机生成,只能覆盖部分系统行为,路径覆盖率有限。
因此,如何通过自动化的智能合约缺陷检测方法,充分分析智能合约的语法语义,检测更多不同类型的智能合约缺陷十分重要。
发明内容
技术问题:本发明提供一种智能合约缺陷检测方法,能够实现不需要人工干预的智能合约缺陷检测,在解析智能合约的源码基础上构建智能合约知识图谱,通过知识图谱充分融合智能合约语法和语义,检测智能合约潜在的多种缺陷类型。
技术方案:本发明提出了一种基于智能合于知识图谱的合约缺陷检测方法,主要是在解析智能合约源码构建智能合约知识图谱的基础上,通过分析智能合约缺陷,定义智能合约缺陷模式及其查询语句,进而应用缺陷查询语句在智能合约知识图谱的上实施智能合约缺陷检测。具体包括如下步骤:
步骤1)定义智能合约缺陷模式
分析包含不同智能合约缺陷的智能合约源码,归纳合约缺陷特征,针对不同合约缺陷类型,定义智能合约缺陷模式DefectPattern;
步骤2)生成待检测智能合约的抽象语法树
针对输入的Solidity编写的智能合约源码,基于Solidity语法,通过智能合约源码解析工具生成智能合约抽象语法树SmartContractAST;
步骤3)构建待检测智能合约的知识图谱
在所述步骤2)生成的智能合约抽象语法树SmartContractAST的基础上,分析智能合约源码依赖关系,抽取智能合约的基础知识实体及其关系,形式为E1,R,E2,其中E1,E2表示智能合约的实体,R表示智能合约实体之间的依赖关系,将智能合约的基础知识实体及其关联存储在RDF三元组数据库中,从而构建智能合约知识图谱SmartContractKG;
步骤4)应用知识图谱查询语句进行推理查询,将智能合约和缺陷模式匹配
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东南大学,未经东南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110249359.2/2.html,转载请声明来源钻瓜专利网。