JP2020194462A - ウイルス未発症・復元システム、ウイルス未発症・復元方法、ウイルス未発症・復元プログラム及び記憶媒体 - Google Patents

ウイルス未発症・復元システム、ウイルス未発症・復元方法、ウイルス未発症・復元プログラム及び記憶媒体 Download PDF

Info

Publication number
JP2020194462A
JP2020194462A JP2019100810A JP2019100810A JP2020194462A JP 2020194462 A JP2020194462 A JP 2020194462A JP 2019100810 A JP2019100810 A JP 2019100810A JP 2019100810 A JP2019100810 A JP 2019100810A JP 2020194462 A JP2020194462 A JP 2020194462A
Authority
JP
Japan
Prior art keywords
information
distributed
restoration
original file
distribution
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
JP2019100810A
Other languages
English (en)
Inventor
徳行 山田
Noriyuki Yamada
徳行 山田
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.)
Innovation Firm Co Ltd
MIURA KK
Original Assignee
Innovation Firm Co Ltd
MIURA KK
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 Innovation Firm Co Ltd, MIURA KK filed Critical Innovation Firm Co Ltd
Priority to JP2019100810A priority Critical patent/JP2020194462A/ja
Publication of JP2020194462A publication Critical patent/JP2020194462A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】オリジナルファイルである秘密情報の漏洩防止及びウイルス感染防止ができる、秘密分散技術活用によるウイルス未発症・復元システムを提供する。【解決手段】オリジナルファイルの分散と復元を繰り返すウイルス未発症・復元方法であって、閾値分散法により予め定めた復元に必要な数以上の複数の分散情報にオリジナルファイルを分散する分散手順と、前記分散後に前記オリジナルファイルを廃棄する廃棄手順と、前記分散情報からオリジナルファイルを復元させ、前記復元させたオリジナルファイルを排他制御下で管理する復元・排他制御手順と、閾値分散法により予め定めた復元に必要な数以上の複数の再分散情報に前記復元させたオリジナルファイルを再分散させる再分散手順と、前記再分散後に前記復元させたオリジナルファイルを廃棄する廃棄手順と、を備え、前記復元・排他制御手順、前記再分散手順、再分散後の前記廃棄手順を順にサイクルとして繰り返すことで、ウイルス未発症・復元を行う。【選択図】図12

Description

本発明は、秘密情報の漏洩防止とウイルス感染防止ができる、秘密分散法である閾値分散法活用によるウイルス未発症・復元システム、ウイルス未発症・復元方法、ウイルス未発症・復元プログラム及び記憶媒体に関する。
特許文献1には、秘密分散法を用いて秘密情報を分散することにより形成された複数の分散データのうちの少なくとも2つの分散データを結合することにより、前記秘密情報を復元するように構成される秘密分散モジュールと、前記複数の分散データの各々の対応する記憶装置のデータ領域からの読み出し又は当該データ領域への書き込みを制御するように構成される制御モジュールとして情報処理装置のプロセッサを機能させるためのコンピュータプログラムであって、前記制御モジュールは、前記秘密情報を仮想ドライブ内に保持するように構成され、前記仮想ドライブを生成するための仮想ドライブメタデータは、少なくとも第1の分散メタデータ及び第2の分散メタデータへと分散されており、前記制御モジュールは、前記第1の分散メタデータを外部記憶装置である第1の記憶装置から読み出し、前記第2の分散メタデータを前記第1の記憶装置とは異なる第2の記憶装置から読み出し、少なくとも前記第1の分散メタデータ及び前記第2の分散メタデータから、前記秘密分散モジュールに前記仮想ドライブメタデータを復元させ、復元された前記仮想ドライブメタデータに基づいて、前記仮想ドライブを生成するように構成されるコンピュータプログラムが開示されている。
特許文献2には、秘密情報を2以上の分散情報に分散して管理し、前記分散情報を集積することにより、前記秘密情報を復元する秘密情報分散システムであって、分散情報生成装置と、記憶装置と、分散情報復元装置とを有し、前記分散情報生成装置は、秘密情報をアクセス構造に従って2以上の分散情報に符号分散する秘密情報分散部と、多項式の全ての係数をランダムに選ぶことにより、前記秘密情報を分散する数に相当する個数の乱数列を作製し、前記全ての係数をアクセス構造に従って2以上の乱数分散情報に符号分散する乱数情報分散部と、前記秘密情報と前記乱数分散情報とを入力として、ハッシュ値が前記乱数列に相当するハッシュ関数を作製し、前記ハッシュ関数を成立させる鍵を選ぶことにより、復元した秘密情報が改竄されたものであるか否かをチェックするためのデータを、前記秘密情報を分散する数に相当する個数のチェックデータとして独立に設定するチェックデータ用生成部とを有し、前記分散情報生成装置は、前記分散情報と前記乱数情報と前記チェックデータとを一組の情報として出力するものであり、前記記憶装置は、前記秘密情報を分散する数に相当する台数分が備えられ、各記憶装置は、前記分散情報と前記乱数情報と前記チェックデータとを一組の情報として記憶するものであり、前記分散情報復元装置は、前記記憶装置から分散情報を読み出し、前記アクセス構造に従って前記秘密情報を復元する秘密情報復元部と、前記記憶装置から乱数情報を読み出し、前記アクセス構造に従って前記乱数列を復元する乱数情報復元部と、前記記憶装置からチェックデータを読み出し、その読み出したチェックデータが前記ハッシュ関数を満たす場合に、前記復元した秘密情報が改竄されていないことを判定する不正検知部と、を有することを特徴とする秘密情報分散システムが開示されている。
特許文献3には、サーバに対してデータを入出力する一つまたは複数のクライアントと、複数のファイルを保持し、クライアントから入力されたデータを処理し、ファイル更新データを記憶装置に格納するサーバと、サーバのファイルバックアップをとるバックアップ用ファイルサーバと、前記クライアント、サーバ及びバックアップ用ファイルサーバを接続する通信ネットワークとからなる分散システムにおけるファイルバックアップ方法であって、前記サーバは、ファイル毎に、該ファイルの更新回数をカウントする更新カウンタと、バックアップをとるための更新回数を定めた更新規定回数を設定したファイル管理テーブルを有し、前記更新カウンタのカウント値と前記更新規定回数の値とが所定の条件を満たした時点で、前記記憶装置内の当該ファイルのデータをバックアップデータとして前記バックアップ用ファイルサーバに送ることを特徴とする分散システムのファイルバックアップ方法が開示されている。
特許第6019514号公報 国際公開WO2010/147215号公報 特開平6−250902号公報
特許文献1に記載の発明は、図7に示されているように、ステップS24において、第1及び第2の分散ドライブの間の対応関係を検証し、例えば、第1の分散ドライブ識別子及び第2の分散ドライブ識別子が所定の共通的な文字列を含んでおりかつ期待される枝番を正確に有しているかの判定、又は、作成日時又は更新日時などのタイムスタンプが一致するかを判定しているが、ウイルスが侵入したか否かの判定をしていない。よって、第1の分散ドライブ識別子及び第2の分散ドライブ識別子が共通又は一致しているという判定で復元したときに、復元した秘密情報のデータがウイルスにより改竄されており元の秘密情報のデータとは異なるという問題があった。
特許文献2に記載の発明は、2以上に分散させた分散情報を集積させて復元した秘密情報が改竄されているか否かを検知するシステムであり、個々の分散情報の改竄を検知する技術ではない。そのため、分散情報にウイルスが侵入しているか否かに関わらず復元させるので、復元させたデータがウイルスに感染されて使用できない場合があるという課題があった。
特許文献3に記載の発明は、オリジナルファイルが改竄されたときに備えて、オリジナルファイルと同じ記憶内容のものをバックアップ用としてインターネットに接続されていない他の記憶装置に記憶させる技術であり、インターネットに接続され使用されているオリジナルファイルの例えばウイルス侵入による感染を防止できないという課題があった。オリジナルファイルがウイルスに感染するとオリジナルファイルは使用不可となり削除せざるを得ないという課題もある。
本発明はこうした問題に鑑み創案されたもので、オリジナルファイルである秘密情報の漏洩防止及びウイルス感染防止ができる、閾値分散法活用によるウイルス未発症・復元システム、ウイルス未発症・復元方法、ウイルス未発症・復元プログラム及び記憶媒体を提供することを目的とする。
以下、ここに添付の図12を参照して、課題を解決するための本発明の手段を説明する。
請求項1に記載のウイルス未発症・復元方法200は、オリジナルファイルの分散と復元を繰り返すウイルス未発症・復元方法200であって、閾値分散法により予め定めた復元に必要な数以上の複数の分散情報にオリジナルファイルを分散する分散手順T2と、前記分散後に前記オリジナルファイルを廃棄する廃棄手順T3と、前記分散情報からオリジナルファイルを復元させ、前記復元させたオリジナルファイルを排他制御下で管理する復元・排他制御手順T5と、閾値分散法により予め定めた復元に必要な数以上の複数の再分散情報に前記復元させたオリジナルファイルを再分散させる再分散手順T6と、前記再分散後に前記復元させたオリジナルファイルを廃棄する廃棄手順T7と、を備え、前記復元・排他制御手順T5、前記再分散手順T6、再分散後の前記廃棄手順T7を順にサイクルとして繰り返すことを特徴とする。
請求項2に記載のウイルス未発症・復元方法200は、閾値分散法によりオリジナルファイルを分散情報に分散するとともに前記オリジナルファイルを廃棄し、前記分散情報から前記オリジナルファイルを復元させるウイルス未発症・復元方法200であって、閾値分散法により、予め定めた復元に必要な数の複数の分散情報にオリジナルファイルを分散し、前記分散情報それぞれに対応するハッシュ値を算出する分散処理ステップS10(SS1、SS2)、T2と、前記分散後に前記オリジナルファイルを廃棄する廃棄処理ステップSS3、T3と、前記分散情報ごとに分散時に算出したハッシュ値と復元時に算出するハッシュ値とを比較し、前記比較でハッシュ値が一致の場合はその分散情報が正常であると判断し、前記比較でハッシュ値が不一致の場合は分散情報が破壊又は改竄されたと判断し、正常と判断した分散情報の数が復元に必要な分散情報の数に到達すると前記正常と判断した分散情報を組み合わせてオリジナルファイルへの復元処理を実行し、前記復元させたオリジナルファイルを排他制御下で管理する復元処理・排他制御管理ステップS90(SS4、S11〜S18、S32〜S36、S42〜S48、T5)と、閾値分散法により、予め定めた復元に必要な数の複数の分散情報に前記復元されたオリジナルファイルを再分散し、前記分散情報それぞれに対応するハッシュ値を算出する再分散処理ステップS19、S37、S49、T6と、前記再分散後に前記復元したオリジナルファイルを廃棄する廃棄処理ステップS20、S38、S50、T7と、を備え、前記復元処理・排他制御管理ステップS90、T5、前記再分散処理ステップS19、S37、S49、T6,再分散の前記廃棄処理ステップS20、S38、S50、T7を順にサイクルとして繰り返すことを特徴とする。
請求項3に記載のウイルス未発症・復元システム80は、閾値分散法によりオリジナルファイルを分散情報に分散するとともに前記オリジナルファイルを廃棄し、前記分散情報から前記オリジナルファイルを復元させるウイルス未発症・復元システム80であって、閾値分散法により、予め定めた復元に必要な数の複数の分散情報にオリジナルファイルを分散し、前記分散情報それぞれに対応するハッシュ値を算出する分散処理手段81と、前記分散後に前記オリジナルファイルを廃棄する廃棄処理手段82と、前記複数の分散情報をそれぞれ異なる記憶装置に記憶し、少なくとも前記複数の分散情報のハッシュ値情報を含むインデックス情報を前記分散情報とは異なる記憶装置に記憶する記憶手段83と、前記分散情報ごとに分散時に算出したハッシュ値と復元時に算出するハッシュ値とを比較し、前記比較でハッシュ値が一致の場合はその分散情報が正常であると判断し、前記比較でハッシュ値が不一致の場合は分散情報が破壊又は改竄されたと判断し、正常と判断した分散情報の数が復元に必要な分散情報の数に到達すると前記正常と判断した分散情報を組み合わせてオリジナルファイルを復元する復元処理手段84と、前記復元させたオリジナルファイルを排他制御下で管理する排他制御手段86と、閾値分散法により、予め定めた復元に必要な数の複数の分散情報に前記復元されたオリジナルファイルを再分散し、前記分散情報それぞれに対応するハッシュ値を算出する再分散処理手段85と、前記再分散後に前記復元したオリジナルファイルを廃棄する廃棄処理手段82と、を備え、前記復元処理手段84による復元処理、前記排他制御手段86による排他制御、前記再分散処理手段85による分散処理、再分散処理後の前記廃棄処理手段82による廃棄処理の順にサイクルとして繰り返すことを特徴とする。
請求項4に記載のウイルス未発症・復元システムは、請求項3において、前記復元処理手段84が、ハッシュ値が不一致と判断された場合、残りの正常な複数の分散情報によりオリジナルファイルを復元し、前記再分散処理手段85が、復元したオリジナルファイルを再分散させることにより、再分散後の分散情報すべてを正常な分散情報に回復させることを特徴とする。
請求項5に記載のウイルス未発症・復元システムは、請求項3又は4において、前記復元処理手段84又は前記再分散処理手段85が、前記分散情報ごとに分散時と復元時とのハッシュ値を比較し、前記比較でハッシュ値が不一致の分散情報を抽出することを特徴とする。
請求項6に記載のウイルス未発症・復元システムは、請求項1から5の何れかにおいて、分散処理部の前段に、オリジナルフォルダを圧縮ファイルに変換する圧縮部を備え、復元処理部の後段に、前記圧縮ファイルを前記オリジナルフォルダに変換する伸長部を備えたことを特徴とする。
請求項7に記載のウイルス未発症・復元プログラムは、請求項1又は2に記載のウイルス未発症・復元方法をコンピュータに実行させることを特徴とする。
請求項8に記載のコンピュータ読み取り可能な記憶媒体は、請求項7に記載のプログラムを記憶したことを特徴とする。
請求項1〜8に記載の発明は、オリジナルファイルを保存することなく、オリジナルファイルを分散し、オリジナルファイルを使用しようとしたときに分散した分散情報からオリジナルファイルを復元し、復元したオリジナルファイルを排他制御下で管理して閲覧や書き込み等の操作をし、操作が終了すると、復元したオリジナルファイルを再分散した後に前記復元したオリジナルファイルを廃棄処理する。そして、再び分散状態にあるオリジナルファイルを使用しようとしたときに分散した分散情報からオリジナルファイルを再復元し、再復元したオリジナルファイルを排他制御下で管理して閲覧や書き込み等の操作をし、前記操作が終了すると、再復元したオリジナルファイルを再々分散した後に前記復元したオリジナルファイルを廃棄処理する。このように、オリジナルファイルは、閲覧や書き込み等の操作をしない間は分散状態にあって、オリジナルファイルは廃棄処理されており、復元処理してオリジナルファイルの閲覧や書き込み等の操作が可能な間は排他制御下で管理するので、常時、オリジナルデータ自体が破壊又は改竄されることが生じないという際立つ効果を奏する。なお、排他制御は、一般的に使用されている意味と同じであり、オリジナルファイルへの書き込み等が行われている間は別のプログラムによる書き込みを禁止する制御を意味する。
また、閾値分散法によりオリジナルファイルを意味のない分散情報に分散させることによりオリジナルファイルの漏洩を防ぎ、分散情報の分散時のハッシュ値と復元しようとするときのハッシュ値の照合により一致した分散情報、すなわちウイルスの侵入のない正常な分散情報のみからオリジナルファイルを復元するので、分散情報から復元が必ず実現するという効果を奏し、オリジナルファイルへのウイルスによる感染を防ぐという効果を奏する。前記オリジナルファイルとしては医療関連データや住宅構造図等の重要な秘密ファイルが該当し、そのようなオリジナルデータ自体を破壊又は改竄させずに保存できるという効果を奏する。
また、分散情報にウイルスが侵入すると、ウイルスはウイルスの作者がプログラムに組み込んだウイルスの起動条件であるトリガを埋め込むので、0と1の羅列で表現したバイナリ情報が変わる。これにより分散情報に基づいてハッシュ関数で算出したハッシュ値が分散時のハッシュ値から変わり異なる値となる。したがって、ハッシュ値の変化有無によりウイルスが分散情報に侵入したか否かがわかるという効果を奏する。
また、ハッシュ値が変わった分散情報をもとにオリジナルファイルを復元することはできない。よって、ウイルスが侵入した分散情報は復元できないので、ウイルスが発症することはない。したがって、ウイルスが侵入した分散情報がオリジナルファイルに対して悪影響を及ぼすことがないという効果を奏する。そして、一般的には侵入したウイルスの種類ごとに駆除ソフトが開発されることからウイルスの種類がわからないと駆除できないが、本発明はいかなるウイルスの種類であってもウイルスが侵入してきたらウイルス侵入前とウイルス侵入後とではハッシュ値が異なるので、このハッシュ値の変化有無の照合を行うことによりいかなるウイルスの種類であってもオリジナルファイルに対するウイルスの感染を防ぐことができるという効果を奏する。
よって、本発明は、分散情報にウイルスが侵入してきても、ウイルスが侵入していない残りの正常な複数の分散情報から復元するので、オリジナルファイルをウイルスによる破壊又は改竄されたことを理由に失うことはないという効果を奏する。また、破壊又は改竄は、分散情報へのウイルスの侵入の他に、分散情報を記憶させた記憶装置の故障の場合や操作ミスで分散情報を変えた場合等が該当する。
オリジナルファイルを閾値分散法で一つ一つは意味のないファイルに分散するので、一つの分散情報が漏洩してもオリジナルファイルを復元させることはできないので、秘密情報が漏洩しないという効果を奏する。
また、ウイルス侵入や操作ミス等により破壊又は改竄される分散情報数を予測して、万一分散情報が破壊又は改竄されても残りの正常な複数の分散情報からオリジナルファイルが復元できるように事前に対策を講じることができるという効果を奏する。
また、分散情報の数が復元に必要な分散情報の数に到達すると正常と判断した分散情報を組み合わせてオリジナルファイルを復元すると記載され、かつ、図9に示すように、例えば復元に必要な分散情報数が2つの場合、分散情報の一つ目及び二つ目が正常の場合は復元処理・排他制御下で管理するステップS18に進み、分散情報の一つ目と二つ目が、正常が一つと破壊又は改竄が一つの場合は第1種分散情報復元・再分散処理のステップS21に進め、分散情報の一つ目と二つ目がともに破壊又は改竄された場合は第2種分散情報復元・再分散処理のステップS21に進む。このように、復元に必要な正常な分散情報数が確保された時点で復元処理に進むので、効率的に復元処理ができるという効果を奏する。
請求項4に記載の発明は、ウイルスが侵入していない残りの正常な複数の分散情報からオリジナルファイルを復元して、再び閾値分散法によりオリジナルファイルを意味のない分散情報に分散させることができる。これにより、ウイルスが侵入した分散情報を上書きにより元通りに復元させることができるという効果を奏する。なお、ウイルスが侵入した分散情報の拡張子が破壊又は改竄されている場合などの上書きができない場合は削除等を実行する。
請求項5に記載の発明は、ウイルス侵入した分散情報を集めてリスト化して検体とすれば、これを検体として新たなウイルス駆除ソフトを開発することができるので、新たなウイルス駆除ソフトをより早期に開発することに大いに貢献できるという効果を奏する。
本発明のウイルス未発症・復元システムのシステム動作に必要なシステム構成例を示す説明図である。 本発明に係るウイルス未発症・復元システムの動作に必要なハードウエア構成例を示す説明図である。 本発明に係るウイルス未発症・復元システムで扱う情報を示す説明図である。 本発明に係るウイルス未発症・復元システムの全体構成を示す説明図である。 本発明に係るウイルス未発症・復元システムの分散処理を示すブロック図である。 本発明に係るウイルス未発症・復元システムの復元処理を示すブロック図である。 本発明に係るウイルス未発症・復元方法の分散処理のフロー図である。 本発明に係るウイルス未発症・復元方法のインデックス情報取得処理のフロー図である。 本発明に係るウイルス未発症・復元方法の復元処理・再分散処理のフロー図である。 本発明に係るウイルス未発症・復元方法の第1種分散情報復元・再分散処理のフロー図である。 本発明に係るウイルス未発症・復元方法の第2種分散情報復元・再分散処理のフロー図である。 本発明に係るウイルス未発症・復元方法のフロー図である。 本発明のウイルス未発症・復元方法の変形例に係るフロー図である。 本発明のウイルス未発症・復元方法の分散処理の変形例のフロー図である。 本発明のウイルス未発症・復元方法のインデックス情報取得処理のフロー図である。 図5に示す分散処理において、分散の失敗時には、レジウム機能によって分散処理を再履行する処理の一態様を示すフローチャートである。 分散転送の失敗時には、レジウム機能によって分散転送処理を再履行する工程の他の態様を示すフローチャートである。 オリジナルファイルC1と分散情報とインデックス情報C5との関係を示す図である。 分散情報の復元方法を示すフローチャートである。 情報端末にソフトウェアの保護機能として、使用者を識別するためのPINコードの設定を示すフローチャートである。 ソフトウェアの保護機能を説明するフローチャートである。 オリジナルフォルダを伝送する分散処理の構成を示すブロック図である。 オリジナルフォルダの復元構成を示すブロック図である。
以下、本発明に係るウイルス未発症・復元システムに係る幾つかの実施形態について、添付の図面を参照して詳細に説明する。
(第1の実施形態)
本発明の第1の実施形態では、ウイルス未発症・復元補法を、ファイルシステムに適用した例を、図1〜図12を参照して説明する。
図1に示すように、本発明のウイルス未発症・復元システム80は、閾値分散法によりオリジナルファイルを分散情報に分散するとともに前記オリジナルファイルを廃棄し、前記分散情報から前記オリジナルファイルを復元させるウイルス未発症・復元システム80であって、閾値分散法により、予め定めた復元に必要な数の複数の分散情報にオリジナルファイルを分散し、前記分散情報それぞれに対応するハッシュ値を算出する分散処理手段81と、前記分散後に前記オリジナルファイルを廃棄する廃棄処理手段82と、前記複数の分散情報をそれぞれ異なる記憶装置に記憶し、少なくとも前記複数の分散情報のハッシュ値情報を含むインデックス情報を前記分散情報とは異なる記憶装置に記憶する記憶手段83と、前記分散情報ごとに分散時に算出したハッシュ値と復元時に算出するハッシュ値とを比較し、前記比較でハッシュ値が一致の場合はその分散情報が正常であると判断し、前記比較でハッシュ値が不一致の場合は分散情報が破壊又は改竄されたと判断し、正常と判断した分散情報の数が復元に必要な分散情報の数に到達すると正常と判断した分散情報を組み合わせてオリジナルファイルを復元する復元処理手段84と、復元させたオリジナルファイルを排他制御下で管理する排他制御手段86と、閾値分散法により、予め定めた復元に必要な数の複数の分散情報に復元されたオリジナルファイルを再分散し、分散情報それぞれに対応するハッシュ値を算出する再分散処理手段85と、再分散後に復元したオリジナルファイルを廃棄する廃棄処理手段82と、を備え、復元処理手段84による復元処理、排他制御手段86による排他制御、再分散処理手段85による分散処理、再分散処理後の廃棄処理手段82による廃棄処理の順にサイクルとして繰り返すウイルス未発症・復元システム80である。
このウイルス未発症・復元システム80は、前記復元処理手段84が、ハッシュ値が不一致と判断された場合、残りの正常な複数の分散情報によりオリジナルファイルを復元し、前記再分散処理手段85が、復元したオリジナルファイルを再分散させることにより、再分散後の分散情報すべてを正常な分散情報に回復させる。これにより、分散時の分散情報には改竄された分散情報は含まれない。
ウイルス未発症・復元システム80は、前記復元処理手段84又は前記再分散処理手段85が、前記分散情報ごとに分散時と復元時とのハッシュ値を比較し、前記比較でハッシュ値が不一致の分散情報を抽出する。ハッシュ値が不一致の分散情報はウイルスにより破壊又は改竄されている可能性が高いので、このウイルスに破壊又は改竄されたファイルを抜き出しウイルス対策の研究の試料とすることができる。
本発明のウイルス未発症・復元システム80の動作に必要なシステム構成1について説明する。図1に示すように、分散処理手段81、廃棄手段82、復元処理手段84、排他制御手段86及び再分散処理手段85を備える情報処理装置25やネットワーク20を備え、さらに記憶手段83として、情報処理装置25とつながった記憶装置D24及び記憶装置A21、前記ネットワーク20とつながった記憶装置B22、記憶装置C23及び記憶装置E25を備える。前記情報処理装置25はパソコン(PC)等のコンピュータである。
前記複数の分散情報をそれぞれ異なる記憶装置に記憶する、及び、少なくとも前記複数の分散情報のハッシュ値情報を含むインデックス情報を前記分散情報とは異なる記憶装置に記憶する記憶手段83は、記憶装置A21、記憶装置B22、記憶装置C23及び記憶装置E25であり、これらはUSBフラッシュメモリやクラウドストレージ等の外部記憶装置である。記憶装置D24はハードディスク等の内部記憶装置であり、いずれの記憶装置も情報処理装置25と通信する。前記外部記憶装置には、文書や画像や動画ファイルを大量に格納可能な大容量に適したオブジェクトストレージ、クラウドストレージ、サーバコンピュータ、光学ディスク、ハードディスク等の磁気ディスク、USBフラッシュメモリ、磁気テープ等が該当する。内部記憶装置には電源CPUと直接にデータをやり取りするメモリーが該当する。
以下、本発明では、記憶装置29の使用例として、記憶装置D24をハードディスクとし、記憶装置A21をUSBフラッシュメモリとし、記憶装置B22や記憶装置C23をクラウドストレージとし、記憶装置E25をサーバコンピュータとした例を説明するが、本発明の記憶装置の種類は外部記憶装置であればいずれでもよくこれに限定されない。
オリジナルファイルを閾値分散法により3つに分散させる場合には、例えば、分散情報A51、分散情報B53、分散情報C55に3つの種類の分散情報を生成させる。前記3つの種類の分散情報の記憶形態には、第一に分散情報A51、分散情報B53、分散情報C55を各1つずつそれぞれ異なる記憶装置に記憶する第一記憶形態があり、第二に分散情報A51、分散情報B53、分散情報C55の内のいずれかと同じ種類の分散情報を追加して閾値分散法による分散情報は3種類であるがいずれかの1種類の分散情報のコピーファイルを1つ追加して4つの異なる記憶装置に記憶する第二記憶形態がある。前記第二記憶形態の場合は、例えば、分散情報A51、分散情報B53、分散情報C55、分散情報A又はB57の分散情報の種類数は3つであるが4つの分散情報をそれぞれ異なる記憶装置に記憶する。なお、分散情報のコピーファイル数はウイルスによる分散情報数の予測数によって異なり、事例に記載した1つに限定されない。
前記第一記憶形態の場合は、3つの分散情報をそれぞれ別個の外部記憶装置に記憶させる必要があるので、例えば、分散情報A51を外部記憶装置であるハードディスク(記憶装置D24)に記憶し、分散情報B53を外部記憶装置であるUSBフラッシュメモリ(記憶装置A21)に記憶し、分散情報C55を外部記憶装置であるクラウドストレージ(記憶装置B22)に記憶し、このように3カ所であって別々の場所にある記憶装置にそれぞれ記憶させ保存する。分散情報ごとに別々の場所であり別々の記憶装置に記憶させることによりオリジナルファイルの漏洩等のリスクを軽減できる。前記3か所の記憶装置は、記憶装置A21、記憶装置B22、記憶装置C23、記憶装置D24及び記憶装置E25の中から任意に選択した3つの記憶装置であればよいが、選択する記憶装置の中の1つはクラウドストレージを選択するのがウイルス侵入を困難にするのには好ましい。また、ハッシュ値等の個々の分散情報に関連するインデックス情報も関連する分散情報に紐つけて記憶させる。
閾値分散法では、分散情報が3つの場合には、復元に必要な分散情報は2つ以上であり、仮に、分散情報数の1つがウイルスに侵入された場合、残りの正常な分散情報2つでオリジナルファイルを復元できる。また、個々の分散情報はそれ自体のみでは判読不能の意味を持たない情報でありゴミファイルであるため、残った1つの分散情報からオリジナルファイルを復元することができない。
そこで、その対応として前記第二記憶形態を実施し、閾値分散法による分散情報の種類を3つで、前記3種類の内の1つの種類の分散情報を追加した4つの分散情報をそれぞれ4か所の異なる記憶装置に記憶させる。例えば、分散情報A51をハードディスク(記憶装置D24)に記憶し、分散情報B53をUSBフラッシュメモリ(記憶装置A21)に記憶し、分散情報C55をクラウドストレージ(記憶装置B22)に記憶し、分散情報A又はBを外部記憶装置であるクラウドストレージ(記憶装置C23)に記憶する。クラウドストレージ(記憶装置B22や記憶装置C23)はウイルスに侵入されにくいため、万一記憶装置A21と記憶装置D24の2つの記憶装置にウイルスが侵入してきても、前記クラウドストレージである記憶装置B22及び記憶装置C23の2つに分散させた分散情報C55と分散情報A又はB57からオリジナルファイルC1を復元できる。
前記閾値分散法は秘密分散法の1形態であって、秘密情報であるオリジナルファイルC1が正当な権限を有する者以外に流出した場合には莫大な損害を被る懸念があることから、秘密情報である医療関連データや住宅構造図等のオリジナルファイルC1を意味のないファイルに分散し、その後にその分散した分散情報を組み合わせてオリジナルファイルC1を復元させる技術である。前記閾値分散法は、組み合わせる時に集める分散情報の数は、例えばオリジナルデータC1を3個に分散させた場合は、万一1個の分散情報にウイルスが侵入していても残りの2個の複数の分散情報を用いてオリジナルファイルを復元させることができる。
次に、情報処理装置25のハードウエア構成2について説明する。ハードウエア構成2は、図2に示すように、中央処理装置30と記憶装置29を備える演算処理装置28と、入出力コントローラ36とを備える。前記中央処理装置30は、CPUを含み制御プログラムに従って全体の動作を司る制御装置31と、論理演算等の演算を行う演算装置32とを備え、前記記憶装置29は、CPUが直接アクセスして演算できる内部記憶装置である主記憶装置26と、CPUが直接アクセスできない外部記憶装置である補助記憶装置27とを備え、前記入出力コントローラ36は、キーボード、マウス、イメージスキャナ、デジタルカメラ等の入力装置33と、演算処理した成果物である情報を出力する出力装置34と、外部記憶装置とデータの送受信を行う通信装置35とを備える。
前記補助記憶装置27は外部記憶装置として、各種ファイルを記憶しており、分散情報と分散情報毎の分散時のハッシュ値と前記分散情報の保存先等を記憶している。
前記制御装置は、ウイルス未発症・復元方法200を実行可能な制御モジュールのプログラムによって動作し、入力装置33からの指示を受け、演算装置32、記憶装置29、出力装置34、通信装置35に指示を出している。
次に、本発明のシステムで扱う情報3について説明する。本発明のシステムで扱う情報3は、図3に示すように、アプリケーションで扱う情報40と、分散処理時に分散される情報である分散情報を保存させた、例えば分散情報の保存先数が4つの場合は分散保存先50、52、54、56とを備える。前記アプリケーションで扱う情報40には、アプリケーション内部で処理される情報41と、インデックス情報としてアプリケーションへ入出力される情報44と、アプリケーション自身の設定に関する情報である基本設定情報49とを備える。
前記アプリケーション内部で処理される情報41は、ファイルの分散、復元、インデックス情報の読み書きに使用する秘密分散モジュール42と、アプリケーションの制御に用いられる制御モジュール43とを備え、前記インデックス情報としてアプリケーションへ入出力される情報44は、分散・復元の対象となるファイルの情報であるオリジナルファイル情報45と、各分散先への接続に必要となる情報である分散保存先の接続情報46と、各分散情報に対するハッシュ値の情報である分散情報のハッシュ値情報47と、各分散保存先に対してアクセスできるかを示す情報である分散情報の参照可否情報48と、を備えている。
例えば3つに分散させたものを異なる3カ所に保存する場合には、分散保存先50には分散情報A51及び分散情報A51に関連する情報が保存され、分散保存先52には分散情報B53及び分散情報B53に関連する情報が保存され、分散保存先54には分散情報C55及び分散情報C55に関連する情報が保存される。
例えば、閾値分散法で3つに分散させた分散情報を4カ所に保存する場合には、分散保存先50には分散情報A51及び分散情報A51に関連する情報が保存され、分散保存先52には分散情報B53及び分散情報B53に関連する情報が保存され、分散保存先54には分散情報C55及び分散情報C55に関連する情報が保存され、分散保存先56には分散情報A51及び分散情報A51に関連する情報あるいは分散情報B53及び分散情報B53に関連する情報が保存される。
次に、本発明のシステムの全体構成4について説明する。本発明のシステムの全体構成4として、図4に示すように、制御モジュール43は、秘密分散モジュール42、ファイルシステム63、情報の提示に画像や図形を多用し、基礎的な操作の大半を画面上の位置の指示により行うことができる手法であるGUI64、入出力コントローラ36及び補助記憶装置27と相互に通信し、ファイルシステム63は、外部アプリケーション62及びGUI64と相互に通信し、入出力コントローラ36は、オブジェクトストレージ65及び外部記憶装置68と相互に通信する。
前記秘密分散モジュール42は、分散処理部70と復元処理部71とインデックス情報取得部72とインデックス情報生成部73とを備え、前記制御モジュール43は、各分散保存先への接続可否監視部74と、分散情報の整合性監視部75と、分散情報の回復処理部76と、GUI描画・更新処理部77とを備える。
閾値分散法により、予め定めた復元に必要な数の複数の分散情報にオリジナルファイルを分散し、前記分散情報それぞれに対応するハッシュ値を算出する分散処理手段81と再分散処理手段85について説明する。本発明において、分散処理手段81と再分散処理手段85とは同じ手段である。
まず、分散処理のブロック図5について、分散数が例えば3の場合について説明する。分散処理のブロック図5は、図5に示すように、秘密分散モジュール42のプログラムの分散取得部70によって、オリジナルファイルC1を秘密情報法の1つである閾値分散法により、分散情報A51、分散情報B53、分散情報C55の3つに分散する。そしてそれぞれ異なる記憶装置に記憶する。この場合に少なくとも分散情報の1つはウイルス侵入が困難であるクラウドストレージに記憶する。
あるいは、オリジナルファイルC1を閾値分散法により3つの分散情報に分散するが、前記3つの分散情報のうちの1つのコピーファイルを追加して計4つの分散情報数とし、異なる4つの記憶装置に記憶させる場合は、例えば、分散処理部70によって分散情報A51、分散情報B53、分散情報C55、分散情報(A又はB)57に分散してそれぞれ異なる記憶装置に記憶する。オリジナルファイルC1は分散情報A51、分散情報B53、分散情報C55の3つの意味のないデータとして分散することに加えて、クラウドストレージ以外の記憶装置に記憶した分散情報のうちの1つを追加でダブらせてクラウドストレージに記憶する。例えば、分散情報C55をクラウドストレージに記憶させる場合は、分散情報A51又は分散情報B53のどちらかと同じ内容のコピーファイルである分散情報(A又はB)57を追加させる。
分割する数は3つ以上でもよいが、分散数が過多になるとそれらの分散情報を格納する記憶装置の数も多くなり、また復元するときも分散情報を集めるのが煩わしくなるので、分散数は16程度までが好ましい。それぞれの分散情報はそれぞれ異なる記憶装置29に記憶される。インデックス情報生成部73は、分散処理部70からの分散情報A51、分散情報B53、分散情報C55、分散情報(A又はB)57に対して、それぞれのハッシュ値、保存先情報、保存先の参照可否情報等の情報を生成し、それらの情報であるインデックス情報C5を出力する。
次に、前記再分散するときに前記復元したオリジナルファイルを廃棄する廃棄手段82について説明する。分散処理手段85によりオリジナルファイルC1が分散された直後に、前記オリジナルファイルC1を廃棄処理する。これにより、本発明のウイルス未発症・復元システム80は、オリジナルファイルC1が保存されないことと、分散処理手段81又は再分散処理手段85による分散処理と復元処理手段84による復元処理とを繰り返すことにより、オリジナルファイルC1にウイルスが侵入し難い環境をつくることにより、ウイルス未発症とすることができる。
次に、前記分散情報ごとに分散時に算出したハッシュ値と復元時に算出するハッシュ値とを比較し、前記比較でハッシュ値が一致の場合はその分散情報が正常であると判断し、前記比較でハッシュ値が不一致の場合は分散情報が破壊又は改竄されたと判断し、正常と判断した分散情報の数が復元に必要な分散情報の数に到達すると前記正常と判断した分散情報を組み合わせてオリジナルファイルを復元する復元処理手段84について説明する。
復元処理のブロック図6について、例えば分散数が3つの場合について説明する。分散処理のブロック図6は、図6に示すように、秘密分散モジュール42のインデックス情報取得部72によってインデックス情報C5を取得し、インデックス情報取得部72によってそのインデックス情報C5内にある分散保存先の接続情報46を取得して、前記取得した分散保存先の接続情報46を入力して復元処理部71がそれぞれの記憶装置から分散情報を取得する。それとともに入出力コントローラ36の操作によってハッシュ値を取得する。例えば、復元処理部71によって分散情報A51、分散情報B53、分散情報C55の3つの分散情報の中から2つの正常な分散情報を取得してオリジナルファイルC1を復元する。あるいは、復元処理部71によって分散情報A51、分散情報B53、分散情報C55、分散情報(A又はB)57の4つの分散情報の中から2つの正常な分散情報を取得してオリジナルファイルC1を復元する。このとき、2つの分散情報により復元が可能となるのは、分散するときに冗長性をもたせているからである。
前記復元したオリジナルファイルC1は、別のプログラムによる書き込みを禁止する排他制御下で管理する。この排他制御下で管理しているときにオリジナルファイルC1の閲覧・書き込み等の作業を行う。そして閲覧や書き込みが終了すると、オリジナルファイルC1の再分散を実施し、前記再分散直後に排他制御下のオリジナルファイルC1を廃棄処理する。
本発明のウイルス未発症・復元システムは、図1に示す本発明のシステムの動作に必要なシステム構成1、図2に示す本発明のシステムの動作に必要なハードウエア構成2、及び、図4に示す本発明のシステムの全体構成4を備え、図3に示す本発明のシステムで扱う情報3を用いて、図5に示す分散処理のブロック図及び図6に示す復元処理のブロック図でそれぞれの処理をするシステムである。そして、図7に示す分散処理のフロー7、図8に示す分散情報取得のフロー8、図9に示すウイルス未発症・復元方法のフロー9、図10に示す第1種分散情報復元・再分散処理のフロー10、図11に示す第2種分散情報復元・再分散のフロー11のウイルス未発症・復元方法を実行するシステムである。
本発明で用いる閾値分散法は、秘密分散法の方式であり、ISO規格ISO/IEC19592−2:2017のComputational additive Secret Sharing schemeの方式に該当し、オリジナルファイルC1を複数の分散情報に分け、それらがある決められた数集まらないと元のオリジナルファイルC1を復元することができない方式である。
前記分散処理部70によりオリジナルファイルC1を閾値分散法により、予め定めた複数の分散情報を集めてオリジナルファイルC1が復元可能となるように前記オリジナルファイルC1を分散する。分散数Nが3以上で奇数の場合は予め定めた分散情報の数は過半数(N/2+0.5)以上であって(N−1)以下の数を選択し、分散数Nが3以上で偶数の場合は予め定めた分散情報の数は過半数(N/2+1)以上であって(N−1)以下の数を選択する。例えば、前記分散数を3とし、3つの分散情報のうちの1つの分散情報がウイルスに侵入されても、又は、1つの分散情報を誤操作して消去しても、残りの正常な2つの複数の分散情報を集めてオリジナルファイルC1が復元できるように分散する。
例えば、オリジナルファイルC1の閾値分散法により分散した分散数を3つとし3つの異なる記憶装置に記憶した場合には、1つの分散情報が破壊又は改竄されても残りの2つの分散情報を集めて復元できるように分散情報を生成する。また、オリジナルファイルC1の閾値分散法により分散した分散情報数を3つとし前記分散情報の3つのいずれか1つのコピーファイルを加えて4つの分散情報数にして4つの異なる記憶装置に記憶した場合には、2つの分散情報が改竄されても残りの2つの分散情報を集めて復元できるように分散情報を生成する。
ハッシュ値は、ドキュメントや数字などの文字列の羅列から一定長(固定長)の0と1を組み合わせたデータに要約するためのハッシュ関数を実行して生成され、例えばMD5等の一般的なハッシュ関数であればよい。ハッシュ関数による算出指示はコンピュータへのコマンドとして指示される。ハッシュ値は対象情報が異なれば、ハッシュ関数を使った計算結果であるハッシュ値も異なるので、例えば分散情報にウイルスが侵入してウイルスの起動条件であるトリガを埋め込むのでハッシュ関数で算出するとハッシュ値がウイルス侵入前とは異なる。したがって、ウイルス侵入したか否かはハッシュ値を確認することによって検知することが可能である。また、ハッシュ値が第三者に知られても分散情報は意味のない情報であるので分散情報からオリジナルファイルC1は漏洩されない。
次に、本発明のウイルス未発症・復元方法200について説明する。本発明のウイルス未発症・復元方法200は、図12に示すように、オリジナルファイルC1の分散と復元を繰り返すウイルス未発症・復元方法200であって、閾値分散法により予め定めた復元に必要な数以上の複数の分散情報にオリジナルファイルC1を分散する分散手順T2と、前記分散後に前記オリジナルファイルC1を廃棄する廃棄手順T3と、前記分散情報からオリジナルファイルC1を復元させ、前記復元させたオリジナルファイルC1を排他制御下で管理する復元・排他制御手順T5と、閾値分散法により予め定めた復元に必要な数以上の複数の再分散情報に前記復元させたオリジナルファイルC1を再分散させる再分散手順T6と、前記再分散後に前記復元させたオリジナルファイルC1を廃棄する廃棄手順T7と、を備え、前記復元・排他制御手順T5、前記再分散手順T6、再分散後の前記廃棄手順T7を順にサイクルとして繰り返す。よって、前記復元・排他制御手順T5でオリジナルファイルを復元させた復元時A、及び、前記再分散手順T6と再分散後の前記廃棄手順T7でオリジナルファイルを分散させた分散時Bのいずれにおいても、第三者にオリジナルファイルの改竄をされる機会を与えない仕組みができる。
前記復元・排他制御手順T5は、分散情報取得T41と、復元に必要数な正常な分散ファイル検出T42と、オリジナルファイルを復元させ排他制御下での管理T51とを備え、前記分散ファイル検出T42では、正常な分散ファイルを検出する分散ファイル検出T43を、正常な分散ファイルが復元に必要数な数確保するまで分散ファイル情報確認T43を繰り返す。
次に、本発明のウイルス未発症・復元方法のフロー9を説明する。ウイルス未発症・復元方法200は、図9に示すように、閾値分散法によりオリジナルファイルを分散情報に分散するとともに前記オリジナルファイルを廃棄し、前記分散情報から前記オリジナルファイルを復元させるウイルス未発症・復元方法200であって、閾値分散法により、予め定めた復元に必要な数の複数の分散情報にオリジナルファイルを分散し、前記分散情報それぞれに対応するハッシュ値を算出する分散処理ステップS10(SS1、SS2)、T2と、前記分散後に前記オリジナルファイルを廃棄する廃棄処理ステップSS3、T3と、前記分散情報ごとに分散時に算出したハッシュ値と復元時に算出するハッシュ値とを比較し、前記比較でハッシュ値が一致の場合はその分散情報が正常であると判断し、前記比較でハッシュ値が不一致の場合は分散情報が破壊又は改竄されたと判断し、正常と判断した分散情報の数が復元に必要な分散情報の数に到達すると前記正常と判断した分散情報を組み合わせてオリジナルファイルを復元処理し、前記復元させたオリジナルファイルを排他制御下で管理する復元処理・排他制御管理ステップS90(SS4、S11〜S18、S32〜S36、S42〜S48、T5)と、閾値分散法により、予め定めた復元に必要な数の複数の分散情報に前記復元されたオリジナルファイルを再分散し、前記分散情報それぞれに対応するハッシュ値を算出する再分散処理ステップS19、S37、S49、T6と、前記再分散後に前記復元したオリジナルファイルを廃棄する廃棄処理ステップS20、S38、S50、T7と、を備え、前記復元処理・排他制御管理ステップS90、T5、前記再分散処理ステップS19、S37、S49、T6、再分散の前記廃棄処理ステップS20、S38、S50、T7を順にサイクルとして繰り返す。
本発明において、図7の分散処理ステップS10は、図9のオリジナルファイルの分散処理SS1とインデックス情報生成SS2とを合わせたステップと、図9の再分散処理ステップS19と、図10の再分散ステップS37と、図11の再分散ステップS49と、図12のオリジナルファイルの分散手順T2と、図12の復元オリジナルファイルの再分散手順T6とは同じ内容の処理を実行するステップ又は手順である。
次に、前記分散処理ステップS10等の分散処理について説明する。図7に示すように、前記分散処理ステップS10等の分散処理は、各分散保存先の参照可否状況をチェックする参照ステップS1と、復元に必要な分散情報の数を確保するために、参照可能な分散保存先の数が復元に必要な数以上であるかを判断する分散保存先判断ステップS2と、前記参照可能な分散保存先が復元に必要な数以上の場合に、閾値分散法により、予め定めた復元に必要な数の複数の分散情報にオリジナルファイルを分散する分散ステップS3と、前記参照可能な各分散保存先へ分散処理した分散情報をそれぞれ保存する保存ステップS4と、少なくとも前記各分散保存先に関する情報を、及び、各分散情報でそれぞれ算出したハッシュ値をインデックス情報に記憶するインデックス情報記憶ステップS9と、を備える。図7では、参照可能な分散保存先の数が3以上又は3未満である場合を示している。
前記分散処理ステップS10での分散処理方法のフロー7をより詳しく説明する。なお、事例として閾値分散法による分散情報数を3とした場合を記載しているが本発明における分散情報数はこれに限定されない。
分散処理のフロー7は、図7に示すように、分散処理ステップS10を示している。まず、ステップS1は各分散保存先の参照可否状況をチェックするステップである。制御モジュール43の各分散保存先への接続可否監視部74により制御装置31と複数の記憶装置29との接続状況をチェックする。例えば、分散数を3とする場合に、図3や図5に示した分散情報A51、分散情報B53、分散情報C55の分散保存先の記憶装置29として、図1に示した記憶装置A21、記憶装置B22、記憶装置C23、記憶装置D24及び記憶装置E25が参照可能か否かをチェックする。また、分散数を3とする場合に、3つの分散情報をそれぞれ異なる記憶装置に記憶させることに加えて、3つの分散情報のうちの1つの分散情報のコピーファイルを分散情報として追加しさらに異なる1つの記憶装置に記憶させる場合もある。参照可能とは、図2に示す入出力コントローラ36からアクセス可能であるか否か、言い換えると接続可能であるか否かをチェックすることを意味する。ステップS2は参照可能な分散保存先の数が復元に必要な分散情報の数以上か、復元に必要な分散情報の数未満であるかを判断するステップである。
ステップS2において参照可能な分散保存先が3未満の場合は本発明の効果を得られないとして分散処理を実行しない。分散数が2の場合もオリジナルファイルC1の分散は可能であるが、分散数が2の場合は、万一分散情報の1つにウイルスが侵入した場合には残りの正常な分散情報が1つになるのでオリジナルファイルC1への復元ができない。分散情報は意味のないデータであり、1つの分散情報が万一漏洩しても1つの分散情報からではオリジナルファイルに復元できないようにしているからである。
オリジナルファイルC1を分散した後にウイルスが侵入する分散情報を、1つと想定する場合や2つと設定する想定する場合を考慮して、複数の正常な分散情報からオリジナルファイルC1を復元させるためには、前記オリジナルファイルC1を分散した分散数未満であって前記分散情報の破壊又は改竄可能性数を考慮して予め定めた数の複数の分散情報を設定してもよい。また、前記オリジナルファイルからの分散情報の数を、1種類の分散情報ごとにそれぞれ異なる記憶装置に記憶させる組合せにより、又は、1種類の分散情報ごとに1つの記憶装置か2つの記憶装置かを選択して記憶させる組合せにより、復元時に必要とする複数の異なる分散情報数とウイルス侵入想定の分散情報数の合計数とする。例えば、閾値分散法による分散で生成した分散情報の数を2つとしウイルス侵入の分散情報数を0で可能とした場合は、2つの複数の正常な分散情報からオリジナルファイルC1を復元可能に2つに分散する。閾値分散法による分散で生成した分散情報の数を3つとしウイルス侵入の分散情報数を1つと想定した場合は、2つの複数の正常な分散情報からオリジナルファイルC1を復元可能に3つに分散する。例えば、閾値分散法による分散で生成した分散情報の数を3つとしウイルス侵入の分散情報数を2つと想定した場合は、いずれか1つの種類の分散情報のコピーファイルを追加して計4つの分散情報をそれぞれ異なる4つの記憶装置に記憶させ、そのうちの2つの複数の正常な分散情報からオリジナルファイルC1を復元可能に4つの記憶装置に分散する。この場合にはウイルス侵入の危険性が少ないクラウドストレージに異なる2つの分散情報を記憶させることが好ましい。
ステップS3は前記参照可能な分散保存先が3以上の場合に分散処理を実行するステップである。例えば、参照可能な分散保存先が記憶装置A21、記憶装置B22、記憶装置C23、記憶装置D24であることが検知されたものとする。
ここで、閾値分散法による分散する分散情報イの数と、記録装置に記憶する分散情報ロの数について説明する。異なる記憶装置29にそれぞれ1つずつ記憶させるすべての分散情報ロの数を、オリジナルファイルを復元させるために集める予め定めた2以上の複数の分散情報ハの数と予め定めた前記ハッシュ値が不一致となる予測する分散情報ニの数の合計とし、前記すべての分散情報ロの数から閾値分散法による分散させた前記分散情報イの数を引いた数を、前記閾値分散法による分散させた分散情報イの内の一部の分散情報のコピーファイルとする。
例えば、前記第一記憶形態の場合は、異なる記憶装置29にそれぞれ1つずつ記憶させるすべての分散情報ロの数を、オリジナルファイルC1を復元させるために集める予め定めた2以上の複数の分散情報ハの数2つと予め定めた前記ハッシュ値が不一致となる予測する分散情報ニの数1つの合計3つとし、前記すべての分散情報ロの数3つから閾値分散法による分散させた前記分散情報イの数3つを引いた数0を、前記閾値分散法による分散させた分散情報イの内の一部の分散情報のコピーファイルとする。ここで、例えば、閾値分散法による分散させた分散情報イは分散情報A51、分散情報B53及び分散情報C55が該当し、すべての分散情報ロも分散情報A51、分散情報B53及び分散情報C55が該当し、2以上の複数の分散情報ハは分散情報A51、分散情報B53及び分散情報C55の内の2つが該当し、ハッシュ値が不一致となる予測する分散情報ニは分散情報A51、分散情報B53及び分散情報C55の内の1つが該当し、コピーファイルの数は0である。
例えば、前記第二記憶形態の場合は、異なる記憶装置29にそれぞれ1つずつ記憶させるすべての分散情報ロ数を、オリジナルファイルC1を復元させるために集める予め定めた2以上の複数の分散情報ハの数2つと予め定めた前記ハッシュ値が不一致となる予測する分散情報ニの数2つの合計4つとし、前記すべての分散情報ロの数4つから閾値分散法による分散させた前記分散情報イの数3つを引いた数1つを、前記閾値分散法による分散させた分散情報イの内の一部の分散情報のコピーファイルとする。ここで、例えば、閾値分散法による分散させた分散情報イは分散情報A51、分散情報B53及び分散情報C55の3つが該当し、すべての分散情報ロは分散情報A51、分散情報B53、分散情報C55及び分散情報(A又はB)57の4つが該当し、2以上の複数の分散情報ハは分散情報A51、分散情報B53、分散情報C55及び分散情報(A又はB)57の内の2つが該当し、ハッシュ値が不一致となる予測する分散情報ニは分散情報A51、分散情報B53、分散情報C55及び分散情報(A又はB)57の内の2つが該当し、コピーファイルの数は1つである。
よって、例えば、3つに分散する場合は、3つの分散情報のうちの任意の2つの分散情報からオリジナルファイルC1が復元可能にそれぞれの分散情報に冗長性を持たせて分散する。また、例えば、3つに分散した分散情報及び前記分散情報のうちの1つのコピーファイルとから4つの分散情報を生成する場合は、4つの分散情報のうちの任意の2つの分散情報からオリジナルファイルC1が復元可能にそれぞれの分散情報に冗長性を持たせて分散する。これにより、誤って一部の分散情報を削除しても、ウイルスが侵入したり又は誤操作で破壊又は改竄されたりした1つの分散情報が検知されても、残りの2つの分散情報からオリジナルファイルC1を復元できる。
そして、ステップS4は参照可能な分散保存先へ分散情報を保存するステップである。例えば、分散情報A51を外部記憶装置であるハードディスク(記憶装置D24)に記憶し、分散情報B53を外部記憶装置であるUSBフラッシュメモリ(記憶装置A21)に記憶し、分散情報C55を外部記憶装置であるクラウドストレージ(記憶装置B22)に記憶しそれぞれ保存する。
前記インデックス情報記憶ステップS9には、ステップ5〜8が含まれる。
ステップS5は各分散保存先の参照可否状況をインデックス情報C5に記憶するステップである。例えば、分散保存先である記憶装置A21、記憶装置B22及び記憶装置D24の参照可否状況が、アプリケーションに入出力される情報44としてのインデックス情報C5として、参照可であるという情報が記憶装置29に記憶される。
ステップS6は各分散情報のハッシュ値を算出しインデックス情報C5に記憶するステップである。インデックス情報生成部73が分散情報を指定してハッシュ関数による算出を入出力コントローラ36でコマンドとして指示することにより実施する。そして、算出した分散情報のハッシュ値情報47をインデックス情報C5として記憶装置29に記憶する。
ステップS7は各分散保存先情報をインデックス情報C5に記憶するステップである。インデックス情報生成部73で生成した分散保存先の接続情報46をインデックス情報C5として記憶装置29に記憶する。
よって、前記記憶装置29が、少なくとも、前記複数の分散情報、及び、前記分散情報に関連する少なくとも保存先やハッシュ値のインデックス情報C5を前記分散情報ごとに別々の記憶装置29に記憶することとなる。
ステップS8はオリジナルファイル情報をインデックス情報C5に記憶するステップである。インデックス情報生成部73で生成したオリジナルファイル情報45をインデックス情報C5として記憶装置29に記憶する。これで分散処理は終了する。
次に、分散情報取得ステップS60について分散情報取得フロー8で説明する。図8に示す前記分散情報取得ステップS60は、図9のインデックス情報取得・分散情報取得ステップSS4と、図12の分散情報の取得手順41とは、同じ内容の処理を実行するステップ又は手順である。分散情報取得フロー8は、図8に示すように、分散情報取得ステップS60であり、ステップS61はインデックス情報C5から分散保存先の参照可否状況を取得するステップである。インデックス情報取得部42が記憶装置29に記憶されているインデックス情報C5の分散保存先の参照可否情報48を取得する。
ステップS62はインデックス情報C5から分散保存先の接続情報を取得するステップである。制御モジュール43の各分散保存先への接続可否監視部74の指示により、インデックス情報取得部42が記憶装置29に記憶されているインデックス情報C5の分散保存先の接続情報46を取得する。
ステップS63はインデックス情報C5から参照可能な分散情報のハッシュ値を取得するステップである。インデックス情報取得部42が記憶装置29に記憶されているインデックス情報C5の参照可能な分散情報のハッシュ値情報47を取得する。
ステップS64は各分散保存先の接続情報から分散情報を取得するステップである。インデックス情報取得部42が記憶装置29に記憶されている分散情報を取得する。以上のインデックス情報取得部42により、分散保存先の参照可否情報48、分散保存先の接続情報46、分散情報のハッシュ値情報47、各分散保存先の接続情報からの分散情報を取得する。
次に、前記復元処理・排他制御管理ステップS90(SS4、S11〜S18、S32〜S36、S42〜S48、T5)について、図9に示す復元処理のフロー9で説明する。図9の復元処理・排他制御管理ステップS90(SS4、S11〜S18)は、図10の復元処理・排他制御管理ステップS90と、図11の復元処理・排他制御管理ステップS90と、図12のオリジナルファイルの復元・排他制御T5とは同じ内容の処理を実行するステップ又は手順である。前記復元処理・排他制御管理ステップS90が、インデックス情報から少なくとも分散情報のハッシュ値の取得及び各分散保存先から分散情報の取得をする分散情報取得ステップSS4、S60と、それぞれの分散情報毎に一つずつ順に、分散情報のハッシュ値を算出し、同一の分散情報に係る復元時に算出した前記ハッシュ値とインデックス情報から取得したハッシュ値との一致か否かの確認をして不一致の場合は前記分散情報を不正ファイルとしてカウントし、一致の場合は正常ファイルとしてカウントする確認ステップS70と、前記確認ステップS70で不一致の場合の不正ファイルを抽出する抽出ステップS13、S16と、前記確認ステップS70で一致の場合の前記正常ファイルの数が予め定めた復元に必要な数に到達するまで前記確認ステップS70及び前記抽出ステップS13、S16を前記分散情報毎に一つずつ繰り返す正常ファイル数確保ステップS80と、前記正常ファイル数確保ステップS80で前記正常ファイルの数が予め定めた復元に必要な数に到達した際に、前記正常と判断した複数の分散情報を組み合わせてオリジナルファイルを復元し、前記復元したオリジナルファイルを排他制御下で管理する復元・排他制御ステップS18と、を備えている。
復元処理・排他制御管理ステップS90のフロー9についてより詳しく説明する。まず図9に示すように、オリジナルファイルが分散処理ステップSS1、SS2(図12で示す分散手順T2と同じ処理内容である。)で分散され、分散後にオリジナルファイルが廃棄処理ステップSS3(図12で示す廃棄手順T3と同じ処理内容である。)で廃棄処理されている。この後に復元処理・排他制御管理ステップS90となる。
閾値分散法による分散情報イの数が3つでかつ全分散情報ロの数が3つの場合で説明する。復元処理ステップS90のフロー9は、図9に示すように、まず、分散情報取得ステップSS4(S60)で、インデックス情報から少なくとも分散情報のハッシュ値の取得及び各分散保存先から分散情報を取得する。次に、確認ステップS70に進む。前記確認ステップS70では、まず、ステップS11が1つ目の分散情報のハッシュ値を取得するステップである。インデックス情報取得部42により取得した各分散保存先の接続情報からの1つ目の分散情報のハッシュ値を入出力コントローラ36の操作によりハッシュ関数算出のコマンド指示で実行させて取得する。
ステップS12はインデックス情報C5のハッシュ値と一致するか否かをチェックするステップである。ステップS11で算出した復元しようとするときの1つ目の分散情報のハッシュ値と、インデックス情報取得部42により分散時に算出した1つ目の分散情報のハッシュ値情報47とが一致するかをチェックする。
前記不一致の場合はステップS13として、分散情報にウイルス侵入などにより破壊又は改竄がされる可能性があることがわかるので、ハッシュ値が不一致となった1つ目の分散情報を不正ファイルとしてカウントし、前記ハッシュ値が不一致の1つ目の分散情報を抽出する。このように、前記分散情報ごとに分散時と復元時とのハッシュ値を比較し、前記比較でハッシュ値が不一致の分散情報を抽出する。そして、1つ目の分散情報を新型ウイルス駆除ソフト開発の検体として供することができる。前記検体は意味のないゴミファイルであるので発症することはなく安全性は確保されているので、前記検体である分散情報をリスト化して新型ウイルス駆除ソフト開発に有効に活用させることができる。
まだ、正常な分散情報が1つなので、さらに正常ファイル数確保ステップS80で前記確認ステップS70を繰り返す。ステップS14は、2つ目の分散情報のハッシュ値を算出するステップである。インデックス情報取得部42により取得した各分散保存先の接続情報からの2つ目の分散情報のハッシュ値を入出力コントローラ36の操作によりハッシュ関数算出のコマンド指示で実行させて取得する。
ステップS15はインデックス情報C5のハッシュ値と一致するか否かをチェックするステップである。ステップS14で算出した復元しようとするときの2つ目の分散情報のハッシュ値と、インデックス情報取得部42により分散時に算出した2つ目の分散情報のハッシュ値情報47とが一致するかをチェックする。不一致の場合はステップS16として、分散情報にウイルス侵入などの破壊又は改竄がされていることがわかるのでハッシュ値が不一致となった2つ目の分散情報を不正ファイルとしてカウントし、前記ハッシュ値が不一致の2つ目の分散情報を抽出する。このように、前記分散情報ごとに分散時と復元時とのハッシュ値を比較し、前記比較でハッシュ値が不一致の分散情報を抽出する。前記抽出した2つ目の分散情報は新型ウイルス駆除ソフト開発の検体として供することができる。また、前記ハッシュ値が一致した場合は2つ目の分散情報を正常な分散情報として判断する。これで正常な分散情報を2つ揃えたこととなる。
ステップS17は不正ファイルの検出数をカウントするステップである。前記不正ファイル数が0の場合はステップS18に進み、復元処理部71により正常な2つの分散情報からオリジナルファイルC1を復元する。
次に、ステップS19は復元ファイルに対して分散処理を実行するステップである。図9で示す再分散ステップS19は、図10で示す再分散ステップS37と、図11で示す再分散ステップS49と、図12で示す再分散手順T6と同じ処理内容を実行するステップ又は手順である。復元したオリジナルファイルC1を再分散処理し、再び3つの正常な分散情報を揃えることができる。そして、インデックス情報更新をする。再生成した3つの正常な分散情報に対して、分散保存先の接続情報46、分散情報のハッシュ値情報47や分散保存先の等のインデックス情報更新をする。
前記分散処理後に、復元したオリジナルファイルの廃棄ステップS20で、再分散したオリジナルファイルを廃棄処置する。図9で示す廃棄処理ステップS20は、図9で示す廃棄処理ステップSS3と、図10で示す廃棄処理ステップS38と、図11で示す廃棄処理ステップS50と、図12で示す廃棄処理手順T3と、図12で示す廃棄処理手順T7と同じ処理内容を実行するステップ又は手順である。これにより、非使用時にはオリジナルファイルが保存されず分散情報のみが保存されている状態となる。これにより、ウイルスが侵入し難い環境にすることができることからウイルス未発症の効果を有する。
前記再分散処理ステップS19で分散された再分散情報は、復元処理・排他制御管理ステップS90の開始点S100にもどって復元処理・排他制御管理ステップS90が繰り返される。
また、前記不正ファイル数が1の場合はステップS21に進み、図10に示す第1種分散情報復元・再分散処理に進み、前記不正ファイル数が2の場合はステップS22に進み、図11に示す第2種分散情報復元・再分散処理に進む。
ウイルスは、疑わしいファイルを実行しないことや不審なメールを開かないこと等の予防策をすれば感染しないことが知られているように、プログラムが実行されない限りウイルスに感染されることはない。分散情報は、単体では秘密情報が漏洩することがないように意味のないデータに分散されているのでプログラムが実行されないことから、ハッシュ値が分散情報の分散時と異なっていれば分散情報が破壊又は改竄されていることがわかる。ハッシュ値の破壊又は改竄が判明した分散情報を不使用にすればウイルスの発症を未然に防ぐことができる。一般的にはウイルスを特定してそのウイルス駆除ソフトで駆除しなければウイルス対策をすることができないが、本発明は、ウイルスの種類の把握を必要とせずにウイルス駆除ソフトを必要とせずにウイルス発症を未然に防ぐことができる。ウイルスが発症すると、ハードウエアの破壊、ネットワークの破壊又はシステムの破壊などを引き起こす要因となるが、本発明はそれらの要因を未然に防ぐことができる。よって、本発明は閾値分散法活用によるウイルス未発症システムとして有効である。
また、不正ファイルに侵入したウイルスがまだウイルス駆除ソフトが準備されていないウイルスの場合は、そのウイルスを検体として新たなウイルス駆除ソフトを開発することができる。ここで、前記不一致になった分散情報はウイルスにより拡張子も変わる場合も考えられることから、正常ではない分散情報のファイルをすべて抽出するためには、復元されたオリジナルファイルC1を再分散させた分散情報のファイル以外の分散情報のファイルを不一致の分散情報のファイルとして抽出し、その抽出された分散情報のファイルはウイルスに侵入されたファイル、あるいは、破壊又は改竄されるファイルとしてみなすことができる。
次に、図10に示すウイルス未発症・復元方法の復元処理・再分散処理のフローの第1種分散情報復元・再分散処理のフロー10について説明する。この場合は、例えば、閾値分散法による分散情報イの数が3つで、全分散情報ロの数が3つの場合で、かつハッシュ値が不一致となる予測する分散情報ニの数が1つの場合である。1つ目の分散情報A51をハードディスク(記憶装置D24)に記憶し、2つ目の分散情報B53をUSBフラッシュメモリ(記憶装置A21)に記憶し、3つ目の分散情報C55をクラウドストレージ(記憶装置B22)に記憶する場合である。そのうち少なくとも分散情報の1つはウイルス侵入が困難であるクラウドストレージに記憶する。本発明の分散数は3つに限定されるものではない。そして、1つ目の分散情報A51又は2つ目の分散情報B53が不正ファイルと判断された場合である。
まず、図9の第1種分散情報復元・再分散処理S21を受けて、図8に示す分散情報取得ステップS60と同じフローを実施する。まず、インデックス情報からの分散保存先の接続情報を取得し、インデックス情報取得部42が記憶装置29に記憶されているインデックス情報C5の分散保存先の接続情報46を取得するステップがあるが、前記ステップは図8のS62に該当するステップであり図9のSS4のときに実行されている。したがって、ステップS32から開始され、前記ステップS32は、図8のS63と同じ内容を実行するステップであり、インデックス情報からの3つ目の分散情報のハッシュ値を取得する。インデックス情報取得部42が記憶装置29に記憶されているインデックス情報C5の3つ目の分散情報のハッシュ値を取得する。次に、ステップS33は、図8のS64と同じ内容を実行するステップであり、分散保存先の接続情報から3つ目の分散情報を取得する。インデックス情報取得部42が記憶装置29に記憶されている3つ目の分散情報を取得する。
次に、確認ステップS70に進む。ステップS34は3つ目の分散情報のハッシュ値を算出するステップである。インデックス情報取得部42により取得した各分散保存先の接続情報からの3つ目の分散情報のハッシュ値を入出力コントローラ36の操作によりハッシュ関数算出のコマンド指示で実行させて取得する。ステップS35は3つ目の分散情報の整合性を確認するステップである。ステップS34で算出した復元しようとするときの3つ目の分散情報のハッシュ値と、インデックス情報取得部42により分散時に算出した3つ目の分散情報のハッシュ値情報47とが一致するかをチェックする。ここでは一致したものとする。
次に、復元処理・排他制御管理ステップS36である。復元処理・排他制御管理ステップS36は、正常な分散情報2つを用いて復元し、前記復元したオリジナルファイルを排他制御の下で管理する。図9のステップS17で得た1つの正常なファイルである分散情報と、ステップS35で確認した正常なファイルである3つ目の分散情報との2つの正常な分散情報が揃ったので、復元処理部71により正常な2つの複数の分散情報からオリジナルファイルC1を復元する。前記復元したオリジナルファイルは排他制御下で管理する。この排他制御下で管理しているときにオリジナルファイルの閲覧・書き込み等の作業を行う。
次に、再分散処理ステップS37に進む。このステップS37は、図7の分散処理のフロー7に示すステップS10と同じ処理を実行するものであり、復元ファイルに対して再分散処理を実行し、復元したオリジナルファイルC1を再分散処理する。これにより、3つの分散情報のうちの1つの破壊又は改竄可能性のある分散情報がなくなり、3つの正常な分散情報を揃えることができる。本発明は、ハッシュ値が不一致と判断された場合、残りの正常な複数の分散情報により復元したオリジナルファイルを再分散させることにより、分散情報すべてを正常再な分散情報に回復させることができる。そして、インデックス情報更新をする。破壊又は改竄される可能性のあった分散情報が正常化されたのでこれに伴いインデックス情報C5を更新する。
前記再分散処理後に、前記復元したオリジナルファイルの廃棄処理ステップS38で、排他制御下で管理していたオリジナルファイルを廃棄処理する。これにより、非使用時にはオリジナルファイルが保存されず分散情報のみが保存されている状態となる。よって、ウイルスが侵入し難い環境にすることができることからウイルス未発症の効果を有する。
前記分散処理ステップS37で分散された分散情報は、図9に示すウイルス未発症・復元方法のフロー9の開始点S100にもどる。
図11に示すウイルス未発症・復元方法の復元処理・再分散処理のフローの第2種分散情報復元・再分散処理のフロー11について説明する。この場合は、例えば、閾値分散法による分散情報イの数が3つで、全分散情報ロの数が4つで、かつハッシュ値が不一致となる予測する分散情報ニの数が2つで、コピーファイルの数が1つの場合である。オリジナルファイルC1を3つに分散させる場合であるので分散情報の種類は3つである。この3種類の分散情報を4つの異なる記憶装置に記憶させる場合である。1つ目の分散情報A51を外部記憶装置であるハードディスク(記憶装置D24)に記憶し、2つ目の分散情報B53を外部記憶装置であるUSBフラッシュメモリ(記憶装置A21)に記憶し、3つ目の分散情報C55を外部記憶装置であるクラウドストレージ(記憶装置B22)に記憶し、4つ目の分散情報として、分散情報A521又はB53を外部記憶装置であるクラウドストレージ(記憶装置C23)に記憶する。2つの分散情報をウイルスが侵入し難いクラウドストレージ(記憶装置B22、C23)に記憶させる。図11のフロー図は、1つ目の分散情報A51及び2つ目の分散情報B53がともに不正ファイルと判断された場合を示す。
まず、図9の第2種分散情報復元・再分散処理S22を受けて、図8に示す分散情報取得ステップS60と同じフローを実施する。まず、インデックス情報C5から分散保存先の接続情報46を取得し、3つ目の分散情報C55及び4つ目の分散情報57に関して、分散情報インデックス情報取得部42が記憶装置29に記憶されているインデックス情報C5の分散保存先の接続情報46を取得するステップがあるが、前記ステップは図8のS62に該当するステップであり図9のSS4のときに実行されている。したがって、ステップS42から開始され、前記ステップS42は、図8のS63と同じ内容を実行するステップであり、インデックス情報取得部42が記憶装置29に記憶されているインデックス情報C5の3つ目の分散情報C55及び4つ目の分散情報57のハッシュ値を取得する。ステップS43は、図8のS64と同じ内容を実行するステップであり、分散保存先の接続情報から分散情報を取得する。制御モジュール43の分散情報の回復処理部76から秘密分散モジュール42のインデックス情報取得部72に指示し、記憶装置B22から現在の分散情報C55を取得し、記憶装置C23から現在の分散情報(A又はB)57を取得する。
次に、確認ステップS70に進む。ステップS44は3つ目の分散情報のハッシュ値を算出するステップである。インデックス情報取得部42により取得した各分散保存先の接続情報からの3つ目の分散情報のハッシュ値を入出力コントローラ36の操作によりハッシュ関数算出のコマンド指示で実行させて取得する。ステップS45は3つ目の分散情報の整合性を確認するステップである。ステップS44で算出した復元しようとするときの3つ目の分散情報のハッシュ値と、インデックス情報取得部42により分散時に算出した3つ目の分散情報のハッシュ値情報47とが一致するかをチェックする。ここでは一致したものとする。
まだ、正常な分散情報が1つなので、さらに正常ファイル数確保ステップS80で前記確認ステップS70を繰り返す。ステップS46は4つ目の分散情報のハッシュ値を算出するステップである。インデックス情報取得部42により取得した各分散保存先の接続情報からの4つ目の分散情報のハッシュ値を入出力コントローラ36の操作によりハッシュ関数算出のコマンド指示で実行させて取得する。ステップS47は4つ目の分散情報の整合性を確認するステップである。ステップS46で算出した復元しようとするときの4つ目の分散情報のハッシュ値と、インデックス情報取得部42により分散時に算出した4つ目の分散情報のハッシュ値情報47とが一致するかをチェックする。ここでは一致したものとする。これにより、3つ目の分散情報と4つ目の分散情報の2つの複数の正常な分散情報が揃った。
次に、復元処理・排他制御管理ステップS48である。ここでは、ステップS48は正常な分散情報2つを用いて復元し、前記復元したオリジナルファイルを排他制御の下で管理するステップである。復元処理部71により、3つ目の分散情報と4つ目の分散情報の正常な2つの複数の分散情報からオリジナルファイルC1を復元する。前記復元したオリジナルファイルは排他制御下で管理する。この排他制御下で管理しているときにオリジナルファイルの閲覧・書き込み等の作業を行う。
ステップS49は復元ファイルに対して再分散処理を実行するステップである。ステップS49は、図7の分散処理のフロー7に示すステップS10と同じ処理を実行するステップであり、復元したオリジナルファイルC1を再分散処理する。これにより、4つの分散情報のうちの2つの破壊又は改竄可能性のある分散情報がなくなり、4つの正常な分散情報を揃えることができる。本発明では、ハッシュ値が不一致と判断された場合、残りの正常な複数の分散情報により復元したオリジナルファイルを再分散させることにより、分散情報すべてを正常な分散情報に回復させることができる。そして、インデックス情報更新をする。破壊又は改竄される可能性のあった分散情報が正常化されたのでこれに伴いインデックス情報C5を更新する。
前記再分散処理後に、前記復元したオリジナルファイルの廃棄処理ステップS50で、排他制御下で管理していたオリジナルファイルを廃棄処理する。これにより、非使用時にはオリジナルファイルが保存されず分散情報のみが保存されている状態となり、ウイルスが侵入し難い環境にすることができることからウイルス未発症の効果を有する。
前記再分散処理ステップS49で分散された再分散情報は、図9に示すウイルス未発症・復元方法のフロー9の開始点S100にもどる。
本発明のウイルス未発症・復元プログラムは、前記ウイルス未発症・復元方法200をコンピュータに実行させることができ、前記ウイルス未発症・復元方法200である、分散処理のフロー7、分散情報取得のフロー8、ウイルス未発症・復元方法のフロー9、第1種分散情報復元・再分散処理のフロー10、及び、第2種分散情報復元・再分散処理のフロー11をコンピュータに実行させることができる。
本発明のコンピュータ読み取り可能な記憶媒体は、前記ウイルス未発症・復元プログラムを記憶しており、前記ウイルス未発症・復元プログラムの持ち運びができる。
(ウイルス未発症・復元方法の変形例)
次に、本発明のウイルス未発症・復元方法の変形例について説明する。
図13は、本発明のウイルス未発症・復元方法の変形例に係るフロー図である。図13に示すように、本発明のウイルス未発症・復元方法200Aは、オリジナルファイルC1の分散と復元、さらに破壊又は改竄された分散情報の修復を繰り返すウイルス未発症・復元方法であって、閾値分散法により予め定めた復元に必要な数以上の複数の分散情報にオリジナルファイルC1を分散する分散手順T2と、前記分散後にオリジナルファイルC1を廃棄する廃棄手順T3と、分散情報からオリジナルファイルC1を復元させ、復元させたオリジナルファイルC1を排他制御下で管理する復元・修復・排他制御手順T5Aと、閾値分散法により予め定めた復元に必要な数以上の複数の再分散情報に前記復元させたオリジナルファイルC1を再分散させる再分散手順T6と、再分散後に前記復元させたオリジナルファイルC1を廃棄する廃棄手順T7と、を備え、復元・修復・排他制御手順T5A、前記再分散手順T6、再分散後の廃棄手順T7を順にサイクルとして繰り返す。
本発明のウイルス未発症・復元方法200Aが図12に示す本発明のウイルス未発症・復元方法200と異なるのは、復元・修復・排他制御手順T5Aと、T44、T45、T51〜53の手順をさらに備えていることである。
T44によって復元必要数の正常なファイル検出によって復元可能な分散ファイルが3以上の場合は、分散ファイルがウイルスよって破損・改竄されていないことになり、T51のオリジナルファイル復元オリジナルファイルを復元し、前記復元オリジナルファイルを生成した業務アプリケーションや流通アプリケーションの管理下に置き、復元オリジナルファイルに対する外的要因の排他をオリジナルファイルを生成したアプリケーションに委ねる。
一方、T44によって復元必要数の正常なファイル検出によって復元可能な分散ファイルが3以下の場合は、分散ファイルがウイルスによって破損又は改竄されていることになり、T44によってT45に送られ、最小数でオリジナルファイルの復元を行い、復元されたオリジナルファイルはT46に送られ、再分散を即時実行し、分散情報A51、分散情報B53、分散情報C55、に上書き処理を行う。
フロー図200AのT5Aは、オリジナルファイルを復元し、別名で保存した場合、復元したオリジナルファイルを元にした別ファイルが出来上がることになる。新規に生成されたオリジナルファイルに対する排他制御は可能となるが、オリジナルファイルT1から分散されたT2のファイルが全て正常な状態であるとは限らない。仮に複数のウイルスによって改竄や破損された場合、オリジナルファイルを復元することはできなくなる。しかしながら、T51を含むフローによって常に復元に可能な正常な最大数の分散ファイルを維持できることになる。
T52にてアプリケーションが実行されていない場合は動作が終了したものとし、T6にて復元オリジナルファイルの再分散を行う。一方、T52にてアプリケーションが実行されていない場合は動作が終了したものとし、T6にて復元オリジナルファイルの再分散を行う。
復元・修復・排他制御手順T5Aでオリジナルファイルを復元させた復元時Aにて復元に必要な分散ファイルを常に維持することが可能となる。
さらに、再分散手順T6と再分散後の廃棄手順T7により、T5Aの復元・修復・排他制御手順T5Aを実行することができる。他の構成は、図12に示す本発明のウイルス未発症・復元方法200と同じであるので説明は省略する。
本発明のウイルス未発症・復元方法200Aによれば、復元・修復・排他制御手順T5AでオリジナルファイルC1を復元させた復元時Aにおいて、T46により再分散を実施し、分散情報A51、分散情報B53、分散情報C55に上書き処理を行う。これにより、復元に必要な分散ファイルを常に維持することが可能となる。さらに、分散時Bに再分散手順T6と再分散後の廃棄手順T7でオリジナルファイルC1を分散させている。これにより、上記復元時A及び分散時Bの何れにおいても第三者にオリジナルファイルを改竄される機会を与えない仕組みができる。
(分散処理及びインデックス情報取得処理の変形例)
分散処理及びインデックス情報取得処理の変形例について説明する。
図14は、本発明のウイルス未発症・復元方法の分散処理の変形例のフロー図であり、図15は、本発明のウイルス未発症・復元方法のインデックス情報取得処理のフロー図である。
図14に示すウイルス未発症・復元方法の分散処理の変形例が図7に示すウイルス未発症・復元方法の分散処理と異なるのは、フロー7A中のS10AにST8Aを含んでいることである。他の処理は、図7と同じであるので説明は省略する。
ステップST8Aは、ステップ8の後に各分散保存先とハッシュ値等を記憶したインデックス情報C5を、所定のクラウドストレージに複写するステップである。クラウドストレージとしては、分散先とした3つ以上のクラウドストレージの何れか、又は分散先以外の別のクラウドストレージとすることができる。これにより演算処理装置25の主記憶装置26に記憶された各分散保存先とハッシュ値等を記憶したインデックス情報C5を、主記憶装置26に記憶すると共に、所定のクラウドストレージに複写する。
図15に示すように、ウイルス未発症・復元方法のインデックス情報取得処理は、クラウドストレージに保存されたインデックス情報C5の分散情報取得ステップS60Aにより処理される。図15ににおいて、ステップS61Aはインデックス情報C5から分散保存先の参照可否状況を取得するステップである。インッデックス情報取得部42Aがクラウドストレージに記憶されているインデックス情報C5の分散保存先の参照可否情報48を取得する。
ステップS62Aはインデックス情報C5から分散保存先の接続情報を取得するステップである。制御モジュール43Aの各分散保存先への接続可否監視部74の指示により、インデックス情報取得部42Aがクラウドストレージに記憶されているインデックス情報C5の分散保存先の接続情報46Aを取得する。
ステップS63Aはインデックス情報C5から参照可能な分散情報のハッシュ値を取得するステップである。インデックス情報取得部42Aがクラウドストレージに記憶されているインデックス情報C5の参照可能な分散情報のハッシュ値情報47Aを取得する。
ステップS64Aは各分散保存先の接続情報から分散情報を取得するステップである。インデックス情報取得部42がクラウドストレージに記憶されている分散情報を取得する。これにより、インデックス情報取得部42Aにより、分散保存先の参照可否情報48、分散保存先の接続情報46、分散情報のハッシュ値情報47、各分散保存先の接続情報からの分散情報を取得することができる。
ここで、アプリケーション内部で処理される情報である制御モジュール43A、インデックス情報取得部42A及び接続情報46A等は、図3に示すアプリケーションで扱う情報40と、アプリケーション自身の設定に関する情報である基本設定情報49等に対応する。これらの情報は、演算処理装置25に対応するクラウドストレージのクラウドサーバに格納される。制御モジュール43A、インデックス情報取得部42A及び接続情報46A等は、フロー7A中のST8Aで、インデックス情報C5共に格納されてもよい。
クラウドサーバは、さらに復元処理手段84を備えて構成されてもよい。この構成によれば、演算処理装置25及び/又は主記憶装置26が故障したときには、演算処理装置25の使用者は、正常な演算処理装置25により、クラウドストレージにアクセスして、図15で取得した分散情報と、図6で説明した復元処理とによりオリジナルファイルC1を復元することができる。この復元したオリジナルファイルC1を、正常な演算処理装置25にてダウンロードすることで、正常な演算処理装置25の主記憶装置26に記憶させることができる。
クラウドサーバは、さらに排他制御手段86、再分散処理手段85、廃棄手段82を備えて構成されてもよい。この構成によれば、演算処理装置25及び/又は主記憶装置26が故障したときには、演算処理装置25の使用者は、正常な演算処理装置25により、クラウドストレージにアクセスして、図15で取得した分散情報と、図6で説明した復元処理と、図9〜図12で説明したウイルス未発症・復元方法の復元処理移行の各手順の処理がされる。これによりオリジナルファイルC1を復元することができる。この復元したオリジナルファイルC1を、正常な演算処理装置25からダウンロードすることにより、正常な演算処理装置25の主記憶装置26に記憶させることができる。
分散処理及びインデックス情報取得処理の変形例によれば、クラウドストレージに各分散保存先とハッシュ値等を記憶したインデックス情報C5を、所定のクラウドストレージに複写するステップである。
インデックス情報のコピーを保存することにより、演算処理装置25及び/又は主記憶装置26が故障したときもオリジナルファイルC1を復元することができる。これにより、例えば、演算処理装置25及び主記憶装置26を持ち歩く必要がなくなる。
(レジウム機能による分散処理の再履行)
分割の失敗時において、レジウム機能により分散処理を再履行する処理について説明する。
図16は、図5に示す分散処理において、分散の失敗時には、レジウム機能によって分散処理を再履行する処理の一態様を示すフローチャートであり、図17は、分散転送の失敗時には、レジウム機能によって分散転送処理を再履行する工程の他の態様を示すフローチャートである。
レジウム機能は、分散処理失敗時に自動的に再分散処理を行う機能であり、例えばクラウドストレージ83に登録保管できない場合も同様に自動的に再分散処理を行う機能である。登録保管できない例としては、通信経路の障害やその他の要因により、クラウドストレージ83に保管されなかった場合が挙げられる。登録保管できない場合には、分散情報50、52、54を、クラウドストレージ83に保管されるまで転送を繰り返す処理、つまり分散転送処理を行う。すなわち、オリジナルファイルC1を分散してクラウドストレージ83に保管するまでが一つの処理であり、その処理が完結しなければ、完結するまで繰り返し実行する。
図16において、ステップST31にて、各分散保存先の参照可否状況をチェックし、ステップST32にて参照可能な分散保存先の数を求める。ステップST32にて参照可能な分散保存先の数が三つ未満の場合には、ステップST33にて分散処理を中断して、ステップST31に戻る。
ステップST32にて、参照可能な分散保存先の数が三つ以上の場合には、ステップST34にて分散処理を実行し、ステップST35にて参照可能な分散保存先へ分散情報を保存できるか否かを調べ、分散処理が失敗した時にはステップST36にて分散処理を再実行して、分散処理が実行できた場合には、後述するステップST37〜ステップST40に進む。
これに対して、ステップST35にて、参照可能な分散保存先へ分散情報を保存できる場合には、ステップST37にて、各分散保存先の参照可否情報をインデックス情報C5に記憶し、ステップST38にて、各分散情報のハッシュ値を算出し、インデックス情報C5に記憶する。
次に、ステップST39にて、各分散保存先情報をインデックス情報C5に記憶する。
続いてステップST40にて、オリジナルファイルC1に関する情報をインデックス情報C5に記憶して終了する。
図17に示すように、レジウム機能の工程の他の態様では、ステップST31にて、各分散保存先の参照可否状況をチェックし、ステップST32にて参照可能な分散保存先の数が三つ以上の場合には、ステップST34にて分散処理を実行し、ステップST41にて各記憶部83に転送試行を開始する。
次に、ステップST42にて転送に成功した記憶部が2箇所以上であるか否かを調べ、転送に成功した記憶部が2箇所以上でない場合(NO)には、ステップST43にて転送試行を中断してステップST41に戻る。
ステップST42にて転送に成功した記憶部が2箇所以上である場合(YES)には、ステップST44にて各分散保存先、つまり記憶部に関する転送結果を、インデックス情報C5に記憶し、かつ、各分散情報51、53、55のハッシュ値を算出して、インデックス情報C5に記憶して終了する。
分散先が三つ未満の場合は、例えば、WiFi(登録商標)等の無線LAN環境において通信状態が常時安定はしていないケース等が挙げられる。この場合にはファイルを転送している最中に通信が途絶えてしまうケースは日常起こっている。
このようにして、上記レジウム機能によれば、オリジナルファイルC1から分散情報51、53、55の作成に失敗したときには、分散処理部70において上記ステップにより、オリジナルファイルC1の再度の分散処理を実行して、新たに作成した分散情報51、53、55を主記憶装置26に保存すると共に、新たなインデックス情報C5を作成することができる。
(分散情報の復元方法)
分散情報51、53、55が何らかの理由で正しくない状態、つまり不正なファイルとなった場合の復元方法について説明する。
ここで、不正なファイルとは、何らかの事情により壊れたファイル、ウイルスに感染したファイル、ネットワークに接続されたストレージであるNAS、ファイルサーバ等においてはWindows(登録商標)等のオペレーティングシステム(OS)のアップデートで壊れたファイルを意味している。
図18は、オリジナルファイルC1と、分散情報51、53、55と、インデックス情報C5との関係を示す図であり、図19は、分散情報51、53、55の復元方法を示すフローチャートである。
図18に示すように、オリジナルファイルC1が分散処理部21により分散情報51、53、55に分散されると、分散情報51、53、55に関する情報であるハッシュ値と、オリジナルファイルC1のハッシュ値とが、インデックス情報として取得される。オリジナルファイルC1のハッシュ値は、復元時のオリジナルファイルC1との整合性の確認と分散処理部21が正しく分散処理をしたことの確認とのために取得される。分散ファイルのハッシュ値は、クラウドストレージのような記憶部83からネットワークを介してダウンンロードして取得した分散情報51、53、55との整合の確認と、分散情報51、53、55が正しくダウンロードされたことを保証するために、取得される。
次に、図19に示す分散情報51、53、55の復元方法について説明する。
先ず、ステップ71にて、インデックスファイルC5から分散情報51のハッシュ値(D1)を取得する。ステップ72にて、分散保存先の接続情報から記憶部83の分散情報を取得する。ステップ73にて、記憶部83の分散ファイルのハッシュ値(D2)を算出する。ステップ74にて、インデックスファイルから取得したD1のハッシュ値とD2で算出したハッシュ値との一致を確認する。ステップ75にて、インデックス情報のハッシュ値と一致するか否かを判定する。ステップ75にてD1のハッシュ値とD2の算出したハッシュ値とが異なる場合(NO)には、ステップ76にて、不正な分散情報のファイルが抽出されたので、ステップ77に進む。
これに対して、ステップ75にて、D1のハッシュ値とD2の算出したハッシュ値とが一致した場合(YES)には、不正な分散情報のファイルはない、つまり0としてステップ77に進む。
次にステップ77にて、インデックスファイルから分散情報53のハッシュ値(D3)を取得する。ステップ78にて、分散保存先の接続情報から記憶部83の分散情報を取得する。ステップ79にて、記憶部42の分散ファイルのハッシュ値(D4)を算出する。ステップ80にて、インデックスファイルから取得したD3のハッシュ値とD4で算出したハッシュ値との一致を確認する。次に、ステップ81にて、インデックスファイルC5から取得したD3のハッシュ値とD4で算出したハッシュ値と一致しているか否かの判定をして、一致していない場合(NO)には、ステップ82にて、不正な分散情報のファイルが抽出されたとして、ステップ53に進む。ステップ83にて、不正な分散情報のファイル数が1であるとして、ステップ84〜ステップ93に進む。
ステップ84にて、インデックスファイルC5から分散情報55のハッシュ値(D5)を取得する。ステップ85にて、分散保存先の接続情報から記憶部83の分散情報を取得する。ステップ86にて、分散情報55の分散ファイルのハッシュ値(D6)を算出する。ステップ87にて、インデックスファイルC5から取得したD5のハッシュ値とD6で算出したハッシュ値との一致を確認する。ステップ88にて、復元処理を実行する。ステップ89にて、正常な分散ファイル2つを用いてオリジナルファイルC1を復元する。ステップ90にて、復元したオリジナルファイルC1のハッシュ値(D7)を算出する。ステップ91にて、インデックスファイルC5に書き込んだオリジナルファイルC1のハッシュ値とD7で算出したハッシュ値との一致を確認する。ステップ92にて、参照可能な記憶部83へオリジナルファイルC1を再分散し、保存されている情報に対し上書き保存する。ステップ93にて、インデックス情報C5を更新して、復元したオリジナルファイルC1を再分散し、インデックス情報を更新する分散処理を終了する。
これにより、分散情報51、53、55に不正なファイルを抽出した場合に、復元したオリジナルファイルC1を再分散しインデックス情報を更新する分散処理を実行することができる。
これに対して、ステップ83にて、D3のハッシュ値とD4で算出したハッシュ値とが一致した場合(YES)には、不正な分散情報のファイルはない、つまり0としてステップ100〜ステップ105に進む。
先ずステップ100にて、復元処理を開始する。ステップ101にて正常な分散ファイル2つを用いてオリジナルファイルC1を復元する。ステップ102にて、復元したオリジナルファイルC1のハッシュ値(D8)を算出する。ステップ103にて、インデックスファイルに書き込んだオリジナルファイルC1のハッシュ値とD8で算出したハッシュ値との一致を確認する。ステップ104にて、参照可能な記憶部83へオリジナルファイルC1を再分散し、保存されている情報に対し上書き保存する。ステップ105にて、インデックス情報C5を更新して、復元したオリジナルファイルC1を再分散し、インデックス情報を更新する分散処理を終了する。
これにより、分散情報51、53、55に不正なファイルを抽出した場合に、復元したオリジナルファイルC1を再分散しインデックス情報C5を更新する分散処理を実行することができる。
(ソフトウェアの保護機能)
情報処理装置25を構成する各種の情報端末等にウイルス未発症・復元方法のプログラムのソフトウェアをインストールした場合、情報端末等を紛失した時等に上記ソフトウェアの保護をする機能について説明する。
図20は、情報端末にソフトウェアの保護機能として、使用者を識別するためのPINコードの設定をするためのフローチャートであり、図21は、ソフトウェアの保護機能を説明するフローチャートである。
図20に示すように、先ずステップ46にて、システム設定から無操作時にファイル伝送システム10用のソフトウェアをロックするか否かを質問されるので、「ロックする」を選択する。
次に、ステップ47にて、ロックするまでの任意の時間(秒や分)を入力する。ステップ48にて、任意の4桁の数字からなるPINコードを入力する。ステップ49にて、ロックするまでの時間とPINコードを登録して終了する。これにより、ファイル伝送システム10用のソフトウェアの保護機能が情報端末に設定される。
次に、ソフトウェアの保護機能について説明する。
図11に示すように、情報端末においてソフトウェアを使用している際に、ステップ51にて、登録した時間を経過すると画面をロックする。ステップ52にて、ロック解除のためのPINコードの入力を要求する。ステップ53にて、入力されたPINコードが、ステップ53で入力された情報端末の使用者が登録したPINコード(図17のステップ43参照)であるか否かの判定がされ、PINコードの入力が情報端末の使用者である場合(YES)には、ステップ54にてロックが解除される。これにより、情報端末の使用者がソフトウェアの使用者である場合には、ソフトウェアがロックされても、ロック解除のためのPINコードが要求された場合にPINコードを入力して、ソフトウェアの使用を再開することができる。
これに対して、ステップST53にて、情報端末の使用者が登録したPINコードでない場合(NO)には、ステップ55にて、ロック解除のためのPINコードの入力を要求する。ステップ56にて、入力されたPINコードがステップ13で入力された情報端末の使用者が登録したPINコード(図17のステップ43参照)であるか否かの判定がされ、PINコードの入力が情報端末の使用者である場合(YES)には、ステップ57にて、ロックが解除される。
これにより、情報端末の使用者が当該ソフトウェアの使用者である場合には、ソフトウェアがロックされても、ロック解除のためのPINコードが要求された場合にPINコードを入力して、ソフトウェアの使用を再開することができる。
ステップST56にて、情報端末の使用者が登録したPINコードでない場合(NO)には、ステップ58にて、再度ロック解除のためのPINコードの入力を要求する。次に、ステップ59にて、入力されたPINコードがステップ13で入力された情報端末の使用者が登録したPINコード(図17のステップ43参照)であるか否かの判定がされ、PINコードの入力が情報端末の使用者である場合(YES)には、ステップ60にてロックが解除される。
これにより、情報端末の使用者が当該ソフトウェアの使用者である場合には、使用者が登録したPINコードを誤って入力してソフトウェアがロックされても、ステップ59にて、登録したPINコードを入力してソフトウェアの使用を再開することができる。
ステップST59にて、情報端末の使用者が登録したPINコードでない場合(NO)には、ステップ61にて、情報端末の使用者が登録したPINコードを知らない第三者であると判断して、ソフトウェアの設定を消去する。次に、ステップ62にて、クラウドストレージ40における保存先情報64bも消去して終了する。
上記ステップ61においては、インストール時にソフトウェア自体の正誤性の確認の認証のために入力したシリアルキーの情報も消去される。このため、上記ステップ61及びステップ61により、情報端末から当該ソフトウェアに関係する全ての設定及び付帯情報が消去される。これにより、第三者によりソフトウェアが不正利用されるのを防止することができる。
上記説明において、ステップST53、ステップST56、ステップST59の3回のステップにおいてPINコードの入力が要求されており、この3回の全てのPINコードの入力が正しくない場合(NO)に、ステップ61及びステップ62において、ソフトウェアが不正利用されるのを防止したが、PINコードの入力の要求回数は、必要に応じて任意に設定してもよい。
(第2の実施形態)
次に、本発明によるウイルス未発症・復元方法に係る第2の実施形態について説明する。
本発明によるウイルス未発症・復元方法に係る第2の実施形態は、ファイルのみならずフォルダの伝送も可能である。フォルダは、複数のファイルをグループ化したデータである。
図22は、オリジナルフォルダ110を伝送する分散処理の構成を示すブロック図であり、図23は、オリジナルフォルダの復元の構成を示すブロック図である。
図22に示すように、図5に示す分散処理の構成において、分散処理部70Aの前段に、さらに圧縮部115を備えて構成されている。オリジナルフォルダ110は、圧縮部115で圧縮ファイル120に変換されて、分散処理部70Aに出力される。他の構成は、図5に示す分散処理の構成と同じであるので説明は省略する。これにより、オリジナルフォルダ100が圧縮ファイル120に変換されて分散処理部70Aに出力され、図2と同様に、分散情報51、53、55がクラウドストレージ83に送信され、インデックス情報C5が演算処理装置25の主記憶装置26に記憶される。
図23に示すように、図6に示す復元処理の構成において、さらに、復元処理部71Aに接続される伸長部130を備えて構成されている。復元処理部120で復元された圧縮ファイル110は、伸長部130でオリジナルフォルダ100に変換される。他の構成は、図6に示す復元処理の構成と同じであるので説明は省略する。これにより、図6と同様に、分散情報51、53、55及びインデックス情報C5により圧縮ファイル110が復元され、復元された圧縮ファイル110が伸長部130でオリジナルフォルダ100に変換される。
本発明の第2の実施形態のファイル伝送によれば、分散処理部70Aに圧縮部115を備え、復元処理部71Aに伸長部130を備えて構成されることにより、オリジナルフォルダ110の伝送が可能となる。
従来はZIP等の圧縮形式にてカプセル化処理を施し、クラウドストレージ等に送信していた。しかし、近年、サイバー攻撃の激化により、ZIP等でカプセル化したデータはコンピュータウイルスの混入やサイバー攻撃を誘発するサイトのリンク等を検疫することができないため、メールサーバやその管理者、ベンダー等はZIPファイルを添付できない仕様に変更されるケースが増えている。
本発明の第2の実施形態のウイルス未発症・復元方法によれば、ZIPファイルを使用しないで、オリジナルフォルダ110の伝送が可能となる。よって、多数のファイルを分散する場合に比較すると、オリジナルフォルダ110とインデックス情報C1を記憶するだけでよいので、多数のファイルを分散する時間が不要となり、業務効率を向上させることが可能となる。
本発明は、その趣旨を逸脱しない範囲において様々な形態で実施することができる。
例えば、上述した実施形態においては、オリジナルファイルC1に用いる分散処理と復元処理と、オリジナルフォルダ110に用いる処理とを個別に説明したが、オリジナルファイルC1及びオリジナルフォルダ110の何れも処理できるように分散処理と復元処理を構成してもよいことは明らかである。
送信に際し、分散すべきデータがオリジナルファイルC1である場合には、直接分散処理部70Aで分散処理を行い、分散すべきデータがオリジナルフォルダ110である場合には、圧縮部115で圧縮ファイル120に変換した後で分散処理部70Aにより分散処理を行うようにすればよい。受信に際し、復元したデータがオリジナルファイルC1である場合にはそのまま出力し、復元したデータが圧縮ファイル120であれば、伸長部130でオリジナルファイルフォルダ110に変換すればよい。
上述した第2の実施形態においても、第1の実施形態で説明した、GUIの操作画面、分割の失敗時の再履行方法、及び分散情報の復元方法を利用することも可能であることは明らかである。
1 本発明のシステムの動作に必要なシステム構成
2 本発明のシステムの動作に必要なハードウエア構成
3 本発明のシステムで扱う情報
4 本発明のシステムの全体構成
5 分散処理のブロック図
6 復元処理のブロック図
7 分散処理のフロー
8 分散情報取得のフロー
9 ウイルス未発症・復元方法のフロー
10 第1種分散情報復元・再分散処理のフロー
11 第2種分散情報復元・再分散処理のフロー
200 ウイルス未発症・復元方法

Claims (8)

  1. オリジナルファイルの分散と復元を繰り返すウイルス未発症・復元方法であって、
    閾値分散法により予め定めた復元に必要な数超の複数の分散情報にオリジナルファイルを分散する分散手順と、
    前記分散後に前記オリジナルファイルを廃棄する廃棄手順と、
    前記分散情報からオリジナルファイルを復元させ、前記復元させたオリジナルファイルを排他制御下で管理する復元・排他制御手順と、
    閾値分散法により予め定めた復元に必要な数以上の複数の再分散情報に前記復元させたオリジナルファイルを再分散させる再分散手順と、
    前記再分散後に前記復元させたオリジナルファイルを廃棄する廃棄手順と、を備え、
    前記復元・排他制御手順、前記再分散手順、再分散後の前記廃棄手順を順にサイクルとして繰り返すことを特徴とするウイルス未発症・復元方法。
  2. 閾値分散法によりオリジナルファイルを分散情報に分散するとともに前記オリジナルファイルを廃棄し、前記分散情報から前記オリジナルファイルを復元させるウイルス未発症・復元方法であって、
    閾値分散法により、予め定めた復元に必要な数の複数の分散情報にオリジナルファイルを分散し、前記分散情報それぞれに対応するハッシュ値を算出する分散処理ステップと、
    前記分散後に前記オリジナルファイルを廃棄する廃棄処理ステップと、
    前記分散情報ごとに分散時に算出したハッシュ値と復元時に算出するハッシュ値とを比較し、前記比較でハッシュ値が一致の場合はその分散情報が正常であると判断し、前記比較でハッシュ値が不一致の場合は分散情報が破壊又は改竄されたと判断し、正常と判断した分散情報の数が復元に必要な分散情報の数に到達すると前記正常と判断した分散情報を組み合わせてオリジナルファイルを復元する復元処理し、前記復元させたオリジナルファイルを排他制御下で管理する復元処理・排他制御管理ステップと、
    閾値分散法により、予め定めた復元に必要な数の複数の分散情報に前記復元されたオリジナルファイルを再分散し、前記分散情報それぞれに対応するハッシュ値を算出する再分散処理ステップと、
    前記再分散後に前記復元したオリジナルファイルを廃棄する廃棄処理ステップと、を備え、
    前記復元処理・排他制御管理ステップ、前記再分散処理ステップ、再分散の前記廃棄処理ステップを順にサイクルとして繰り返すことを特徴とするウイルス未発症・復元方法。
  3. 閾値分散法によりオリジナルファイルを分散情報に分散するとともに前記オリジナルファイルを廃棄し、前記分散情報から前記オリジナルファイルを復元させるウイルス未発症・復元システムであって、
    閾値分散法により、予め定めた復元に必要な数の複数の分散情報にオリジナルファイルを分散し、前記分散情報それぞれに対応するハッシュ値を算出する分散処理手段と、
    前記分散後に前記オリジナルファイルを廃棄する廃棄処理手段と、
    前記複数の分散情報をそれぞれ異なる記憶装置に記憶し、少なくとも前記複数の分散情報のハッシュ値情報を含むインデックス情報を前記分散情報とは異なる記憶装置に記憶する記憶手段と、
    前記分散情報ごとに分散時に算出したハッシュ値と復元時に算出するハッシュ値とを比較し、前記比較でハッシュ値が一致の場合はその分散情報が正常であると判断し、前記比較でハッシュ値が不一致の場合は分散情報が破壊又は改竄されたと判断し、正常と判断した分散情報の数が復元に必要な分散情報の数に到達すると前記正常と判断した分散情報を組み合わせてオリジナルファイルを復元する復元処理手段と、
    前記復元させたオリジナルファイルを排他制御下で管理する排他制御手段と、
    閾値分散法により、予め定めた復元に必要な数の複数の分散情報に前記復元されたオリジナルファイルを再分散し、前記分散情報それぞれに対応するハッシュ値を算出する再分散処理手段と、
    前記再分散後に前記復元したオリジナルファイルを廃棄する廃棄処理手段と、を備え、
    前記復元処理手段による復元処理、前記排他制御手段による排他制御、前記再分散処理手段による分散処理、再分散処理後の前記廃棄処理手段による廃棄処理の順にサイクルとして繰り返すことを特徴とするウイルス未発症・復元システム。
  4. 前記復元処理手段が、ハッシュ値が不一致と判断された場合、残りの正常な複数の分散情報によりオリジナルファイルを復元し、前記再分散処理手段が、復元したオリジナルファイルを再分散させることにより、再分散後の分散情報すべてを正常な分散情報に回復させることを特徴とする、請求項3に記載のウイルス未発症・復元システム。
  5. 前記復元処理手段又は前記再分散処理手段が、前記分散情報ごとに分散時と復元時とのハッシュ値を比較し、前記比較でハッシュ値が不一致の分散情報を抽出することを特徴とする、請求項3又は4に記載のウイルス未発症・復元システム。
  6. 分散処理部の前段に、オリジナルフォルダを圧縮ファイルに変換する圧縮部を備え、復元処理部の後段に、前記圧縮ファイルを前記オリジナルフォルダに変換する伸長部を備えたことを特徴とする、請求項1から5の何れかに記載のウイルス未発症・復元システム。
  7. 請求項1又は2に記載のウイルス未発症・復元方法をコンピュータに実行させることを特徴とする、ウイルス未発症・復元プログラム。
  8. 請求項7に記載のプログラムを記憶したことを特徴とする、コンピュータ読み取り可能な記憶媒体。
JP2019100810A 2019-05-29 2019-05-29 ウイルス未発症・復元システム、ウイルス未発症・復元方法、ウイルス未発症・復元プログラム及び記憶媒体 Pending JP2020194462A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019100810A JP2020194462A (ja) 2019-05-29 2019-05-29 ウイルス未発症・復元システム、ウイルス未発症・復元方法、ウイルス未発症・復元プログラム及び記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019100810A JP2020194462A (ja) 2019-05-29 2019-05-29 ウイルス未発症・復元システム、ウイルス未発症・復元方法、ウイルス未発症・復元プログラム及び記憶媒体

Publications (1)

Publication Number Publication Date
JP2020194462A true JP2020194462A (ja) 2020-12-03

Family

ID=73548037

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019100810A Pending JP2020194462A (ja) 2019-05-29 2019-05-29 ウイルス未発症・復元システム、ウイルス未発症・復元方法、ウイルス未発症・復元プログラム及び記憶媒体

Country Status (1)

Country Link
JP (1) JP2020194462A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117291750A (zh) * 2023-11-27 2023-12-26 平利县女娲茗鼎农业科技有限公司 基于区块链的兽医用废弃物溯源管理方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003296179A (ja) * 2002-03-29 2003-10-17 Mitsubishi Electric Corp 情報処理装置及びネットワークファイル方法
JP2009139990A (ja) * 2007-12-03 2009-06-25 Internatl Business Mach Corp <Ibm> 情報の不正取得を防止する技術
WO2013065544A1 (ja) * 2011-11-01 2013-05-10 株式会社野村総合研究所 データ分散管理システム
WO2015125765A1 (ja) * 2014-02-18 2015-08-27 日本電信電話株式会社 セキュリティ装置、その方法、およびプログラム
JP2018136904A (ja) * 2017-02-23 2018-08-30 株式会社イノベーション・ファーム ウイルス駆除システム
JP2019054363A (ja) * 2017-09-14 2019-04-04 株式会社日立システムズ サーバー装置、秘密分散管理システムおよび秘密分散管理装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003296179A (ja) * 2002-03-29 2003-10-17 Mitsubishi Electric Corp 情報処理装置及びネットワークファイル方法
JP2009139990A (ja) * 2007-12-03 2009-06-25 Internatl Business Mach Corp <Ibm> 情報の不正取得を防止する技術
WO2013065544A1 (ja) * 2011-11-01 2013-05-10 株式会社野村総合研究所 データ分散管理システム
WO2015125765A1 (ja) * 2014-02-18 2015-08-27 日本電信電話株式会社 セキュリティ装置、その方法、およびプログラム
JP2018136904A (ja) * 2017-02-23 2018-08-30 株式会社イノベーション・ファーム ウイルス駆除システム
JP2019054363A (ja) * 2017-09-14 2019-04-04 株式会社日立システムズ サーバー装置、秘密分散管理システムおよび秘密分散管理装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117291750A (zh) * 2023-11-27 2023-12-26 平利县女娲茗鼎农业科技有限公司 基于区块链的兽医用废弃物溯源管理方法及系统
CN117291750B (zh) * 2023-11-27 2024-02-06 平利县女娲茗鼎农业科技有限公司 基于区块链的兽医用废弃物溯源管理方法及系统

Similar Documents

Publication Publication Date Title
KR101381551B1 (ko) 그룹 기반의 완료 및 증분 컴퓨터 파일 백업 시스템, 프로세스 및 장치
US8667273B1 (en) Intelligent file encryption and secure backup system
EP1702449B1 (en) Method for identifying the content of files in a network
KR101699998B1 (ko) 일시적 중요정보의 보안 저장
US20120185505A1 (en) Methods and computer program products for accelerated web browsing
US20120011102A1 (en) Information Source Agent and Computer Program Product for Distributed Data Storage and Management Using Content Signatures
US20030079158A1 (en) Secured digital systems and a method and software for operating the same
EP1365306A2 (en) Data protection system
GB2567146A (en) Method and system for secure storage of digital data
CN103080946A (zh) 用于安全地管理文件的方法、安全设备、系统和计算机程序产品
US20020095598A1 (en) Method of transferring data
US20050120063A1 (en) Automatic regeneration of computer files
US11349855B1 (en) System and method for detecting encrypted ransom-type attacks
Duncan et al. Detection and recovery of anti-forensic (vault) applications on android devices
CN108256351B (zh) 文件处理方法和装置、存储介质及终端
CN112131041A (zh) 用于管理数据放置的方法、设备和计算机程序产品
JP2020194462A (ja) ウイルス未発症・復元システム、ウイルス未発症・復元方法、ウイルス未発症・復元プログラム及び記憶媒体
CN106844006B (zh) 基于虚拟化环境下的数据防护方法及系统
JP2004164226A (ja) 情報処理装置およびプログラム
JP2008009483A (ja) 情報処理システム、情報処理方法、およびプログラム
KR101763184B1 (ko) 백업을 이용한 파일 복구 방법
JP7497545B2 (ja) ファイル伝送システム
CN109145599B (zh) 恶意病毒的防护方法
US20220150241A1 (en) Permissions for backup-related operations
JP2002015511A (ja) リムーバブルメディアを用いたオフライン共有セキュリティシステム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20220523

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220527

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230307

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20230429

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230912