[发明专利]关键元素差异性分析方法及系统有效
申请号: | 201811014184.1 | 申请日: | 2018-08-31 |
公开(公告)号: | CN109299004B | 公开(公告)日: | 2020-08-25 |
发明(设计)人: | 黄罡;蔡华谦;张舒汇;张颖 | 申请(专利权)人: | 北京大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F8/71;G06K9/62 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 莎日娜 |
地址: | 100871*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 关键 元素 差异性 分析 方法 系统 | ||
1.一种关键元素差异性分析方法,其特征在于,包括:
关键元素筛选流程:对与旧版本安卓应用相匹配的微服务中的字节码进行分析,并据此筛选出影响所述微服务与新版本安卓应用之间的匹配的所有关键元素的集合;
关键元素相似度分析流程:分析所述集合中的各关键元素在所述新版本安卓应用与所述旧版本安卓应用之间的相似度;
破坏性变化判断流程:判断所述安卓应用由旧版本变为新版本后,相对于所述微服务是否发生了破坏性变化;
需修改的关键元素定位流程:当所述安卓应用由旧版本变为新版本后,相对于所述微服务发生了破坏性变化时,根据所述各关键元素在所述新版本安卓应用与所述旧版本安卓应用之间的相似度,判断所述集合中的各关键元素在所述安卓应用由旧版本变为新版本后相对于所述微服务是否发生了破坏性变化,并将发生了破坏性变化的关键元素作为所述微服务中需要修改的关键元素。
2.如权利要求1所述的关键元素差异性分析方法,其特征在于,所述关键元素筛选流程包括:
步骤S1:使用访问者模式对所述微服务的dex字节码进行解析,同时,构造所述微服务的dex字节码的抽象语法树;
步骤S2:遍历所述微服务的dex字节码的抽象语法树,将所述微服务的dex字节码的抽象语法树中所有DexClassNode节点、DexFieldNode节点、DexMethodNode节点及DexCodeNode节点中域访问语句和函数调用语句中的类名、方法名和变量名均作为影响所述微服务与所述新版本安卓应用之间的匹配的关键元素加入所述集合。
3.如权利要求2所述的关键元素差异性分析方法,其特征在于,所述关键元素相似度分析流程包括:
关键元素相似度静态分析流程:根据所述旧版本安卓应用的dex字节码和所述新版本安卓应用的dex字节码,分析所述集合中的每一关键元素在所述新版本安卓应用与所述旧版本安卓应用之间的相似度;
关键元素相似度动态分析流程:利用网构软件行为反射框架分别对所述新版本安卓应用和所述旧版本安卓应用的运行时栈模型中的应用活动的情况进行监测,得到所述新版本安卓应用和所述旧版本安卓应用运行时栈模型监测结果;根据所述新版本安卓应用和所述旧版本安卓应用运行时栈模型监测结果,分析所述集合中的每一关键元素在所述新版本安卓应用与所述旧版本安卓应用之间的相似度。
4.如权利要求3所述的关键元素差异性分析方法,其特征在于,所述关键元素相似度静态分析流程中,对于所述集合中的任一关键元素X,分析其在所述新版本安卓应用与所述旧版本安卓应用之间的相似度的步骤包括:
步骤S1:计算关键元素X在所述新版本安卓应用与所述旧版本安卓应用之间的一度相似度,计算方法为:
提取关键元素X在所述新版本安卓应用和所述旧版本安卓应用中的元素内特征,根据关键元素X在所述新版本安卓应用和所述旧版本安卓应用中的元素内特征计算关键元素X在所述新版本安卓应用与所述旧版本安卓应用之间的一度相似度;
步骤S2:判断关键元素X是复杂元素还是简单元素,如果关键元素X是复杂元素,则将所述一度相似度作为关键元素X在所述新版本安卓应用与所述旧版本安卓应用之间的相似度,如果关键元素X是简单元素,则进入步骤S3:
步骤S3:计算关键元素X在所述新版本安卓应用与所述旧版本安卓应用之间的二度相似度,并将所述二度相似度作为关键元素X在所述新版本安卓应用与所述旧版本安卓应用之间的相似度,计算关键元素X在所述新版本安卓应用与所述旧版本安卓应用之间的二度相似度的方法为:
提取关键元素X在所述新版本安卓应用和所述旧版本安卓应用中的元素间特征,根据关键元素X在所述新版本安卓应用和所述旧版本安卓应用中的元素间特征,查找所述新版本安卓应用和所述旧版本安卓应用中与关键元素X相关联的元素,并计算与关键元素X在所述新版本安卓应用中相关联的元素与与关键元素X在所述旧版本安卓应用中相关联的元素之间的相似度,并据此得出关键元素X在所述新版本安卓应用与所述旧版本安卓应用之间的二度相似度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811014184.1/1.html,转载请声明来源钻瓜专利网。