(57)【要約】【課題】コピー元記録媒体に記録されているデータとコピー先記録媒体に記録されているデータとの同一性を早期に確認できるようにする。【解決手段】コピー元ハードディスクドライブ装置６Ｍ（以下「コピー元ＨＤ」）からコピー先ハードディスクドライブ装置６Ｔ1（以下「コピー先ＨＤ」）へデジタルデータをコピーする際に、コピー元ＨＤ６Ｍからバスライン２０に出力されるデータを、コピー先ＨＤ６Ｔ1へ書き込むと同時に、同じバスライン２０に接続されている制御手段３Ｔ2の演算部３１でハッシュ値を演算する。【選択図】図１
2008108410.tif 000002
【特許請求の範囲】
【請求項１】
コピー元ハードディスクドライブ装置に記録されているデータを分割して順に読み取る読取手段と、
前記読取手段で読み取られたデータをコピー先ハードディスクドライブ装置へ読み出された順に書き込む書き込み手段と、
前記読取手段で読み取ったデータを前記書き込み手段へ供給するデータ供給手段と、
前記データ供給手段がデータを書き込み手段へ供給した際に、同時に供給されたデータを受け取り、順に受け取ったデータに基づいてデジタルデータ固有値を順に算出していく固有値算出手段とを備えたコピー装置。
【請求項２】
デジタルデータ固有値はハッシュ値である請求項１に記載のコピー装置。
【請求項３】
前記固有値算出手段が算出したデジタルデータ固有値を、前記コピー先ハードディスクドライブ装置において、データが書き込まれていない空き記憶領域に記録する固有値記録手段を有する請求項１又は２に記載のコピー装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルデータを記録媒体の間で転送した場合に、転送前のデータ内容と転送後のデータの内容とが同一であることを保証するデジタルデータ固有値を算出する機能を備えたコピー装置に関するものである。
【背景技術】
【０００２】
記録媒体の記憶容量が増大している。大容量の記録媒体の間で、記録されているデータを転送してコピーするためのコピー装置が提案されている。このようなコピー装置によって記録データが同じ記録媒体を多数作ることが可能となったが、コピー装置でデータを転送した際に、データの一部が壊れる場合がある。
そこで、コピー元とコピー先の記録媒体の間で、記録されているデータが同一であることを確認するため、ハッシュ値を照合するといった方法が採られる。
このハッシュ関数（hash function）によって、デジタルデータから得られたハッシュ値は、そのデジタルデータの固有値であり、ハッシュ値が同じデジタルデータは、内容の同一が担保されているものと推定できる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
一方、記録媒体の容量は、近年増大しているため、記録媒体に記録されている全てのデジタルデータを読み出して、そのハッシュ値を算出すると、ハッシュ値を得るための演算時間が長期化するという問題がある。特に、データがコピーされた記録媒体間でデータの同一性を確認する場合には、コピー作業の後に、ハッシュ値を算出する作業を行うため、特に作業時間が長期化するといった問題があった。
この発明は、記録媒体間でデータのコピーを行う場合に、コピー元記録媒体に記録されているデータとコピー先記録媒体に記録されているデータとの同一性を早期に確認できるデータ固有値算出機能を有するコピー装置を提供することにある。
【課題を解決するための手段】
【０００４】
以上のような目的は、以下の本発明により達成される。
（１）  コピー元ハードディスクドライブ装置に記録されているデータを分割して順に読み取る読取手段と、
前記読取手段で読み取られたデータをコピー先ハードディスクドライブ装置へ読み出された順に書き込む書き込み手段と、
前記読取手段で読み取ったデータを前記書き込み手段へ供給するデータ供給手段と、
前記データ供給手段がデータを書き込み手段へ供給した際に、同時に供給されたデータを受け取り、順に受け取ったデータに基づいてデジタルデータ固有値を順に算出していく固有値算出手段とを備えたコピー装置。
（２）  デジタルデータ固有値はハッシュ値である上記（１）に記載のコピー装置。
（３）  前記固有値算出手段が算出したデジタルデータ固有値を、前記コピー先ハードディスクドライブ装置において、データが書き込まれていない空き記憶領域に記録する固有値記録手段を有する上記（１）又は（２）に記載のコピー装置。
【発明の効果】
【０００５】
本発明のコピー装置によれば、コピー元ハードディスクドライブ装置からコピー先ハードディスクドライブ装置にデータコピー処理を行っている際に、そのコピーされるデータの固有値の算出処理が同時に行われているので、コピー処理が完了した時点で、固有値が算出されており、即座に、コピー元ハードディスクドライブ装置に記録されているデータとコピー先ハードディスクドライブ装置に記録されているデータの同一性を確認することが可能となり、コピー作業の効率化を図ることができる。また、算出した固有値をコピー先ハードディスクの空き領域に記録することにより、固有値の管理が容易となる。
【発明を実施するための最良の形態】
【０００６】
以下、本発明のコピー装置１の好適実施形態について添付図面に基づいて詳細に説明する。
【０００７】
本発明のコピー装置１は、マスター側ハードディスクドライブ装置６Ｍとの間で、コマンドやデータの送受信を行うマスター制御手段３Ｍと、第１のターゲット側ハードディスクドライブ装置６Ｔ1との間で、コマンドやデータの送受信を行う第１のターゲット制御手段３Ｔ1と、第２のターゲット側ハードディスクドライブ装置６Ｔ2との間で、コマンドやデータの送受信を行う第２のターゲット制御手段３Ｔ2と、各制御手段３Ｍ、３Ｔ1、３Ｔ2へ制御内容を指示する中央制御手段２と、これらの制御手段２、３Ｍ、３Ｔ1、３Ｔ2を相互に通信可能に接続するバスライン２０とを備えている。
【０００８】
マスター側制御手段３Ｍには、外部メモリ４Ｍと、マスター側（コピー元）ハードディスクドライブ装置６Ｍを接続するための接続部（コネクタ）５Ｍとが接続されている。外部メモリ４Ｍには、マスター側ハードディスクドライブ装置６Ｍから読み取ったデータが、一時格納される。
ターゲット側制御手段３Ｔ1には、外部メモリ４Ｔ1と、ターゲット側（コピー先）ハードディスクドライブ装置６Ｔ1を接続するための接続部（コネクタ）５Ｔ1とが接続されている。外部メモリ４Ｔ1には、ターゲット側ハードディスクドライブ装置６Ｔ1に書き込まれるデータが、一時格納される。
同様に、ターゲット側制御手段３Ｔ2には、外部メモリ４Ｔ2と、ターゲット側（コピー先）ハードディスクドライブ装置６Ｔ2を接続するための接続部（コネクタ）５Ｔ2とが接続されている。外部メモリ４Ｔ2には、ターゲット側ハードディスクドライブ装置６Ｔ2に書き込まれるデータが、一時格納される。
【０００９】
図２に示されているように、ターゲット側制御手段３Ｔ2には、内部に演算部３１と、内部メモリ３２を備えている。内部メモリ３２は、ハッシュ値を演算するための演算プログラムや、ハードディスクドライブ装置との間で送受信されるコマンドなどを記憶したＲＯＭや、ハッシュ関数によって算出されたハッシュ値を記憶する書き換え可能なＲＡＭ、ワーキングエリアとしてのＲＡＭなどを有している。
中央制御手段２は、処理部とメモリとを備え、処理部によってコピー動作指示や、ハッシュ値計算指示等が行われ、メモリには、コピー処理をおこなうためのプログラムや、他の制御手段３Ｔ1、３Ｔ2等へ送信する指示コマンド等が記録されているほか、ワーキングエリアとしてのメモリが備えられている。
【００１０】
これらの制御手段２、３Ｍ、３Ｔ1、３Ｔ2は、マイクロコンピュータやＰＬＤ（Programmable Logic Device）などの集積回路で構成される。この装置１は、マスター側ハードディスクドライブ装置６Ｍに記録されているデータを、２つのターゲット側ハードディスクドライブ装置６Ｔ1、６Ｔ2にコピーするモードと、２つのターゲット側ハードディスクドライブ装置６Ｔ1、６Ｔ2の一方にデータをコピーし、コピーとして作成されたターゲット側ハードディスクドライブ装置のハッシュ値を同時に演算できるモードの２つのモードを備えている。
【００１１】
このように構成されたコピー装置１の動作について、図３〜図５に示されているフローチャートに基づいて説明する。図３は、ハッシュ値演算モードにおける、中央制御手段２の制御フローチャートを示すものである。
最初に接続されたマスター側ハードディスクドライブ装置６Ｍの容量を確認する（ステップＳ１０１）。次に、マスター側ハードディスクドライブ装置６Ｍに接続されている制御手段３Ｍの外部メモリ４Ｍの記憶容量で、ステップＳ１０１で読み取った容量を除して、マスター側ハードディスクドライブ装置の記憶容量の全領域を読み出すために必要な読取回数Ｎを算出する（ステップＳ１０３）。
【００１２】
制御手段３Ｍに対して、読み出し命令を出力する（ステップＳ１０５）。これに基づき、制御手段３Ｍは、マスター側ハードディスクドライブ装置６Ｍの記憶領域から、外部メモリ４Ｍの容量分のデータを読み出し、読み出したデータを外部メモリ４Ｍに記録する。具体的なデータが書き込まれる領域か否かにかかわりなく、物理的に設定された全記憶領域を読み出すミラーコピーを行うための処理であるため、実際のデータが書き込まれていない領域を読み出した場合の信号であっても、この読み出したときに得られた信号をデータとみなして処理を行う。
【００１３】
次に制御手段３Ｍに対して、送信命令を出力する（ステップＳ１０７）。これによって、制御手段３Ｍは、ステップＳ１０５に基づき外部メモリ４Ｍに記録されていたデータをバスライン２０に出力する。バスイラン２０を介して、各制御手段３Ｔ1、３Ｔ2は、データを取り込み、外部メモリ４Ｔ1、４Ｔ2にそれぞれ取り込んだデータを記録する。
そして、制御手段３Ｔ1、３Ｔ2に対して、ターゲット側ハードディスクドライブ装置６Ｔ1、６Ｔ2にデータを書き込むことを指令する書き込み命令を出力すし（ステップＳ１０９）、読み出し回数ｍをインクリメントする（ステップＳ１１１）。さらに、読み出し回数ｍがステップＳ１０３で求めたコピー終了読み出し回数Ｎに到達したか判断し（ステップＳ１１３）、到達していない場合には（ステップＳ１１３：Ｎ）、ステップＳ１０５〜１１３を繰り返し実行する。到達した場合には（ステップＳ１１３：Ｙ）、終了コマンドを制御手段３Ｔ1、３Ｔ2へ出力する（ステップＳ１１５）。
【００１４】
通常のコピーモードでは、ここで処理が終了する。ハッシュ値算出モードでは、ステップＳ１１５の次に、制御手段３Ｔ2で算出されているハッシュ値を読み込む（ステップＳ１１７）。このハッシュ値は、ターゲット側ハードディスクドライブ装置６Ｔ1にデータを書き込む処理が実行されている際に、同時に算出されているので、ターゲット側ハードディスクドライブ装置６Ｔ1へのデータのコピーが終了した時点で、既に最終的なハッシュ値は算出されている。
読み取ったハッシュ値は、制御手段２に接続されている出力装置（図示しない）から、出力される（ステップＳ１１９）。出力装置は、例えば、ディスプレイ装置やプリンタであり、ディスプレイ装置に表示され、或いは、プリンタに印刷されることにより出力される。プリンタに印刷する場合には、粘着面を備えたシールに印刷すれば、ハッシュ値が印刷されたシールを、そのハッシュ値を固有値とするデータが書き込まれたターゲット側ハードディスクドライブ装置に貼り付けることで、データ固有値を常時記録媒体に表示させることができる。
【００１５】
次に、図４に基づいて、ターゲット側ハードディスクドライブ装置６Ｔ1に接続された制御手段３Ｔ1の処理について説明する。図４に示されているフローチャートは、図３の処理に平行して行われる。
ステップＳ１０７の送信命令によって、バスライン２０に出力されたデータを受信したか判断する（ステップＳ２０１）。受信しない場合には、この処理を繰り返す。受信した場合には、外部メモリ４Ｔ1に、取り込んだデータを記録する（ステップＳ２０３）。次にステップＳ１０９の書き込み命令を受信したか判断し（ステップＳ２０５）、受信した場合には、ターゲット側ハードディスクドライブ装置６Ｔ1へ、外部メモリ４Ｔ1に記録されていたデータを書き込む（ステップＳ２０７）。そして、ステップＳ１１５の終了コマンドを受信したか判断し（ステップＳ２０９）、受信していない場合には（ステップＳ２０９：Ｎ）、ステップＳ２０１〜２０９を繰り返す。受信した場合には（ステップＳ２０９：Ｙ）、処理を終了する。このような処理は、コピーモードの場合には、ターゲット側ハードディスクドライブ装置６Ｔ2に接続された制御手段３Ｔ2においても同時に行われる。バスライン２０に出力されたデータは、同時に制御手段３Ｔ1、３Ｔ2に供給されるからである。
【００１６】
図５に示されているフローチャートに基づいて、データ固有値演算処理について説明する。この実施形態では、ターゲット側ハードディスクドライブ装置６Ｔ2に接続される制御手段３Ｔ2が、データ固有値算出手段とて機能する。
ステップＳ１０７の送信命令によって、バスライン２０に出力されたデータを受信したか判断する（ステップＳ３０１）。受信しない場合には、この処理を繰り返す。受信した場合には、外部メモリ４Ｔ2に、取り込んだデータを記録する（ステップＳ３０３）。次にステップＳ１０９の書き込み命令を受信したか判断し（ステップＳ３０５）、受信した場合には、演算部３１で外部メモリ４Ｔ2のデータのハッシュ値を演算する（ステップＳ３０７）。算出されたハッシュ値は、一旦内部メモリ３２内にストアされる（ステップＳ３０９）。そして、ステップＳ１１５の終了コマンドを受信したか判断し（ステップＳ３１１）、受信していない場合には（ステップＳ３１１：Ｎ）、ステップＳ３０１〜３１１を繰り返す。この場合に、外部メモリ４Ｔ2には、マスター側ハードディスクドライブ装置６Ｍから順に読み出されたデータが上書きれていく。このデータを、ステップＳ３０１〜３１１の処理を繰り返す度に、ステップＳ３０７のハッシュ値計算において、順に組み込んで計算されていく。このため、制御手段３Ｔ2にデータを送信すれば、その度毎に、送られた全データのハッシュ値（固有値）が演算されていくこととなる。
【００１７】
最終的に、最後に送られたデータを組み込んだハッシュ値の計算が終了した時点で、ターゲット側ハードディスクドライブ装置６Ｔ1に記録された全データのハッシュ値の計算が終了していることとなる。
そして、ステップＳ１１５の終了コマンドを受信した場合には（ステップＳ３１１：Ｙ）、内部メモリ３２に記録されている最終的に算出されたハッシュ値を制御手段２へ供給する（ステップＳ３１３）。更に、ターゲット側ハードディスクドライブ装置６Ｔ2の空き領域に、最終的に算出されているハッシュ値をテキストファイルとして記録する。ここで空き領域とは、コピーされたデジタルデータが記録されていない領域である。空き領域は、ターゲット側ハードディスクドライブ装置６Ｔ2の記録領域において、例えば、ミーラーコピーされた領域以外の領域として、検出することができる。この場合、ハードディスクは、ＦＡＴ３２方式でフォーマットされており、記録されたハッシュ値をオペレーションシステムで管理することが可能である。
なお、上記図５に示されたフローチャートにおいて、ステップＳ３０３、３０５を省略してもよい。
【図面の簡単な説明】
【００１８】
【図１】本発明のコピー装置の構成を示すブロック図である。
【図２】制御手段の構成を示すブロック図である。
【図３】処理内容を示すフローチャートである。
【図４】書き込み処理の処理内容を示すフローチャートである。
【図５】ハッシュ値計算処理の内容を示すフローチャートである。
【符号の説明】
【００１９】
【図１】
2008108410.tif 000003
【図２】
2008108410.tif 000004
【図３】
2008108410.tif 000005
【図４】
2008108410.tif 000006
【図５】
2008108410.tif 000007