[发明专利]一种Hyperledger Fabric智能合约问题检测方法在审
申请号: | 202110435019.9 | 申请日: | 2021-04-22 |
公开(公告)号: | CN113051580A | 公开(公告)日: | 2021-06-29 |
发明(设计)人: | 张贺;祝立明;丁梦洁;李杉杉;李佩如;周鑫;荣国平;邵栋 | 申请(专利权)人: | 橙网(南京)人工智能研究院有限公司;澳大利亚联邦科学与工业研究组织(CSIRO)Data61部门 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F11/36 |
代理公司: | 南京明杰知识产权代理事务所(普通合伙) 32464 | 代理人: | 张文杰 |
地址: | 210000 江苏省南京*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 hyperledger fabric 智能 合约 问题 检测 方法 | ||
1.一种Hyperledger Fabric智能合约问题检测方法,其特征在于:该方法包括以下步骤:
S1、根据单元测试用例产生初始语料;
S2、根据HF智能合约源代码产生测试文件;
S3、根据go-fuzz工具进行智能合约模糊测试以及检测智能合约漏洞;
S4、产生并输出步骤S3中的漏洞检测结果。
2.根据权利要求1所述的一种Hyperledger Fabric智能合约问题检测方法,其特征在于:在步骤S1中,单元测试用例是作为HF智能合约单元测试的输入用例,HF智能合约单元测试用例用于产生初始语料,HF智能合约单元测试用例通过JSON类型表示。
3.根据权利要求2所述的一种Hyperledger Fabric智能合约问题检测方法,其特征在于:在步骤S1中,还包括以下步骤:
S11、以JSON类型表示HF智能合约单元测试用例;
S12、根据步骤S1中的单元测试用例,编写main.go测试文件;
S13、运行main.go文件产生初始语料。
4.根据权利要求3所述的一种Hyperledger Fabric智能合约问题检测方法,其特征在于:测试用例通过为特殊目标编制一组测试输入、执行条件以及预期结果,用于核实是否满足特定软件的需求,单元测试用于对软件中的最小可测试单元进行检查和验证。
5.根据权利要求1所述的一种Hyperledger Fabric智能合约问题检测方法,其特征在于:在步骤S2中,获取HF智能合约源代码,HF智能合约源代码通过Go语言编写,利用MockStub类调用Fabric智能合约规则,用于产生测试文件。
6.根据权利要求5所述的一种Hyperledger Fabric智能合约问题检测方法,其特征在于:根据步骤S2中智能合约源代码的功能函数编写测试文件fuzz.go,测试文件中根据MockStub类对功能函数进行调用,将信息查询结果与发布的信息进行对比,用于检测智能合约的逻辑错误。
7.根据权利要求6所述的一种Hyperledger Fabric智能合约问题检测方法,其特征在于:功能函数为智能合约中除去main函数外的函数。
8.根据权利要求1所述的一种Hyperledger Fabric智能合约问题检测方法,其特征在于:步骤S3还包括以下步骤:
S31、将初始语料加入语料库;
S32、根据步骤S31中的语料库,利用go-fuzz工具从语料库中选取一个语料;
S33、对步骤S32中所选取的语料进行变异,产生当前测试用例;
S34、读入测试文件,输入步骤S33中产生的测试用例,进行模糊测试;
S35、若存在漏洞,则记录漏洞信息以及步骤S34中的测试用例;
S36、语料库根据测试反馈结果进行调整,反馈结果为整型1,则将当前语料加入语料库中,反馈结果为-1,则当前语料不能加入语料库中,其他情况反馈结果为0;
S37、重复上述步骤S32-S36,直至测试被终止。
9.根据权利要求8所述的一种Hyperledger Fabric智能合约问题检测方法,其特征在于:在步骤S34中,模糊测试通过向目标系统提供非预期的输入并监视异常结果,用于发现软件漏洞。
10.根据权利要求1所述的一种Hyperledger Fabric智能合约问题检测方法,其特征在于:在步骤S4中,输出的漏洞检测结果包括检测结果、智能合约漏洞信息和发生漏洞时的语料信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于橙网(南京)人工智能研究院有限公司;澳大利亚联邦科学与工业研究组织(CSIRO)Data61部门,未经橙网(南京)人工智能研究院有限公司;澳大利亚联邦科学与工业研究组织(CSIRO)Data61部门许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110435019.9/1.html,转载请声明来源钻瓜专利网。