[发明专利]一种基于Dex加载器的Android应用软件加固保护方法在审
| 申请号: | 201611199104.5 | 申请日: | 2016-12-22 |
| 公开(公告)号: | CN106650330A | 公开(公告)日: | 2017-05-10 |
| 发明(设计)人: | 王鑫 | 申请(专利权)人: | 合肥国信车联网研究院有限公司 |
| 主分类号: | G06F21/12 | 分类号: | G06F21/12;G06F21/14;G06F21/60 |
| 代理公司: | 北京和信华成知识产权代理事务所(普通合伙)11390 | 代理人: | 胡剑辉 |
| 地址: | 230000 安徽省合肥市蜀山*** | 国省代码: | 安徽;34 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | 本发明在于提供一种基于DexClassLoader实现Dex内存加载的方法,在PC端进行apk加固操作,加固后的应用在Android终端安装,脱壳,加载并启动,加固后的dex结构和传统dex文件的结构完全不同,不能被成功反编译为具有可读性的源文件,加固方案成功保护了关键数据的机密性,起到了防反编译的效果,利用ZjDroid脱壳工具对加固后的apk进行脱壳操作,不能获取到任何原apk的源码文件和dex碎片,本发明提供的内存加载过程对防止java层Hook有很好的效果,同时也避免了dex明文出现在磁盘上被攻击者劫取,相对于传统的磁盘加载方式安全性有很大的提高。 | ||
| 搜索关键词: | 一种 基于 dex 加载 android 应用软件 加固 保护 方法 | ||
【主权项】:
一种基于Dex加载器的Android应用软件加固保护方法,其特征在于,包括以下步骤:S1:解包原应用Apk文件,得到AndroidManifest.xml,classes.dex文件以及assets,META_INF,libs文件夹;S2:生成随机密钥KEY,使用随机密钥KEY对Apk中的Dex文件使用128bit的AES算法加密,生成密文文件Reinforce.dex;S3:将Reinforce.dex移动到在assets文件夹中保存,图示删除classes.dex明文文件;S4:替换加密核心库libcorn.so中Key密钥区域,并将库文件libcorn.so并保存在libs文件夹中;S5:将壳源码编译成classes.dex文件,并将壳文件dex放在根目录下替代原程序的classes.dex;S6:将Manifest中程序入口修改为壳程序具体修改方法为:a)<application>标签下的android:name属性值改为壳程序名称;b)建立标签<meta‑data>,在<meta‑data>标签下添加属性android:name和android:value;c)将android:name的值设置为APPLICATION_CLASS_NAME;后者的值设置为原<application>标签下android:name属性的值,若该原始值不存在,则取系统的缺省程序入口android.app.Application;若该原始值以“.”开头,则在其前加上包名取完成路径;S7:删除原apk签名信息META‑INF;S8:用apktool打包文件夹,用自己的密钥对新打包的apk进行签名;经过以上的步骤,加固完毕,生成了一个全新的apk文件,加固后的应用和加固前的应用相比,asssts文件家中多了加密Dex文件,classes.dex是替换的壳文件,并且在lib库中多了用于加载解密的核心so库。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥国信车联网研究院有限公司,未经合肥国信车联网研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201611199104.5/,转载请声明来源钻瓜专利网。
- 上一篇:书架(四层)
- 下一篇:激发指令文件的生成方法





