CN104111832A - 一种安卓应用程序安装包加壳方法及系统及解壳方法 - Google Patents
一种安卓应用程序安装包加壳方法及系统及解壳方法 Download PDFInfo
- Publication number
- CN104111832A CN104111832A CN201410314808.7A CN201410314808A CN104111832A CN 104111832 A CN104111832 A CN 104111832A CN 201410314808 A CN201410314808 A CN 201410314808A CN 104111832 A CN104111832 A CN 104111832A
- Authority
- CN
- China
- Prior art keywords
- file
- cryptor
- added
- data
- adds
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
本发明涉及一种安卓应用程序安装包加壳方法,包括步骤:步骤1:将源程序数据加密生成待加壳数据;步骤2:计算待加壳数据长度得到待加壳数据的长度值;步骤3:判断采用第一类加壳方法还是第二类加壳方法,如果是第一类,执行步骤4;否则,执行步骤6;步骤4:将待加壳数据和待加壳数据的长度值依次添加到加壳程序文件尾部;步骤5:重置相关项,执行步骤8;步骤6:将待加壳数据的长度值和待加壳数据依次添加到加壳程序文件头的尾部;步骤7:重新生成加壳程序文件头部中的相关项替换原有的,修改相关的数据偏移量;步骤8:将加壳程序文件的入口类配置为指定的类,完成对待加壳数据的加壳。本发明达到保护源文件的目的。
Description
技术领域
本发明涉及一种安卓应用程序安装包加壳方法及系统及解壳方法,涉及到手机App安全领域。
背景技术
目前,市场上智能手机的品牌种类繁多,比如说:苹果,三星,HTC,诺基亚,小米,LG等等。但是,从智能手机操作系统层面上进行划分的话,大体上只有三种:Android,iOS,Windows Phone(这三种的市场占有率最高,其它的由于市场占有率过低,暂时忽略)。
在上面提到的三种操作系统中,由于Android是唯一的开源平台,所以,目前采用Android平台的智能手机最多,市场占有率也是最大的。
但是,“开放性”在给Android带来巨大的竞争力的同时,也带来了很多安全方面的问题,其中,一个比较明显的是,App很容易被破解,然后被恶意加入一些代码,执行与当初设计不相符的逻辑。比如说:App被反编译,被破解后,界面被加入一些垃圾广告;用户私秘信息被获取后用于他用等等。
发明内容
本发明所要解决的技术问题是提供一种主要针对Android平台App,通过对APK安卓应用程序安装包加壳来预防App被破解的安卓应用程序安装包加壳方法。
本发明解决上述技术问题的技术方案如下:一种安卓应用程序安装包加壳方法,具体包括以下步骤:
步骤1:将安卓应用程序安装包的源程序数据加密生成待加壳数据;
步骤2:计算待加壳数据长度得到待加壳数据的长度值;
步骤3:判断采用第一类加壳方法还是第二类加壳方法,如果是第一类,执行步骤4;如果是第二类,执行步骤6;
步骤4:将待加壳数据和待加壳数据的长度值依次添加到加壳程序文件尾部;
步骤5:重新生成checksum检验码字段、signature签名字段和file_size文件总长度信息替换原来加壳程序文件头部中的checksum检验码字段、signature签名字段和file_size文件总长度信息,构成新加壳程序文件,执行步骤8;
步骤6:将待加壳数据的长度值和待加壳数据依次添加到加壳程序文件头的尾部;
步骤7:重新生成加壳程序文件头部中的相关项替换原有的,并分析map_off数据,修改相关的数据偏移量,构成新加壳程序文件;
步骤8:将新加壳程序文件的入口类配置为指定的类,使解壳程序在运行的时候还原此类,完成对待加壳数据的加壳。
本发明的有益效果是:本发明对Android平台的APK进行加壳,反编译工具还原Android源代码的原理是根据虚拟机的可执行文件.DEX格式进行代码还原,反编译工具只能窥测外层APK程序文件而看不到源文件里的东西,从而达到保护源文件的目的。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,步骤7中的所述相关项包括checksum检验码字段、signature签名字段、file_size文件总长度信息、header_size、string_ids_off、type_ids_off、proto_ids_off、field_ids_off、method_ids_off、class_defs_off和data_off相关项。
进一步,所述步骤8中,如果源文件已经配置了入口类需要把这个入口类用<meta-data>保存在加壳程序文件中,并将加壳程序文件的入口类配置为源文件配置的入口类。
进一步,所述加壳程序文件采用dex文件。
本发明所要解决的技术问题是提供一种主要针对Android平台App,通过对APK安卓应用程序安装包加壳来预防App被破解的安卓应用程序安装包加壳系统。
本发明解决上述技术问题的技术方案如下:一种安卓应用程序安装包加壳系统,包括加密模块、长度计算模块、第一类加壳模块、第二类加壳模块和配置类模块;
所述加密模块将源程序数据加密生成待加壳数据;
所述长度计算模块用于计算待加壳数据长度得到待加壳数据的长度值,并将长度值和待加壳数据发送到第一类加壳模块或第二类加壳模块;
所述第一类加壳模块将待加壳数据写入加壳程序文件的尾部,并在加壳程序文件尾部添加待加壳数据的长度值;重新生成加壳程序文件头部中的相关项替换原有的,并将加壳程序文件发送到配置类模块;
所述第二类加壳模块将待加壳数据的长度值和待加壳数据依次添加到加壳程序文件头的尾部;重新生成加壳程序文件头部中的相关项替换原有的,并分析map_off数据,修改相关的数据偏移量,并将加壳程序文件发送到配置类模块;
所述配置类模块将加壳程序文件的入口类配置为指定的类,使解壳程序在运行的时候还原此类。
本发明的有益效果是:本发明对Android平台的APK进行加壳,反编译工具还原Android源代码的原理是根据虚拟机的可执行文件.DEX格式进行代码还原,反编译工具只能窥测外层APK程序文件而看不到源文件里的东西,从而达到保护源文件的目的。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,所述第一类加壳模块中的所述相关项包括checksum检验码字段、signature签名字段和file_size文件总长度信息。
进一步,所述第二类加壳模块中的所述相关项包括checksum检验码字段、signature签名字段、file_size文件总长度信息、header_size、string_ids_off、type_ids_off、proto_ids_off、field_ids_off、method_ids_off、class_defs_off和data_off相关项。
进一步,所述加壳程序文件采用dex文件。
本发明所要解决的技术问题是提供一种主要针对Android平台App,通过对APK安卓应用程序安装包加壳来预防App被破解的安卓应用程序安装包解壳方法。
本发明解决上述技术问题的技术方案如下:一种安卓应用程序安装包解壳方法,具体包括以下步骤:
步骤1:判断是第一类加壳方法还是第二类加壳方法处理的加壳程序文件,如果是第一类,执行步骤2;如果是第二类,执行步骤3;
步骤2:读取加壳程序文件尾部数据,获得待加壳数据的长度值,执行步骤4;
步骤3:读取加壳程序文件头的末尾处数据,获得待加壳数据的长度值;
步骤4:从加壳程序文件中读取待加壳数据,对待加壳数据进行解密得到解密数据;
步骤5:将解密数据以文件形式保存到a.apk文件中;
步骤6:通过类装载器动态加载a.apk文件,读取源文件。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,所述步骤6中的类装载器采用DexClassLoader。
附图说明
图1为本发明所述的一种安卓应用程序安装包加壳方法流程图;
图2为本发明所述的一种安卓应用程序安装包加壳系统结构框图;
图3为本发明所述的一种安卓应用程序安装包解壳方法流程图。
附图中,各标号所代表的部件列表如下:
1、加密模块,2、长度计算模块,3、第一类加壳模块,4、第二类加壳模块,5、配置类模块。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
如图1所示,为本发明所述的一种安卓应用程序安装包加壳方法,具体包括以下步骤:
步骤1:将安卓应用程序安装包的源程序数据加密生成待加壳数据;
步骤2:计算待加壳数据长度得到待加壳数据的长度值;
步骤3:判断采用第一类加壳方法还是第二类加壳方法,如果是第一类,执行步骤4;如果是第二类,执行步骤6;
步骤4:将待加壳数据和待加壳数据的长度值依次添加到加壳程序文件尾部;
步骤5:重新生成checksum检验码字段、signature签名字段和file_size文件总长度信息替换原来加壳程序文件头部中的checksum检验码字段、signature签名字段和file_size文件总长度信息,构成新加壳程序文件,执行步骤8;
步骤6:将待加壳数据的长度值和待加壳数据依次添加到加壳程序文件头的尾部;
步骤7:重新生成加壳程序文件头部中的相关项替换原有的,并分析map_off数据,修改相关的数据偏移量,构成新加壳程序文件;
步骤8:将新加壳程序文件的入口类配置为指定的类,使解壳程序在运行的时候还原此类,完成对待加壳数据的加壳。
步骤7中的所述相关项包括checksum检验码字段、signature签名字段、file_size文件总长度信息、header_size、string_ids_off、type_ids_off、proto_ids_off、field_ids_off、method_ids_off、class_defs_off和data_off相关项。
所述步骤8中,如果源程序数据已经配置了入口类需要把这个入口类用<meta-data>保存在加壳程序文件中,并将加壳程序文件的入口类配置为源文件配置的入口类。
所述加壳程序文件采用dex文件。
如图2所示,为本发明所述的一种安卓应用程序安装包加壳系统,包括加密模块1、长度计算模块2、第一类加壳模块3、第二类加壳模块4和配置类模块5;
所述加密模块1将源程序数据加密生成待加壳数据;
所述长度计算模块2用于计算待加壳数据长度得到待加壳数据的长度值,并将长度值和待加壳数据发送到第一类加壳模块3或第二类加壳模块4;
所述第一类加壳模块3将待加壳数据写入加壳程序文件的尾部,并在加壳程序文件尾部添加待加壳数据的长度值;重新生成加壳程序文件头部中的相关项替换原有的,并将加壳程序文件发送到配置类模块5;
所述第二类加壳模块4将待加壳数据的长度值和待加壳数据依次添加到加壳程序文件头的尾部;重新生成加壳程序文件头部中的相关项替换原有的,并分析map_off数据,修改相关的数据偏移量,并将加壳程序文件发送到配置类模块5;
所述配置类模块5将加壳程序文件的入口类配置为指定的类,使解壳程序在运行的时候还原此类。
所述第一类加壳模块1中的所述相关项包括checksum检验码字段、signature签名字段和file_size文件总长度信息。
所述第二类加壳模块2中的所述相关项包括checksum检验码字段、signature签名字段、file_size文件总长度信息、header_size、string_ids_off、type_ids_off、proto_ids_off、field_ids_off、method_ids_off、class_defs_off和data_off相关项。
所述加壳程序文件采用dex文件。
如图3所示,本发明所述的一种安卓应用程序安装包解壳方法,具体包括以下步骤:
步骤1:判断是第一类加壳方法还是第二类加壳方法处理的加壳程序文件,如果是第一类,执行步骤2;如果是第二类,执行步骤3;
步骤2:读取加壳程序文件尾部数据,获得待加壳数据的长度值,执行步骤4;
步骤3:读取加壳程序文件头的末尾处数据,获得待加壳数据的长度值;
步骤4:从加壳程序文件中读取待加壳数据,对待加壳数据进行解密得到解密数据;
步骤5:将解密数据以文件形式保存到a.apk文件中;
步骤6:通过类装载器动态加载a.apk文件,读取源文件。
所述步骤6中的类装载器采用DexClassLoader。
第一类加壳程序工作流程:
1.加密源程序APK文件为待加壳数据;
2.把待加壳数据写入解壳程序Dex文件尾部,并在文件尾部添加待加壳数据的大小;
3.修改解壳程序Dex头中checksum、signature和file_size头信息;
Checksum:检验码字段是一个整数值,对dex数据采用Adler32算法生成,用来检查这个字段开始到文件结尾数据的完整性;对解壳程序dex数据重新用Adler32算法生成一个整数并替换原来的校验码字段即可;
Signature:签名字段,是一个20字节的数据,对dex数据采用SHA安全散列算法生成,用来检查dex数据的完整性;对解壳程序dex数据重新采用SHA安全散列算法生成签名数据并替换原来的签名字段即可;
file_size:dex文件的总长度,对解壳程序dex文件重新计算长度并替换原来的长度字段;
4.修改源程序AndroidMainfest.xml文件并覆盖解壳程序AndroidMainfest.xml文件;
AndroidMainfest文件可以通过在application节点name属性上配置程序的入口类,所以需要吧入口类配置为解壳程序指定的类,如果源文件已经配置了入口类需要把这个入口类用<meta-data>保存在此文件中,以便解壳程序在运行的时候还原此类。
对应的解壳程序工作流程:
1.读取Dex文件尾部数据获取待加壳数据长度。
2.从Dex文件读取待加壳数据,解密待加壳数据。以文件形式保存解密数据到a.apk文件。
3.通过DexClassLoader动态加载a.apk。
第二类加壳方法待加壳数据位于加壳程序文件头
该种方式相对比较复杂,合并后Dex文件结构如下:
第二类加壳程序工作流程:
1.加密源程序APK文件为待加壳数据;
2.计算待加壳数据长度,并添加该长度到解壳程序Dex文件头末尾,并继续添加待加壳数据到文件头末尾(插入数据的位置为0x70处:这个偏移位置指向的是dex头文件的结尾,因为dex头文件的大小是固定的70字节);
3.修改解壳程序Dex头中checksum、signature、file_size、header_size、string_ids_off、type_ids_off、proto_ids_off、field_ids_off、method_ids_off、class_defs_off和data_off相关项。分析map_off数据,修改相关的数据偏移量;
4.修改源程序AndroidMainfest.xml文件并覆盖解壳程序AndroidMainfest.xml文件。
解壳程序工作流程:
1.从0x70处读取待加壳数据长度。
2.从Dex文件读取待加壳数据,解密待加壳数据。以文件形式保存解密数据到a.apk。
3.通过DexClassLoader动态加载a.apk。
特殊说明:
为了防止解壳程序被反编译,被破解,解壳程序可以考虑采用更加安全的
C代码来实现,而不采用Java,但是,两者的实现思路是相似的。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种安卓应用程序安装包加壳方法,其特征在于,具体包括以下步骤:
步骤1:将安卓应用程序安装包的源程序数据加密生成待加壳数据;
步骤2:计算待加壳数据长度得到待加壳数据的长度值;
步骤3:判断采用第一类加壳方法还是第二类加壳方法,如果是第一类,执行步骤4;如果是第二类,执行步骤6;
步骤4:将待加壳数据和待加壳数据的长度值依次添加到加壳程序文件尾部;
步骤5:重新生成checksum检验码字段、signature签名字段和file_size文件总长度信息替换原来加壳程序文件头部中的checksum检验码字段、signature签名字段和file_size文件总长度信息,构成新加壳程序文件,执行步骤8;
步骤6:将待加壳数据的长度值和待加壳数据依次添加到加壳程序文件头的尾部;
步骤7:重新生成加壳程序文件头部中的相关项替换原有的,并分析map_off数据,修改相关的数据偏移量,构成新加壳程序文件;
步骤8:将新加壳程序文件的入口类配置为指定的类,完成对待加壳数据的加壳。
2.根据权利要求1所述的一种安卓应用程序安装包加壳方法,其特征在于,步骤7中的所述相关项包括checksum检验码字段、signature签名字段、file_size文件总长度信息、header_size、string_ids_off、type_ids_off、proto_ids_off、field_ids_off、method_ids_off、class_defs_off和data_off相关项。
3.根据权利要求1或2所述的一种安卓应用程序安装包加壳方法,其特征在于,所述步骤8中,如果源程序数据已经配置了入口类需要把这个入口类用<meta-data>保存在加壳程序文件中,并将加壳程序文件的入口类配置为源文件配置的入口类。
4.根据权利要求3所述的一种安卓应用程序安装包加壳方法,其特征在于,所述加壳程序文件采用dex文件。
5.一种安卓应用程序安装包加壳系统,其特征在于,包括加密模块、长度计算模块、第一类加壳模块、第一类加壳模块和配置类模块;
所述加密模块将源程序数据加密生成待加壳数据;
所述长度计算模块用于计算待加壳数据长度得到待加壳数据的长度值,并将长度值和待加壳数据发送到第一类加壳模块或第一类加壳模块;
所述第一类加壳模块将待加壳数据写入加壳程序文件的尾部,并在加壳程序文件尾部添加待加壳数据的长度值;重新生成加壳程序文件头部中的相关项替换原有的,并将加壳程序文件发送到配置类模块;
所述第二类加壳模块将待加壳数据的长度值和待加壳数据依次添加到加壳程序文件头的尾部;重新生成加壳程序文件头部中的相关项替换原有的,并分析map_off数据,修改相关的数据偏移量,并将加壳程序文件发送到配置类模块;
所述配置类模块将加壳程序文件的入口类配置为指定的类,使解壳程序在运行的时候还原此类。
6.根据权利要求5所述的一种安卓应用程序安装包加壳系统,其特征在于,所述第一类加壳模块中的所述相关项包括checksum检验码字段、signature签名字段和file_size文件总长度信息。
7.根据权利要求6所述的一种安卓应用程序安装包加壳系统,其特征在于,所述第二类加壳模块中的所述相关项包括checksum检验码字段、signature签名字段、file_size文件总长度信息、header_size、string_ids_off、type_ids_off、proto_ids_off、field_ids_off、method_ids_off、class_defs_off和data_off相关项。
8.根据权利要求5-7任一项所述的一种安卓应用程序安装包加壳系统,其特征在于,所述加壳程序文件采用dex文件。
9.一种安卓应用程序安装包解壳方法,其特征在于,具体包括以下步骤:
步骤1:判断是第一类加壳方法还是第二类加壳方法处理的加壳程序文件,如果是第一类,执行步骤2;如果是第二类,执行步骤3;
步骤2:读取加壳程序文件尾部数据,获得待加壳数据的长度值,执行步骤4;
步骤3:读取加壳程序文件头的末尾处数据,获得待加壳数据的长度值;
步骤4:从加壳程序文件中读取待加壳数据,对待加壳数据进行解密得到解密数据;
步骤5:将解密数据以文件形式保存到a.apk文件中;
步骤6:通过类装载器动态加载a.apk文件,读取源文件。
10.根据权利要求9所述的一种安卓应用程序安装包解壳方法,其特征在于,所述步骤6中的类装载器采用DexClassLoader。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410314808.7A CN104111832A (zh) | 2014-07-03 | 2014-07-03 | 一种安卓应用程序安装包加壳方法及系统及解壳方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410314808.7A CN104111832A (zh) | 2014-07-03 | 2014-07-03 | 一种安卓应用程序安装包加壳方法及系统及解壳方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104111832A true CN104111832A (zh) | 2014-10-22 |
Family
ID=51708632
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410314808.7A Pending CN104111832A (zh) | 2014-07-03 | 2014-07-03 | 一种安卓应用程序安装包加壳方法及系统及解壳方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104111832A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317625A (zh) * | 2014-11-09 | 2015-01-28 | 刘鹏 | 一种apk文件的动态加载方法 |
CN104408337A (zh) * | 2014-11-18 | 2015-03-11 | 刘鹏 | 一种apk文件防逆向的加固方法 |
CN104462883A (zh) * | 2014-11-09 | 2015-03-25 | 刘鹏 | 一种apk文件加固的方法 |
CN105608393A (zh) * | 2016-01-19 | 2016-05-25 | 北京鼎源科技有限公司 | 一种基于Android可执行文件重组的加固方法 |
CN106650341A (zh) * | 2016-11-18 | 2017-05-10 | 湖南鼎源蓝剑信息科技有限公司 | 基于smali流程混淆技术的Android应用加固方法 |
CN106778271A (zh) * | 2016-12-15 | 2017-05-31 | 华中科技大学 | 一种安卓加固插件的逆向处理方法 |
CN106815301A (zh) * | 2016-12-12 | 2017-06-09 | 北京奇虎科技有限公司 | 一种dex文件的存储方法和装置 |
CN107203379A (zh) * | 2017-05-22 | 2017-09-26 | 福建星网锐捷通讯股份有限公司 | 一种安卓定制应用app的预置、安装方法 |
CN107292134A (zh) * | 2017-05-27 | 2017-10-24 | 北京思特奇信息技术股份有限公司 | 一种防止Android应用被反编译的应用加固方法及系统 |
CN109062582A (zh) * | 2018-07-23 | 2018-12-21 | 北京云测信息技术有限公司 | 一种应用安装包的加密方法及装置 |
CN110008693A (zh) * | 2019-04-12 | 2019-07-12 | 深圳市趣创科技有限公司 | 安全应用程序加密保证方法及装置与系统和存储介质 |
CN110232262A (zh) * | 2019-06-17 | 2019-09-13 | 中金金融认证中心有限公司 | 一种安卓应用的加固方法和系统 |
CN112084469A (zh) * | 2020-08-06 | 2020-12-15 | 华帝股份有限公司 | 防止应用程序被逆向工程的加密方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102087605A (zh) * | 2011-01-28 | 2011-06-08 | 宇龙计算机通信科技(深圳)有限公司 | 一种基于android平台应用安装控制方法及系统 |
CN103886230A (zh) * | 2014-02-24 | 2014-06-25 | 四川长虹电器股份有限公司 | android系统的软件版权保护方法及其系统 |
-
2014
- 2014-07-03 CN CN201410314808.7A patent/CN104111832A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102087605A (zh) * | 2011-01-28 | 2011-06-08 | 宇龙计算机通信科技(深圳)有限公司 | 一种基于android平台应用安装控制方法及系统 |
CN103886230A (zh) * | 2014-02-24 | 2014-06-25 | 四川长虹电器股份有限公司 | android系统的软件版权保护方法及其系统 |
Non-Patent Citations (2)
Title |
---|
JACK_JIA: "《blog.csdn.net/androidsecurity/article/details/8678399》", 18 March 2013 * |
JACK_JIA: "《blog.csdn.net/androidsecurity/article/details/8809542》", 23 April 2013 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462883A (zh) * | 2014-11-09 | 2015-03-25 | 刘鹏 | 一种apk文件加固的方法 |
CN104317625A (zh) * | 2014-11-09 | 2015-01-28 | 刘鹏 | 一种apk文件的动态加载方法 |
CN104408337A (zh) * | 2014-11-18 | 2015-03-11 | 刘鹏 | 一种apk文件防逆向的加固方法 |
CN105608393A (zh) * | 2016-01-19 | 2016-05-25 | 北京鼎源科技有限公司 | 一种基于Android可执行文件重组的加固方法 |
CN105608393B (zh) * | 2016-01-19 | 2018-09-07 | 北京鼎源科技有限公司 | 一种基于Android可执行文件重组的加固方法 |
CN106650341A (zh) * | 2016-11-18 | 2017-05-10 | 湖南鼎源蓝剑信息科技有限公司 | 基于smali流程混淆技术的Android应用加固方法 |
CN106815301A (zh) * | 2016-12-12 | 2017-06-09 | 北京奇虎科技有限公司 | 一种dex文件的存储方法和装置 |
CN106778271B (zh) * | 2016-12-15 | 2019-05-14 | 华中科技大学 | 一种安卓加固插件的逆向处理方法 |
CN106778271A (zh) * | 2016-12-15 | 2017-05-31 | 华中科技大学 | 一种安卓加固插件的逆向处理方法 |
CN107203379A (zh) * | 2017-05-22 | 2017-09-26 | 福建星网锐捷通讯股份有限公司 | 一种安卓定制应用app的预置、安装方法 |
CN107203379B (zh) * | 2017-05-22 | 2019-11-19 | 福建星网锐捷通讯股份有限公司 | 一种安卓定制应用app的预置、安装方法 |
CN107292134A (zh) * | 2017-05-27 | 2017-10-24 | 北京思特奇信息技术股份有限公司 | 一种防止Android应用被反编译的应用加固方法及系统 |
CN109062582A (zh) * | 2018-07-23 | 2018-12-21 | 北京云测信息技术有限公司 | 一种应用安装包的加密方法及装置 |
CN110008693A (zh) * | 2019-04-12 | 2019-07-12 | 深圳市趣创科技有限公司 | 安全应用程序加密保证方法及装置与系统和存储介质 |
CN110232262A (zh) * | 2019-06-17 | 2019-09-13 | 中金金融认证中心有限公司 | 一种安卓应用的加固方法和系统 |
CN112084469A (zh) * | 2020-08-06 | 2020-12-15 | 华帝股份有限公司 | 防止应用程序被逆向工程的加密方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104111832A (zh) | 一种安卓应用程序安装包加壳方法及系统及解壳方法 | |
CN101436141B (zh) | 基于数字签名的固件升级、固件封装方法与装置 | |
CN105426708B (zh) | 一种Android系统的应用程序的加固方法 | |
CN102087605B (zh) | 一种基于android平台应用安装控制方法及系统 | |
US8799662B2 (en) | Method and apparatus for validating the integrity of installer files prior to installation | |
US8984299B1 (en) | Apparatus for code obfuscation and method thereof | |
CN102938036B (zh) | Windows动态链接库的分段双重加密及安全加载方法 | |
US20160203087A1 (en) | Method for providing security for common intermediate language-based program | |
CN104363271B (zh) | 文件断点续传方法及装置 | |
CN108399319B (zh) | 源代码保护方法、应用服务器及计算机可读存储介质 | |
CN111143869B (zh) | 应用程序包处理方法、装置、电子设备及存储介质 | |
CN104408337A (zh) | 一种apk文件防逆向的加固方法 | |
CN104317625A (zh) | 一种apk文件的动态加载方法 | |
US20130067587A1 (en) | Protecting archive structure with directory verifiers | |
CN106557707A (zh) | 一种处理文档数据的方法及系统 | |
US20160057113A1 (en) | Encryption method and information processing device | |
CN108170461B (zh) | 差分升级包生成方法、差分升级方法及装置 | |
CN105656889A (zh) | WebApp的发布方法、服务器及客户端 | |
CN108055585A (zh) | 数据处理方法、机顶盒升级方法、终端和机顶盒 | |
WO2015154436A1 (zh) | 一种数据处理方法及装置 | |
CN103823751A (zh) | 一种基于特征注入的仿冒应用程序监测方法 | |
CN106326691B (zh) | 加解密功能的实现方法、装置及服务器 | |
CN111737718A (zh) | 一种jar包的加解密方法、装置、终端设备和存储介质 | |
CN111045722A (zh) | 智能合约打包方法、装置、系统、计算机设备及存储介质 | |
JP4877193B2 (ja) | 版数管理システムおよび版数管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20141022 |
|
RJ01 | Rejection of invention patent application after publication |