CN112286974A - Apk压缩存储、还原和检索方法及相关设备 - Google Patents

Apk压缩存储、还原和检索方法及相关设备 Download PDF

Info

Publication number
CN112286974A
CN112286974A CN202011542138.6A CN202011542138A CN112286974A CN 112286974 A CN112286974 A CN 112286974A CN 202011542138 A CN202011542138 A CN 202011542138A CN 112286974 A CN112286974 A CN 112286974A
Authority
CN
China
Prior art keywords
apk
file
database
information
content file
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
Application number
CN202011542138.6A
Other languages
English (en)
Inventor
徐国爱
高宇昊
徐国胜
王浩宇
聂煜晴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN202011542138.6A priority Critical patent/CN112286974A/zh
Publication of CN112286974A publication Critical patent/CN112286974A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本说明书一个或多个实施例提供一种APK压缩存储、还原和检索方法及相关设备,所述方法包括:将APK文件解压,对解压后的各类数据进行提取并分类储存,在用户需要时分类提取发送给用户,通过这种新型的Android APK规模化压缩存储与高效检索及样本还原机制,在解决APK文件庞大的数量以及较高的升级频率所带来的第三方库文件重复存储浪费巨额空间问题的同时,尽可能降低了系统的数据检索时间开销。

Description

APK压缩存储、还原和检索方法及相关设备
技术领域
本说明书一个或多个实施例涉及移动终端信息安全技术领域,尤其涉及一种APK压缩存储、还原和检索方法及相关设备。
背景技术
为了对Android操作系统中的恶意应用进行研究与分析,安全研究人员需要对Android应用进行存储,构建Android应用样本库,以研究其中的恶意应用特征以及其演变与家族特性等。现有的大多数样本库都是将APK文件完整地存储,再在数据库中存储它们的摘要信息。但是在构建样本库的过程中,也存在一些不容忽视的问题。例如,不同AndroidAPP的第三方库存储问题。第三方库是指在Android APP中所引用的第三方软件包,提供一些通用的软件功能,如网络通信、文件格式转换、媒体播放、加密解密等。不同的AndroidAPP可能引用相同的第三方库,这导致如果完整存储整个APK文件,其中的第三方库会被重复存储,这造成了存储空间的巨大浪费,使研究者对于Android应用新老版本变迁与家族特性等方面的研究变得困难。同时完整APK文件的存储还使得用户在仅需分析Android APP的部分数据时造成样本提取速度慢、浪费传输带宽等问题。
基于此,需要一种高效的存储机制,使建立的样本库能够完整追踪应用更新情况,面对Android应用庞大的数量以及较高的升级频率不会消耗巨大的存储空间,同时避免出现用户只针对APK文件中的某一部分进行研究而不需要整个APK文件时,需将APK文件取出并解包,消耗巨额时间的问题。
发明内容
有鉴于此,本说明书一个或多个实施例的目的在于提出一种APK压缩存储、还原和检索方法及相关设备。
基于上述目的,本说明书一个或多个实施例提供了一种APK压缩存储、还原和检索方法,包括:
将待存储APK文件解压,获得所述APK文件中的各类数据;
将所述各类数据按照APK元信息、APK内容文件信息、APK内容文件的分类存储到数据库中;
根据用户的需求,检索所述数据库,将APK文件数据提取出来发送给用户。
基于同一发明构思,本说明书一个或多个实施例还提供了一种APK压缩存储、还原和检索装置,包括:
解压模块,被配置为将待存储APK文件解压,获得所述APK文件中的各类数据;
储存模块,被配置为将所述各类数据按照APK元信息、APK内容文件信息、APK内容文件的分类存储到数据库中;
检索模块,被配置为根据用户的需求,检索所述数据库,将文件数据提取出来发送给用户。
基于同一发明构思,本说明书一个或多个实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任意一项所述的方法。
基于同一发明构思,本说明书一个或多个实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一所述方法。
从上面所述可以看出,本说明书一个或多个实施例提供的一种APK压缩存储、还原和检索方法及相关设备,将APK文件解压,对解压后的各类数据进行提取并分类储存,在用户需要时分类提取发送给用户,通过这种新型的Android APK规模化压缩存储与高效检索及样本还原机制,在解决APK文件庞大的数量以及较高的升级频率所带来的第三方库文件重复存储浪费巨额空间问题的同时,尽可能降低了系统的数据检索时间开销。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一个或多个实施例的APK压缩存储、还原和检索方法流程图;
图2为本说明书一个或多个实施例的APK文件分类储存方法流程图;
图3为本说明书一个或多个实施例的APK压缩存储、还原和检索方法系统框架示意图;
图4为本说明书一个或多个实施例的APK压缩存储、还原和检索装置结构示意图;
图5为本说明书一个或多个实施例的电子设备结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。 “包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。
如背景技术部分所述,现有的APP所使用的公共第三方库存储不能满足用户需要。申请人在实现本公开的过程中发现,现有的公共第三方库储存存在如下问题:不同的Android APP可能引用会使用相同的第三方库,这导致如果完整存储整个APK文件,其中的第三方库会被重复存储,这造成了存储空间的巨大浪费,同时也增加了使研究者对于Android应用新老版本变迁与家族特性等方面的研究变得困难难度。同时完整APK文件的存储还使得用户在仅需分析Android APP的部分数据时造成样本提取速度慢、浪费传输带宽。实际上,很多不同的APK文件具有相同的结构文件用以实现一些通用的软件功能,例如网络通信、文件格式转换、媒体播放和加密解密。
有鉴于此,本说明书一个或多个实施例提供了一种APK压缩存储、还原和检索方案,具体的,首先该存储系统将Android APK应用数据预先提取,按照APK文件的各类数据结构分类进行存储,保证不同APK样本中的重复文件不会被重复存储,最后根据用户的需求检索数据库,将用户需要的文件数据发送给用户。
可见,本说明书一个或多个实施例的APK压缩存储、还原和检索方案,基于APK内部文件的不同结构,对属于不同类型的文件分类进行储存,并在需要的时候分类进行提取。避免对完整APK的提取,从而大幅提高提取速度、节约了提取时间与所需传输数据量。
以下,通过具体的实施例来详细说明本说明书一个或多个实施例的技术方案。
参考图1,本说明书一个实施例的APK压缩存储、还原和检索方法,包括以下步骤:
步骤S101、将待存储APK文件解压,获得所述APK文件中的各类数据。
本实施例中,为了对APK中所保存的各类APP信息进行提取,需要对APK包进行解压,得到APK包中的各类结构后进行后续分析。传统的安卓应用以APK包形式存在,不管是使用Java语言编写的还是Java语言和C/C++语言共同编写的项目,最终都需要进行编译,打包生成.apk文件才能在Android系统上运行。应用程序的代码通常保存在包内的dex文件和so库文件当中。两种格式的文件分别是保存的是Dalvik代码以及ARM的汇编代码。其中Dalvik代码由Dalvik虚拟机负责解释和运行,而ARM的汇编代码则运行在Native层,两者之间通过JNI机制进行协同运行。
APK文件中的数据包括:
res:存放图片等资源文件夹。
META-INF:存储签名的文件,其中共有三个文件:CERT.RSA,CERT.SF,MANIFEST.MF。MANIFEST.MF:保存各未见摘要的信息。CERT.SF:开发者私钥相关签名。CERT.RSA:包签名与密钥信息等。
lib:so库文件目录。
AndroidManifest.xml:应用核心文件之一,描述了包中的全局数据。
classes.dex:Android应用中的主要可执行程序。
resources.arsc:编译后的二进制资源文件。
步骤S102、将所述各类数据按照APK元信息、APK内容文件信息、APK内容文件的分类存储到数据库中。
本实施例中,所述APK元信息指的是APK的基本信息,包括APK的报名、文件hash、应用名、版本、开发者签名、包含的内容文件列表等元数据。该部分信息以数据库形式存储,形成APK元信息数据库,其中内容文件列表中的每项对应APK内容文件信息数据库中的一条。所述APK内容文件包括APK中的所包含的dex代码文件、so库文件、图片等资源文件,APK内容文件以原始文件的形式储存在内容文件数据库中。将APK内容文件的列表(列表中每项包含一条APK内容文件的数据,包括文件名、来源、文件hash、原始文件的存储位置等)定义为APK内容文件信息。该部分信息以数据库形式存储,形成APK内容文件信息数据库,该数据库中的每条记录对应一个APK内容文件的原始文件,仅被存储一次,但是对应了APK元信息数据库中的多个APK元信息中的内容文件条目。
具体的,在本说明书的一些实施例中,对上述APK元信息、APK内容文件信息、APK内容文件的分类存储具体可以参考图2所示的流程,具体可以包括:
步骤S201、检测所述文件hash值是否存在于元信息数据库中。
本步骤中,hash值是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,散列值的空间通常远小于输入的空间,简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。消息摘要具有通过摘要无法推算得出消息本身和很难找到两种摘要相同的不同文件的特点。Hash值由于具有以上特点,常被用来作为文件的唯一标识。目前在Android中常用的hash算法有SHA1和SHA256。
步骤S202、若所述元信息数据库中存在所述文件hash值,则所述内容文件数据库已经储存所述APK文件,所述内容文件数据库不再储存所述文件。
步骤S203、若所述元信息数据库中不存在所述文件hash值,则将所述APK文件元信息存储于所述元信息数据库中。
步骤S204、检测所述文件hash值是否存在于所述内容文件信息数据库中。
步骤S205、若所述内容文件信息数据库中存在所述文件hash值,则所述内容文件已经储存在所述内容文件数据库中,将所述内容文件在所述内容文件数据库中的引用存入所述元信息数据库中。
步骤S206、若所述内容文件信息数据库中不存在所述文件hash值,则将所述APK内容文件存储在内容文件数据库中。
步骤S207、将所述APK内容文件在内容文件数据库中的引用存入所述内容文件信息数据库中。
步骤S208、将所述内容文件在内容文件数据库中的引用存入所述元信息数据库中。
步骤S103、根据用户的需求,检索所述数据库,将文件数据提取出来发送给用户。
具体的,在本说明书的一些实施例中,当使用者需要查询存储系统中所存储的某个Android应用信息进行浏览或粗粒度研究时,此时不需要得到原始APK文件,直接进行APK元信息数据库的检索,系统可以借助数据库,快速检索出使用者所关注的信息,如Android应用的基本信息、其内容文件的具体信息和使用情况以及Android应用中所包含的内容文件等,无需对APK进行重构,只将检索结果发送给用户。同时得益于已经对APK数据进行了数据库保存,检索效率相比直接通过原始APK进行数据提取具有较大的优势。当使用者需要对APK中的代码或内容文件进行研究使用时,存储系统直接将分散存储的内容进行提取,直接给出用户所需的部分。也无需重构APK,同时节约了用户从原始APK解压内容的过程。当使用者需要对APK进行安装或其他一些需要对其完整APK进行分析的操作时,需要重新得到原始的APK文件,此时存储系统需要对提取的APK进行重构。
为了重构原始APK,存储系统首先需要在的APK元信息数据库、APK内容文件数据库中检索得到APK的基本信息与组件信息,包括APK的文件结构、压缩参数、其内容文件在文件库中的位置等。之后将该APK所包含的所有内容文件从数据库中提取出来,并根据数据库中所记录的文件结构信息,重新将其重组为APK文件。此时得到的APK即为原始APK。
作为一个可选的实施例,其系统框架如图3所示:
待储存APK样本经过APK解压与信息提取得到该APK样本的所有数据,将该APK样本的所有数据去重之后存储在与不同类型数据对应的元信息数据库、内容文件信息数据库和内容文件数据库中。当用户需要该APK文件的某些数据时,提取相应的数据文件发送给用户;当用户需要该APK文件时,将APK包含的所有组件从数据库中提取出来,根据数据库中记录的文件结构信息,重新将所述所有组件打包为APK文件发送给用户。
可见,在上述实施例中,通过引入APK公共文件库(如第三方库等)合并存储的概念到APK大规模存储机制中,从而提出一种Android APK规模化压缩存储与高效检索及样本还原机制,为实现APK的规模化压缩存储与APK信息和样本的高效检索,将Android应用数据预先提取,按照APK元信息、APK内容文件信息、APK内容文件的分类进行存储,保证不同APK样本中的重复文件不会被重复存储,当用户不需要完整APK时能够对APK文件的基本信息或部分文件数据进行提取,避免对完整APK的提取,从而大幅提高了Android APK规模化存储的空间效率,信息检索的时间效率。
需要说明的是,本说明书一个或多个实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本说明书一个或多个实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
基于同一发明构思,本说明书一个或多个实施例还提供了一种APK压缩存储、还原和检索装置。参考图4,所述的APK压缩存储、还原和检索装置,包括:
解压模块401,被配置为将待存储APK文件解压,获得所述APK文件中的各类数据。
储存模块402,被配置为将所述各类数据按照APK元信息、APK内容文件信息、APK内容文件的分类存储到数据库中。
检索模块403,被配置为根据用户的需求,检索所述数据库,将文件数据提取出来发送给用户。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述任一实施例中相应的APK压缩存储、还原和检索方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本说明书一个或多个实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的APK压缩存储、还原和检索方法。
图5示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图, 该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线 1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述任一实施例中相应的APK压缩存储、还原和检索方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本说明书一个或多个实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的APK压缩存储、还原和检索方法。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的APK压缩存储、还原和检索方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本说明书一个或多个实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本说明书一个或多个实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (9)

1.一种APK压缩存储、还原和检索方法,其特征在于,包括:
将待存储APK文件解压,获得所述APK文件中的各类数据;
将所述各类数据按照APK元信息、APK内容文件信息、APK内容文件的分类存储到数据库中;
根据用户的需求,检索所述数据库,将APK文件数据提取出来发送给用户。
2.根据权利要求1所述的方法,其特征在于,所述将待存储APK文件解压,获得所述APK文件中的各类数据,包括:
属于Android应用信息的所述APK元信息,包括APK的报名、文件hash值、应用名、版本、开发者签名和包含的内容文件列表;所述APK内容文件信息,包括APK内容文件的文件名、文件hash值和APK内容文件的位置;所述APK内容文件,包括dex代码文件、so库文件和图片。
3.根据权利要求2所述的方法,其特征在于,所述数据库包括元信息数据库、内容文件信息数据库和内容文件数据库。
4.根据权利要求3所述的方法,其特征在于,所述将所述各类数据按照APK元信息、APK内容文件信息、APK内容文件的分类存储到数据库中,包括:
检测所述文件hash值是否存在于元信息数据库中,若所述元信息数据库中存在所述文件hash值,则所述内容文件数据库已经储存所述APK文件,所述内容文件数据库不再储存所述文件;
若所述元信息数据库中不存在所述文件hash值,则将所述APK文件元信息存储于所述元信息数据库中;检测所述文件hash值是否存在于所述内容文件信息数据库中,若所述内容文件信息数据库中存在所述文件hash值,则所述内容文件已经储存在所述内容文件数据库中,将所述内容文件在所述内容文件数据库中的引用存入所述元信息数据库中;若所述内容文件信息数据库中不存在所述文件hash值,则将所述APK内容文件存储在内容文件数据库中,将所述APK内容文件在内容文件数据库中的引用存入所述内容文件信息数据库中,将所述内容文件在内容文件数据库中的引用存入所述元信息数据库中。
5.根据权利要求4所述的方法,其特征在于,所述根据用户的需求,检索所述数据库,将文件数据提取出来发送给用户,包括:
当用户需要查询存储系统中所存储的某个Android应用信息进行浏览或粗粒度研究时,检索所述元信息数据库,得到所述元信息数据库中存储的所述Android应用信息,包括Android应用的基本信息、其内容文件的具体信息、使用情况和Android应用中所包含的内容文件,将检索结果发送给用户;
当用户需要对APK中的代码或内容文件进行研究使用时,直接检索所述APK中的代码或内容文件,所述数据库将分散储存的所述APK中的代码或内容文件进行提取,发送给用户;
当用户需要对APK进行安装或对完整APK进行分析时,所述数据库将数据库中所述APK的所有组件数据进行组合重构,重新打包为APK文件发送给用户。
6.根据权利要求5所述的方法,其特征在于,所述数据库将数据库中所述APK的所有组件数据进行组合重构,包括:
通过所述APK文件hash值在所述元信息数据库和内容文件信息数据库中检索,得到所述APK的所有组件信息,包括APK的文件结构、压缩参数、内容文件在数据库的位置;
将所述APK包含的所有组件从数据库中提取出来,根据数据库中记录的文件结构信息,重新将所述所有组件打包为APK文件。
7.一种APK压缩存储、还原和检索装置,其特征在于,包括:
解压模块,被配置为将待存储APK文件解压,获得所述APK文件中的各类数据;
储存模块,被配置为将所述各类数据按照APK元信息、APK内容文件信息、APK内容文件的分类存储到数据库中;
检索模块,被配置为根据用户的需求,检索所述数据库,将文件数据提取出来发送给用户。
8.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任意一项所述的方法。
9.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行权利要求1至6任一所述方法。
CN202011542138.6A 2020-12-24 2020-12-24 Apk压缩存储、还原和检索方法及相关设备 Pending CN112286974A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011542138.6A CN112286974A (zh) 2020-12-24 2020-12-24 Apk压缩存储、还原和检索方法及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011542138.6A CN112286974A (zh) 2020-12-24 2020-12-24 Apk压缩存储、还原和检索方法及相关设备

Publications (1)

Publication Number Publication Date
CN112286974A true CN112286974A (zh) 2021-01-29

Family

ID=74425977

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011542138.6A Pending CN112286974A (zh) 2020-12-24 2020-12-24 Apk压缩存储、还原和检索方法及相关设备

Country Status (1)

Country Link
CN (1) CN112286974A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116166472A (zh) * 2023-03-01 2023-05-26 上海威固信息技术股份有限公司 一种用于存储数据的数据恢复方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140030989A (ko) * 2012-09-04 2014-03-12 주식회사 인프라웨어테크놀러지 안드로이드 운영체제에서 apk 파일의 시그니처 추출 방법, 그리고 이를 위한 컴퓨터로 판독가능한 기록매체
CN106341480A (zh) * 2016-09-20 2017-01-18 北京奇虎科技有限公司 数据包的上传方法及装置
CN106446138A (zh) * 2016-09-20 2017-02-22 北京奇虎科技有限公司 数据包的存储方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140030989A (ko) * 2012-09-04 2014-03-12 주식회사 인프라웨어테크놀러지 안드로이드 운영체제에서 apk 파일의 시그니처 추출 방법, 그리고 이를 위한 컴퓨터로 판독가능한 기록매체
CN106341480A (zh) * 2016-09-20 2017-01-18 北京奇虎科技有限公司 数据包的上传方法及装置
CN106446138A (zh) * 2016-09-20 2017-02-22 北京奇虎科技有限公司 数据包的存储方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116166472A (zh) * 2023-03-01 2023-05-26 上海威固信息技术股份有限公司 一种用于存储数据的数据恢复方法及系统
CN116166472B (zh) * 2023-03-01 2024-04-16 上海威固信息技术股份有限公司 一种用于存储数据的数据恢复方法及系统

Similar Documents

Publication Publication Date Title
JP6521403B2 (ja) サービスとしての効率的なデータ圧縮及び分析
CN110147239B (zh) 游戏安装包体的多重压缩的方法、设备及存储介质
CN112685433B (zh) 元数据更新方法、装置、电子设备及计算机可读存储介质
US20130067237A1 (en) Providing random access to archives with block maps
US20090037386A1 (en) Computer file processing
US20090254575A1 (en) Apparatus and method for manipulating nested archive files and folders
US9043469B2 (en) Cache control for web application resources
CN110362547B (zh) 日志文件的编码、解析、存储方法和装置
KR101614070B1 (ko) 무선 휴대 장치 부팅 방법 및 무선 휴대 장치
CN113553300B (zh) 文件的处理方法、装置、可读介质和电子设备
US10855750B2 (en) Centralized management of webservice resources in an enterprise
US9201754B2 (en) Recording application consumption details
CN111107133A (zh) 差异包的生成方法、数据更新方法、装置和存储介质
CN112286974A (zh) Apk压缩存储、还原和检索方法及相关设备
CN114553858A (zh) 一种资源预下载的方法、装置以及设备
US8984028B2 (en) Systems and methods for storing data and eliminating redundancy
CN111143310B (zh) 日志记录方法及装置、可读存储介质
CN115080114B (zh) 应用程序的移植处理方法、装置和介质
Blyth et al. ProIO: An event-based I/O stream format for protobuf messages
CN110633083A (zh) 代码文件处理方法、装置、电子设备及计算机可读介质
Ko et al. Cloud evidence tracks of storage service linking with iOS systems
Carbone et al. Generating computer forensic super-timelines under Linux
CN112905575A (zh) 数据采集的方法、系统、存储介质及电子设备
CN112099840A (zh) 应用程序包中的特征提取方法及设备
CN113505153B (zh) 一种基于iOS系统的备忘录备份方法和相关设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for 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: 20210129