專利名稱:一種基于編碼方式的文檔數據恢復系統及其快速恢復方法
技術領域:
本發明涉及一種對文檔數據恢復的計算機處理,特別是涉及一種基于編碼方式的 文檔數據恢復系統及其快速恢復方法。
背景技術:
文檔恢復指的是存儲系統,或操作系統,或文件系統層次上的數據丟失,這種丟失 是多方面的,如系統軟硬件故障、死機、病毒破壞、黑客攻擊、木馬破壞、誤操作、陣列數據丟 失等等;對于一般文件系統來說,這方面的研究工作起步較早,國內外研究的都比較深。這 方面的主要難點是文件碎片的恢復處理、文檔修復和密碼恢復。早期的文檔恢復技術僅對文件分配表進行搜索,從中找出被標記為刪除的文檔進 行恢復,無法恢復那些在文件分配表中已被覆蓋的文檔。現有的文檔恢復技術已經發展到 利用文檔文件簽名、文件結束字符等特征在存儲介質中進行搜索來找出文檔位置,再進行 文檔恢復。現有文檔恢復技術利用文件簽名、文件結束字符等特征來進行文檔恢復,這種技 術無法恢復丟失了文件簽名、文件結束字符等特征的文檔文件碎片。
發明內容
本發明的目的在于克服現有技術之不足,提供一種基于編碼方式的文檔數據恢復 系統及其快速恢復方法,是以文檔數據的有效編碼為特征,通過提取存儲介質中屬于有效 編碼的代碼來恢復各種文檔,可以對已丟失文件簽名、文件結束字符等特征的文檔數據文 件進行恢復,可恢復出未被其他文件覆蓋的各種文字信息。本發明解決其技術問題所采用的技術方案是一種基于編碼方式的文檔數據恢復 系統,包括—輸入單元,其用來讀取存儲介質的文檔數據以及輸入預先設置的文檔編碼規則 和文檔編碼組合規則;一編碼規則存儲單元,與輸入單元的輸出相連接,其用來存儲由輸入單元輸給的 且為預先設置的各種文檔編碼規則的數據;一編碼組合規則存儲單元,與輸入單元的輸出相連接,其用來存儲由輸入單元輸 給的且為預先設置的各種文檔編碼組合規則的數據;一數據檢索單元,與輸入單元的輸出相連接,其用來從輸入單元接收文檔數據,每 次接收一個文檔數據塊,且將接收到的文檔數據塊分成一個或多個子段,并從子段的預先 指定位置中提取預先指定長度的文檔數據發送給有效編碼判斷單元進行驗證,根據驗證結 果確定下一步操作是進行下個子段檢索或是進入有效編碼提取單元;一有效編碼判斷單元,分別與數據檢索單元、編碼規則存儲單元和編碼組合規則 存儲單元相連接,其用來接收由數據檢索單元發送的所述預先指定長度的文檔數據,并從 編碼規則存儲單元和編碼組合規則存儲單元中調出規則數據,利用該規則數據對所述預先指定長度的文檔數據進行比較分析,對文檔數據是否有有效編碼作出判斷,并將驗證結果 反饋給數據檢索單元;一有效編碼提取單元,分別與數據檢索單元、編碼規則存儲單元和編碼組合規則 存儲單元相連接,其用來接收由數據檢索單元發送的文檔數據塊,并從編碼規則存儲單元 和編碼組合規則存儲單元中調出規則數據,從被確定為含有有效編碼的當前子段開始,對 整個數據塊進行遍歷,提取出符合規則數據要求的編碼并將該編碼寫入有效編碼存儲單 元;一有效編碼存儲單元,與有效編碼提取單元相連接,其用來儲存以編碼方式、對應 規則及編碼在存儲介質中的存放位置等多種組合來表示的有效編碼數據;一編碼重組單元,分別與數據檢索單元、編碼規則存儲單元、編碼組合規則存儲單 元和有效編碼存儲單元相連接,根據數據檢索單元的指令,從有效編碼存儲單元中調出存 放位置相近的編碼,并根據編碼組合規則存儲單元和有效編碼存儲單元所提供的有效編碼 編碼規則及編碼組合規則,將相應的編碼通過組合,解碼,得到的文檔數據并輸出給輸出單 元;以及一輸出單元,與編碼重組單元相連接,其用于接收編碼重組單元輸出的文檔數據, 并按照文檔在存儲介質中的存放位置,顯示出經過編碼重組和轉換后的文檔明文。一種基于編碼方式的文檔數據快速恢復方法,包括如下步驟a.用輸入單元從存儲介質中讀取一個預先設置好大小的文檔數據塊到內存;b.用數據檢索單元將所述文檔數據塊分成多個文檔數據子塊;c.數據檢索單元在當前文檔數據子塊中,從一個預先指定好的位置處提取一個預 先指定好長度的文檔數據發送給有效編碼判斷單元;d.有效編碼判斷單元對所述預先指定好長度的文檔數據是否存在有效編碼格式 進行判斷,并將判斷結果返回給數據檢索單元;判斷后,若存在有效編碼格式,則進入有效 編碼提取過程,提取完成后,轉至步驟g,若不存在有效編碼格式,繼續下一步驟;e.由數據檢索單元移動到下一文檔數據子塊;f.數據檢索單元判斷是否到文檔數據塊的末尾,如果是,繼續下一步驟,否則返回 步驟c ;g.輸入單元判斷存儲介質的所有文檔數據是否讀取完,若已讀取完則結束,若未 讀取完則返回步驟a。所述的有效編碼提取過程,是由當前子塊的位置開始,回溯特定長度的文檔數據, 并根據有效編碼規則和編碼組合規則對數據塊的接下去的數據進行搜索,查找出屬于文檔 的字符,并輸出到指定位置。所述的特定長度的文檔數據,是在當前子塊的位置開始,每次回溯一個預先指定 長度的文檔數據,并根據有效編碼規則和編碼組合規則對該預先指定長度的文檔數據集進 行判斷,如果為有效編碼格式,則繼續回溯一個預先指定長度的文檔數據,直至沒有有效編 碼格式為止。本發明的一種基于編碼方式的文檔數據恢復系統及其快速恢復方法,是以文檔有 效編碼為搜索特征,文檔有效編碼指的是文檔中文字的編碼范圍。本發明的一種基于編碼方式的文檔數據快速恢復方法,實際上是采用了索引搜索
5過程和內容搜索過程,來實現快速的目的。索引搜索過程是對輸入裝置所輸入的數據塊進行進一步的分段,并對各個分段的 特定位置進行編碼規則匹配,任一特定位置匹配成功,從該位置開始進入內容搜索過程,所 有特定位置匹配失敗,進入下一個索引搜索過程。內容搜索過程是從傳入的位置開始,回溯特定數據長度,再根據有效編碼規則和 編碼組合規則對接下去的數據進行檢索,查找出屬于文檔的字符,并輸出到指定位置。本發明的有益效果是,由于本發明采用了一輸入單元、一編碼規則存儲單元、一 編碼組合規則存儲單元、一數據檢索單元、一有效編碼判斷單元、一有效編碼提取單元、一 有效編碼存儲單元、一編碼重組單元和一輸出單元來構成基于編碼方式的文檔數據恢復系 統,該基于編碼方式的文檔數據恢復系統是以文檔數據的有效編碼為特征,通過提取存儲 介質中屬于有效編碼的代碼來恢復各種文檔,可以對已丟失文件簽名、文件結束字符等特 征的文檔數據文件進行恢復,可恢復出未被其他文件覆蓋的各種文字信息。與其他文檔恢復方法相比,本發明的文檔恢復系統文檔識別率高,搜索速度快,并 且能夠發現已損壞文檔的碎片,并將之從存儲介質中提取出來,可以極大提高現有的文檔 恢復成功率。與其他文件相比,文檔文件最關鍵的內容在于其內部的文字內容,而現有的文檔 恢復系統基本無法恢復出文字碎片,利用本發明的文檔恢復系統,可將存儲介質中有意義 的文字碎片提取出來,再進行整理,對文檔恢復具有極重大的意義。以下結合附圖及實施例對本發明作進一步詳細說明;但本發明的一種基于編碼方 式的文檔數據恢復系統及其快速恢復方法不局限于實施例。
圖1是本發明的系統的框圖;圖2是本發明的方法的流程圖;圖3是一個被覆蓋的文檔碎片的示意圖;圖4是一個文檔數據塊的示意圖。
具體實施例方式實施例,參見圖1所示,本發明的一種基于編碼方式的文檔數據恢復系統,包括一輸入單元1,其用來讀取存儲介質的文檔數據以及輸入預先設置的文檔編碼規 則和文檔編碼組合規則;輸入單元1是存儲介質的導入、及各種文檔編碼規則、編碼組合規 則的輸入中所使用的輸入裝置,用來讀取存儲介質內容并輸送給內容提取單元及將各種文 檔編碼規則、編碼組合規則存入對應的存儲單元中;一編碼規則存儲單元2,與輸入單元1的輸出相連接,其用來存儲由輸入單元1輸 給的且為預先設置的各種文檔編碼規則的數據;一編碼組合規則存儲單元3,與輸入單元1的輸出相連接,其用來存儲由輸入單元 1輸給的且為預先設置的各種文檔編碼組合規則的數據;一數據檢索單元4,與輸入單元1的輸出相連接,其用來從輸入單元1接收文檔數 據,每次接收一個文檔數據塊,且將接收到的文檔數據塊分成一個或多個子段,并從子段的預先指定位置中提取預先指定長度的文檔數據發送給有效編碼判斷單元5進行驗證,根據 驗證結果確定下一步操作是進行下個子段檢索或是進入有效編碼提取單元6 ;一有效編碼判斷單元5,分別與數據檢索單元4、編碼規則存儲單元2和編碼組合 規則存儲單元3相連接,其用來接收由數據檢索單元4發送的所述預先指定長度的文檔數 據,并從編碼規則存儲單元2和編碼組合規則存儲單元3中調出規則數據(可以是一個規 則,也可以是多個規則),利用該規則數據對所述預先指定長度的文檔數據進行比較分析, 對文檔數據是否有有效編碼作出判斷,并將驗證結果反饋給數據檢索單元4 ;—有效編碼提取單元6,分別與數據檢索單元4、編碼規則存儲單元2和編碼組合 規則存儲單元3相連接,其用來接收由數據檢索單元4發送的文檔數據塊,并從編碼規則存 儲單元2和編碼組合規則存儲單元3中調出規則數據,從被確定為含有有效編碼的當前子 段開始,對整個數據塊進行遍歷,提取出符合規則數據要求的編碼并將該編碼寫入有效編 碼存儲單元7 ;一有效編碼存儲單元7,與有效編碼提取單元6相連接,其用來儲存以編碼方式、 對應規則及編碼在存儲介質中的存放位置等多種組合來表示的有效編碼數據;—編碼重組單元8,分別與數據檢索單元4、編碼規則存儲單元2、編碼組合規則存 儲單元3和有效編碼存儲單元7相連接,根據數據檢索單元4的指令,從有效編碼存儲單元 7中調出存放位置相近的編碼,并根據編碼組合規則存儲單元2和有效編碼存儲單元3所提 供的有效編碼編碼規則及編碼組合規則,將相應的編碼通過組合,解碼,得到文檔數據并輸 出給輸出單元9;以及一輸出單元9,與編碼重組單元8相連接,其用于接收編碼重組單元8輸出的文檔 數據,并按照文檔在存儲介質中的存放位置,顯示出經過編碼重組和轉換后的文檔明文。參見圖2所示,本發明的一種基于編碼方式的文檔數據快速恢復方法,包括如下 步驟a.用輸入單元從存儲介質中讀取一個預先設置好大小的文檔數據塊到內存;即 圖2中的讀取部分數據到內存;b.用數據檢索單元將所述文檔數據塊分成多個文檔數據子塊;c.數據檢索單元在當前文檔數據子塊中,從一個預先指定好的位置處提取一個預 先指定好長度的文檔數據發送給有效編碼判斷單元;即圖2中的從數據當前位置開始分析 是否存在有效編碼格式;d.有效編碼判斷單元對所述預先指定好長度的文檔數據是否存在有效編碼格式 進行判斷,并將判斷結果返回給數據檢索單元;判斷后,若存在有效編碼格式,則進入有效 編碼提取過程(即圖2中的在當前位置進一步搜索有效編碼,并恢復文檔內容),提取完成 后,轉至步驟g,若不存在有效編碼格式,繼續下一步驟;e.由數據檢索單元移動到下一文檔數據子塊;即圖2中的移動到下一個位置;f.數據檢索單元判斷是否到文檔數據塊的末尾,如果是,繼續下一步驟,否則返回 步驟c ;g.輸入單元判斷存儲介質的所有文檔數據是否讀取完,若已讀取完則結束,若未 讀取完則返回步驟a。所述的有效編碼提取過程,是由當前子塊的位置開始,回溯特定長度的文檔數據,并根據有效編碼規則和編碼組合規則對數據塊的接下去的數據進行搜索,查找出屬于文檔 的字符,并輸出到指定位置。所述的特定長度的文檔數據,是在當前子塊的位置開始,每次回溯一個預先指定 長度的文檔數據,并根據有效編碼規則和編碼組合規則對該預先指定長度的文檔數據集進 行判斷,如果為有效編碼格式,則繼續回溯一個預先指定長度的文檔數據,直至沒有有效編 碼格式為止。本發明的一種基于編碼方式的文檔數據恢復系統及其快速恢復方法,是以文檔有 效編碼為搜索特征,文檔有效編碼指的是文檔中文字的編碼范圍。參見圖3所示,文檔為Uni cοde編碼,在該編碼中,漢字的有效編碼范圍為 \u4E00-\u9FA5+\uF900-\uFA2D。半角標點和英文字母的有效編碼范圍為\u0021_\u007E, 全角標點有效編碼范圍為\u3001-\u3017+\uFF01-\uFF5E,通過判斷指定位置是否屬于以 上這些范圍的組合,來確定指定位置是否屬于有效編碼。由于文檔恢復通常關注的是有意 義的內容,因此還可以通過各種編碼組合方式,如連續三個以上漢字或標點等來判斷多個 連續的有效編碼是否存在組合可能,來形成有意義的句子。下面是幾種可能的組合方式連續的漢字編碼組合0000445016E 63 B5 6B 19 52 FB 4E OF 61 84 76 7F 4F 28 75 據段則任意
的使用連續漢字+單個標點00004480184 76 DO 8F 97 7B OC FF 76 5E 8F 96 OF 61 39 65 的運算,并隨
意改連續漢字+單個或多個字母00004D60 | IF 77 63 6B 43 00 50 00 55 00 00 4E 37 68 D6 53 | 真正 CPU —樣
取本發明的一種基于編碼方式的文檔數據快速恢復方法,實際上是采用了索引搜索 過程和內容搜索過程,來實現快速的目的。索引搜索過程是對輸入裝置所輸入的數據塊進行進一步的分段,并對各個分段的 特定位置進行編碼規則匹配,任一特定位置匹配成功,從該位置開始進入內容搜索過程,所 有特定位置匹配失敗,進入下一個索引搜索過程。內容搜索過程是從傳入的位置開始,回溯特定數據長度,再根據有效編碼規則和 編碼組合規則對接下去的數據進行檢索,查找出屬于文檔的字符,并輸出到指定位置。以下結合圖4來進一步說明本發明的一種基于編碼方式的文檔數據快速恢復方 法。首先,從待檢索的存儲介質中讀入部分數據到內存中,如讀取1個扇區512個字 節,如圖4所示開始索引檢索過程,將數據塊分成4段(即4個數據子塊)進行檢索,首先檢索第 一段從數據當前位置0χ00009200處開始分析,分析16個字節,分析結果不存在有效 編碼,跳到下一個位置0χ0000^80 ;從數據當前位置0χ00009280處開始分析,分析16個字節,分析結果不存在有效 編碼,跳到下一個位置0χ00009300 ;
從數據當前位置0χ00009300處開始分析,分析16個字節,分析結果在 0x00009300處存在連續的有效編碼,進入內容檢索過程;從數據當前位置=0x00009300處往前回溯,每次回溯16個字節,直到未發現有效 編碼,最終得到檢索開始位置0X000092C0 ;從0X000092C0處開始檢索,直到數據塊結尾0x000093FF,得到多個有效編碼;讀取下一個數據塊=0x00009400,開始新的檢索過程。快速檢索經常需要在文檔恢復準確度與文檔檢索速度間進行平衡,要讓文檔恢復 準確度高,就需要將每次讀入的數據塊減小,文檔檢索速度也就變慢,反之,則可以加快文 檔檢索速度,例如,從文字意義上考慮,一般要讓恢復出來的文檔存在可讀性,一般需要20 個字以上,因此可以設定每次讀入的數據塊為512字節,檢索時只需對數據塊的首部、中 間、尾部進行判斷,如果符合有效編碼,則進行詳細搜索,反之,可認為該數據塊不存在可讀 性文檔碎片,可以讀入下一個數據塊進行搜索。上述實施例僅用來進一步說明本發明的一種基于編碼方式的文檔數據恢復系統 及其快速恢復方法,但本發明并不局限于實施例,凡是依據本發明的技術實質對以上實施 例所作的任何簡單修改、等同變化與修飾,均落入本發明技術方案的保護范圍內。
權利要求
1.一種基于編碼方式的文檔數據恢復系統,其特征在于包括一輸入單元,其用來讀取存儲介質的文檔數據以及輸入預先設置的文檔編碼規則和文 檔編碼組合規則;一編碼規則存儲單元,與輸入單元的輸出相連接,其用來存儲由輸入單元輸給的且為 預先設置的各種文檔編碼規則的數據;一編碼組合規則存儲單元,與輸入單元的輸出相連接,其用來存儲由輸入單元輸給的 且為預先設置的各種文檔編碼組合規則的數據;一數據檢索單元,與輸入單元的輸出相連接,其用來從輸入單元接收文檔數據,每次接 收一個文檔數據塊,且將接收到的文檔數據塊分成一個或多個子段,并從子段的預先指定 位置中提取預先指定長度的文檔數據發送給有效編碼判斷單元進行驗證,根據驗證結果確 定下一步操作是進行下個子段檢索或是進入有效編碼提取單元;一有效編碼判斷單元,分別與數據檢索單元、編碼規則存儲單元和編碼組合規則存儲 單元相連接,其用來接收由數據檢索單元發送的所述預先指定長度的文檔數據,并從編碼 規則存儲單元和編碼組合規則存儲單元中調出規則數據,利用該規則數據對所述預先指定 長度的文檔數據進行比較分析,對文檔數據是否有有效編碼作出判斷,并將驗證結果反饋 給數據檢索單元;一有效編碼提取單元,分別與數據檢索單元、編碼規則存儲單元和編碼組合規則存儲 單元相連接,其用來接收由數據檢索單元發送的文檔數據塊,并從編碼規則存儲單元和編 碼組合規則存儲單元中調出規則數據,從被確定為含有有效編碼的當前子段開始,對整個 數據塊進行遍歷,提取出符合規則數據要求的編碼并將該編碼寫入有效編碼存儲單元;一有效編碼存儲單元,與有效編碼提取單元相連接,其用來儲存以編碼方式、對應規則 及編碼在存儲介質中的存放位置等多種組合來表示的有效編碼數據;一編碼重組單元,分別與數據檢索單元、編碼規則存儲單元、編碼組合規則存儲單元和 有效編碼存儲單元相連接,根據數據檢索單元的指令,從有效編碼存儲單元中調出存放位 置相近的編碼,并根據編碼組合規則存儲單元和有效編碼存儲單元所提供的有效編碼編碼 規則及編碼組合規則,將相應的編碼通過組合,解碼,得到的文檔數據并輸出給輸出單元; 以及一輸出單元,與編碼重組單元相連接,其用于接收編碼重組單元輸出的文檔數據,并按 照文檔在存儲介質中的存放位置,顯示出經過編碼重組和轉換后的文檔明文。
2.一種基于編碼方式的文檔數據快速恢復方法,其特征在于包括如下步驟a.用輸入單元從存儲介質中讀取一個預先設置好大小的文檔數據塊到內存;b.用數據檢索單元將所述文檔數據塊分成多個文檔數據子塊;c.數據檢索單元在當前文檔數據子塊中,從一個預先指定好的位置處提取一個預先指 定好長度的文檔數據發送給有效編碼判斷單元;d.有效編碼判斷單元對所述預先指定好長度的文檔數據是否存在有效編碼格式進行 判斷,并將判斷結果返回給數據檢索單元;判斷后,若存在有效編碼格式,則進入有效編碼 提取過程,提取完成后,轉至步驟g,若不存在有效編碼格式,繼續下一步驟;e.由數據檢索單元移動到下一文檔數據子塊;f.數據檢索單元判斷是否到文檔數據塊的末尾,如果是,繼續下一步驟,否則返回步驟c ;g.輸入單元判斷存儲介質的所有文檔數據是否讀取完,若已讀取完則結束,若未讀取 完則返回步驟a。
3.根據權利要求2所述的基于編碼方式的文檔數據快速恢復方法,其特征在于所述 的有效編碼提取過程,是由當前子塊的位置開始,回溯特定長度的文檔數據,并根據有效編 碼規則和編碼組合規則對數據塊的接下去的數據進行搜索,查找出屬于文檔的字符,并輸 出到指定位置。
4.根據權利要求3所述的基于編碼方式的文檔數據快速恢復方法,其特征在于所述 的特定長度的文檔數據,是在當前子塊的位置開始,每次回溯一個預先指定長度的文檔數 據,并根據有效編碼規則和編碼組合規則對該預先指定長度的文檔數據集進行判斷,如果 為有效編碼格式,則繼續回溯一個預先指定長度的文檔數據,直至沒有有效編碼格式為止。
全文摘要
本發明公開了一種基于編碼方式的文檔數據恢復系統及其快速恢復方法,該系統包括輸入單元、編碼規則存儲單元、編碼組合規則存儲單元、數據檢索單元、有效編碼判斷單元、有效編碼提取單元、有效編碼存儲單元、編碼重組單元和輸出單元,該基于編碼方式的文檔數據恢復系統是以文檔數據的有效編碼為特征,通過提取存儲介質中屬于有效編碼的代碼來恢復各種文檔,可以對已丟失文件簽名、文件結束字符等特征的文檔數據文件進行恢復,可恢復出未被其他文件覆蓋的各種文字信息。本發明的文檔恢復系統及其快速恢復方法,具有文檔識別率高,搜索速度快的特點,并且能夠發現已損壞文檔的碎片,并將之從存儲介質中提取出來,可以極大提高現有的文檔恢復成功率。
文檔編號G06F17/30GK102073682SQ20101059955
公開日2011年5月25日 申請日期2010年12月21日 優先權日2010年12月21日
發明者張雪峰, 黃志煒 申請人:廈門市美亞柏科信息股份有限公司