[发明专利]一种apk的加固方法、电子设备及存储介质在审
申请号: | 202010920292.6 | 申请日: | 2020-09-03 |
公开(公告)号: | CN112115430A | 公开(公告)日: | 2020-12-22 |
发明(设计)人: | 韩强 | 申请(专利权)人: | 深圳创维-RGB电子有限公司 |
主分类号: | G06F21/14 | 分类号: | G06F21/14;G06F21/60;G06F8/41 |
代理公司: | 深圳市君胜知识产权代理事务所(普通合伙) 44268 | 代理人: | 刘芙蓉;温宏梅 |
地址: | 518052 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 apk 加固 方法 电子设备 存储 介质 | ||
本发明公开一种apk的加固方法、电子设备及存储介质,方法包括对待加固源代码编译,以得到dex文件;对所述dex文件加密,以得到第一dex文件;基于所述第一dex文件,生成用于解密所述第一dex文件的解密程序;对所述解密程序加密,以得到第一解密程序;将所述解密程序与所述第一解密程序配置为so文件;将所述第一dex文件配置为apk的资源文件,并与所述so文件得到目标apk。本发明使用插件化的方式,将待加固的代码打包到dex文件中,对该dex文件进行加密后与用于解密已加密的dex文件的解密程序进行加密处理后一起打包到apk中,增加获取应用程序源代码文件的难度,从而提高对应用程序代码的保护力度。
技术领域
本发明涉及应用安全处理技术领域,特别是涉及一种apk的加固方法、电子设备及存储介质。
背景技术
随着Android开放系统的发展,Android系统占据了大量的移动终端时长,已逐渐成为了移动终端的普及的操作系统,同时基于该系统的软件应用也越来越多,但是开发这发布的Android应用使用Java语言开发,容易被其他人恶意反编译,从而获取应用中重要信息,这样,很容易被逆向而造成损失。目前,应用加固的方法有很多,但大多加固方法启动时过程比较复杂,运行效率低。
因此,现有技术还有待于发展和改进。
发明内容
基于此,本发明提供一种apk的加固方法、电子设备及存储介质,用以解决现有技术中apk的加固安全性低的技术问题。
第一方面,本发明实施例提供了一种apk的加固方法,包括:
对待加固源代码编译,以得到dex文件;
对所述dex文件加密,以得到第一dex文件;
基于所述第一dex文件,生成用于解密所述第一dex文件的解密程序;
对所述解密程序加密,以得到第一解密程序;
将所述解密程序与所述第一解密程序配置为so文件;
将所述第一dex文件配置为apk的资源文件,并与所述so文件得到目标apk。
可选地,所述对待加固源代码编译,以得到dex文件具体包括:
构建JAVA运行环境,获取待加固源代码;
利用集成开发工具对所述待加固源代码执行编译命令,以得到dex文件。
可选地,所述对所述dex文件加密,以得到第一dex文件具体包括:
利用gradle插件对所述dex文件采用加密算法加密,以得到加密的dex文件;
获取待加固apk的签名;
将所述签名作为密钥以对所述加密的dex文件进行加密运算,得到签名后的加密的dex文件,并将所述签名后的加密的dex文件作为第一dex文件。
可选地,所述加密算法包括对称加密算法和非对称加密算法。
可选地,所述基于所述第一dex文件,生成用于解密所述第一dex文件的解密程序具体包括:
确定用于解密所述第一dex文件的解密密钥;
利用集成开发工具编译出解密程序,其中,所述解密程序配置有所述解密密钥。
可选地,所述解密程序为native解密程序,所述native解密程序处于系统框架的native层。
可选地,所述将所述解密程序与所述第一解密程序配置为so文件具体包括:
利用C语言或C++语言分别编译所述解密程序和所述第一解密程序,以得到so文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳创维-RGB电子有限公司,未经深圳创维-RGB电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010920292.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:热水器的控制系统和控制方法
- 下一篇:一种探针清洗装置及方法