[发明专利]一种保护应用程序、应用程序的运行方法以及装置有效
申请号: | 201611199716.4 | 申请日: | 2016-12-22 |
公开(公告)号: | CN108229112B | 公开(公告)日: | 2022-06-03 |
发明(设计)人: | 郑海波 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F21/14 | 分类号: | G06F21/14;G06F21/60 |
代理公司: | 北京清源汇知识产权代理事务所(特殊普通合伙) 11644 | 代理人: | 冯德魁 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 保护 应用程序 运行 方法 以及 装置 | ||
本申请公开了一种保护应用程序的方法、装置、一种应用程序的运行方法以及装置。其中,所述保护应用程序的方法,包括:获取待保护的文件的配置文件;根据配置文件创建宿主程序;将待保护的文件进行加密处理;将加密后的文件打包到宿主程序内生成保护文件。保护应用程序的方法和应用程序的运行方法相互配合使用,通过宿主程序为dex文件以及资源文件整体加密后的APK提供运行时所需要的android环境,代理被加密的APK的生命周期,在宿主程序中运行加密后的APK。所述技术方案对APK的dex文件和资源整体加密,使得被保护的应用更加安全不易被反编译;且在加密后只增加了极少容量节约存储空间;并且采用无注入文件的加壳方式,不会对操作系统带来兼容性的问题。
技术领域
本申请涉及数据安全技术领域,具体涉及一种保护应用程序的方法以及一种应用程序的运行方法。本申请同时涉及一种保护应用程序的装置以及一种应用程序的运行装置。
背景技术
APK文件是Android安卓平台的应用程序包文件(application package file),是一种Androi操作系统上的应用程序安装文件格式。一个Android应用程序的代码在Android设备上运行,必须先进行编译,然后被打包成为一个被Android系统所能识别的文件才可以被运行,而这种能被Android系统识别并运行的文件格式便是“APK”文件。一个APK文件内包含被编译的代码文件(classes.dex文件)、文件资源(resources)、证书(certificates)和清单文件(manifestfile:AndroidManifest.xml)。
由于Android平台采用Java语言开发,导致Apk中的代码易于反编译。在反编译的基础上,很容易实现Apk的篡改。APK篡改是指通过反编译APK文件,进行汇编级的代码分析、修改或插入代码,重新签名打包为新的APK文件,以达到改变程序原有行为的目的。目前,APK篡改在Android业界使用非常频繁,主要被应用于以下用途,包括:修改国外软件的资源文件达到汉化的目的;加入广告代码;加入扣费代码;应用程序钓鱼,通过加入恶意的代码来窃取用户的隐私信息;修改License代码对软件破解。可以看出,上述多个用途都严重损害了应用程序开发商的利益。
目前常见的保护APK的方法是采用“加壳”的方式,即将APK的dex文件加密为so文件,然后存储在资源目录下,将被加壳的APK的dex替换为壳程序,并注入so库文件,然后将被加壳APK重新打包生成新的APK文件。
由此可见,在现有的APK的保护方案下,只是针对本身dex文件进行加密,未对APK的资源进行加密;加密后的APK被注入了so文件,增大了APK的容量,占用存储空间;并且若注入了so文件后,可能会引起操作系统兼容性的问题。
申请内容
本申请提供一种保护应用程序的方法以及一种应用程序的运行方法,以解决现有技术中的上述问题。本申请另外提供一种保护应用程序的装置以及一种应用程序的运行装置。
本申请提供一种保护应用程序的方法,所述保护应用程序的方法,包括:
获取待保护的文件的配置文件;
根据所述配置文件创建宿主程序;
将所述待保护的文件进行加密处理;
将加密后的所述文件打包到所述宿主程序内,生成保护文件。
可选的,所述根据所述配置文件创建宿主程序,包括:
根据宿主程序的jar包创建所述宿主程序;
将所述配置文件修改为所述宿主程序的配置文件。
可选的,所述根据宿主程序的jar包创建所述宿主程序,包括:
创建android项目;
删除所述android项目的资源文件;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611199716.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种智能保护计算机软件的方法
- 下一篇:一种数据库数字水印提取方法