[发明专利]生成移动智能终端源代码的图形化的结构树的方法及装置有效
申请号: | 201310016788.0 | 申请日: | 2013-01-16 |
公开(公告)号: | CN103927487B | 公开(公告)日: | 2017-03-15 |
发明(设计)人: | 王甜;魏理豪;朱奕;崔磊;邹洪;艾解清;周开东;张超;粱哲恒 | 申请(专利权)人: | 广东电网公司信息中心 |
主分类号: | G06F21/57 | 分类号: | G06F21/57 |
代理公司: | 北京联瑞联丰知识产权代理事务所(普通合伙)11411 | 代理人: | 郑自群 |
地址: | 510600 广东省广州*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 生成 移动 智能 终端 源代码 图形 结构 方法 装置 | ||
技术领域
本发明涉及源代码安全的领域,特别涉及一种生成移动智能终端源代码的抽象语法树的方法及装置。
背景技术
在计算机科学中,抽象语法树(abstractsyntaxtree或者缩写为AST),或者语法树(syntaxtree),是源代码的抽象语法结构的树状表现形式,这里特指编程语言的源代码。树上的每个节点都表示源代码中的一种结构。之所以说语法是“抽象”的,是因为这里的语法并不会表示出真实语法中出现的每个细节。比如,嵌套括号被隐含在树的结构中,并没有以节点的形式呈现;而类似于if-condition-then这样的条件跳转语句,可以使用带有两个分支的节点来表示。
抽象语法树(AST)的具体形式的选择,即抽象语法树中包含的信息的多少,影响程序分析的效率。抽象语法树能否正确地生成,并包含足够的信息将决定后续的程序分析的成败,如何找到更有效的生成移动智能终端源代码的抽象语法树的方法及装置,提高代码的完全性成为人们的一道课题。
发明内容
为解决以上的问题,本发明提供生成移动智能终端源代码的抽象语法树的方法及装置。
本发明公开了一种生成移动智能终端源代码的抽象语法树的方法,包括:
S1.抓取移动智能终端的源代码;
S2.对所述的源代码进行数据结构的转换,找出数据流的入口到出口的跟踪点;
S3.根据所述的跟踪点调用多个处理线程,生成图形化的结构树;
S4.保存所述的结构树。
在本发明所述的生成移动智能终端源代码的抽象语法树的方法中,所述的步骤S1至步骤S4均在编译器前端进行。
在本发明所述的生成移动智能终端源代码的抽象语法树的方法中,所述的跟踪点包括分支点、汇聚点。
在本发明所述的生成移动智能终端源代码的抽象语法树的方法中,所述步骤S4后还包括步骤S5:抓取抽象语法树中源代码的漏洞位置并在所述的移动智能终端显示。
本发明公开了一种生成移动智能终端源代码的抽象语法树的装置,包括:
源代码抓取单元,用于抓取移动智能终端的源代码;
跟踪点查找单元,用于对所述的源代码进行数据结构的转换,找出数据流的入口到出口的跟踪点;
处理线程调用单元,用于根据所述的跟踪点调用多个处理线程,生成图形化的结构树;
结构树保存单元,用于保存所述的结构树。
在本发明所述的生成移动智能终端源代码的抽象语法树的装置中,所述的、装置位于编译器前端。
在本发明所述的生成移动智能终端源代码的抽象语法树的装置中,所述的跟踪点包括分支点、汇聚点。
在本发明所述的生成移动智能终端源代码的抽象语法树的装置中,所述的结构树保存单元还具有漏洞位置显示单元,用于抓取抽象语法树中源代码的漏洞位置并在所述的移动智能终端显示。
本发明的一种生成移动智能终端源代码的抽象语法树的方法和装置,具有以下有益效果:
本技术方案中,抽象语法树中包含的信息在满足程序后续静态分析需要的同时,包含的其他信息较少,找出潜在的风险可能性较大,提高了代码的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1a为本发明实施例一种生成移动智能终端源代码的抽象语法树的方法流程示意图;
图1b为本发明中的源代码中两个汇聚点之间在方法main的控制流图表现为虚分支图;
图2为本发明实施例一种生成移动智能终端源代码的抽象语法树的装置功能方框图。
具体实施方式
通过下面给出的本发明的具体实施例可以进一步了解本发明,但它们不是对本发明的限定。对于本领域的技术人员根据上述发明内容所作的一些非本质的改进与调整,也视为落在本发明的保护范围内。
请参阅图1a,本发明第一实施例,一种生成移动智能终端源代码的抽象语法树的方法,包括:
S1.抓取移动智能终端的源代码;
S2.对所述的源代码进行数据结构的转换,找出数据流的入口到出口的跟踪点;
S3.根据所述的跟踪点调用多个处理线程,生成图形化的结构树;
S4.保存所述的结构树。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东电网公司信息中心,未经广东电网公司信息中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310016788.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:显示窗口的屏蔽方法和系统
- 下一篇:一种无损压缩系统依赖图的方法及装置