(57)【要約】【課題】  データ秘匿性とデータ保全が向上された、データの分散保管ための方法、システム、及びプログラムを提供。【解決手段】  分散保管において、エラー訂正を可能にする冗長コードを導入することにより、データ保全性を高める。更に、ビットやバイトのような単位データ単位で、データを不特定個数の管理単位に分割し、各々の管理単位を分散管理することで、データ秘匿性を高める。  分割前や分割後のデータに更に、暗号化を加えることにより、データ秘匿性はいっそう向上する。【選択図】  図１
2005202458.tif 000002
【特許請求の範囲】
【請求項１】
データをその管理単位で分散するのではなく、一旦ビットやバイトのような単位データ単位で、不特定個数の管理単位に分割することで、分割単位、分割総数、分割の並びの情報の組み合わせ分のデータ秘匿性を得られる方法。
【請求項２】
分割されたデータ管理単位に、エラー訂正を可能にする冗長コードを導入することにより、冗長コードの量や冗長コードの管理単位に対応したデータ管理単位の修復やエラー検出が行えることによる、データ保全の向上の方法。
【請求項３】
分割前や分割後のデータに、暗号化を加えることにより、データ秘匿性を得られる方法。
【請求項４】
データ管理単位を保管する装置をネットワーク上に置くことにより、災害を含む不慮の装置障害に対する、データ保全の向上の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の記憶装置を利用した、向上されたデータ秘匿性とデータ保全のシステム、方法、及びプログラムに関する。
【背景技術】
【０００２】
あるデータを分散管理することで、データ保全性を高めようとする試みは、すでに一般的に行われている。物理的にデータを分散管理することで、例えば、地震のような自然災害が発生しても、全てのデータを失わずに済む。自然災害だけの観点からすれば、全てのデータを重複して持つことによって、データを失う心配も最小限に抑えられる。
【０００３】
しかしながら多くの場合、分散保管された時でも、各々の保管先のデータが単独で意味を持つ情報を含んでいたり、またその分割の単位が比較的判り易い形である場合が多かった。これらは、主にデータ保全性を高めるためだけの仕組みであったため、必ずしもデータ秘匿性を高める仕組みとはなっていなかった。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ある単一システムが、完全なデータ秘匿性とデータ保全性を持った場合のシステムの強度（データ保全性）を１とした場合、実際の単一システムでシステムの強度は１に満たない。つまり、現実問題として、システムの強度を１に出来るようなシステムはつくれない。
【０００５】
そのため、従来の方法では、データの分散保管を行うと、データ秘匿性とデータ保全性が低下していた。
【０００６】
つまり分散保管された場合、システム全体としての強度は、各々のシステムの中で一番強度の小さいものと同じになるからである。一般的に、設計上は単一システムとしての強度がある水準をこえるものであったとしても、システム毎の強度にバラつきが出てくることは避けられない。よってばらつきによるシステム強度の低下は、分散管理での分散の数に正の相関関係があると考えられる。
【課題を解決するための手段】
【０００７】
分割前のデータを分割し、それらをデータ管理単位にする。その時に、各々のデータ管理単位を単に、分割された情報と呼ぶことにする。その時、その分割された情報を保管する装置（分散保管装置）をネットワーク上に置くことにより、物理的に遠くに配置出来ることになる。その結果、災害を含む不慮の装置障害に対する、データ保全の向上が見込まれる。ネットワークは、実装上必須ではなく、ハンドキャリーを含めた代替の輸送手段があれば良い。
【０００８】
分散保管において、冗長コードを導入することにより、データ保全性を高める。例えばそれが、エラー訂正を可能にする冗長コードであった場合には、データをＮ個に分割し、Ｅ個の冗長コードを付加することで、任意のＥ個のエラーを認めることも可能である。またそれが、エラー検出だけの冗長コードであった場合には、データ改竄を含めた読出しエラーの検査に使用出来る。
【０００９】
分散保管において、分割されたデータが単独で意味を持つ情報を含まないようにするために、ビットやバイトのような単位データ単位で、データを不特定個数の管理単位に分割し、各々の管理単位を分散管理することで、データ秘匿性を高める。つまり、原則として、分割された全ての情報を見つけ出さないと、データの再構築が出来なくなるために、データ秘匿性を高める結果となる。更に、分割の順序と個数を明らかにしないことで、データの再構築の自由度が高くなり、結果としてデータ秘匿性を高めることにもつながる。もしも分割された情報が、全て単一の装置にある場合、その情報を探し出せるかもしれない。しかしながら、それが単にネットワーク上にあることが判っているだけだと、実質上探し出すことは不可能である。
【００１０】
分散保管において、冗長コードを導入することは、データ保全性のためだけではない。その冗長コードの種類や有無の適用方法を公開しないことで、データ秘匿性を高めることにもつながる。
【００１１】
分割前や分割後のデータに更に、既知の暗号化を加えることにより、データ秘匿性はいっそう向上する。
【発明の効果】
【００１２】
したがって、本発明は上記課題を解決し、データの分散保管においてもその強度を下げないだけでなく、ある条件によっては、その強度をあげるための方法、システム、及びプログラムが提供される。
【００１３】
エラー訂正を可能にする冗長コードを導入することで、逆に冗長コードがエラーを訂正できる範囲内では、分散保管された情報の一部を取り出せなくても、データの再構築が可能となる。これは、ある条件の範囲内であれば、分散保管した記憶装置の故障に対応出来ることを意味している。
【００１４】
エラー訂正を可能にする冗長コードは、一方で各々の情報の改竄に対する検査にも使用できる。情報の改竄があったばあい、冗長コードでその場所を特定することも可能であり、その場合、改竄された情報を捨て去ることで、改竄前のデータに再構築することも出来る。
【００１５】
原則全ての情報が正しい順序で揃わなければ、データの再構築は出来ないため、単一システムから情報を引き出す手間が、分散管理においては、最終的に得られる情報の個数分かかる。その観点からすると、システムの強度は、分散する方が大きくなっている。
【００１６】
分割された情報をネットワークを経由して分散管理装置に保管する場合、その装置の存在を探し出すことは困難になるため、ネットワークを利用することで、単一のシステムに保管した場合に比べ、データ秘匿性が向上する。
【発明を実施するための最良の形態】
【００１７】
分散管理される実体は、同一の記憶装置上に置くことも可能である。しかしながら、発明を実施するための最良の形態としては、記憶装置の管理が、なるべく遠くにあることである。それは、論理的にも物理的にも当てはまる。論理的に遠くというのは、例えば、データの管理方法が違うＯＳ（オペレーティング・システム）配下に置くということである。物理的に遠くに置くというのは、言葉通りに、記憶装置の設置場所が日本と米国といったような地理的に遠くの場所に置くことである。
【００１８】
論理的にも物理的にも遠くに置かれた、記憶装置は、論理的なインタフェースを統一することで、その距離感（実装の複雑さ）を克服することが出来る。現在のインターネットに於けるＦＴＰプロトコルの利用等がその具体例に当たる。
【実施例】
【００１９】
図１は、本発明による分散保管装置５や分散管理制御装置１の一実施形態を示したネットワーク配置図である。
【００２０】
データの保管時は、図１において、この発明の分散管理制御装置１は、一旦分割前データ３を記憶領域内２に格納し、個々のデータに対応付けられた分割管理情報４に従い、記憶領域内２内部に分散保管するための情報を図２のフロー図に示される例に従って、データの分割を行う。
【００２１】
更に分割されたデータは、最終的に分割された情報７として分散保管装置５の記憶領域内６内部に各々格納される。
【００２２】
分割された情報７は、必要があれば、ネットワーク８を経由して分散保管装置５に送られる。本発明においてこの場合、ネットワーク上のデータ転送プロトコルのような、データの交換手法は特に規定しない。例えば、インターネット上のＦＴＰ（ファイル転送プロトコル）のような仕様の公開された手法であっても関知しない。ハンドキャリーを含め何らかの手段で、分散保管装置５へ送られれば良しとする。
【００２３】
分割された情報７は、分散管理制御装置１とローカルに接続された分散保管装置５に送られても構わない。ネットワーク８を経由した場合とローカルに接続した場合とでソフトウエア上の問題は変わらない。しかしながら、物理的に近くに分散保管装置５があった場合、地震のような局地的な災害にあった時に、全てのデータを失う危険がある。分散保管装置５をネットワーク８を経由して、利用する場合、そのような災害の被害を最小限に留めることも可能である。
【００２４】
分割管理情報４の保管管理は、本発明での管理の対象外である。フレキシブルディスクのような外部の媒体に、保管が可能であるのならば保管しても構わない。また、分散管理制御装置１の記憶領域内２にそのまま保管されていても構わない。例えば、複数の分割管理情報４を纏めて、１つのデータとして、本発明での分散管理の対象にしても構わない。
【００２５】
本発明では、データの意味は問わない。上の例のように分割管理情報４や分割された情報７を幾つか集めることで、意味のあるデータを形成する場合、そのデータは、本発明の分割前データ３として処理の対象となる。
【００２６】
データの復元時は、図１において、分散保管装置５の記憶領域内６内部に各々格納された分割された情報７全を、一旦分散管理制御装置１の記憶領域内２に格納し、復元されるデータに対応する分割管理情報４と共に、図３のフロー図に示される例に従って、データの復元を行う。
【００２７】
データの改竄がなければ、図２のフロー図に示された冗長コードにより許された範囲内では、分割された情報７の取得が失敗してもデータの復元が可能になる。本発明では、データの復元と冗長コードとの関係は、特に規定しない。しかしながら、冗長コードの選び方は、本発明のデータ保全性の優劣を定める重要な要因であるので、出来うる限り高度なかつ経済的な冗長コードを選ぶ必要がある。
【００２８】
図２は、図１の分散管理制御装置１において、データの保管時の処理フロー図である。
【００２９】
本発明では、分割前暗号化と分割後暗号化における、暗号化の手法に関しては、特に規定しない。分割された情報７の生成過程を考えると、分割された情報７自体の分割前データ３に対するデータ秘匿性が比較的高いと考えられるからである。暗号化を使用した場合、暗号化や復号化のために使用される鍵が必要になってくるが、それらは必要に応じて、分割管理情報４に追加される。ＲＳＡ（公開鍵型暗号）のような高度な暗号化に必要な鍵も、排他的論理和を使用した比較的単純な暗号化に必要な鍵も、その種類、適用場所（分割の前後）と共に分割管理情報４にされるが、その保管形式も特に規定しない。
【００３０】
２０３で示される「単位データ単位に分割」の処理における単位データの大きさは、本発明の規定の対象外である。単位データは、比較的小さな情報の塊を指している。その単位で分割することで、データに含まれる意味ある情報の塊を作らないようにすることが単位データ導入の主旨である。規定の対象外ではあるが、単位データとして例えば、データをビット列と見做した時の１ビットがそれにあたる。同様に２ビットも単位データとして例に挙げられる。比較的考え易い実装単位データには、１ビット、１バイト、１ワード（１６ビット等）がある。分割された情報になるべく纏まった意味が発生しないようにするためには、１Ｋ（キロ）バイトのような大きさの単位データは、本発明の主旨から外れる単位データとなる。
【００３１】
２０５で示される「エラー訂正を可能にする冗長コードを追加する」の処理における冗長コードは、本発明の規定の対象外である。所謂ＥＣＣ（エラー訂正コード）を含め色々な冗長コードが存在するが、そのコードの導入目的により期待する効果も変わる。ここでは、そのコードを利用することで、データ保全性を高めることが、冗長コード導入の主旨である。規定の対象外ではあるが、冗長コードとして例えば、系列を別にするパリティがそれにあたる。同様に、ハミング符号等も例に挙げられる。主に図２や図３では、系列を別にするパリティを冗長コードとして選んだという前提にした記述を行っている。
【００３２】
図３は、図１の分散管理制御装置１において、データの復元時の処理フロー図である。
【００３３】
処理としては、基本的に図２処理フロー図の逆を行っているだけである。冗長コードの選択如何でフロー図が変更される場合がある。ここでは、上記のように系列を別にするパリティを冗長コードとして選んだという前提にした記述を行っている。
【図面の簡単な説明】
【００３４】
【図１】ネットワーク配置図  本発明による分散保管装置や分散管理制御装置の一実施形態を示したネットワーク配置図である。
【図２】フロー図  本発明による分散管理制御装置内での、データの分散保管を行う一実施例を示すフロー図である。
【図３】フロー図  本発明による分散管理制御装置内での、分散された情報に基づき、データを復元を行う一実施例を示すフロー図である。
【符号の説明】
【００３５】
１  分散管理制御装置
２  分散管理制御装置内記憶領域
３  分割前データ（復号後データ）
４  分割管理情報
５  分散保管装置
６  分散保管装置内記憶領域
７  分割された情報
８  ネットワーク
【図１】
2005202458.tif 000003
【図２】
2005202458.tif 000004
【図３】
2005202458.tif 000005