[发明专利]一种Hyperledger Fabric智能合约问题检测方法在审
申请号: | 202110435019.9 | 申请日: | 2021-04-22 |
公开(公告)号: | CN113051580A | 公开(公告)日: | 2021-06-29 |
发明(设计)人: | 张贺;祝立明;丁梦洁;李杉杉;李佩如;周鑫;荣国平;邵栋 | 申请(专利权)人: | 橙网(南京)人工智能研究院有限公司;澳大利亚联邦科学与工业研究组织(CSIRO)Data61部门 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F11/36 |
代理公司: | 南京明杰知识产权代理事务所(普通合伙) 32464 | 代理人: | 张文杰 |
地址: | 210000 江苏省南京*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 hyperledger fabric 智能 合约 问题 检测 方法 | ||
本发明公开了一种Hyperledger Fabric智能合约问题检测方法,该方法包括以下步骤:S1、根据单元测试用例产生初始语料;S2、根据HF智能合约源代码产生测试文件S3、根据go‑fuzz工具进行智能合约模糊测试以及检测智能合约漏洞;S4、产生并输出步骤S3中的漏洞检测结果本发明结构科学合理,使用安全方便,本发明提出的基于go‑fuzz的HF智能合约问题检测方法适用于使用Go语言编写的HF智能合约,助MockStub类和go‑fuzz检测智能合约的问题,在一定程度上填补了HF智能合约漏洞检测方面研究的空缺,利用该HF智能合约问题检测方法可以快速检测HF智能合约问题。
技术领域
本发明涉及区块链安全技术领域,具体为一种Hyperledger Fabric智能合约问题检测方法。
背景技术
Hyperledger Fabric简称为HF,HF是企业级许可的分布式分类账技术平台,智能合约是在区块链平台上运行的自主程序,在区块链3.0时代,智能合约为HF提供了更复杂的业务功能支持,运行在区块链上的智能合约也在去中心化应用场景中扮演着越来越重要的角色,但同时其安全漏洞造成的影响也越发显著,因此,智能合约安全漏洞的自动化检测已成为区块链技术应用中急需解决的问题,目前针对智能合约漏洞已经提出了多种检测方案,其检测主要是围绕以太坊智能合约展开,并且几乎没有针对HF智能合约的相关方法提出,Sukrit等人提出ZEUS工具,可以为HF智能合约进行形式化验证,但其主要验证智能合约的逻辑与需求是否一致,不能满足其他类型漏洞的检测,针对以太坊智能合约所总结的漏洞类型在HF智能合约上是否符合也未可知,因此无法针对漏洞类型开展测试工作,相较传统程序而言,智能合约的安全性不仅影响多方合约参与者的公平性,还影响合约执行中的庞大数字资产的安全性,所以人们继急需一种Hyperledger Fabric智能合约问题检测方法来解决上述问题。
发明内容
本发明的目的在于提供一种Hyperledger Fabric智能合约问题检测方法,以解决上述背景技术中提出的问题。
为了解决上述技术问题,本发明提供如下技术方案:一种
Hyperledger Fabric智能合约问题检测方法,该方法包括以下步骤:
S1、根据单元测试用例产生初始语料;
S2、根据HF智能合约源代码产生测试文件;
S3、根据go-fuzz工具进行智能合约模糊测试以及检测智能合约漏洞;
S4、产生并输出步骤S3中的漏洞检测结果;
进一步的,在步骤S1中,单元测试用例是作为HF智能合约单元测试的输入用例,HF智能合约单元测试用例用于产生初始语料,HF智能合约单元测试用例通过JSON类型表示;
进一步的,在步骤S1中,还包括以下步骤:
S11、以JSON类型表示HF智能合约单元测试用例;
S12、根据步骤S1中的单元测试用例,编写main.go测试文件;
S13、运行main.go文件产生初始语料;
进一步的,测试用例通过为特殊目标编制一组测试输入、执行条件以及预期结果,用于核实是否满足特定软件的需求,单元测试用于对软件中的最小可测试单元进行检查和验证;
进一步的,在步骤S2中,获取HF智能合约源代码,HF智能合约源代码通过Go语言编写,利用MockStub类调用Fabric智能合约规则,用于产生测试文件;
进一步的,根据步骤S2中智能合约源代码的功能函数编写测试文件,fuzz.go,测试文件中根据MockStub类对功能函数进行调用,将信息查询结果与发布的信息进行对比,用于检测智能合约的逻辑错误;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于橙网(南京)人工智能研究院有限公司;澳大利亚联邦科学与工业研究组织(CSIRO)Data61部门,未经橙网(南京)人工智能研究院有限公司;澳大利亚联邦科学与工业研究组织(CSIRO)Data61部门许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110435019.9/2.html,转载请声明来源钻瓜专利网。