[发明专利]应用程序的混淆方法、装置和服务器在审
申请号: | 201811112084.2 | 申请日: | 2018-09-21 |
公开(公告)号: | CN109241707A | 公开(公告)日: | 2019-01-18 |
发明(设计)人: | 郭燕慧;余冰涛;张淼;徐国爱 | 申请(专利权)人: | 北京邮电大学 |
主分类号: | G06F21/14 | 分类号: | G06F21/14 |
代理公司: | 北京超凡志成知识产权代理事务所(普通合伙) 11371 | 代理人: | 吴迪 |
地址: | 100876 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用程序 混淆 服务器 更新 可执行文件 封装处理 应用软件 算法 预设 打包 解析 | ||
1.一种应用程序的混淆方法,其特征在于,所述方法包括:
解析应用程序的APK文件,得到dex文件;所述dex文件中包含至少一个class文件;
采用预设的代码,对所述class文件的指定区域进行混淆处理,得到处理后的class文件;
封装处理后的class文件,得到更新的dex文件;
打包更新后的dex文件,得到更新的APK文件。
2.根据权利要求1所述的方法,其特征在于,所述解析应用程序的APK文件,得到dex文件的步骤,包括:
对应用程序的APK文件进行解压处理,得到class.dex文件;
将所述class.dex文件转换为class.jar包;所述class.jar包中包括至少一个class文件。
3.根据权利要求1所述的方法,其特征在于,所述采用预设的代码,对所述class文件的指定区域进行混淆处理的步骤,包括:
识别所述class文件的java代码的方法部分;
采用预设的代码,对所述方法部分的指定位置进行混淆处理。
4.根据权利要求3所述的方法,其特征在于,所述方法部分的指定位置包括所述方法部分的开头部分和/或结尾部分;
所述采用预设的代码,对所述方法部分的指定位置进行混淆处理的步骤,还包括:将所述伪指令序列插入至所述方法部分的指定位置。
5.根据权利要求1所述的方法,其特征在于,所述封装处理后的class文件,得到更新的dex文件的步骤之后,所述方法还包括:
更新所述dex文件中的总和校验码和文件签名。
6.根据权利要求5所述的方法,其特征在于,所述打包更新后的dex文件,得到更新的APK文件的步骤,包括:
打包更新后的dex文件、所述总和校验码和所述签名文件,得到更新的APK文件;
对更新的APK文件进行签名处理,得到签名后的APK文件。
7.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在所述应用程序的执行过程中,通过不透明谓词判断所述dex文件中的当前代码是否是伪序列指令;
如果否,执行所述当前代码。
8.一种应用程序的混淆装置,其特征在于,所述装置包括:
解析模块用于解析应用程序的APK文件,得到dex文件;所述dex文件中包含至少一个class文件;
混淆模块用于采用预设的代码,对所述class文件的指定区域进行混淆处理,得到处理后的class文件;
封装模块用于封装处理后的class文件,得到更新的dex文件;
打包模块用于打包更新后的dex文件,得到更新的APK文件。
9.根据权利要求8所述的装置,其特征在于,所述解析模块还用于:
对应用程序的APK文件进行解压处理,得到class.dex文件;
将所述class.dex文件转换为class.jar包;所述class.jar包中包括至少一个class文件。
10.一种服务器,其特征在于,包括存储器和处理器;所述存储器用于存储支持处理器执行权利要求1至7任一项所述方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811112084.2/1.html,转载请声明来源钻瓜专利网。