[发明专利]一种应用程序加密的方法及装置有效
申请号: | 201310096196.4 | 申请日: | 2013-03-25 |
公开(公告)号: | CN104077504B | 公开(公告)日: | 2017-04-19 |
发明(设计)人: | 张博;赵春雷 | 申请(专利权)人: | 联想(北京)有限公司 |
主分类号: | G06F21/14 | 分类号: | G06F21/14 |
代理公司: | 北京中博世达专利商标代理有限公司11274 | 代理人: | 申健 |
地址: | 100085 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用程序 加密 方法 装置 | ||
技术领域
本发明涉及电子产品应用程序技术领域,尤其涉及一种应用程序加密的方法及装置。
背景技术
目前,由Google公司主导开发的安卓Android操作系统已经得到越来越快地应用,同时Android应用程序的数量也在不断增长。现有技术中Android终端中应用的Android应用程序一般采用Java语言进行软件开发,源代码被编译为Java类文件,再通过Android软件开发工具包(Software Development kit,SDK)中的攻击转换为dex格式的二进制可执行文件,与软件配置、资源文件等打包为apk格式文件,apk格式文件即Android应用程序安装包。用户下载apk格式文件,并安装到Android终端中即可正常使用。
Android是一个源代码完全开放的操作系统,无论是DEX格式文件的指令编码方式,还是Dalvik虚拟机的工作原理,都已被人们所知。目前,Android应用程序由于采用Java语言进行开发,通过Dalvik虚拟机解释执行,解释执行之后的Java代码进行反编译后的代码具有很强的可读性,导致Android应用程序容易被破解。
发明内容
本发明的实施例提供一种应用程序加密的方法及装置,可以降低应用程序的可破解性,提高安全保护性。
第一方面,本发明提供一种应用程序加密的方法,包括:
确定应用程序中待加密的第一语言格式的字符序列;
将所述第一语言格式的字符序列转换为第二语言格式的字符序列,所述第一语言格式与第二语言格式不同;
对所述第二语言格式的字符序列进行加密,获得加密应用程序。
在第一种可能的实施例中,结合第一方面,所述确定应用程序中待加密的第一语言格式的字符序列包括:
根据所述应用程序中第一函数前添加的预设标记,确定所述应用程序中第一函数为所述待加密的第一语言格式的字符序列,所述第一函数为所述应用程序中任一个函数;或者,
根据所述应用程序中的一段第一语言格式的字符序列前后添加的预设标记,确定所述应用程序中此段所述第一语言格式的字符序列为所述待加密的第一语言格式的字符序列。
在第二种可能的实施例中,结合第一方面,所述对所述第二语言格式的字符序列进行加密,获得加密应用程序包括:
在所述第二语言格式的字符序列中添加对所述应用程序的签名验证,所述签名验证包括至少两个字符组成的第一字符串,获得加密应用程序。
在第三种可能的实施例中,结合第一方面中第二种可能的实施例,所述对所述第二语言格式的字符序列进行加密,获得加密应用程序包括:
确定在所述第二语言格式的字符序列中需要添加的对所述应用程序的签名验证,所述签名验证包括至少两个字符组成的第一字符串;
对所述签名验证中包括的所述第一字符串进行处理,获得第二字符串,所述第二字符串与所述第一字符串不同;
在所述第二语言格式的字符序列中添加所述第二字符串,获得加密应用程序。
在第四种可能的实施例中,结合第一方面所述对所述第二语言格式的字符序列进行加密,获得加密应用程序包括:
在所述第二语言格式的字符序列中添加预设密码,获得加密应用程序。
在第五种可能的实施例中,结合第一方面中以上任一种可能的实施例,在所述对所述第二语言格式的字符序列进行加密之后,还包括:
将加密的第二语言格式的字符序列保存在第一文件中,所述第一文件为动态链接库文件。
第二方面,本发明提供一种应用程序加密的装置,包括:
字符序列确定单元,用于确定应用程序中待加密的第一语言格式的字符序列;
转换单元,用于将所述第一语言格式的字符序列转换为第二语言格式的字符序列,所述第一语言格式与第二语言格式不同;
加密单元,用于对所述第二语言格式的字符序列进行加密,获得加密应用程序。
在第一种可能的实施例中,结合第二方面,所述字符序列确定单元,用于根据所述应用程序中第一函数前添加的预设标记,确定所述应用程序中第一函数为所述待加密的第一语言格式的字符序列,所述第一函数为所述应用程序中任一个函数;或者,
根据所述应用程序中的一段第一语言格式的字符序列前后添加的预设标记,确定所述应用程序中此段所述第一语言格式的字符序列为所述待加密的第一语言格式的字符序列。
在第二种可能的实施例中,结合第二方面,所述加密单元包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于联想(北京)有限公司,未经联想(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310096196.4/2.html,转载请声明来源钻瓜专利网。