【技术实现步骤摘要】
本说明书一个或多个实施例涉及计算机,尤其涉及循环单元的有界模型检测方法及装置。
技术介绍
1、有界模型检测(bounded model checking,bmc)是一种通过有限地遍历机器语言描述的状态空间来验证是否满足目标属性的技术。这里的目标属性可以是预先确定的业务属性,例如与业务逻辑、内存安全等相关的各种属性。具体而言,bmc技术可以将应用或模块中的机器语言语句抽象为有限状态机,从而将机器语言的语句和待验证的属性等编码为sat/smt约束表达式,最终调用自动求解器,求解违反目标属性的反例。通常,在存在反例的情况下,表明未满足相应目标属性。在目标属性与内存安全相关时,bmc技术即可用来验证机器语言语句是否是内存安全的。
2、由于bmc技术需要穷尽地遍历应用或模块的状态空间,针对循环语句,需要将循环体展开到预先设定的次数,再进行状态空间的遍历。循环展开程度决定了对潜在安全问题挖掘的效果。对于需要完全展开循环才能发现的安全问题,当展开次数过大(如1000万次)时,转换后的约束表达式过多,调用求解器的求解时间也显著增加,甚至无法
...【技术保护点】
1.一种循环单元的有界模型检测方法,所述方法包括:
2.如权利要求1所述的方法,其中,所述内存连续型变量为以下中的一种:数组、向量、切片。
3.如权利要求1所述的方法,其中,所述第一符号变量用于抽象描述所述内存连续型变量的各个序次,所述第一取值区间的取值范围与内存连续型变量所对应的元素数量范围一致。
4.如权利要求1所述的方法,其中,所述第一检验语句包括:
5.如权利要求1所述的方法,其中,所述利用求解器求解包含所述第一检验语句和所述第二检验语句的约束表达式,从而进行所述第一循环单元的有界模型检测包括:
6.
...【技术特征摘要】
1.一种循环单元的有界模型检测方法,所述方法包括:
2.如权利要求1所述的方法,其中,所述内存连续型变量为以下中的一种:数组、向量、切片。
3.如权利要求1所述的方法,其中,所述第一符号变量用于抽象描述所述内存连续型变量的各个序次,所述第一取值区间的取值范围与内存连续型变量所对应的元素数量范围一致。
4.如权利要求1所述的方法,其中,所述第一检验语句包括:
5.如权利要求1所述的方法,其中,所述利用求解器求解包含所述第一检验语句和所述第二检验语句的约束表达式,从而进行所述第一循环单元的有界模型检测包括:
6.一种循环单元的...
【专利技术属性】
技术研发人员:王明华,
申请(专利权)人:支付宝杭州信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。