[发明专利]一种基于粒子群优化的云计算代码审计方法在审
申请号: | 201310736882.3 | 申请日: | 2013-12-25 |
公开(公告)号: | CN103699486A | 公开(公告)日: | 2014-04-02 |
发明(设计)人: | 谢康;王立进;张玲;徐勤;李伟;李星;仲镜学 | 申请(专利权)人: | 北京安码科技有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;H04L29/08 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100082 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 粒子 优化 计算 代码 审计 方法 | ||
1.一种基于粒子群优化的云计算代码审计方法,其特征在于,该方法包括:
通过代码度量识别出程序中容易触发缺陷的代码块集合并生成程序控制流图(control flow graph,CFG)。初始化粒子群;测试路径,计算适应度函数值;根据CFG更新粒子的速度和位置;最终输出易发生缺陷的代码块位置。
2.如权利要求1所述的方法,其特征在于,所述生成CFG的方法具体包括:
CFG用四元组G=(N,E,Entry,Exit)表示,其中N是节点集合,每个节点是一个具有唯一出口和唯一入口的基本代码块,E是边的集合,每条边是一个有序节点对(Ni,Nj),表示从Ni到Nj,可能存在控制转移,Entry表示程序的入口节点,Exit表示出口节点。
3.如权利要求1所述的方法,其特征在于,所述在CFG上的热点代码最短路径搜索的方法具体包括:
1)分支语句与热点代码之间的最短路径搜索。对于程序执行路径r,在CFG上搜索条件路径rc={c1,c2,...,ci|i∈N}中的分支语句与热点代码h之间的最短路径。
2)最短路径的约束条件。从程序入口到热点代码的完整路径w=w[l0,ci]∪w[ci,h],由从程序入口到某分支语句的前段路径wp=w[l0,ci]和分支语句到热点代码的后段路径ws=w[ci,h]两段路径组成。则通过符号执行方法计算完整的路径约束为
4.如权利要求1所述的方法,其特征在于,所述初始化粒子群的方法具体包括:
粒子的初速度设为0。每个个体局部极值pbest的初值设为每个粒子自身。粒子的全局极值gbest初始值为第一代粒子群的最优值。
5.如权利要求1所述的方法,其特征在于,所述测试路径,计算适应度函数值方法具体包括:
适应度函数值计算采用曼哈顿算法,F(x)=1/D(x),其中,D(x)=abs((Ddestination(x)-Dcurrent(x))+abs((Ddestination(y)-Dcurrent(y))+1。
6.如权利要求1所述的方法,其特征在于,所述根据CFG更新粒子的速度和位置方法具体包括:
按照式1、式2更新粒子的速度和位置。
Vi(t+1)=ω*Vi(t)+c1*r1*(pbest-Vi(t))+c2*r2*(gbest-Vi(t)) (1)
Xi(t+1)=Xi(t)+Vi(t+1) (2)
其中,Vi(t)是粒子的速度,pbest为当前粒子的位置。c1和c2为学习因子,rl和r2为随机数,ω为惯性系数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京安码科技有限公司,未经北京安码科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310736882.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种有机水稻的种植方法
- 下一篇:一种防滑落的玻璃运输车