JP2014199615A - ファイル検索システム、ファイル検索方法およびファイル検索プログラム - Google Patents

ファイル検索システム、ファイル検索方法およびファイル検索プログラム Download PDF

Info

Publication number
JP2014199615A
JP2014199615A JP2013075155A JP2013075155A JP2014199615A JP 2014199615 A JP2014199615 A JP 2014199615A JP 2013075155 A JP2013075155 A JP 2013075155A JP 2013075155 A JP2013075155 A JP 2013075155A JP 2014199615 A JP2014199615 A JP 2014199615A
Authority
JP
Japan
Prior art keywords
file
search
block
data
blocks
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
JP2013075155A
Other languages
English (en)
Inventor
周作 野崎
Shusaku Nozaki
周作 野崎
秀樹 武田
Hideki Takeda
秀樹 武田
圭太 佐藤
Keita Sato
圭太 佐藤
拓一 小野里
Hirokazu ONOZATO
拓一 小野里
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.)
UBIC KK
Ubic Inc
Original Assignee
UBIC KK
Ubic Inc
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 UBIC KK, Ubic Inc filed Critical UBIC KK
Priority to JP2013075155A priority Critical patent/JP2014199615A/ja
Priority to PCT/JP2014/057120 priority patent/WO2014156764A1/ja
Priority to TW103111159A priority patent/TW201437833A/zh
Publication of JP2014199615A publication Critical patent/JP2014199615A/ja
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/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1727Details of free space management performed by the file system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】 検索対象ファイルと同じ内容の同一ファイルが、対象のハードディスク等に存在するか否か、または、存在していたか否かを示すことができ、かつ、処理速度が改善されたファイル検索システム、ファイル検索方法およびファイル検索プログラムを提供する。【解決手段】 本発明のファイル検索システムは、バイナリ形式の検索対象ファイルのデータを、複数のブロックに分割するファイル分割部と、前記ブロックのデータを、バイナリ形式の検索先ファイルから検索するブロック検索部と、前記ブロック検索部により検索された結果を出力する検索結果出力部とを備える。【選択図】 図1

Description

本発明は、ファイル検索システム、ファイル検索方法およびファイル検索プログラムに関する。
コンピュータ等に関する法的紛争等が生じた場合、コンピュータのハードディスクやデジタル記憶媒体(以下、「ハードディスク等」という。)に、特定のファイルが存在していることを示す必要がある場合がある。
具体的には、対象のファイル(以下、「検索対象ファイル」という。)と同じ内容のファイル(以下、「同一ファイル」という。)が、対象のハードディスク等に存在するか否かを調べる必要がある。
ハードディスク等から、検索対象ファイルと同じ内容の同一ファイルを検索する技術の一例として、特許文献1には、すべてのファイルについてインデックスファイルを作成する技術が開示されている。しかしながら、多くの検索対象ファイルを処理する必要がある場合、上記技術では処理速度に問題がある。
さらに、上記同一ファイルの内容の一部が失われ、復元が困難な場合もある。このような場合であっても、上記同一ファイルが存在していたことを示すことは、証拠として有効な場合もある。
このように、検索対象ファイルと同じ内容の同一ファイルが、対象のハードディスク等に存在するか否か、または、存在していたか否かを示すための技術であって、上記同一ファイルの検索の処理速度を改善することができる技術が求められていた。
特開2003−162545号公報
本発明の目的は、検索対象ファイルと同じ内容の同一ファイルが、対象のハードディスク等に存在するか否か、または、存在していたか否かを示すことができ、かつ、処理速度が改善されたファイル検索システム、ファイル検索方法およびファイル検索プログラムを提供することにある。
本発明のファイル検索システムは、バイナリ形式の検索対象ファイルのデータを、複数のブロックに分割するファイル分割部と、ブロックのデータを、バイナリ形式の検索先ファイルから検索するブロック検索部と、ブロック検索部により検索された結果を出力する検索結果出力部とを備える。
上記ブロック検索部は、ブロックのデータと、検索先ファイルの、ブロックと同じサイズの検索先データとを、検索先データを、検索先ファイルの先頭から1バイトずつずらしながら順に比較することができる。
上記ファイル検索システムは、さらに、ファイル分割部により分割されたブロックに対し、検索前の事前処理を行う事前処理部を備えることができる。
上記事前処理部は、ファイル分割部により分割されたブロックの中で、同じ内容の同一ブロックが複数存在する場合、同一ブロックのうち、一のブロックのみを検索の対象とし、他のブロックを検索の対象外とすることができる。
上記事前処理部は、ブロックのうち、データが、すべて同じバイトであるブロックは検索の対象外とすることができる。
上記事前処理部は、ブロックの先頭から所定のサイズのデータに基づいて、ブロックを分類し、所定のサイズのデータをキーとして、辞書を作成することができる。
上記ブロック検索部は、検索先ファイルの、先頭から所定のサイズのデータと、キーとを比較し、比較の結果に基づいて、辞書から対象のブロックを取り出し、ブロックと、検索先ファイルとを比較することができる。
上記事前処理部は、ブロックのデータが、先頭から1つ以上の0を含む場合、1つ以上の0を除いて辞書を作成することができる。
上記所定のサイズは、8バイトとすることができる。
上記ファイル分割部は、検索対象ファイルを、512バイト単位で分割することができる。
本発明のファイル検索方法は、バイナリ形式の検索対象ファイルのデータを、複数のブロックに分割するファイル分割ステップと、ブロックのデータを、バイナリ形式の検索先ファイルから検索するブロック検索ステップと、ブロック検索ステップにより検索された結果を出力する検索結果出力ステップとを備える。
本発明のファイル検索プログラムは、コンピュータに、バイナリ形式の検索対象ファイルのデータを、複数のブロックに分割するファイル分割ステップと、ブロックのデータを、バイナリ形式の検索先ファイルから検索するブロック検索ステップと、ブロック検索ステップにより検索された結果を出力する検索結果出力ステップとを実行させる。
本発明のファイル検索システム、ファイル検索方法およびファイル検索プログラムによれば、検索対象ファイルと同じ内容の同一ファイルが、対象のハードディスク等に存在するか否か、または、存在していたか否かを示すことができ、かつ、処理速度を改善することができる。
本発明のファイル検索システムの実施形態に従うブロック図 本発明のファイル検索システムの一例を示す概念図 本発明のファイル検索システムの検索結果出力部によるレポートの一例を示す概略図 本発明の一の実施形態に従うフローチャート 本発明の他の実施形態に従うフローチャート
本発明のファイル検索システムの実施形態について、図面を参照しながら説明する。
図1は、本発明のファイル検索システムの実施形態に従うブロック図を示したものである。
図1に示すように、本発明のファイル検索システム100は、バイナリ形式の検索対象ファイルのデータを、複数のブロックに分割するファイル分割部101と、ブロックのデータを、バイナリ形式の検索先ファイルから検索するブロック検索部102と、ブロック検索部により検索された結果を出力する検索結果出力部103とを備える。
上記バイナリ形式の検索対象ファイルおよびバイナリ形式の検索先ファイルは、2進数であらわされたデータであるバイナリデータからなるファイルのことをいう。ここでいうバイナリデータからなるファイルは、画像ファイル、音声ファイル、テキストファイル等の、コンピュータが扱うすべてのファイルを含むものとする。
また、検索対象ファイルは、異なる複数の検索対象ファイルで構成される検索対象ファイル群としてもよい。
また、検索先ファイルは、複数の検索先ファイルで構成される検索先ファイル群としてもよい。この検索先ファイル群は、例えば、コンピュータのハードディスクや記憶デバイス等に記録されたものとすることができる。
ブロック検索部102は、検索の漏れがないよう、ブロックのデータと、検索先ファイルの、上記ブロックと同じサイズの検索先データとを、検索先データを、検索先ファイルの先頭から1バイトずつずらしながら順に比較するのが好ましい。
本発明のファイル検索システム100は、さらに、ファイル分割部101により分割されたブロックに対し、検索前の事前処理を行う事前処理部104を備えるのが好ましい。検索処理の速度を高めるためである。
事前処理部104は、ファイル分割部101により分割されたブロックの中で、同じ内容の同一ブロックが複数存在する場合、同一ブロックのうち、一のブロックのみを検索の対象とし、他のブロックを検索の対象外とするのが好ましい。これにより、検索の対象となるブロックの数を削減することができ、検索処理の速度を高めることができる。
事前処理部104は、ブロックのうち、データがすべて同じバイトであるブロックは検索の対象外とするのが好ましい。例えば、0x00、0xFF、0xAA等のバイトが連続するブロックなどが挙げられる。また、データがすべて0であるブロックは、例えばハードディスクの未使用領域に存在する検索先ファイルに多く存在する。そのため、このようなブロックを検索の対象外とすることにより、検索処理の速度をより高めることができる。
本発明のファイル検索システム100は、さらに、除外すべきパターンのファイルのデータを、複数の除外ブロックに分割し、事前処理部104は、ファイル分割部101により分割されたブロックの中で、除外ブロックと同じ内容のブロックが存在する場合、ブロックを検索対象外とするのが好ましい。
検索対象ファイルの中に、他のファイルにも多くみられるような内容のデータが含まれる場合、このデータを含むブロックを検索の対象とすると、検索処理に時間がかかってしまうおそれがある。そのため、このようなブロックを検索の対象外とするため、除外すべきパターンのファイルを予め用意し、検索対象ファイルの中の、この除外すべきパターンのファイルを分割した除外ブロックと同じ内容のブロックを、検索の対象外とする。
また、事前処理部104は、ブロックの先頭から所定のサイズのデータに基づいて、ブロックを分類し、これら所定のサイズのデータをキーとして、辞書を作成するのが好ましい。
ブロック検索部102は、検索先ファイルの、先頭から所定のサイズのデータと、キーとを比較し、この比較の結果に基づいて、辞書から対象のブロックを取り出し、ブロックと、検索先ファイルとを比較するのが好ましい。これにより、検索処理の速度を高めることができる。
事前処理部104は、ブロックのデータが、先頭から1つ以上の0を含む場合、これら1つ以上の0を除いて辞書を作成するのが好ましい。
上記所定のサイズは、任意のサイズとすることができるが、検索処理の速度を高めるため、8バイトとするのがより好ましい。
また、ファイル分割部101は、検索対象ファイルを、ハードディスクの1セクタである512バイト単位で分割することができる。
また、検索結果出力部103は、ブロック毎のヒット数と、検索先ファイル内の一致位置および検索対象ファイル内での位置の対応表とを、例えばCSV等の形式で出力するものとすることができる。
さらに、本発明のファイル検索システム100は、入力部105および表示部106を備えるのが好ましい。入力部105としては、キーボードやマウス等を用いることができ、表示部106としては、ディスプレイや液晶モニタ等を用いることができる。
図2は、本発明のファイル検索システムの一例を示す概略図である。図2に示すように、本発明のファイル検索システム200は、検索対象ファイル210のデータを、複数のブロック、ここでは、512バイト単位で9つのブロックB1〜B9に分割する。次に、同じ内容を有するブロックB2,4,6,8のうち、ブロックB2のみを検索の対象とし、他のブロックB4,6,8を検索の対象外とする。次に、ブロックB1〜3,5,7,9について、検索先ファイル221〜223で構成される検索先ファイル群220から検索する。最後に、上記検索結果をレポート230として出力する。
図3は、本発明のファイル検索システムの検索結果出力部によるレポートの一例を示す概略図である。図3に示す例では、検索対象ファイルを1606個のブロックに分割し、検索先ファイル群内を検索した。その結果、23個のブロックがヒットし、そのうち、ユニークなブロックは22個であった。これらを可視化すると、図3に示すようなレポートとなる。このように、本発明のファイル検索システムによれば、ファイルの内容の一部が失われ、復元が困難な場合であっても、ファイルの断片を確認することができ、ファイルが存在していたことを示すことができる。
次に、本発明のファイル検索方法の実施形態について、図面を参照しながら説明する。
本発明のファイル検索方法は、一例として図4に示すように、バイナリ形式の検索対象ファイルのデータを、複数のブロックに分割するファイル分割ステップ(S110)と、ブロックのデータを、バイナリ形式の検索先ファイルから検索するブロック検索ステップ(S120)と、ブロック検索ステップにより検索された結果を出力する検索結果出力ステップ(S130)とを備える。さらに、本発明のファイル検索方法は、ファイル分割ステップにおいて分割されたブロックに対し、検索前の事前処理を行う事前処理ステップ(S140)を備えるのが好ましい。各ステップにおける詳細については、上述したファイル検索システムと同様である。
次に、本発明のファイル検索プログラムの実施形態について説明する。
本発明のファイル検索プログラムは、コンピュータに、バイナリ形式の検索対象ファイルのデータを、複数のブロックに分割するファイル分割ステップと、ブロックのデータを、バイナリ形式の検索先ファイルから検索するブロック検索ステップと、ブロック検索ステップにより検索された結果を出力する検索結果出力ステップとを実行させる。各ステップにおける詳細については、上述したファイル検索システムと同様である。
図5は、本発明のファイル検索方法の他の実施形態の一例を示すフローチャートである。図5に示すように、他の実施形態に従うファイル検索方法では、初めに、検索対象ファイルで構成された検索対象ファイル群と、検索先ファイルで構成された検索先ファイル群とが選択され、コンピュータに入力される(S210)。
次に、ファイル分割ステップにおいて、バイナリ形式の検索対象ファイルのデータは、複数のブロックに分割される(S220)。すなわち、検索対象ファイルは、512バイト単位のブロックに分割される。このステップS220は、検索対象ファイルの数だけ繰り返し行われる。
続いて、事前処理ステップにおいて、ファイル分割ステップにより分割されたブロックに対し、検索前の事前処理が行われる(S230)。事前処理として、ファイル分割ステップにおいて分割されたブロックの中で、同じ内容の同一ブロックが複数存在する場合、同一ブロックのうち、一のブロックのみを検索の対象とし、他のブロックを検索の対象外とする処理が行われる。さらに、ブロックの先頭から8バイトのデータに基づいて、ブロックを分類し、この8バイトのデータをキーとして、辞書を作成する処理が行われる。なお、ブロックのデータが、先頭から1つ以上の0を含む場合、これら1つ以上の0を除いて辞書が作成される。
次に、検索先ファイルの検索先ファイルのデータが、先頭から1つ以上の0を含む場合、これら1つ以上の0は除かれる(S240)。
次に、ブロック検索ステップにおいて、ブロックのデータは、バイナリ形式の検索先ファイルから検索される(S250)。ブロック検索ステップにおいて、検索先ファイルの、先頭から8バイトのデータと、上記キーとが比較され、この比較の結果に基づいて、辞書から対象のブロックを取り出し、このブロックと、検索先ファイルとを比較する。このとき、検索先ファイルのデータが、先頭から1つ以上の0を含む場合、これら1つ以上の0を除いた後の先頭から8バイトのデータが用いられる(以下、除かれたデータを「オフセット」と呼ぶ。)。
続いて、第一の検索結果出力ステップにおいて、ブロック検索ステップにおいて検索された結果が出力される(S260)。具体的には、一致するブロックが存在した場合、一致した位置の情報がレポートとして出力される。
その後、ブロック検索ステップにおいて、ブロックのデータと、検索先ファイルの、ブロックと同じサイズの検索先データとを、検索先データを、検索先ファイルの先頭から1バイトずらしながら順に比較する(S270)。すなわち、上記オフセットを1つずつ増やしていく。
上記ステップS250およびS260は、検索先ファイル内のすべてのデータの比較が終わるまで繰り返される。
また、上記ステップS240〜S270は、検索先ファイルの数だけ繰り返される。
最後の検索結果出力ステップにおいて、ブロックごとの検索結果を出力する(S280)。
本発明のファイル検索システム、ファイル検索方法およびファイル検索プログラムによれば、検索対象ファイルと同じ内容の同一ファイルが、対象のハードディスク等に存在するか否か、または、存在していたか否かを示すことができ、かつ、処理速度を改善することができる。
100 ファイル検索システム
101 ファイル分割部
102 ブロック検索部
103 検索結果出力部
104 事前処理部
105 入力部
106 表示部
200 ファイル検索システム
210 検索対象ファイル
220 検索先ファイル群
230 検索結果
S110 ファイル分割ステップ
S120 ブロック検索ステップ
S130 検索結果出力ステップ
S140 事前処理ステップ
S210 ファイル入力ステップ
S220 ブロック分割ステップ
S230 事前処理ステップ
S240 対象オフセット設定ステップ
S250 ブロック検索ステップ
S260 第1の検索結果出力ステップ
S270 対象オフセット追加ステップ
S280 第2の検索結果出力ステップ

Claims (12)

  1. バイナリ形式の検索対象ファイルのデータを、複数のブロックに分割するファイル分割部と、
    前記ブロックのデータを、バイナリ形式の検索先ファイルから検索するブロック検索部と、
    前記ブロック検索部により検索された結果を出力する検索結果出力部と
    を備えるファイル検索システム。
  2. 前記ブロック検索部は、前記ブロックのデータと、前記検索先ファイルの、前記ブロックと同じサイズの検索先データとを、該検索先データを、前記検索先ファイルの先頭から1バイトずつずらしながら順に比較することを特徴とする請求項1に記載のファイル検索システム。
  3. 前記ファイル検索システムは、さらに、
    前記ファイル分割部により分割されたブロックに対し、検索前の事前処理を行う事前処理部を備えることを特徴とする請求項2に記載のファイル検索システム。
  4. 前記事前処理部は、前記ファイル分割部により分割されたブロックの中で、同じ内容の同一ブロックが複数存在する場合、前記同一ブロックのうち、一のブロックのみを検索の対象とし、他のブロックを検索の対象外とすることを特徴とする請求項3に記載のファイル検索システム。
  5. 前記事前処理部は、前記ブロックのうち、データが、すべて同じバイトであるブロックは検索の対象外とすることを特徴とする請求項3または4に記載のファイル検索システム。
  6. 前記事前処理部は、前記ブロックの先頭から所定のサイズのデータに基づいて、前記ブロックを分類し、該所定のサイズのデータをキーとして、辞書を作成することを特徴とする請求項3〜5のいずれか一項に記載のファイル検索システム。
  7. 前記ブロック検索部は、前記検索先ファイルの、先頭から前記所定のサイズのデータと、前記キーとを比較し、該比較の結果に基づいて、前記辞書から対象のブロックを取り出し、該ブロックと、前記検索先ファイルとを比較することを特徴とする請求項6に記載のファイル検索システム。
  8. 前記事前処理部は、前記ブロックのデータが、先頭から1つ以上の0を含む場合、該1つ以上の0を除いて前記辞書を作成することを特徴とする請求項6または7に記載のファイル検索システム。
  9. 前記所定のサイズは、8バイトであることを特徴とする請求項6〜8のいずれか一項に記載のファイル検索システム。
  10. 前記ファイル分割部は、前記検索対象ファイルを、512バイト単位で分割することを特徴とする請求項1〜9のいずれか一項に記載のファイル検索システム。
  11. バイナリ形式の検索対象ファイルのデータを、複数のブロックに分割するファイル分割ステップと、
    前記ブロックのデータを、バイナリ形式の検索先ファイルから検索するブロック検索ステップと、
    前記ブロック検索ステップにより検索された結果を出力する検索結果出力ステップと
    を備えるファイル検索方法。
  12. コンピュータに、
    バイナリ形式の検索対象ファイルのデータを、複数のブロックに分割するファイル分割ステップと、
    前記ブロックのデータを、バイナリ形式の検索先ファイルから検索するブロック検索ステップと、
    前記ブロック検索ステップにより検索された結果を出力する検索結果出力ステップと
    を実行させるためのファイル検索プログラム。
JP2013075155A 2013-03-29 2013-03-29 ファイル検索システム、ファイル検索方法およびファイル検索プログラム Pending JP2014199615A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2013075155A JP2014199615A (ja) 2013-03-29 2013-03-29 ファイル検索システム、ファイル検索方法およびファイル検索プログラム
PCT/JP2014/057120 WO2014156764A1 (ja) 2013-03-29 2014-03-17 ファイル検索システム、ファイル検索方法およびファイル検索プログラム
TW103111159A TW201437833A (zh) 2013-03-29 2014-03-26 檔案檢索系統、檔案檢索方法及檔案檢索程式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013075155A JP2014199615A (ja) 2013-03-29 2013-03-29 ファイル検索システム、ファイル検索方法およびファイル検索プログラム

Publications (1)

Publication Number Publication Date
JP2014199615A true JP2014199615A (ja) 2014-10-23

Family

ID=51623745

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013075155A Pending JP2014199615A (ja) 2013-03-29 2013-03-29 ファイル検索システム、ファイル検索方法およびファイル検索プログラム

Country Status (3)

Country Link
JP (1) JP2014199615A (ja)
TW (1) TW201437833A (ja)
WO (1) WO2014156764A1 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003157187A (ja) * 2001-11-21 2003-05-30 System Intelligent Kk 2つのバイナリ情報の差分を抽出するアルゴリズム
JP4467965B2 (ja) * 2003-12-08 2010-05-26 株式会社野村総合研究所 差分ファイル作成プログラム及び方法

Also Published As

Publication number Publication date
TW201437833A (zh) 2014-10-01
WO2014156764A1 (ja) 2014-10-02

Similar Documents

Publication Publication Date Title
JP6051212B2 (ja) 反復データの処理
WO2015184992A1 (zh) 一种识别重复图片的方法、图片搜索去重方法及其装置
CN107729526B (zh) 一种文本结构化的方法
US11249665B2 (en) Object synthesis
US9357007B2 (en) Controlling storing of data
CN106557545A (zh) 视频检索方法和装置
US9317205B2 (en) Information processing system and control method thereof
CN110879687B (zh) 一种基于磁盘存储的数据读取方法、装置及设备
JP2014041452A (ja) 重複除去装置、重複除去方法及び重複除去プログラム
KR102260631B1 (ko) 중복 이미지 파일 검색 방법 및 장치
RU2716553C1 (ru) Устройство создания сигнатуры, способ создания сигнатуры, носитель записи, в котором записана программа создания сигнатуры, и система определения программного обеспечения
CN108573172B (zh) 一种数据校验、存储方法及装置
Sari et al. A review of graph theoretic and weightage techniques in file carving
JP2012164130A (ja) データ分割プログラム
US20140075150A1 (en) Method for generating a delta for compressed data
US20140340778A1 (en) De-Duplication
WO2014156764A1 (ja) ファイル検索システム、ファイル検索方法およびファイル検索プログラム
JP2020525949A (ja) メディア検索方法及び装置
US10853177B2 (en) Performant process for salvaging renderable content from digital data sources
CN113780042A (zh) 图片集操作方法、图片集标注方法和装置
Dandass et al. An empirical analysis of disk sector hashes for data carving
JPWO2020065778A1 (ja) 情報処理装置、制御方法、及びプログラム
WO2021047576A1 (zh) 日志记录处理方法、装置、设备及机器可读存储介质
WO2020065960A1 (ja) 情報処理装置、制御方法、及びプログラム
JP2013073526A (ja) 差分バックアップシステム、差分バックアップ方法、及びプログラム

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20160615