[发明专利]一种防重打包的方法及其装置有效
| 申请号: | 201610887188.5 | 申请日: | 2016-10-11 |
| 公开(公告)号: | CN106971098B | 公开(公告)日: | 2020-06-02 |
| 发明(设计)人: | 陈耀光;王加水 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
| 主分类号: | G06F21/14 | 分类号: | G06F21/14 |
| 代理公司: | 北京晋德允升知识产权代理有限公司 11623 | 代理人: | 杨移 |
| 地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 打包 方法 及其 装置 | ||
1.一种防重打包的方法,其特征在于,该方法包括:
运行安装包中的目标文件并加载所述安装包中的安全动态库;
根据所述目标文件中的验证代码执行下述步骤:
确定所述目标文件中的数字水印信息在所述目标文件中的起始地址;
根据所述起始地址,获取所述目标文件中嵌入的数字水印信息;
获取所述安全动态库中存储的验证信息;
根据所述数字水印信息和验证信息,验证所述安装包是否是重打包的安装包。
2.根据权利要求1所述的方法,其特征在于,所述目标文件是将预设的代码进行编译后得到的目标文件;
所述数字水印信息是在编译后得到的目标文件中的末尾嵌入的。
3.根据权利要求2所述的方法,其特征在于,获取所述目标文件中嵌入的数字水印信息,具体包括:
根据所述目标文件的原始长度,确定所述数字水印信息在所述目标文件中的起始地址,其中,所述原始长度为嵌入所述数字水印信息前所述目标文件的长度;
根据所述起始地址,从所述目标文件中获取所述数字水印信息。
4.根据权利要求1所述的方法,其特征在于,根据所述数字水印信息和验证信息,验证所述安装包是否是重打包的安装包,具体包括:
验证所述数字水印信息与验证信息是否一致;
若一致,则确定所述安装包是原始安装包;
若不一致,则确定所述安装包是重打包的安装包。
5.根据权利要求1所述的方法,其特征在于,根据所述数字水印信息和验证信息,验证所述安装包是否是重打包的安装包,具体包括:
当所述数字水印信息为指令时,根据所述指令执行操作,获得操作结果;
验证所述操作结果与验证信息是否一致;
若一致,则确定所述安装包是原始安装包;
若不一致,则确定所述安装包是重打包的安装包。
6.根据权利要求1所述的方法,其特征在于,根据所述数字水印信息和验证信息,验证所述安装包是否是重打包的安装包,具体包括:
当所述数字水印信息为指令时,根据所述指令执行操作,获得操作结果;
验证所述操作结果与所述验证信息中的操作结果是否一致,以及验证所述指令与所述验证信息中的指令是否一致;
若均一致,则确定所述安装包是原始安装包;
否则,则确定所述安装包是重打包的安装包。
7.根据权利要求1~6任一所述的方法,其特征在于,所述方法应用于安卓操作系统中;
所述目标文件为dex文件;
所述安全动态库为so库。
8.一种防重打包的装置,其特征在于,该装置包括:
运行单元和执行单元,其中:
所述运行单元,运行安装包中的目标文件并加载所述安装包中的安全动态库;
所述执行单元,根据所述目标文件中的验证代码执行下述步骤:
确定所述目标文件中的数字水印信息在所述目标文件中的起始地址;
根据所述起始地址,获取所述目标文件中嵌入的数字水印信息;
获取所述安全动态库中存储的验证信息;
根据所述数字水印信息和验证信息,验证所述安装包是否是重打包的安装包。
9.根据权利要求8所述的装置,其特征在于,所述目标文件是将预设的代码进行编译后得到的目标文件;
所述数字水印信息是在编译后得到的目标文件中的末尾嵌入的。
10.根据权利要求9所述的装置,其特征在于,获取所述目标文件中嵌入的数字水印信息,具体包括:
根据所述目标文件的原始长度,确定所述数字水印信息在所述目标文件中的起始地址,其中,所述原始长度为嵌入所述数字水印信息前所述目标文件的长度;
根据所述起始地址,从所述目标文件中获取所述数字水印信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610887188.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:软件许可方法
- 下一篇:一种编程接口调用权限的控制方法及装置





