CN104866741A - 一种Android安装包文件的保护方法及装置 - Google Patents
一种Android安装包文件的保护方法及装置 Download PDFInfo
- Publication number
- CN104866741A CN104866741A CN201410064994.3A CN201410064994A CN104866741A CN 104866741 A CN104866741 A CN 104866741A CN 201410064994 A CN201410064994 A CN 201410064994A CN 104866741 A CN104866741 A CN 104866741A
- Authority
- CN
- China
- Prior art keywords
- file
- dex
- subsequent use
- dex file
- apk
- 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
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种Android安装包APK文件的防破解方法及装置,涉及数据安全技术领域,能够避免在APK文件的运行过程中产生包含源码的缓存文件,从而有效地保护了程序代码的安全性。该方法主要包括:将所述APK文件中的原始DEX文件处理为备用DEX文件并添加到所述APK文件的资源文件夹中;构建启动DEX文件,并将所述启动DEX文件添加到所述APK文件中,得到添加后的APK文件;将所述添加后的APK文件的入口点修改为指向所述启动DEX文件,得到防破解的APK文件;其中,所述启动DEX文件用于当运行所述防破解的APK文件时,将所述备用DEX文件读取进内存并运行。本发明主要用于Android安装包APK文件的防破解过程中。
Description
技术领域
本发明涉及数据安全技术领域,具体涉及Android应用程序的保护领域,尤其涉及一种Android安装包文件的防破解方法及装置。
背景技术
Android系统由Google公司开发,是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑等。当在Android系统中安装应用程序时,可以通过将Android安装包(Android Package,简称APK)文件直接传送到Android模拟器或Android手机中执行即可实现安装。由于Android的开源特性,DEX文件很容易被逆向分析和破解得到原始代码,严重影响了Android应用程序的保护。
现有技术中可以通过路径加载DEX文件的方式对APK文件进行保护。通常情况下,应用程序可以利用插件的方式进行代码加载,如DEX文件可以作为插件保存于设备或网络中。当应用程序启动后,可以从指定的设备位置或网络位置读取DEX文件,从而动态加载真正要执行的代码。
但是在通过路径加载的方式读取DEX文件时,系统会在加载过程中默认生成DEX文件优化过的缓存文件(即临时文件),而缓存文件中包含有可被逆向破解的源代码,因此,逆向破解者通过静态反汇编缓存文件仍然可以获得原始的代码指令。
发明内容
有鉴于此,本发明具体实施例提供一种Android安装包APK文件的防破解方法及装置,来解决以上背景技术部分提到的技术问题。
一方面,本发明实施例提供了一种Android安装包APK文件的防破解方法,所述方法包括:
将所述APK文件中的原始DEX文件处理为备用DEX文件并添加到所述APK文件的资源文件夹中;
构建启动DEX文件,并将所述启动DEX文件添加到所述APK文件中,得到添加后的APK文件;
将所述添加后的APK文件的入口点修改为指向所述启动DEX文件,得到防破解的APK文件;
其中,所述启动DEX文件用于当运行所述防破解的APK文件时,将所述备用DEX文件读取进内存并运行。
另一方面,本发明实施例还提供了一种Android安装包APK文件的防破解装置,所述装置包括:
添加模块,用于将所述APK文件中的原始DEX文件处理为备用DEX文件并添加到所述APK文件的资源文件夹中;
构建模块,用于构建启动DEX文件,并将所述启动DEX文件添加到所述APK文件中,得到添加后的APK文件;
修改模块,用于将所述构建模块得到的添加后的APK文件的入口点修改为指向所述启动DEX文件,得到防破解的APK文件;
其中,所述启动DEX文件用于当运行所述防破解的APK文件时,将所述备用DEX文件读取进内存并运行。
本发明实施例提出的一种Android安装包APK文件的防破解方法及装置,通过将APK文件中的原始DEX文件处理为备用DEX文件保存到资源文件夹中,然后构建启动DEX将备用DEX文件读取进内存中执行。由于备用DEX文件完全在内存中进行运行,因此不会生成包含源码的缓存文件,从而有效地保护了程序代码的安全性,提高了Android系统APK文件对抗静态逆向破解的能力。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1是本发明具体实施例提供的一种Android安装包APK文件的防破解方法流程图;
图2是本发明具体实施例提供的另一种Android安装包APK文件的防破解方法流程图;
图3是本发明具体实施例提供的一种将所述备用DEX文件映射进内存并运行的方法流程图;
图4是本发明具体实施例提供的一种运行解密后的所述备用DEX文件的方法流程图;
图5是本发明具体实施例提供的一种Android安装包APK文件的防破解装置组成框图;
图6是本发明具体实施例提供的另一种Android安装包APK文件的防破解装置组成框图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。
本发明的具体实施例提供了一种Android安装包APK文件的防破解的具体方法,本领域普通技术人员可以理解,所述方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成的,所述的程序可以存储于一计算机可读存储介质中,所述的存储介质包括ROM/RAM,磁盘,光盘等。如图1所示,该方法在执行时,包括如下步骤:
101、将所述APK文件中的原始DEX文件处理为备用DEX文件并添加到所述APK文件的资源文件夹中。
其中,所述APK是Android Package的缩写,即Android安装包。一个Android应用程序的代码想要在Android设备上运行,必须先进行编译,然后被打包成为一个被Android系统所能识别的文件才可以被运行,而这种能被Android系统识别并运行的文件格式便是“APK”。一个APK文件内可以包含被编译的代码文件(DEX文件),资源文件夹(名称为res的文件夹),证书(certificates)和清单文件(manifest file)等。APK文件其实是zip格式,但后缀名被修改为apk,通过Unzip解压后,就可以得到所述APK文件中的原始DEX文件,其中DEX是DalvikVM executes的全称,即Android Dalvik执行程序,也就是说,DEX文件的功能类似于Windows系统下的EXE文件。
具体地,当将所述APK文件中的原始DEX文件处理为备用DEX文件并添加到所述APK文件的资源文件夹中时,可以首先将所述APK文件进行解包处理,得到所述APK文件的解包文件夹,然后从所述解包文件夹中获取所述原始DEX文件。接着既可以将所述原始DEX文件直接作为备用DEX文件添加到所述APK文件的资源文件夹中,也可以对所述原始DEX文件进行一些不影响其原始功能的处理,然后将处理后的原始DEX文件作为备用DEX文件添加到所述APK文件的资源文件夹中。无论采用上述哪种方式将所述原始DEX文件处理为备用DEX文件,所述备用DEX文件都包含了所述原始DEX文件的全部内容,因此可以实现所述原始DEX文件的全部功能。
需要特别说明的是,在将所述APK文件中的原始DEX文件处理为备用DEX文件并添加到所述APK文件的资源文件夹中时,可以直接将原始DEX文件处理为备用DEX文件,然后移动到所述APK文件的资源文件夹中;也可以首先将原始DEX文件复制到所述APK文件的资源文件夹中,然后再将所述资源文件夹中的原始DEX复件处理为备用DEX文件。并且,本领域技术人员可以理解,上述处理步骤与移动或复制步骤的先后顺序是不固定的,只要能实现所述APK文件的资源文件夹中最终存储有所述备用DEX文件,就都在本发明的保护范围内。
102、构建启动DEX文件,并将所述启动DEX文件添加到所述APK文件中,得到添加后的APK文件。
具体地,在构建启动DEX文件时,可以根据Android系统下DEX文件的通用构建规则和语法规范新建一个DEX文件,即所述启动DEX文件,并且所述启动DEX文件用于替代所述原始DEX文件并实现所述APK文件的相关功能,也就是说所述启动DEX文件可以读取并运行所述备用DEX文件。
在将所述启动DEX文件添加到所述APK文件中时:如果所述原始DEX文件是直接被处理为备用DEX文件并移动到所述资源文件夹中的,那么所述APK文件中就不存在所述原始DEX文件,这样就可以直接将所述启动DEX文件添加到所述APK文件中,得到添加后的APK文件,并且所述启动DEX文件与所述原始DEX文件在所述APK文件中的位置相同;如果所述原始DEX文件是被复制到所述APK文件的资源文件夹中的,那么所述APK文件中就还存在有所述原始DEX文件,这样就可以将所述原始DEX文件直接替换为所述启动DEX文件,从而得到添加后的APK文件。
103、将所述添加后的APK文件的入口点修改为指向所述启动DEX文件,得到防破解的APK文件。
其中,所述入口点就是程序最开始执行的那一个函数,也可以称为入口函数。具体地,在修改所述添加后的APK文件的入口点时,可以修改所述入口函数中用于指定代码执行顺序的相关参数,使得所述入口点指向所述启动DEX文件,从而得到防破解的APK文件。这样,在运行所述防破解的APK文件时,由于入口点指向所述启动DEX文件,因此程序首先运行所述启动DEX文件,然后所述启动DEX文件可以将所述备用DEX文件读取进内存并运行。由于所述备用DEX文件包含了所述原始DEX文件的全部内容,因此所述备用DEX文件在内存中运行时可以实现所述原始DEX文件的全部功能。
本发明具体实施例将APK文件中的原始DEX文件处理为备用DEX文件保存到资源文件夹中,然后构建启动DEX将备用DEX文件读取进内存中运行。由于备用DEX文件完全在内存中运行,因此不会生成包含源码的缓存文件,从而有效地保护了程序代码的安全性,提高了Android系统APK文件对抗静态逆向破解的能力。
进一步地,本发明的具体实施例提供了另一种Android安装包APK文件的防破解方法,如图2所示,该方法包括:
201、将所述APK文件中的原始DEX文件进行加密处理,得到加密DEX文件。
具体地,在将所述APK文件中的原始DEX文件进行加密处理时,可以首先将所述APK文件进行解包处理得到所述原始DEX文件,然后利用常规的数据加密算法,如AES(Advanced Encryption Standard,高级加密标准),对所述原始DEX文件进行加密处理,从而得到加密DEX文件。进一步地,还可以对所述原始DEX文件进行整体加密,如加密算法采用AES,签名算法采用RSA(公钥加密算法),摘要算法采用SHA1(Secure Hash Algorithm,安全哈希算法),也可以得到加密DEX文件。
202、将所述加密DEX文件作为备用DEX文件添加到所述APK文件的资源文件夹中。
具体地,在将所述加密DEX文件作为备用DEX文件添加到所述APK文件的资源文件夹中时,可以直接将所述加密DEX文件移动到所述APK文件的资源文件夹中作为备用DEX文件,也可以将所述加密DEX文件复制到所述APK文件的资源文件夹中作为备用DEX文件。
203、构建启动DEX文件,并将所述启动DEX文件添加到所述APK文件中,得到添加后的APK文件。
具体地,在构建启动DEX文件时,可以根据Android系统下DEX文件的通用构建规则和语法规范新建一个DEX文件,即所述启动DEX文件,并且所述启动DEX文件可以读取并运行所述备用DEX文件。
在将所述启动DEX文件添加到所述APK文件中时:如果所述加密DEX文件被移动到所述APK文件的资源文件夹中,那么所述APK文件中就不存在所述加密DEX文件,这样就可以直接将所述启动DEX文件添加到所述APK文件中,得到添加后的APK文件,并且所述启动DEX文件与所述加密DEX文件在所述APK文件中的位置相同;如果所述加密DEX文件是被复制到所述APK文件的资源文件夹中的,那么所述APK文件中就还存在有所述加密DEX文件,这样就可以将所述加密DEX文件直接替换为所述启动DEX文件,从而得到添加后的APK文件。
204、将所述添加后的APK文件的入口点修改为指向所述启动DEX文件,得到防破解的APK文件。
其中,所述启动DEX文件用于当运行所述防破解的APK文件时,将所述备用DEX文件读取进内存并运行。
在本实施例的一个优选实施方式中,所述将所述备用DEX文件读取进内存并运行,具体为将所述备用DEX文件映射进内存并运行。
其中,所述映射可以是内存映射操作,所述内存映射就是从一个文件到一块内存的映射,也就是可以把文件映射到一个进程,通过内存映射文件可以保留一个地址空间的区域,同时将物理存储器提交给此区域。使用内存映射文件处理存储于磁盘上的文件时,将不必再对文件执行I/O操作,并且不必对文件内存进行缓存。
具体地,在将所述备用DEX文件映射进内存并运行时,所述启动DEX文件可以对所述备用DEX文件进行内存映射操作,利用虚拟内存把所述备用DEX文件映射到进程的地址空间中去,在此之后进程操作所述备用DEX文件,就像操作进程空间里的地址一样了,从而使得所述备用DEX文件可以完全在内存中运行,并且不会产生缓存文件。
本发明具体实施例进一步地将所述原始DEX文件进行加密处理后作为备用DEX文件,由于加密可以进一步降低DEX文件的可读取性,从而进一步提高了Android软件安装包的防破解能力。
进一步地,本发明的具体实施例提供了一种将所述备用DEX文件映射进内存并运行的具体方法,如图3所示,该方法包括:
301、从所述资源文件夹中获取所述备用DEX文件。
具体地,当从所述资源文件夹中获取所述备用DEX文件时,所述启动DEX文件可以首先获取和其本身在同一个APK文件中的资源文件夹,所述资源文件可以是名称为res的文件夹,然后在从所述资源文件夹中获取名称后缀为.dex的文件,即所述备用DEX文件。
302、调用内存映射函数将所述备用DEX文件映射进内存。
具体地,当调用内存映射函数将所述备用DEX文件映射进内存时,所述启动DEX文件可以调用系统自带的内存映射函数(如mmap函数),将所述备用DEX文件映射进内存,此时,所述备用DEX文件被映射到进程地址空间,进程可以像访问普通内存一样对所述备用DEX文件进行访问。
303、在内存中将所述备用DEX文件进行解密处理,并运行解密后的所述备用DEX文件。
其中,所述解密处理与之前进行的加密处理相对应,可以根据所述加密处理的密钥在内存中对所述备用DEX文件进行解密处理,然后在内存中运行所述备用DEX文件。由于所述备用DEX文件已经被映射到内存中,所以在解密和运行所述备用DEX文件,就不需要再对所述备用DEX文件执行I/O操作,只要对进程空间里相应的地址进行操作就可以。
本发明具体实施例进一步通过内存映射的方式将所述备用DEX文件读取进内存,然后在内存中解密并运行所述备用DEX文件,可以在内存中对所述备用DEX文件进行多种操作,同时避免临时解密文件的出现。
进一步地,本发明的具体实施例提供了一种运行解密后的所述备用DEX文件的具体方法,如图4所示,该方法包括:
401、将解密后的所述备用DEX文件进行格式化处理,得到符合系统运行要求的格式化后的备用DEX文件。
具体地,在将解密后的所述备用DEX文件进行格式化处理时,所述启动DEX文件可以调用系统自带的格式化函数,将解密后的所述备用DEX文件进行格式化处理。由于所述备用DEX文件经过加密和解密处理后,其文件格式很可能已经发生变化,不再符合系统的运行要求,因此需要对解密后的所述备用DEX文件进行格式化处理,以便后继运行。
402、将所述格式化后的备用DEX文件移动到内存中的指定位置并运行。
其中,所述指定位置可以是系统正常启动和调用DEX文件的内存位置,如所述格式化函数被执行后返回的内存位置。在将所述格式化后的备用DEX文件移动到内存中的指定位置时,可以将所述格式化后的备用DEX文件移动到所述格式化函数被执行后返回的内存位置,此时系统就可以运行所述格式化后的备用DEX文件。
本发明具体实施例进一步通过对解密后的所述备用DEX文件进行格式化操作,使得所述备用DEX文件能够被系统读取运行,确保所述防破解的APK文件在系统中顺利执行。
本发明的具体实施例提供了一种Android安装包APK文件的防破解装置,如图5所示,该装置包括:添加模块51、构建模块52和修改模块53。
添加模块51,用于将上述APK文件中的原始DEX文件处理为备用DEX文件并添加到所述APK文件的资源文件夹中。
构建模块52,用于构建启动DEX文件,并将所述启动DEX文件添加到所述APK文件中,得到添加后的APK文件。
修改模块53,用于将所述构建模块52得到的添加后的APK文件的入口点修改为指向所述启动DEX文件,得到防破解的APK文件。
其中,上述启动DEX文件用于当运行所述防破解的APK文件时,将所述备用DEX文件读取进内存并运行。
进一步地,如图6所示,所述添加模块51还包括:加密单元511和添加单元512。
加密单元511,用于将上述APK文件中的原始DEX文件进行加密处理,得到加密DEX文件。
添加单元512,用于将上述加密单元511得到的加密DEX文件作为备用DEX文件添加到所述APK文件的资源文件夹中。
进一步地,所述将所述备用DEX文件读取进内存并运行,具体为:
将所述备用DEX文件映射进内存并运行。
进一步地,所述将所述备用DEX文件映射进内存并运行,包括:
从所述资源文件夹中获取所述备用DEX文件;
调用内存映射函数将所述备用DEX文件映射进内存;
在内存中将所述备用DEX文件进行解密处理,并运行解密后的所述备用DEX文件。
进一步地,所述运行解密后的所述备用DEX文件,包括:
将解密后的所述备用DEX文件进行格式化处理,得到符合系统运行要求的格式化后的备用DEX文件;
将所述格式化后的备用DEX文件移动到内存中的指定位置并运行。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种Android安装包APK文件的防破解方法,其特征在于,所述方法包括:
将所述APK文件中的原始DEX文件处理为备用DEX文件并添加到所述APK文件的资源文件夹中;
构建启动DEX文件,并将所述启动DEX文件添加到所述APK文件中,得到添加后的APK文件;
将所述添加后的APK文件的入口点修改为指向所述启动DEX文件,得到防破解的APK文件;
其中,所述启动DEX文件用于当运行所述防破解的APK文件时,将所述备用DEX文件读取进内存并运行。
2.根据权利要求1所述的Android安装包APK文件的防破解方法,其特征在于,所述将所述APK文件中的原始DEX文件处理为备用DEX文件并添加到所述APK文件的资源文件夹中,包括:
将所述APK文件中的原始DEX文件进行加密处理,得到加密DEX文件;
将所述加密DEX文件作为备用DEX文件添加到所述APK文件的资源文件夹中。
3.根据权利要求2所述的APK文件的防破解方法,其特征在于,所述将所述备用DEX文件读取进内存并运行,具体为:
将所述备用DEX文件映射进内存并运行。
4.根据权利要求3所述的Android安装包APK文件的防破解方法,其特征在于,所述将所述备用DEX文件映射进内存并运行,包括:
从所述资源文件夹中获取所述备用DEX文件;
调用内存映射函数将所述备用DEX文件映射进内存;
在内存中将所述备用DEX文件进行解密处理,并运行解密后的所述备用DEX文件。
5.根据权利要求4所述的Android安装包APK文件的防破解方法,其特征在于,所述运行解密后的所述备用DEX文件,包括:
将解密后的所述备用DEX文件进行格式化处理,得到符合系统运行要求的格式化后的备用DEX文件;
将所述格式化后的备用DEX文件移动到内存中的指定位置并运行。
6.一种Android安装包APK文件的防破解装置,其特征在于,所述装置包括:
添加模块,用于将所述APK文件中的原始DEX文件处理为备用DEX文件并添加到所述APK文件的资源文件夹中;
构建模块,用于构建启动DEX文件,并将所述启动DEX文件添加到所述APK文件中,得到添加后的APK文件;
修改模块,用于将所述构建模块得到的添加后的APK文件的入口点修改为指向所述启动DEX文件,得到防破解的APK文件;
其中,所述启动DEX文件用于当运行所述防破解的APK文件时,将所述备用DEX文件读取进内存并运行。
7.根据权利要求6所述的Android安装包APK文件的防破解装置,其特征在于,所述添加模块包括:
加密单元,用于将所述APK文件中的原始DEX文件进行加密处理,得到加密DEX文件;
添加单元,用于将所述机密单元得到的加密DEX文件作为备用DEX文件添加到所述APK文件的资源文件夹中。
8.根据权利要求7所述的APK文件的防破解装置,其特征在于,所述将所述备用DEX文件读取进内存并运行,具体为:
将所述备用DEX文件映射进内存并运行。
9.根据权利要求8所述的Android安装包APK文件的防破解装置,其特征在于,所述将所述备用DEX文件映射进内存并运行,包括:
从所述资源文件夹中获取所述备用DEX文件;
调用内存映射函数将所述备用DEX文件映射进内存;
在内存中将所述备用DEX文件进行解密处理,并运行解密后的所述备用DEX文件。
10.根据权利要求9所述的Android安装包APK文件的防破解装置,其特征在于,所述运行解密后的所述备用DEX文件,包括:
将解密后的所述备用DEX文件进行格式化处理,得到符合系统运行要求的格式化后的备用DEX文件;
将所述格式化后的备用DEX文件移动到内存中的指定位置并运行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410064994.3A CN104866741A (zh) | 2014-02-25 | 2014-02-25 | 一种Android安装包文件的保护方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410064994.3A CN104866741A (zh) | 2014-02-25 | 2014-02-25 | 一种Android安装包文件的保护方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104866741A true CN104866741A (zh) | 2015-08-26 |
Family
ID=53912565
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410064994.3A Pending CN104866741A (zh) | 2014-02-25 | 2014-02-25 | 一种Android安装包文件的保护方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104866741A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102087605A (zh) * | 2011-01-28 | 2011-06-08 | 宇龙计算机通信科技(深圳)有限公司 | 一种基于android平台应用安装控制方法及系统 |
CN102236757A (zh) * | 2011-06-30 | 2011-11-09 | 北京邮电大学 | 一种适用于Android系统的软件保护方法及系统 |
CN102760219A (zh) * | 2011-12-20 | 2012-10-31 | 北京安天电子设备有限公司 | 一种Android平台软件保护系统、方法及设备 |
KR101328012B1 (ko) * | 2013-08-12 | 2013-11-13 | 숭실대학교산학협력단 | 애플리케이션 코드 난독화 장치 및 그 방법 |
CN103413076A (zh) * | 2013-08-27 | 2013-11-27 | 北京理工大学 | 一种Android应用程序分块保护的方法 |
CN103530535A (zh) * | 2013-10-25 | 2014-01-22 | 苏州通付盾信息技术有限公司 | 一种Android平台应用程序保护的加脱壳方法 |
US20140045582A1 (en) * | 2010-11-15 | 2014-02-13 | Bally Gaming, Inc. | System and method for bonus gaming using a mobile device |
-
2014
- 2014-02-25 CN CN201410064994.3A patent/CN104866741A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140045582A1 (en) * | 2010-11-15 | 2014-02-13 | Bally Gaming, Inc. | System and method for bonus gaming using a mobile device |
CN102087605A (zh) * | 2011-01-28 | 2011-06-08 | 宇龙计算机通信科技(深圳)有限公司 | 一种基于android平台应用安装控制方法及系统 |
CN102236757A (zh) * | 2011-06-30 | 2011-11-09 | 北京邮电大学 | 一种适用于Android系统的软件保护方法及系统 |
CN102760219A (zh) * | 2011-12-20 | 2012-10-31 | 北京安天电子设备有限公司 | 一种Android平台软件保护系统、方法及设备 |
KR101328012B1 (ko) * | 2013-08-12 | 2013-11-13 | 숭실대학교산학협력단 | 애플리케이션 코드 난독화 장치 및 그 방법 |
CN103413076A (zh) * | 2013-08-27 | 2013-11-27 | 北京理工大学 | 一种Android应用程序分块保护的方法 |
CN103530535A (zh) * | 2013-10-25 | 2014-01-22 | 苏州通付盾信息技术有限公司 | 一种Android平台应用程序保护的加脱壳方法 |
Non-Patent Citations (2)
Title |
---|
景维鹏 等: "《LINUX系统编程》", 30 June 2013 * |
蒋凌志: "《移动互联网技术与实践》", 31 May 2013 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101504857B1 (ko) | 보안 시스템에서 랜덤하게 할당된 메모리 범위로 jit를 지원하는 시스템 및 방법 | |
KR101518420B1 (ko) | 안드로이드 플랫폼에서의 apk 파일 관리 장치 및 방법 | |
KR102433011B1 (ko) | Apk 파일 보호 방법, 이를 수행하는 apk 파일 보호 시스템, 및 이를 저장하는 기록매체 | |
US20160275019A1 (en) | Method and apparatus for protecting dynamic libraries | |
CN105184118B (zh) | 一种基于代码碎片化的Android应用程序加壳保护方法及装置 | |
CN104866739A (zh) | 安卓系统中应用程序加密方法及系统 | |
WO2016078130A1 (zh) | 一种防逆向apk文件的动态加载方法 | |
CN103988467A (zh) | 确保软件加密技术安全的加密系统和方法 | |
CN107273723B (zh) | 一种基于so文件加壳的Android平台应用软件保护方法 | |
CN105095771A (zh) | 一种共享目标文件的保护方法及装置 | |
US20110271350A1 (en) | method for protecting software | |
CN109871704A (zh) | 基于Hook的Android资源文件防护方法、设备和存储介质 | |
JP2012118956A (ja) | インデックステーブル基盤のコード暗号化及び復号化装置及びその方法 | |
US9256756B2 (en) | Method of encryption and decryption for shared library in open operating system | |
CN105074712A (zh) | 代码处理装置和程序 | |
US10303885B2 (en) | Methods and systems for securely executing untrusted software | |
CN108133147B (zh) | 可执行代码的保护方法、设备及可读存储介质 | |
CN109614774B (zh) | 一种基于sgx的程序控制流混淆方法及系统 | |
WO2016206393A1 (zh) | 管理应用的方法和装置、实现读写操作的方法和装置 | |
US8972745B2 (en) | Secure data handling in a computer system | |
CN110135131B (zh) | 一种应用程序的加密方法、存储介质及终端设备 | |
CN112035803A (zh) | 一种基于Windows平台软件的保护方法及装置 | |
US20150039900A1 (en) | Program execution method and decryption apparatus | |
CN104866740A (zh) | 一种防静态分析文件的方法及装置 | |
CN104866741A (zh) | 一种Android安装包文件的保护方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150826 |