-
公开(公告)号:CN111459786B
公开(公告)日:2023-08-29
申请号:CN201910051630.4
申请日:2019-01-18
Applicant: 南京大学
IPC: G06F11/36
Abstract: 本发明提出一种基于变异fuzz的智能合约安全测试方法,该方法以智能合约的源代码作为输入,获取智能合约的二进制接口(Application Binary Interface,ABI),从ABI中找到函数类型的元素,提取它们的函数声明;在此基础上,进一步开展测试数据生成:若被测函数没有种子,则随机生成测试数据,否则将会有一定几率基于种子变异产生测试数据;接着,使用测试数据执行私有链上的智能合约,进而开展漏洞检测,更新种子,再次回到测试输入产生步骤,如此反复直到达到事先设置测试终止条件(该终止条件可以为测试时间、路径覆盖率等)。通过该方法,测试人员可以在短时间内检查智能合约是否存在安全性问题,并且可以参考输入复现其问题。
-
公开(公告)号:CN111459786A
公开(公告)日:2020-07-28
申请号:CN201910051630.4
申请日:2019-01-18
Applicant: 南京大学
IPC: G06F11/36
Abstract: 本发明提出一种基于变异fuzz的智能合约安全测试方法,该方法以智能合约的源代码作为输入,获取智能合约的二进制接口(Application Binary Interface,ABI),从ABI中找到函数类型的元素,提取它们的函数声明;在此基础上,进一步开展测试数据生成:若被测函数没有种子,则随机生成测试数据,否则将会有一定几率基于种子变异产生测试数据;接着,使用测试数据执行私有链上的智能合约,进而开展漏洞检测,更新种子,再次回到测试输入产生步骤,如此反复直到达到事先设置测试终止条件(该终止条件可以为测试时间、路径覆盖率等)。通过该方法,测试人员可以在短时间内检查智能合约是否存在安全性问题,并且可以参考输入复现其问题。
-