一种APK的生成、认证方法和装置及系统制造方法及图纸

技术编号:14593549 阅读:100 留言:0更新日期:2017-02-08 22:47
本发明专利技术公开了一种APK的生成、认证方法和装置及系统,能够有效防止通过反编译破解,从而损害软件开发者利益问题。本发明专利技术一种APK的生成方法,包括:根据预制的编译规则,对所述应用文件进行编译,得到可供调用的认证文件;根据第一签名规则对所述认证文件进行第一签名处理,得到第一签名文件,所述第一签名规则为开源源代码;根据第二签名规则对所述认证文件进行第二签名处理,得到第二签名文件;所述第二签名规则为闭源源代码;将所述应用文件、认证文件、第一签名文件和第二签名文件打包生成APK。

Method, device and system for generating and authentication of APK

The invention discloses a method, a device and a system for generating and authentication of APK, which can effectively prevent the problem of the software developer's interest by anti cracking. Including the method of the invention generates a APK compiler: according to the rules of the application of prefabricated, files, be called certification documents according to the rules of the first; the first signature signature processing of the certification documents, the first signature file, the first sign for open source code according to the rules; second signature rules second signature processing to the certification documents, get second signature files; the second signature rules for closed source code; the application documents and certification documents, the first and the second signature signature file is packaged into APK.

【技术实现步骤摘要】

本专利技术涉及通信领域,尤其涉及一种APK的生成、认证方法和装置及系统。
技术介绍
随着智能移动终端的出现,涌现出了一批移动终端系统,如Android(安卓)系统是一种目前广泛应用的智能移动终端系统,其中APK(Androidapplicationpackage)应用安装文件是一种标准android应用安装程序。安卓平台的软件使用的编程语言是Java,并通过一些列的编译打包过程将编写的Java代码最终形成APK文件。为区别与其他软件开发者,Android具有签名机制,原有的签名机制是开源的,应用文件的组成、签名算法、签名认证流程与认证文件等都是可以被完全掌握。由此导致很多应用被不劳而获者利用反编译工具将应用文件反编译为Java代码,删掉里面的签名文件,替换为自己的签名文件,在打包得到的应用文件对于android系统来说就是个合法的应用了,能完全正常的运行从而变为他们的成果,这就损害了软件开发者的利益。
技术实现思路
本专利技术提供了一种APK的生成、认证方法和装置及系统,能够有效防止通过反编译破解,从而损害软件开发者利益问题。本专利技术提供的一种APK的生成方法,包括:根据预制的编译规则,对应用文件进行编译,得到可供调用的认证文件;根据第一签名规则对认证文件进行第一签名处理,得到第一签名文件,第一签名规则为开源源代码;根据第二签名规则对认证文件进行第二签名处理,得到第二签名文件;第二签名规则为闭源源代码;将应用文件、认证文件、第一签名文件和第二签名文件打包生成APK。可选的,根据预制的编译规则,对应用文件进行编译,得到可供调用的认证文件步骤包括:获取应用文件中全部信息;生成全部信息的摘要作为认证文件。可选的,第二签名规则包括:进行加密处理;或进行组合处理;或进行RSA算法处理。可选的,将所述应用文件、第一签名文件和第二签名文件进行打包处理,得到APK包括:将第二签名文件排列在APK启动开始处。本专利技术还提供了一种APK的认证方法,包括:对APK进行解析,得到应用文件、认证文件、第一签名文件和第二签名文件;根据第一签名规则对所述认证文件进行第一认证处理,得到对应的第一签名认证文件;判断所述第一签名认证文件与所述第一签名文件是否一致,如果一致,在启动所述应用文件时,则根据第二签名规则对所述认证文件进行第二认证处理,得到对应的第二签名认证文件;判断所述第二认证签名文件与所述第二认证签名文件是否一致,若是,则执行所述应用文件,若否,则触发异常处理;如果不一致,则触发异常处理。本专利技术还提供了一种应用所述的APK的生成方法的装置,包括:编译单元,用于根据预制的编译规则,对所述应用文件进行编译,得到可供调用的认证文件;第一签名处理单元,用于根据第一签名规则对所述认证文件进行第一签名处理,得到第一签名。本专利技术还提供了一种APK的生成装置,包括:编译单元,用于根据预制的编译规则,对应用文件进行编译,得到可供调用的认证文件;第一签名处理单元,用于根据第一签名规则对认证文件进行第一签名处理,得到第一签名文件,第一签名规则为开源源代码;第二签名处理单元,用于根据第二签名规则对认证文件进行第二签名处理,得到第二签名文件;所述第二签名规则为闭源源代码;打包单元,用于将应用文件、认证文件、第一签名文件和第二签名文件打包生成APK。可选的,该APK的生成装置进一步包括:编译单元包括:获取子单元,用于获取应用文件和第一签名文件中全部信息;生成子单元,用于生成全部信息的摘要作为认证文件。可选的,该APK的生成装置进一步包括:保存子单元,用于保存认证文件;排列子单元,用于将认证文件排列在APK启动开始处。本专利技术还提供了一种APK认证装置,包括:解析单元,用于对所述APK进行解析,得到所述应用文件、认证文件、第一签名文件和第二签名文件;第一认证处理单元,用于根据第一签名规则对所述认证文件进行第一认证处理,得到对应的第一签名认证文件;第一判断单元,用于判断所述第一签名认证文件与所述第一签名文件是否一致,第二认证处理单元,用于则根据第二签名规则对所述认证文件进行第二认证处理,得到对应的第二签名认证文件;第二判断单元,用于判断所述第二认证签名文件与所述第二认证签名文件是否一致,执行单元,用于则执行所述应用文件。本专利技术还提供了一种提高APK安全性的系统,包括:APK的生成装置和APK的认证装置;APK的生成装置包括:编译单元,用于根据预制的编译规则,对应用文件进行编译,得到可供调用的认证文件;第一签名处理单元,用于根据第一签名规则对认证文件进行第一签名处理,得到第一签名文件,第一签名规则为开源源代码;第二签名处理单元,用于根据第二签名规则对认证文件进行第二签名处理,得到第二签名文件;第二签名文件为闭源源代码;打包单元,用于将应用文件、认证文件、第一签名文件和第二签名文件打包生成APK;APK的认证装置包括:解析单元,用于对APK进行解析,得到应用文件、认证文件、第一签名文件和第二签名文件;第一认证处理单元,用于根据第一签名规则对认证文件进行第一认证处理,得到对应的第一签名认证文件;第二认证处理单元,用于根据第二签名规则对认证文件进行第二认证处理,得到对应的第二签名认证文件;判断单元,判断所述第一签名认证文件与所述第一签名文件是否一致,如果一致,在启动所述应用文件时,判断所述第二认证签名文件与所述第二认证签名文件是否一致,若是,则执行所述应用文件,若否,则触发异常处理;执行单元,用于则执行所述应用文件。从以上技术方案可以看出,本专利技术实施例具体有一下优点:根据预制的编译规则,对应用文件进行编译,得到可供调用的认证文件;根据第一签名规则对认证文件进行第一签名处理,得到第一签名文件,第一签名规则为开源源代码;根据第二签名规则对认证文件进行第二签名处理,得到第二签名文件;第二签名规则为闭源源代码;将应用文件、认证文件、第一签名文件和第二签名文件打包生成APK。若第二签名文件被删除,则应用文件无法调用认证文件,导致应用文件无法启动,从而能够有效防止通过反编译破解,从而损害软件开发者利益问题。附图说明图1为本专利技术实施例中,APK的生成方法的第一实施例流程图;图2为本专利技术实施例中,APK的生成方法的第二实施例流程图;图3为本专利技术实施例中,APK的生成装置实施例结构示意图;图4为本专利技术实施例中,APK的认证方法实施例流程图;图5为本专利技术实施例中,APK的认证装置实施例结构示意图;图6为本专利技术实施例中,提高APK安全性的系统实施例结构示意图。具体实施方式本专利技术提供了一种APK的生成、认证方法和装置及系统,能够有效防止通过反编译破解,从而损害软件开发者利益问题。请参阅图1,本专利技术实施例中APK的生成方法第一实施例包括:101、根据预制的编译规则,对应用文件进行编译,得到可供调用的认证文件;在本实施例中,系统根据预制的编译规则,对应用文件进行编译,得到可供调用的认证文件。需要说明的是,这里的应用文件可以是任何一款应用,可以是游戏、书籍、视频以及音乐等等,该应用可以是软件开发人员自己编写的程序,也可以是现有应用,在此不做限定。102、根据第一签名规则对认证文件进行第一签名处理,得到第一签名文件,第一签名规则为开源源代码;在本实施例中,系统可以根据第一签名规则对认证文件进行第一本文档来自技高网...

【技术保护点】
一种APK的生成方法,其特征在于,包括:根据预制的编译规则,对所述应用文件进行编译,得到可供调用的认证文件;根据第一签名规则对所述认证文件进行第一签名处理,得到第一签名文件,所述第一签名规则为开源源代码;根据第二签名规则对所述认证文件进行第二签名处理,得到第二签名文件;所述第二签名规则为闭源源代码;将所述应用文件、认证文件、第一签名文件和第二签名文件打包生成APK。

【技术特征摘要】
1.一种APK的生成方法,其特征在于,包括:根据预制的编译规则,对所述应用文件进行编译,得到可供调用的认证文件;根据第一签名规则对所述认证文件进行第一签名处理,得到第一签名文件,所述第一签名规则为开源源代码;根据第二签名规则对所述认证文件进行第二签名处理,得到第二签名文件;所述第二签名规则为闭源源代码;将所述应用文件、认证文件、第一签名文件和第二签名文件打包生成APK。2.根据权利要求1所述的APK的生成方法,其特征在于,所述根据预制的编译规则,对所述应用文件进行编译,得到可供调用的认证文件步骤包括:获取所述应用文件中全部信息;生成所述全部信息的摘要作为所述认证文件。3.根据权利要求1所述的APK的生成方法,其特征在于,所述第二签名规则包括:进行加密处理;或进行组合处理;或进行RSA算法处理。4.根据权利要求1-3任一项所述的APK的生成方法,其特征在于,所述将所述应用文件、所述第一签名文件和所述第二签名文件进行打包处理,得到APK包括:保存并将所述第二签名文件排列在所述APK启动开始处。5.一种如权利要求1至4中任一项所述的APK的生成方法的认证方法,其特征在于,包括:对所述APK进行解析,得到所述应用文件、认证文件、第一签名文件和第二签名文件;根据第一签名规则对所述认证文件进行第一认证处理,得到对应的第一签名认证文件;判断所述第一签名认证文件与所述第一签名文件是否一致,如果一致,在启动所述应用文件时,则根据第二签名规则对所述认证文件进行第二认证处理,得到对应的第二签名认证文件;判断所述第二认证签名文件与所述第二认证签名文件是否一致,若是,则执行所述应用文件,若否,则触发异常处理;如果不一致,则触发异常处理。6.一种应用在如权利要求1至4中任一项所述的APK的生成方法的装置,其特征在于,包括:编译单元,用于根据预制的编译规则,对所述应用文件进行编译,得到可供调用的认证文件;第一签名处理单元,用于根据第一签名规则对所述认证文件进行第一签名处理,得到第一签名文件,所述第一签名规则为开源源代码;第二签名处理单元,用于根据第二签名规则对所述认证文件进行第二签名处理,得到第二签名文件;所述第二签名规则为闭源源代码;打包单元,用于将所述应用文件、认证文件、第一签名文件和第二签名文件打包生成APK。7.根...

【专利技术属性】
技术研发人员:李刚龙寿伦张优德
申请(专利权)人:深圳多哚新技术有限责任公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1