摘要
本发明涉及网络安全技术领域,特别涉及一种基于蚁群算法的智能合约模糊测试方法及系统,将待检测智能合约源码的控制流图简化为有向图,并利用有向图收集合约路径信息,所述合约路径信息包括控制流图函数块映射、控制流图邻接矩阵、控制流图节点集合、控制流图起止节点集合;将控制流图中每个节点作为蚁群算法中的城市,每条边作为蚁群算法城市之间的路径,利用控制流图中搜索的路径长度作为蚁群算法启发式函数,基于蚁群算法并依据合约路径信息从控制流图中选择最佳路径,根据最佳路径生成测试用例;在以太坊虚拟机中执行测试用例,并依据测试用例执行过程中的日志来判断待检测智能合约源码中是否存在漏洞。本发明通过尽可能探索智能合约中所有路径来发现嵌套在错综复杂的条件语句中的漏洞,增强智能合约在现实应用中的安全性和可靠性。
技术关键词
蚁群算法
模糊测试方法
执行测试用例
生成测试用例
漏洞
节点
蚂蚁
模糊测试系统
日志
测试模块
轮盘赌算法
网络安全技术
可读存储介质
关系
异常信息
语句
处理器
指令
存储器