[发明专利]一种Dalvik模式下dex文件的保护方法及装置有效
| 申请号: | 201610856412.4 | 申请日: | 2016-09-27 |
| 公开(公告)号: | CN107871065B | 公开(公告)日: | 2019-12-20 |
| 发明(设计)人: | 董灵;雷刚武;潘宣辰 | 申请(专利权)人: | 武汉安天信息技术有限责任公司 |
| 主分类号: | G06F21/14 | 分类号: | G06F21/14;G06F21/12 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 430000 湖北省武汉市东湖新技术开*** | 国省代码: | 湖北;42 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 dalvik 模式 dex 文件 保护 方法 装置 | ||
1.一种Dalvik模式下dex文件的保护方法,其特征在于,所述保护方法包括以下步骤:
将待保护的dex文件进行反编译处理,得到smali文件;
在该smali文件中添加用于加载SO文件的代码;
向smali文件中插入至少一无用类,所述无用类与smali文件中已经存在的类不重名;
将包含无用类的smali文件进行编译处理,得到受保护的dex文件,所述编译处理与所述反编译处理对应;
用填充数据替换受保护dex文件中所有的DexCode数据;
在应用中添加一已生成的SO文件,当系统加载受保护dex文件的类,SO文件判断当前加载的类为所述无用类时,则退出应用。
2.如权利要求1所述的dex文件的保护方法,其特征在于,用填充数据替换受保护dex文件中所有的DexCode数据后,分别对每一块DexCode数据进行标识;
将已标识的所有DexCode数据保存至一第一数据存储文件中;
当应用运行时,所述已生成的SO文件将所述第一数据存储文件映射进内存;
系统加载受保护dex文件的类,SO文件判断当前加载的类不是所述无用类,则在受保护的dex文件中还原DexCode数据。
3.如权利要求1所述的dex文件的保护方法,其特征在于,在得到受保护的dex文件后还用填充字符串替换受保护的dex文件中的字符串数据,并将原始的字符串数据保存至一第二数据存储文件中;
当应用运行时,所述已生成的SO文件将第二数据存储文件映射进内存;
系统解析dex文件,SO文件修改当前dex文件中所有DexStringId结构里的stringDataOff值为相应字符串数据相对于内存中dex文件起始地址的偏移值。
4.如权利要求2所述的dex文件的保护方法,其特征在于,将原始DexCode数据保存至一第一数据存储文件时按照预设的规则对其进行加密,当应用运行时,所述已生成的SO文件将本地的所有DexCode数据映射进内存并进行解密。
5.如权利要求2所述的dex文件的保护方法,其特征在于,分别对每一块DexCode数据进行标识的方法包括以下步骤:分别对每一块DexCode数据进行解析,得到该DexCode数据所属的类名和方法名;用类名和方法名分别对每一块DexCode数据进行标识。
6.如权利要求1所述的dex文件的保护方法或如权利要求4所述的dex文件保护装置,其特征在于,所述无用类是随机生成的。
7.如权利要求2所述的dex文件的保护方法或如权利要求4所述的dex文件保护装置,其特征在于,在受保护的dex文件中还原DexCode数据的方法为修改该类中所有DexMethod结构里的codeoff值为相应DexCode数据相对于内存中dex文件起始地址的偏移值。
8.一种Dalvik模式下dex文件保护装置,其特征在于,所述dex文件保护装置包括预处理模块、数据处理模块、判断模块,其中:
所述预处理模块用于将待保护的dex文件进行反编译处理,得到smali文件;
所述数据处理模块用于在该smali文件中添加用于加载SO文件的代码;向smali文件中插入至少一无用类,所述无用类与smali文件中已经存在的类不重名;将包含无用类的smali文件进行编译处理,得到受保护的dex文件,所述编译处理与所述反编译处理对应;用填充数据替换受保护dex文件中所有的DexCode数据;在应用中添加一已生成的SO文件;
所述判断模块用于系统加载受保护dex文件的类时,SO文件判断当前加载的类为所述无用类时,退出应用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉安天信息技术有限责任公司,未经武汉安天信息技术有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610856412.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:市级企业软件正版化管理系统
- 下一篇:基于安卓系统的代码编译方法及装置





