The invention discloses a method for encrypting resource files, an intelligent terminal and a storage medium. The method comprises compiling and generating dynamic library files of APK programs, acquiring resource data by reflecting and intercepting the operating interface of Android system, decompressing APK files, encrypting the preset files of decompressed APK files, and compressing them into the first picture file and the second picture file. Storage; Copy the dynamic library file to the library file directory of the decompressed APK file, and add the corresponding calling method of the dynamic library file of the APK program to the compiler code; recompile the processed compiler code into an executable file, replace the original executable file, compress and package the folder into a new APK file, and re-sign it. By encrypting and hiding APK resource files, the invention effectively prevents APK resources from being extracted at will, thereby improving the security of resource files.
【技术实现步骤摘要】
一种资源文件加密处理方法、智能终端及存储介质
本专利技术涉及计算机应用
,尤其涉及一种资源文件加密处理方法、智能终端及存储介质。
技术介绍
基于Android系统的APK(AndroidPackage,即Android安装包)文件是JavaJAR包格式的扩展,也是ZIP文件格式的扩展格式。APK文件以.apk为后缀,APK文件主要包含:代码、资源、签名文件等。具体而言,APK文件包含:AndroidManifest.xml,该文件用来声明应用程序的包名称、版本、组件和其他数据;classes.dex,该文件包含应用程序的可执行代码,该文件格式是DalvikVM的原生DES格式;resources.arsc,该文件是资源索引表,包含res下的各类资源,如字符串和类型等;assets,该目录下存放着资源文件,如数据库、字体文件、媒体文件、图片文件等;lib,该目录下存放着库文件;META-INF,该目录下存放着签名文件;res,该目录下存放着资源文件;和assets目录的差异是:res目录下的子目录是规定好的,除了raw子目录,其他的子目录都参与编译,这些子目录下的资源是通过编译出的R类在代码中访问,而assets目录下的资源子目录的建立则不受限制;assets目录下的资源访问是直接通过引用文件名。因此,不法分子可以通过windows的WinRAR或者linux的unizip就能直接将APK文件解压,轻而易举就可以提取上述任意类型目录、文件,由于APK文件中的资源文件可能包含图片资源、音视频资源、页面布局资源等核心技术,这些核心技术一旦泄露就会给个人或者 ...
【技术保护点】
1.一种资源文件加密处理方法,其特征在于,所述资源文件加密处理方法包括:编译生成APK程序的动态库文件,通过反射拦截安卓系统运行接口获取资源数据;将APK文件进行解压,将解压后的APK文件中的预设文件进行加密,压缩成第一图片文件和第二图片文件后进行存储;将动态库文件拷贝至解压后的APK文件中库文件目录下,并将APK程序的动态库文件对应的调用方法添加到编译器代码中;将处理完后的编译器代码进行回编译成可执行文件,并替换原始可执行文件,将文件夹进行压缩打包成新的APK文件,并重新签名。
【技术特征摘要】
1.一种资源文件加密处理方法,其特征在于,所述资源文件加密处理方法包括:编译生成APK程序的动态库文件,通过反射拦截安卓系统运行接口获取资源数据;将APK文件进行解压,将解压后的APK文件中的预设文件进行加密,压缩成第一图片文件和第二图片文件后进行存储;将动态库文件拷贝至解压后的APK文件中库文件目录下,并将APK程序的动态库文件对应的调用方法添加到编译器代码中;将处理完后的编译器代码进行回编译成可执行文件,并替换原始可执行文件,将文件夹进行压缩打包成新的APK文件,并重新签名。2.根据权利要求1所述的资源文件加密处理方法,其特征在于,所述编译生成APK程序的动态库文件,通过反射拦截安卓系统运行接口获取资源数据还包括:获取系统查找res目录下资源的关键函数,当系统找不到隐藏的资源时,从隐藏资源集合的资源压缩包进行查找,用于绕过系统对资源的检测。3.根据权利要求1所述的资源文件加密处理方法,其特征在于,所述第一图片文件为文件名为icon.png的图片文件,所述第二图片文件文件名为launcher.png的图片文件。4.根据权利要求3所述的资源文件加密处理方法,其特征在于,所述将APK文件进行解压,将解压后的APK文件中的预设文件进行加密,压缩成第一图片文件和第二图片文件后进行存储具体包括:将APK文件进行解压,将解压后的APK文件中库文件目录下的资源文件进行加密处理,并压缩成文件名为icon.png的图片文件;将解压后的APK文件中assets、raw和res目录下的资源文件进行加密处理,并压缩成文件名为launcher.png的图片文件;将文件名为icon.png的图片文件和文件名为launcher.png的图片文件放置于解压后的org/apache/文件夹目录...
【专利技术属性】
技术研发人员:龙柏林,廖兴龙,
申请(专利权)人:北京智游网安科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。