CN102937926A - 一种恢复移动终端已删除sqlite文件的方法及装置 - Google Patents
一种恢复移动终端已删除sqlite文件的方法及装置 Download PDFInfo
- Publication number
- CN102937926A CN102937926A CN2012104300260A CN201210430026A CN102937926A CN 102937926 A CN102937926 A CN 102937926A CN 2012104300260 A CN2012104300260 A CN 2012104300260A CN 201210430026 A CN201210430026 A CN 201210430026A CN 102937926 A CN102937926 A CN 102937926A
- Authority
- CN
- China
- Prior art keywords
- page
- sqlite
- search
- mobile terminal
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1435—Saving, restoring, recovering or retrying at system level using file system or storage system metadata
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Library & Information Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种恢复移动终端已删除sqlite文件的方法和装置,本发明提供的方法预先设置若干种sqlite页特征规则,当检测到移动终端时,执行步骤:获取当前移动终端的镜像文件;解析当前移动终端的镜像文件并设置搜索区域;根据搜索区域内的数据特征调用至少一种预先设置的sqlite页特征规则,以sqlite页特征规则作为匹配依据对搜索区域内的数据进行匹配,获得当前移动终端上已删除的sqlite文件页碎片;最后对当前移动终端上已删除的sqlite文件页碎片内的数据进行解码。本发明提供的方案可获取移动终端上所有已删除sqlite文件未被覆盖的页碎片内有效数据,恢复成功率及恢复完整性高。
Description
技术领域
本发明涉及数据恢复技术领域,尤其涉及一种恢复移动终端已删除sqlite文件的方法及装置。
背景技术
电子数据恢复是指通过技术手段,将原保存在台式机硬盘、笔记本硬盘、服务器硬盘、存储磁带库、移动硬盘、数码存储卡等存储介质上且已经丢失的电子数据进行抢救和恢复的技术。在于电子数据取证中,数据恢复的作用尤其重要。
目前,针对iOS移动智能终端,在电子数据取证过程中,经常碰到由于用户删除了设备上的QQ、飞信、微博等应用程序而导致取证时无法获取用户的联系人、聊天记录等信息的问题。这些数据大都存储在sqlite文件中,iOS从文件系统恢复的文件数量有限。
目前,对于一般的虽损坏但还能正常开机运行的移动终端,可以通过移动终端提供的通讯协议提取相关数据存储文件,进而对已删除文件进行数据恢复,但是这种方法只能恢复还保存在存储文件中的数据,比如对于用户使用常规方法执行的记录删除动作而言,这些已删除的记录只是被标记为删除状态,但实际上该记录还保存在用于保存记录的原文件里,因此通过移动终端提供的通讯协议提取相关数据存储文件的这种恢复方法正确恢复数据的前提是用于保存记录的原文件未被删除。显然,对于数据文件本身的应用程序已被卸载或目标文件已被其他辅助通讯工具删除的情况,目标文件无法恢复。
发明内容
本发明提供一种恢复移动终端已删除sqlite文件的方法及装置,用于解决现有技术中无法恢复移动终端上已被卸载的应用程序的sqlite文件数据的问题,本发明提供的恢复已删除sqlite文件的方法及装置可获取移动终端上所有已删除sqlite文件未被覆盖的页碎片内有效数据,具有恢复成功率高及恢复完整性高的特点。
本发明提供的一种恢复移动终端已删除sqlite文件的方法,包括:预先设置若干种sqlite页特征规则,当检测到移动终端时,执行以下步骤:首先,获取当前移动终端的镜像文件;随后,解析所述当前移动终端的镜像文件,并设置搜索区域;接着根据所述搜索区域内的数据特征调用至少一种预先设置的sqlite页特征规则,以所述sqlite页特征规则作为匹配依据对所述搜索区域内的数据进行匹配,获得当前移动终端上已删除的sqlite文件页碎片;最后,对当前移动终端上已删除的sqlite文件页碎片内的数据进行解码,恢复当前移动终端已删除的sqlite文件数据。
优选地,上述方法中,所述解析当前移动终端的镜像文件,并设置搜索区域,包括:判断是否能够解析当前移动终端的镜像文件?若是,则获取当前移动终端的镜像文件的未分配簇区域,并将所述当前移动终端的镜像文件的未分配簇区域作为搜索区域;否则将当前移动终端的全镜像文件作为搜索区域。
优选地,上述方法中,在所述根据所述搜索区域内的数据特征调用至少一种预先设置的sqlite页特征规则,以所述sqlite页特征规则作为匹配依据对所述搜索区域内的数据进行匹配,获得当前移动终端上已删除的sqlite文件页碎片之前,还包括步骤:设置大小为sqlite页大小的搜索块。此时所述以sqlite页特征规则作为匹配依据对所述搜索区域内的数据进行匹配,包括:以所述搜索块为单位将所述搜索区域分块,分别以被调用的每个sqlite页特征规则为匹配依据、按照预定搜索顺序对搜索区域内的所有搜索块内的数据进行匹配。
优选地,上述方法中,对于被调用的每个sqlite页特征规则,所述按照预定搜索顺序对搜索区域内的所有搜索块内的数据进行匹配包括:
步骤A:按照所述预定搜索顺序扫描第一个搜索块;
步骤B:判断当前搜索块的头部特征是否是当前被调用的sqlite页特征规则所指定的sqlite页头特征?若是,则执行步骤C;否则执行步骤E;
步骤C:判断当前搜索块内的数据是否能和当前被调用的sqlite页特征规则所指定的数据特征相匹配,如果输出当前搜索块内数据,并执行步骤D,否则执行步骤E;
步骤D:判断搜索区域内的全部搜索块是否都已按照所述预定搜索顺序匹配完成?若是,则结束针对当前被调用的sqlite页特征规则的数据匹配流程;否则,执行步骤E;
步骤E:按照所述预定搜索顺序扫描下一个搜索块,将所述下一个搜索块作为当前搜索块,并返回执行步骤B。
优选地,上述方法中,所述对当前移动终端上已删除的sqlite文件页碎片内的数据进行解码,恢复当前移动终端已删除的sqlite文件数据,包括:对所述当前移动终端已删除的sqlite文件页碎片内的有用信息进行解码,并识别解码后各有用信息之间的关联关系,得到有效数据信息。其中,所述有用信息包括已删除的sqlite文件页碎片内的表、字段和记录信息;所述有效数据信息包括已删除的sqlite文件页碎片内未被覆盖的数据库管理信息和数据库数据。
本发明实施例还提供一种恢复移动终端已删除sqlite文件的装置,包括:镜像获取单元、镜像解析单元、页规则调用单元、第一页规则匹配单元、第二页规则匹配单元、…、第N页规则匹配单元和sqlite解析单元;所述N为大于等于2的正整数;所述第一页规则匹配单元至第N页规则匹配单元中的每个页规则匹配单元内预先存储有一种sqlite页特征规则,且所述第一页规则匹配单元至第N页规则匹配单元中的任意两个页规则匹配单元中存储的sqlite页特征规则不同;所述镜像获取单元用于获取当前移动终端的镜像文件并将其提供给所述镜像解析单元;所述镜像解析单元用于解析所述当前移动终端的镜像文件,设置搜索区域,并将所述当前移动终端的镜像文件以及所设置的搜索区域提供给所述页规则调用单元;所述页规则调用单元用于根据所述搜索区域内的数据特征调用所述第一页规则匹配单元至第N页规则匹配单元中的至少一个页规则匹配单元,并将所述搜索区域提供给被调用的各页规则匹配单元;被所述页规则调用单元调用的各页规则匹配单元用于以自身所存储的sqlite页特征规则作为匹配依据对所述搜索区域内的数据进行匹配,获得当前移动终端上已删除的一种sqlite文件页碎片并提供给所述sqlite解析单元;所述sqlite解析单元用于对收到的所有当前移动终端上已删除的sqlite文件页碎片内的数据进行解码,恢复当前移动终端已删除的sqlite文件数据。
优选地,当所述镜像解析单元支持解析所述当前移动终端的镜像文件时,所述镜像解析单元获取当前移动终端的镜像文件的未分配簇区域,并将所述当前移动终端的镜像文件的未分配簇区域设置为所述搜索区域;当所述镜像解析单元不支持解析所述当前移动终端的镜像文件时,所述镜像解析单元将当前移动终端的全镜像文件设置为所述搜索区域。
优选地,所述镜像解析单元还用于设置大小为当前移动终端的系统文件块大小的搜索块,并将所设置的搜索块提供给所述页规则调用单元;所述页规则调用单元还用于将收到的所述搜索块提供给被调用的各页规则匹配单元;被所述页规则调用单元调用的各页规则匹配单元首先用于以所述搜索块为单位将所述搜索区域分块,然后分别以自身所存储的sqlite页特征规则为匹配依据、按照预定搜索顺序对搜索区域内的所有搜索块内的数据进行匹配。
优选地,所述sqlite解析单元进一步用于对当前移动终端上已删除的sqlite文件页碎片内的有用信息进行解码,得到有效数据信息;所述有用信息包括已删除的sqlite文件页碎片内的表、字段和记录信息;所述有效数据信息包括已删除的sqlite文件页碎片内未被覆盖的数据库管理信息和数据库数据。
与现有技术相比,本发明提供的技术方案基于移动终端镜像文件对已被卸载的应用程序的sqlite文件进行文件页碎片恢复,该方案不仅限于sqlite文件已删除的情况,可获取所有已删除sqlite文件未被覆盖的页碎片内有效数据,具有恢复成功率高、恢复更完整的特点。
附图说明
图1是本发明实施例提供的一种恢复移动终端已删除sqlite文件的方法流程图;
图2是采用本发明提供的方法搜索某移动终端镜像文件的未分配簇区域得到的bree页示例;
图3是本发明实施例提供的一种恢复移动终端已删除sqlite文件的装置结构示意图;
图4A是某个移动终端删除sqlite文件前该文件内的部分数据示意;
图4B是将图4A所示移动终端的sqlite文件删除后采用本发明提供的方案恢复的对应于图4A所示部分的sqlite文件数据。
具体实施方式
以下结合附图,具体说明本发明实施例。
图1所示为本发明实施例提供的一种恢复移动终端已删除sqlite文件的方法流程图,包括:
S1:获取当前移动终端的镜像文件。若此步骤中无法获取当前移动终端镜像文件,则直接结束流程。
S2:解析当前移动终端的镜像文件,并设置搜索区域。此步骤中,首先判断是否能够采用预先设置的解析方法解析当前移动终端的镜像文件?若是,则获取当前移动终端的镜像文件的未分配簇区域,并将当前移动终端的镜像文件的未分配簇区域作为搜索区域;否则,将当前移动终端的全镜像文件作为搜索区域。所述当前移动终端的全镜像文件即为当前移动终端的整个镜像文件。
S3:根据上一步骤中设置好的搜索区域内的数据特征调用至少一种预先设置的sqlite页特征规则,以所述sqlite页特征规则作为匹配依据对搜索区域内的数据进行匹配,获得当前移动终端上已删除的sqlite文件页碎片。其中,每种sqlite页特征规则对应于一种特定类型的sqlite文件页碎片,即任意两种sqlite页特征规则能够从搜索区域内匹配出的sqlite文件页碎片的类型不同。若S2中设置的搜索区域为当前移动终端镜像文件的未分配簇区域,则根据所述预先设置的sqlite页特征规则,对当前移动终端镜像文件的未分配簇区域内的数据进行已删除的sqlite文件页碎片匹配;若S2中设置的搜索区域为当前移动终端的全镜像文件,则根据所述预先设置的sqlite页特征规则,对当前移动终端的全镜像文件内的数据进行已删除的sqlite文件页碎片匹配。
S4:对当前移动终端上已删除的sqlite文件页碎片内的数据进行解码,恢复当前移动终端已删除的sqlite文件数据。
显然,在图1所示方法开始执行之前,需要先检测到需要恢复sqlite文件的移动终端时,才能执行图1所示的方法。
较佳地,上述恢复已删除sqlite文件的方法中,S3之前还包括步骤:根据当前移动终端系统文件块大小设置搜索块的大小。其中,由于默认情况下移动终端的文件系统块大小是sqlite页大小的整数倍,因此将搜索块的大小设置为sqlite页大小。此时S3具体包括:以搜索块为单位将搜索区域分块,分别以被调用的每个sqlite页特征规则为匹配依据对搜索区域内的各搜索块内的数据进行分块匹配,获得当前移动终端上已删除的sqlite文件页碎片。其中,对搜索区域内的数据进行分块匹配的搜索顺序根据预先设置的搜索顺序进行,例如,可对搜索区域内的数据采用步进式的分块搜索方法进行匹配,步进式的分块搜索方法即:假设搜索区域包括2个未分配簇区域,每个未分配簇区域大小为1024字节,搜索块大小设置为512字节,则搜索区域被分为4个搜索块,对于当前被调用的sqlite页特征规则而言,按照预定搜索顺序,依次对搜索区域内的所有搜索块内的数据进行匹配。搜索顺序根据具体需要设置,不仅限于步进式,此处不再多做描述。
具体分块匹配流程为:
步骤A:按照预定搜索顺序扫描第一个搜索块;
步骤B:对于当前搜索块内的数据,首先判断当前搜索块的头部特征是否是当前被调用的sqlite页特征规则所指定的sqlite页头特征,若是,则执行步骤C;若不是,则执行步骤E。
步骤C:判断当前搜索块内的数据是否能和当前被调用的sqlite页特征规则所指定的数据特征相匹配,若是,则输出当前搜索块内数据,并执行步骤D,否则执行步骤E。
步骤D:判断搜索区域内的全部搜索块是否都已按照所述预定搜索顺序匹配完成?若是,则结束针对当前被调用的sqlite页特征规则的数据匹配流程,得到由搜索区域内的若干个搜索块内的数据所组成的针对当前被调用的sqlite页特征规则的已删除的sqlite文件页碎片;否则,执行步骤E;
步骤E:按照所述预定搜索顺序跳至扫描下一个搜索块,将所述下一个搜索块作为当前搜索块,并返回执行步骤B。
上述流程中,由于步骤B中判断出的当前搜索块内的数据的头部特征和当前被调用的sqlite页特征规则的sqlite页头特征一样并不代表对应于该头部特征的数据就是sqlite页数据,这些数据还可能是其他文件类型的碎片(例如也可能是doc、png、excel等各种文件类型的碎片)数据,因此若当前搜索块内的数据的头部特征是当前sqlite页特征规则所指定的sqlite页头特征,则需要如步骤C所述进一步判断当前搜索块内对应于该头部特征的数据的特征是否能和当前被调用的sqlite页特征规则所指定的数据特征相匹配,若对应于该头部特征的数据的特征能和当前被调用的sqlite页特征规则所指定的数据特征相匹配,则该头部特征及与其对应的所有数据组成一个sqlite文件页碎片。例如:S3中需要获取的sqlite文件页碎片的类型主要是针对btree叶子页,因为btree页是sqlite文件中真正存储数据的页。具体地,如下表1所示:在btree页的页头里会标注btree页的类型:
表1
偏移 | 大小 | 描述 |
0 | 1 | btree页类型标志位,其中,2:内部键值页, 5:内部表页, 10:叶子键值页,13:叶子表页,除此之外,其他值非法。 |
1 | 2 | 第1个自由块的偏移量 |
3 | 2 | 页内单元数 |
5 | 2 | 单元内容起始位置 |
7 | 1 | 碎片的字节数 |
8 | 4 | 最右儿子的页号(只对内部页有效,叶子页无此字段) |
因此,在采用设置好的搜索块对当前移动终端镜像文件的未分配簇区域或对当前移动终端全镜像文件进行页碎片匹配时,btree页的页头大都位于第一搜索块起始位置,当获取到满足btree页头属性的第一搜索块内容后,按照预先设置的顺序继续对满足当前btree页头属性的第一搜索块后面的数据进行进一步的以搜索块为单元的数据确认,最终能够判断出这段区域的数据是否是合法的btree页。其他类型的页的匹配方法类似于btree页的匹配方法,此处不再赘述。图2所示为采用本发明提供的方法搜索某移动终端镜像文件的未分配簇区域得到的bree页示例。
优选地,上述步骤S4具体包括:对当前移动终端上已删除的sqlite文件页碎片内的数据中的有用信息进行解码,并识别解码后各有用信息之间的关联关系,得到有效数据信息。其中,有用信息包括已删除的sqlite文件页碎片内的表、字段和记录信息;有效数据信息包括已删除的sqlite文件页碎片内未被覆盖的数据库管理信息和数据库数据。此处获取的数据信息是提供给后续sqlite文件的数据重组中使用,由于本发明目的在于提供一种恢复移动终端上已删除的sqlite文件的方案,而不是提供采用已恢复的sqlite文件进行重组的过程,因此此处对于采用本发明提供的方案获取的移动终端已删除的sqlite文件数据的用途不再多做描述。
对应于本发明实施例提供的上述方法,本发明实施例还提供一种恢复移动终端已删除sqlite文件的装置,如图3所示,该装置包括:镜像获取单元31、镜像解析单元32、页规则调用单元33、第一页规则匹配单元41、第二页规则匹配单元42、…、第N页规则匹配单元4N和sqlite解析单元34;其中,N为大于等于2的正整数;第一页规则匹配单元41至第N页规则匹配单元4N中的每个页规则匹配单元内预先存储有一种sqlite页特征规则,且第一页规则匹配单元41至第N页规则匹配单元4N中的任意两个页规则匹配单元中存储的sqlite页特征规则不同。
镜像获取单元31用于获取当前移动终端的镜像文件并将其提供给镜像解析单元32。镜像解析单元32用于解析当前移动终端的镜像文件,设置搜索区域,并将当前移动终端的镜像文件以及所设置的搜索区域提供给页规则调用单元33;其中,当镜像解析单元32支持解析当前移动终端的镜像文件时,镜像解析单元32获取当前移动终端的镜像文件的未分配簇区域,并将当前移动终端的镜像文件的未分配簇区域设置为搜索区域;当镜像解析单元32不支持解析当前移动终端的镜像文件时,镜像解析单元32将当前移动终端的全镜像文件设置为搜索区域。页规则调用单元33用于根据搜索区域内的数据特征调用第一页规则匹配单元41至第N页规则匹配单元4N中的至少一个页规则匹配单元,并将所述搜索区域提供给被调用的各页规则匹配单元。被页规则调用单元调用的各页规则匹配单元用于以自身所存储的sqlite页特征规则作为匹配依据对搜索区域内的数据进行匹配,获得当前移动终端上已删除的一种sqlite文件页碎片并提供给sqlite解析单元34。sqlite解析单元34用于对收到的所有当前移动终端上已删除的sqlite文件页碎片内的数据进行解码,恢复当前移动终端已删除的sqlite文件数据。
优选地,镜像解析单元32还用于设置大小为sqlite页大小的搜索块,并将所设置的搜索块提供给页规则调用单元33;页规则调用单元33还用于将收到的搜索块提供给被调用的各页规则匹配单元;被调用的各页规则匹配单元首先用于以搜索块为单位将搜索区域分块,然后分别以自身所存储的sqlite页特征规则为匹配依据、按照预定搜索顺序对搜索区域内的所有搜索块内的数据进行匹配。
优选地, sqlite解析单元34进一步用于对当前移动终端上已删除的sqlite文件页碎片内的有用信息进行解码,得到有效数据信息;所述有用信息包括已删除的sqlite文件页碎片内的表、字段和记录信息;所述有效数据信息包括已删除的sqlite文件页碎片内未被覆盖的数据库管理信息和数据库数据。
图4A为某个移动终端删除sqlite文件前该文件内的部分数据,图4B为将图4A所示移动终端的sqlite文件删除后采用本发明提供的方案恢复的对应于图4A所示部分的sqlite文件数据。可见,采用本发明实施例提供的方案能够完整恢复移动终端上已删除的sqlite文件内的数据。
本发明实施例提供的上述恢复已删除sqlite文件的方案适用于采用sqlite数据库存储数据的任何智能移动终端的数据恢复。该方案基于移动终端镜像文件对已被卸载的应用程序的sqlite文件进行文件页碎片恢复,该方案不仅限于sqlite文件已删除的情况,可获取所有已删除sqlite文件未被覆盖的页碎片内有效数据,具有恢复成功率高和恢复完整性高的优点,具有很强的适用性。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (9)
1.一种恢复移动终端已删除sqlite文件的方法,其特征在于,预先设置若干种sqlite页特征规则,当检测到移动终端时,执行以下步骤:
获取当前移动终端的镜像文件;
解析所述当前移动终端的镜像文件,并设置搜索区域;
根据所述搜索区域内的数据特征调用至少一种预先设置的sqlite页特征规则,以所述sqlite页特征规则作为匹配依据对所述搜索区域内的数据进行匹配,获得当前移动终端上已删除的sqlite文件页碎片;
对当前移动终端上已删除的sqlite文件页碎片内的数据进行解码,恢复当前移动终端已删除的sqlite文件数据。
2.如权利要求1所述的一种恢复移动终端已删除sqlite文件的方法,其特征在于,所述解析当前移动终端的镜像文件,并设置搜索区域,包括:判断是否能够解析当前移动终端的镜像文件?若是,则获取当前移动终端的镜像文件的未分配簇区域,并将所述当前移动终端的镜像文件的未分配簇区域作为搜索区域;否则将当前移动终端的全镜像文件作为搜索区域。
3.如权利要求1或2所述的一种恢复移动终端已删除sqlite文件的方法,其特征在于,在所述根据所述搜索区域内的数据特征调用至少一种预先设置的sqlite页特征规则,以所述sqlite页特征规则作为匹配依据对所述搜索区域内的数据进行匹配,获得当前移动终端上已删除的sqlite文件页碎片之前,还包括步骤:设置大小为sqlite页大小的搜索块;
所述以sqlite页特征规则作为匹配依据对所述搜索区域内的数据进行匹配,包括:以所述搜索块为单位将所述搜索区域分块,分别以被调用的每个sqlite页特征规则为匹配依据、按照预定搜索顺序对搜索区域内的所有搜索块内的数据进行匹配。
4.如权利要求3所述的一种恢复移动终端已删除sqlite文件的方法,其特征在于,对于被调用的每个sqlite页特征规则,所述按照预定搜索顺序对搜索区域内的所有搜索块内的数据进行匹配,包括:
步骤A:按照所述预定搜索顺序扫描第一个搜索块;
步骤B:判断当前搜索块的头部特征是否是当前被调用的sqlite页特征规则所指定的sqlite页头特征?若是,则执行步骤C;否则执行步骤E;
步骤C:判断当前搜索块内的数据是否能和当前被调用的sqlite页特征规则所指定的数据特征相匹配,若是,则输出当前搜索块内数据,并执行步骤D,否则执行步骤E;
步骤D:判断搜索区域内的全部搜索块是否都已按照所述预定搜索顺序匹配完成?若是,则结束针对当前被调用的sqlite页特征规则的数据匹配流程;否则,执行步骤E;
步骤E:按照所述预定搜索顺序扫描下一个搜索块,将所述下一个搜索块作为当前搜索块,并返回执行步骤B。
5.如权利要求4所述的一种恢复移动终端已删除sqlite文件的方法,其特征在于,所述对当前移动终端上已删除的sqlite文件页碎片内的数据进行解码,恢复当前移动终端已删除的sqlite文件数据,包括:对所述当前移动终端已删除的sqlite文件页碎片内的有用信息进行解码,并识别解码后各有用信息之间的关联关系,得到有效数据信息;其中,所述有用信息包括已删除的sqlite文件页碎片内的表、字段和记录信息;所述有效数据信息包括已删除的sqlite文件页碎片内未被覆盖的数据库管理信息和数据库数据。
6.一种恢复移动终端已删除sqlite文件的装置,其特征在于,包括:镜像获取单元、镜像解析单元、页规则调用单元、第一页规则匹配单元、第二页规则匹配单元、…、第N页规则匹配单元和sqlite解析单元;所述N为大于等于2的正整数;所述第一页规则匹配单元至第N页规则匹配单元中的每个页规则匹配单元内预先存储有一种sqlite页特征规则,且所述第一页规则匹配单元至第N页规则匹配单元中的任意两个页规则匹配单元中存储的sqlite页特征规则不同;
所述镜像获取单元用于获取当前移动终端的镜像文件并将其提供给所述镜像解析单元;
所述镜像解析单元用于解析所述当前移动终端的镜像文件,设置搜索区域,并将所述当前移动终端的镜像文件以及所设置的搜索区域提供给所述页规则调用单元;
所述页规则调用单元用于根据所述搜索区域内的数据特征调用所述第一页规则匹配单元至第N页规则匹配单元中的至少一个页规则匹配单元,并将所述搜索区域提供给被调用的各页规则匹配单元;
被所述页规则调用单元调用的各页规则匹配单元用于以自身所存储的sqlite页特征规则作为匹配依据对所述搜索区域内的数据进行匹配,获得当前移动终端上已删除的一种sqlite文件页碎片并提供给所述sqlite解析单元;
所述sqlite解析单元用于对收到的所有当前移动终端上已删除的sqlite文件页碎片内的数据进行解码,恢复当前移动终端已删除的sqlite文件数据。
7.如权利要求6所述的一种恢复移动终端已删除sqlite文件的装置,其特征在于,当所述镜像解析单元支持解析所述当前移动终端的镜像文件时,所述镜像解析单元获取当前移动终端的镜像文件的未分配簇区域,并将所述当前移动终端的镜像文件的未分配簇区域设置为所述搜索区域;当所述镜像解析单元不支持解析所述当前移动终端的镜像文件时,所述镜像解析单元将当前移动终端的全镜像文件设置为所述搜索区域。
8.如权利要求7所述的一种恢复移动终端已删除sqlite文件的装置,其特征在于,所述镜像解析单元还用于设置大小为sqlite页大小的搜索块,并将所设置的搜索块提供给所述页规则调用单元;
所述页规则调用单元还用于将收到的所述搜索块提供给被调用的各页规则匹配单元;
被所述页规则调用单元调用的各页规则匹配单元首先用于以所述搜索块为单位将所述搜索区域分块,然后分别以自身所存储的sqlite页特征规则为匹配依据、按照预定搜索顺序对搜索区域内的所有搜索块内的数据进行匹配。
9.如权利要求8所述的一种恢复移动终端已删除sqlite文件的装置,其特征在于,所述sqlite解析单元进一步用于对当前移动终端上已删除的sqlite文件页碎片内的有用信息进行解码,得到有效数据信息;所述有用信息包括已删除的sqlite文件页碎片内的表、字段和记录信息;所述有效数据信息包括已删除的sqlite文件页碎片内未被覆盖的数据库管理信息和数据库数据。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210430026.0A CN102937926B (zh) | 2012-10-30 | 2012-10-30 | 一种恢复移动终端已删除sqlite文件的方法及装置 |
PCT/CN2013/070316 WO2014067240A1 (zh) | 2012-10-30 | 2013-01-10 | 一种恢复移动终端已删除sqlite文件的方法及装置 |
US14/359,930 US20140317062A1 (en) | 2012-10-30 | 2013-01-10 | Amethod and apparatus for recovering sqlite file deleted from mobile terminal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210430026.0A CN102937926B (zh) | 2012-10-30 | 2012-10-30 | 一种恢复移动终端已删除sqlite文件的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102937926A true CN102937926A (zh) | 2013-02-20 |
CN102937926B CN102937926B (zh) | 2015-05-20 |
Family
ID=47696825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210430026.0A Active CN102937926B (zh) | 2012-10-30 | 2012-10-30 | 一种恢复移动终端已删除sqlite文件的方法及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20140317062A1 (zh) |
CN (1) | CN102937926B (zh) |
WO (1) | WO2014067240A1 (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103793298A (zh) * | 2014-03-03 | 2014-05-14 | 公安部第三研究所 | 实现Android手机信息读取的方法 |
CN104021217A (zh) * | 2014-06-23 | 2014-09-03 | 四川效率源信息安全技术有限责任公司 | 一种提取手机碎片文件和被删除文件的系统和方法 |
CN104035839A (zh) * | 2014-06-12 | 2014-09-10 | 上海交通大学 | Android系统隐私数据恢复实现方法 |
CN104317670A (zh) * | 2014-10-22 | 2015-01-28 | 四川神琥科技有限公司 | 一种Android系统痕迹取证恢复设备 |
CN104866610A (zh) * | 2015-06-04 | 2015-08-26 | 东南大学 | 一种基于相似类型匹配估算的SQLite删除数据恢复方法 |
CN105045676A (zh) * | 2015-07-02 | 2015-11-11 | 四川效率源信息安全技术有限责任公司 | 基于SQLite数据库的丢失数据的恢复装置和方法 |
CN105488173A (zh) * | 2015-12-01 | 2016-04-13 | 四川效率源信息安全技术股份有限公司 | 一种360浏览器历史记录的恢复提取方法 |
CN105912423A (zh) * | 2016-04-07 | 2016-08-31 | 上海互盾信息科技有限公司 | 一种数据恢复和取证方法 |
CN105989124A (zh) * | 2015-02-13 | 2016-10-05 | 深圳万兴信息科技股份有限公司 | Sqlite文件恢复自增主键值的方法及其系统 |
CN106844607A (zh) * | 2017-01-16 | 2017-06-13 | 重庆邮电大学 | 一种适用于非整型主键与空闲块合并的SQLite数据恢复方法 |
CN107193871A (zh) * | 2017-04-12 | 2017-09-22 | 腾讯科技(深圳)有限公司 | 数据库修复方法及装置 |
CN108563714A (zh) * | 2018-03-29 | 2018-09-21 | 苏州开心盒子软件有限公司 | 一种SQLite3数据库已删除数据块的提取方法 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104298766B (zh) * | 2014-10-28 | 2018-03-20 | 四川秘无痕信息安全技术有限责任公司 | 一种清除SQLite数据库中数据的方法 |
EP3091451A1 (en) * | 2015-04-28 | 2016-11-09 | Micro Systemation AB | Database rollback using wal |
CN107025229A (zh) * | 2016-01-29 | 2017-08-08 | 四川效率源信息安全技术股份有限公司 | 基于浏览器客户端应用程序的脱机文件痕迹检测的方法 |
CN112052118B (zh) * | 2020-08-20 | 2022-08-23 | 厦门市美亚柏科信息股份有限公司 | 一种GlobalFs删除文件恢复方法和系统 |
CN112541149B (zh) * | 2020-12-18 | 2022-07-08 | 厦门市美亚柏科信息股份有限公司 | 一种用于手机网页内容的恢复方法和系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101763394A (zh) * | 2009-12-31 | 2010-06-30 | 傅如毅 | 计算机系统涉密文件搜索方法 |
US20100318782A1 (en) * | 2009-06-12 | 2010-12-16 | Microsoft Corporation | Secure and private backup storage and processing for trusted computing and data services |
CN102073682A (zh) * | 2010-12-21 | 2011-05-25 | 厦门市美亚柏科信息股份有限公司 | 一种基于编码方式的文档数据恢复系统及其快速恢复方法 |
CN102298634A (zh) * | 2011-09-09 | 2011-12-28 | 厦门市美亚柏科信息股份有限公司 | 一种Sqlite删除记录结构重组方法 |
CN102591979A (zh) * | 2012-01-05 | 2012-07-18 | 厦门市美亚柏科信息股份有限公司 | 一种sqlite的自由空间的删除记录挖掘方法和系统 |
CN102662796A (zh) * | 2012-03-28 | 2012-09-12 | 深圳市万兴软件有限公司 | 一种数据恢复的方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100353329C (zh) * | 2005-10-17 | 2007-12-05 | 珠海金山软件股份有限公司 | 恢复fat32分区已删除文件的方法 |
US9081838B2 (en) * | 2011-06-03 | 2015-07-14 | Viaforensics, Llc | Methods, apparatuses, and computer program products for database record recovery |
-
2012
- 2012-10-30 CN CN201210430026.0A patent/CN102937926B/zh active Active
-
2013
- 2013-01-10 US US14/359,930 patent/US20140317062A1/en not_active Abandoned
- 2013-01-10 WO PCT/CN2013/070316 patent/WO2014067240A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100318782A1 (en) * | 2009-06-12 | 2010-12-16 | Microsoft Corporation | Secure and private backup storage and processing for trusted computing and data services |
CN101763394A (zh) * | 2009-12-31 | 2010-06-30 | 傅如毅 | 计算机系统涉密文件搜索方法 |
CN102073682A (zh) * | 2010-12-21 | 2011-05-25 | 厦门市美亚柏科信息股份有限公司 | 一种基于编码方式的文档数据恢复系统及其快速恢复方法 |
CN102298634A (zh) * | 2011-09-09 | 2011-12-28 | 厦门市美亚柏科信息股份有限公司 | 一种Sqlite删除记录结构重组方法 |
CN102591979A (zh) * | 2012-01-05 | 2012-07-18 | 厦门市美亚柏科信息股份有限公司 | 一种sqlite的自由空间的删除记录挖掘方法和系统 |
CN102662796A (zh) * | 2012-03-28 | 2012-09-12 | 深圳市万兴软件有限公司 | 一种数据恢复的方法及系统 |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103793298A (zh) * | 2014-03-03 | 2014-05-14 | 公安部第三研究所 | 实现Android手机信息读取的方法 |
CN104035839A (zh) * | 2014-06-12 | 2014-09-10 | 上海交通大学 | Android系统隐私数据恢复实现方法 |
CN104035839B (zh) * | 2014-06-12 | 2017-07-18 | 上海交通大学 | Android系统隐私数据恢复实现方法 |
CN104021217A (zh) * | 2014-06-23 | 2014-09-03 | 四川效率源信息安全技术有限责任公司 | 一种提取手机碎片文件和被删除文件的系统和方法 |
CN104021217B (zh) * | 2014-06-23 | 2017-02-15 | 四川效率源信息安全技术股份有限公司 | 一种提取手机碎片文件和被删除文件的系统和方法 |
CN104317670A (zh) * | 2014-10-22 | 2015-01-28 | 四川神琥科技有限公司 | 一种Android系统痕迹取证恢复设备 |
CN105989124A (zh) * | 2015-02-13 | 2016-10-05 | 深圳万兴信息科技股份有限公司 | Sqlite文件恢复自增主键值的方法及其系统 |
CN104866610A (zh) * | 2015-06-04 | 2015-08-26 | 东南大学 | 一种基于相似类型匹配估算的SQLite删除数据恢复方法 |
CN104866610B (zh) * | 2015-06-04 | 2018-05-08 | 东南大学 | 一种基于相似类型匹配估算的SQLite删除数据恢复方法 |
CN105045676A (zh) * | 2015-07-02 | 2015-11-11 | 四川效率源信息安全技术有限责任公司 | 基于SQLite数据库的丢失数据的恢复装置和方法 |
CN105045676B (zh) * | 2015-07-02 | 2018-05-04 | 四川效率源信息安全技术股份有限公司 | 一种基于SQLite数据库的丢失数据的恢复方法 |
CN105488173A (zh) * | 2015-12-01 | 2016-04-13 | 四川效率源信息安全技术股份有限公司 | 一种360浏览器历史记录的恢复提取方法 |
CN105912423A (zh) * | 2016-04-07 | 2016-08-31 | 上海互盾信息科技有限公司 | 一种数据恢复和取证方法 |
CN106844607A (zh) * | 2017-01-16 | 2017-06-13 | 重庆邮电大学 | 一种适用于非整型主键与空闲块合并的SQLite数据恢复方法 |
CN106844607B (zh) * | 2017-01-16 | 2020-05-12 | 重庆邮电大学 | 一种适用于非整型主键与空闲块合并的SQLite数据恢复方法 |
CN107193871A (zh) * | 2017-04-12 | 2017-09-22 | 腾讯科技(深圳)有限公司 | 数据库修复方法及装置 |
CN107193871B (zh) * | 2017-04-12 | 2018-10-16 | 腾讯科技(深圳)有限公司 | 数据库修复方法及装置 |
CN108563714A (zh) * | 2018-03-29 | 2018-09-21 | 苏州开心盒子软件有限公司 | 一种SQLite3数据库已删除数据块的提取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102937926B (zh) | 2015-05-20 |
WO2014067240A1 (zh) | 2014-05-08 |
US20140317062A1 (en) | 2014-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102937926A (zh) | 一种恢复移动终端已删除sqlite文件的方法及装置 | |
CN102289524B (zh) | 一种数据恢复方法及系统 | |
KR101575246B1 (ko) | SQLite 데이터베이스 파일 내 손상된 레코드의 복원 방법 | |
CN103064764A (zh) | 一种快速恢复安卓手机删除信息的取证方法 | |
CN102682024B (zh) | 未残缺jpeg文件碎片重组的方法 | |
CN107016123B (zh) | 文件管理方法及终端设备 | |
US20130173559A1 (en) | Electronic device, storage medium, and method for recovering deleted files of the electronic device | |
CN105446572A (zh) | 一种用于屏幕显示设备的文字编辑方法及装置 | |
CN102915295A (zh) | 文档检测方法及装置 | |
KR20140083556A (ko) | SQLite 데이터베이스에서 삭제된 데이터의 복원 방법 및 장치 | |
CN105447168A (zh) | Mp4格式的碎片文件恢复与重组的方法 | |
CN102750204A (zh) | 一种恢复数据的方法、装置 | |
CN104866610A (zh) | 一种基于相似类型匹配估算的SQLite删除数据恢复方法 | |
CN104021217A (zh) | 一种提取手机碎片文件和被删除文件的系统和方法 | |
CN105045676A (zh) | 基于SQLite数据库的丢失数据的恢复装置和方法 | |
CN110958292A (zh) | 文件上传方法、电子装置、计算机设备及存储介质 | |
CN104699823A (zh) | 一种恢复手机被删除短信的方法 | |
CN104965835A (zh) | 一种分布式文件系统的文件读写方法及装置 | |
CN106407288B (zh) | 一种信息同步更新的方法及系统 | |
CN105653674A (zh) | 智能终端的文件管理方法及系统 | |
Ravi et al. | A method for carving fragmented document and image files | |
CN111176901B (zh) | 一种hdfs删除文件恢复方法、终端设备及存储介质 | |
CN109344163B (zh) | 一种数据校验方法、装置和计算机可读介质 | |
CN103093213A (zh) | 视频文件分类方法及终端 | |
CN102662981B (zh) | 基于特征扫描的Windows回收站删除记录取证方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |