以下、本発明の第1実施形態について説明する。本発明の第1実施形態であるファイル/キー/データ管理システムの構成図を図1に示す。
図1において、パソコン100には、ファイル/キー/データ管理ソフト150(以下、単にソフト150という)がインストールされている。パソコン100は、携帯電話、PDA、移動情報処理端末、カーナビ、CD、DVD記録再生装置等の情報処理機器であっても良い。ソフト150は、図示しないCD−ROM等により提供されたり、図示しないサーバ等からインターネット200を通じてダウンロードの形で提供されるようになっている。
そして、インターネット200には、図示するように複数台のパソコン100、100、・・・が接続されている。なお、本実施形態の場合、複数台の各パソコン100は、インターネット200に接続していなくても良い。DVD、CD、磁気ディスク、フレキシブルディスクやメモリカード等により、パソコン100の間でデータの交換ができれば良いからである。
また、パソコン100には、文字を入力するためのキーボード101と、ポインタ等を操作するためのマウス103が設けられている。さらに、パソコン100には、そのパソコン100によりインターネット200等を介して取得し、あるいはユーザ自らが作成、編集した音楽ファイル、画像ファイル、文字ファイルや、これらのファイル等やアプリケーション等のためのキー(公開キー、共通キーなど)、音楽データ、画像データ、文字データ、アプリケーションデータ、ファイルのヘッダ情報等のファイル/キー/データ105(以下、これらをファイル類105という)を記憶するための記憶装置107が設けられている。このように、本発明の管理システムに適用可能なファイル類105は、その種類を問わない。
ここで、記憶装置107としては、例えばパソコン100に内蔵されたり外付けされているハードディスクドライブ、書き込み可能なDVD、書き込み可能なCD、光ディスク、磁気ディスクやフレキシブルディスク、メモリカード等である。そして、ファイル類105の記憶装置107への保存/バックアップの際や、記憶装置107からのファイル類105の読み取り/編集等の際には、ソフト150により暗号化、復号化等が行われるようになっている。
ソフト150は、パソコン100のハードウェア情報やそのシステム情報、さらにパソコン100にインストールされているソフトウェア情報等から、固有情報109を検出するようになっている。固有情報109としては、例えばパソコン本体の情報、CPUの情報、PCI情報、MACアドレス、ハードディスクの情報、OS情報、メールアドレス、IPアドレス、IPv6アドレス(Internet Protocol version 6)、cookie、SCSI情報、ソフトウェア又はファイルシステム情報等である。
そして、パソコン本体の情報としては、例えば富士通製パソコンならばFMVT423B、NEC製パソコンならばPC9821Xa16W30等のパソコン型式等であり、既存のハードウェア情報からソフトウェアで取得可能な情報である。ただし、この型式は必ずしもフル型式である必要はなく、PC9821、FMV等の一部情報であっても良い。また、ハードディスクドライブの情報としては、例えばハードディスクドライブの容量や記憶されているソフトウェアの名称等である。
さらに、OS情報としては、例えばWindows(登録商標)95のインストール時に設定されたユーザ名、プロダクトID番号、OSのインストール実行日時等である。このOSのインストール実行日時を用いる場合には、例えばOSのインストールされた基本ドライブの各ディレクトリの更新日時を参照することで可能である。
また、固有情報109としてメールアドレス、IPアドレス、cookie情報、SCSI情報等を用いる場合には、他のパソコン100等でも同一となる可能性があるため、ハードウェア情報等と組み合わせて用いるのが望ましい。
このように、固有情報109としては、あくまで本発明のために改めて記録され、用意されるものではなく、既存のハードウェアや、既存のシステム等から読み取り可能な情報であれば良い。そのため、様々なOSに対して(Win95〜XPまで)固有情報109を検出可能となっている。なお、固有情報109には、別途機器を必要とするがメモリカード等の記録媒体に設定されたID情報や、バイオメトリクス情報等の情報を含めても良い。また、必ずしも既存から読み取り可能な情報に限定するものではなく、新規に改造や組み込み等されることで読み取りの可能となった情報等であっても良い。
さらに、固有情報109としては、上記のように読み取り可能であっても、容易に変更可能なものは好ましくない。例えば、容易に、あるいは頻繁に部品の交換等が前提となっているものは好ましくない。
そして、ソフト150は、このような固有情報109のうち、複数個の固有情報1〜N(番号1〜Nは各固有情報に対応する番号である)を検出するようになっている。このとき、固有情報1〜Nはハッシュ値化される。ただし、必ずしもハッシュ化せずにそのままデータとして使用されても良い。
さらに、これらの固有情報1〜Nに基づいて、ファイル類105を暗号化、復号化するためのキーを生成するようになっている。なお、ソフト150で検出する固有情報109は、複数個が望ましいが、一つとされても良い。
かかる構成において、ソフト150の動作について説明する。まず、ファイル類105の保存/バックアップ動作について説明する。この動作を示したフローチャートを図2に示す。
図2において、パソコン100で取得、作成、編集したファイル類105を、ソフト150を用いて保存/バックアップする際には、まず、ステップ101
(図中S101と略す。以下同旨)で保存先を指定する。例えば、上述した記憶装置107等を指定する。
そして、ステップ103では、ステップ101における保存先の指定とともに、ファイル類105を保存/バックアップ動作を行うパソコン100から固有情報1〜Nを検出する。このようなパソコン100から検出される固有情報1〜Nをパソコン固有情報1p〜Npという(添字pはパソコンから検出されたことを意味する添字である)。
次に、ステップ105では、ステップ103で検出したパソコン固有情報1p〜Npと、記憶装置107に保存/バックアップするファイル類105とを、一つのファイルにまとめる。
一方、ステップ106では、パソコン固有情報1p〜Npに基づいて、ファイル類105を暗号化するためのキーを生成する。このような固有情報1〜Nに基づいて生成されたキーを固有情報キーという。
なお、この固有情報キーの生成に際しては、各固有情報1〜Nを所定の順番に並べ替えたり、固有情報1〜Nを所定の関数を通して演算した結果を用いたりしても良い。また、固有情報1〜Nの一部を抜き取ったり、あるいは一部を重複させて混在させたりして、固有情報キーを生成しても良い。
さらに、暗号化に用いる情報は、固有情報以外に例えば時刻データ等や乱数を加えるようにしてもよい。時刻データは、例えば固有情報の検出時刻や固有情報のセンター等への送信時刻等である。この場合には、生成される固有情報キーの値は、ファイル類105の暗号化の都度変わる変動値となる。なお、暗号化に用いる情報は、固有情報が省略され、時刻データ等や乱数のみが用いられるようにされてもよい。
このように、固有情報キーの生成のために時刻データ等も利用される場合には、ステップ105でこれらのデータも記憶装置107に保存/バックアップされる。
そして、ステップ107では、ステップ105でまとめられたパソコン固有情報1p〜Npとファイル類105のうち、ファイル類105の部分を、ステップ106で生成された固有情報キーで暗号化する。このような固有情報キーで暗号化されたファイル類105を暗号化ファイル類105cという(添字cは暗号化を意味する添字である)。ただし、ファイル類105全体を暗号化せずに、例えばタグを除くテキスト部分を暗号化するようにしても良い。
さらに、ステップ109では、ステップ105でまとめられたパソコン固有情報1p〜Npとファイル類105のうち、パソコン固有情報1p〜Npの部分を第2共通キーで暗号化する。ここで、第2共通キーは、後述する第1共通キーと異なり、パソコン固有情報1p〜Npを暗号化するために用いられるものであり、例えばソフト150の製造元若しくはこのソフト150を組み込んだ形でアプリケーションを提供する製造元が設定する共通キーである。
そして、ステップ111では、ステップ107で暗号生成された暗号化ファイル類105cと、ステップ109で暗号化されたパソコン固有情報1p〜Npとが一つにファイル化されて、図3に示すような構造を有するファイルFAが完成される。このようなファイルFAとして一つにファイル化されたパソコン固有情報1p〜NpをファイルFA固有情報1f〜Nfという(添字fはファイルFAに含まれることを意味する添字である)。
このとき、ファイルFAのうち、暗号化ファイル類105cが音楽ファイル、画像ファイル、テキストファイルである場合には、それぞれ独立したファイルとしても良いし、暗号化ファイル類105cが複数のファイルとして構成されても良い。また、ファイルFA固有情報及び暗号化ファイル類105cをそれぞれ独立したファイルとして構成しても良い。
その後、ステップ113では、ステップ111で完成されたファイルFAを第1共通キーで暗号化する。このようにして暗号化されたファイルFAを暗号化ファイルFAcという。ここで、第1共通キーは、ファイルFAを暗号化するために用いられるものであり、第2共通キーと同様に、例えばソフト150の製造元若しくはこのソフト150を組み込んだ形でアプリケーションを提供する製造元が設定する共通キーである。
これにより、ステップ115では、記憶装置107に暗号化ファイルFAcが保存、バックアップされる。
なお、このファイル類105の保存/バックアップ動作においては、ステップ107、109で、それぞれ暗号化ファイル類105cを暗号生成し、パソコン固有情報1p〜Npを暗号化するとして説明したが、ステップ107、109のいずれかは省略しても良い。
すなわち、ファイルFAの構造として、暗号化されていないファイル類105と暗号化されたパソコン固有情報1p〜Npとの組み合わせでも良い(全体は第1共通キーで暗号化される)し、暗号化ファイル類105cと暗号化されていないパソコン固有情報1p〜Npとの組み合わせでも良い。
また、ファイルFAを暗号化ファイル類105cと暗号化されていないパソコン固有情報1p〜Npとの組み合わせで構成した場合には、ステップ113でファイルFA全体を暗号化するのではなく、パソコン固有情報1p〜Npだけを暗号化するようにしても良い。この点は、以下に示す読み取り/編集動作においても同様である。
なお、ステップ115で記憶装置107に保存/バックアップされる際には、さらに圧縮化されることが好ましい。この場合、LZH形式等の汎用の圧縮方法ではなく、また、圧縮の際にパスワード等を要求するような特殊な圧縮が行われることが望ましい。
次に、保存/バックアップされたファイル類の読み取り/編集動作及び再保存/再バックアップ動作について説明する。この動作を示したフローチャートを図4に示す。
図4において、パソコン100で保存/バックアップされたファイル類105を読み取る際には、まず、ステップ201でソフト150の立ち上げのためのパスワードの入力が要求される。また、ステップ202で暗号化ファイルFAcの保存元である記憶装置107を指定して、読み取りたい暗号化ファイルFAcを指定する。
そして、ステップ203では、ステップ202で指定された暗号化ファイルFAcを第1共通キーで復号化して、ファイルFAを得る。ステップ205では、暗号化ファイルFAcの読み取りを行っているパソコン100からパソコン固有情報1p〜Npを検出する。そして、このパソコン固有情報1p〜Npがハッシュ値化される。
また、ステップ207では、ステップ203で復号生成されたファイルFAからファイルFA固有情報1f〜Nfの部分を抜き出して、このファイルFA固有情報1f〜Nfを第2共通キーで復号化する。
さらに、ステップ209では、ステップ205でパソコン100から検出したパソコン固有情報1p〜Npと、ステップ207で復号化されたファイルFA固有情報1f〜Nfとの対比を行う。そして、以下のステップ211、213により、保存/バックアップしたパソコン100と、現在読み取り動作が行われているパソコン100が同一のものであるか否かが判断される。
すなわち、ステップ211では、パソコン固有情報1p〜Np及びファイルFA固有情報1f〜Nfが複数個の固有情報109の集まりであることを利用して、固有情報1、2、・・・、N毎の個別の対比を行う。その結果、N個の固有情報1〜Nのうち、例えば半数以上(固有情報1〜Nが8つの固有情報の集まりからなる場合には4個以上)一致している場合には、保存/バックアップしたパソコン100と、読み取り動作が行われているパソコン100とが同一である可能性が高いものとして、次のステップ213に進む。
一方、一致している固有情報1〜Nが半数未満である場合には、保存/バックアップしたパソコン100と、読み取り動作が行われているパソコン100とが異なっていると考えられるので、このようなパソコン100はファイル類105を不正に使用する者が用いるパソコン100であると判断される。その結果、このパソコン100ではステップ219等に進むことができず、ファイル類105の読み取り、編集等が行えないようになる。
ここで、N個の固有情報1〜Nの完全一致ではなく、そのうちの半数以上の一致によりパソコン100が同一であると判断した理由について説明する。例えば、ファイル類105の保存/バックアップした後にCPU情報の変更を行ったとして、そのファイルFA固有情報1f〜Nfの中にCPU情報が含まれていたとする。
すると、保存/バックアップ動作により保存されたファイルFA固有情報1f〜Nfと、CPU情報変更後のパソコン固有情報1p〜Npとは、このCPU情報の違いにより完全に一致しない。しかしながら、CPU情報のような比較的容易に変更可能な固有情報109についてまで完全に一致することを要求すると、正常使用を行っているユーザにとっては極めて煩わしい。
その一方で、CPU情報は、固有情報1〜Nとして重要である。従って、N個の固有情報1〜Nのうち一致している個数を半数以上か否かとすることで、高い精度でパソコン100の同一性が判断されるとともに、正常使用を行っているユーザに対する煩わしさが解消される。
続いて、ステップ213では、パソコン固有情報1p〜NpとファイルFA固有情報1f〜Nfのうち、優先順位の高い固有情報109に不一致がないか判断される。ここで、優先順位の高い固有情報109としては、容易に変更されることのない固有情報109が好ましく、上記で列挙したうち例えばパソコン本体の情報、MACアドレス等である。この結果、優先順位の高い固有情報109が一致している場合には、ステップ211の結果と合わせて、保存/バックアップしたパソコン100と、読み取り動作が行われているパソコン100とが同一であると判断し、次のステップ215に進む。
一方、優先順位の高い固有情報109が一致していない場合には、ステップ211で固有情報1〜Nで一致している個数は多いが、本来変更され難い固有情報109が異なっているため、保存/バックアップしたパソコン100と、読み取り動作が行われているパソコン100とが異なっていると判断する。従って、この場合にはステップ219等の読み取り、編集等に進むことができなくなる。
なお、これらのステップ211、213の分岐では、一致した固有情報1〜Nの個数や、優先順位の高い固有情報109の一致のみに基づいて判断したが、これに限られない。例えば、ステップ211のみの判断としても良いし、また、固有情報1〜Nに対し優先順位等に基づいた重み付けを有する点数を与え、そのうち一致した固有情報109の合計点が、全部一致した場合の全得点に対して所定割合以上になるか否かにより判断しても良い。優先順位の重み付けは、例えば、固定的に用いられる確率の高い情報や、シリアル番号等を有する情報が高く設定される等されても良い。
そして、ステップ215では、ステップ211、213の分岐により保存/バックアップしたパソコン100と同一であると判断された場合には、ステップ203で復号生成されたファイルFA(暗号化ファイル類105cと暗号化されたパソコン固有情報1p〜Npとからなる)から暗号化ファイル類105cの部分のみを抽出する。
また、ステップ216では、ステップ207で復号化されたファイルFA固有情報1f〜Nfに基づいて、暗号化ファイル類105cを復号化するための固有情報キーを生成する。なお、この固有情報キーの生成に際しては、前述したように、各固有情報1〜Nを所定の順番に並べ替えたり、固有情報1〜Nを所定の関数を通して演算した結果を用いて、固有情報キーを生成しても良い。また、固有情報1〜Nの一部を抜き取ったり、あるいは一部を重複させて混在させたりして、固有情報キーを生成しても良い。
そして、ステップ217では、ステップ215で抽出された暗号化ファイル類105cを、ステップ216で生成された固有情報キーで復号化し、ファイル類105を得る。
これにより、ステップ219では、ファイル類105の読み取り、編集が行われる。
その後、ステップ219でファイル類105の編集等が終了した場合には、ステップ251以降において、再びファイル類105の保存、バックアップを行う。この動作を再保存/再バックアップ動作という。
再保存/再バックアップ動作において、まず、ステップ251では、ステップ207で復号化されたファイルFA固有情報1f〜Nfと、ステップ219で読み取り、編集が行われたファイル類105とを、一つのファイルにまとめる。そして、ステップ253では、このファイルFA固有情報1f〜Nfに基づいて、ファイル類105を暗号化するための固有情報キーを生成する。さらに、ステップ255では、ステップ251でまとめられたファイルFA固有情報1f〜Nfとファイル類105のうち、ファイル類105の部分を、ステップ253で生成した固有情報キーで暗号化する。
なお、ステップ251、253、255は、上述した保存/バックアップ動作のステップ105、106、107の処理と近似しているが、ステップ105、106、107がパソコン100から検出したパソコン固有情報1p〜Npに基づいて処理を行っているのに対し、ステップ251、253、255がファイルFA固有情報1f〜Nfに基づいて処理を行っている点が異なっている。
そして、ステップ255でファイル類105が暗号化されると、図2に示した保存/バックアップ動作のステップ109以降と同様の処理を行って、ファイル類105の保存、バックアップが行われる。
以上により、重要な内容を含むファイル類105が外部に流出した場合でも、ソフト150により保存/バックアップされていれば、その流出先のパソコン100とは「パソコン100が同一でないと判断される」ので、流出したファイル類105を復号することができず、その結果ファイル類105の不正使用を防止することができる。ネットワーク接続された他のパソコンであっても復号することができない。
また、固有情報1〜Nの半数以上の一致等によりパソコン100が同一であると判断することで、固有情報1〜Nの一部の変更、ユーザによるハードウェア等の変更ではファイル類105の読み取り等が阻止されることはなく、正常使用を行っているユーザに対する煩わしさを解消することができる。
さらに、ファイル類105を固有情報1〜Nにより、また固有情報1〜Nを第2共通キーで暗号化した上で、さらに第1共通キーにより多重に暗号化しているため、極めて安全である。
加えて、固有情報1〜Nは、既存のハードウェアや、既存のシステム等から読み取り可能な情報なので、パソコン100等が再セットアップされた場合でも、同じ固有情報1〜Nを取得することができる
さらに、第1共通キー、第2共通キーはソフト150の製造元若しくはこのソフト150を組み込んだ形でアプリケーションを提供する製造元が設定可能なので、製造元独自の設計ができる。
次に、本発明の第2実施形態について説明する。
第1実施形態であるファイル/キー/データ管理システムは、保存/バックアップしたパソコンと、読み取り/編集しようとするパソコンとが同一でないと判断されると、ファイル類の読み取り等が一切禁止されるものであったが、本実施形態であるファイル/キー/データ管理システムは、同一でないと判断された場合でも、第三者の不正使用を防止しつつ保存/バックアップされたファイル類の読み取り/編集を可能にするものである(この読み取り/編集を可能にする動作を救済動作という)。
すなわち、保存/バックアップしたパソコンに対して大規模な部品等の改造や買換え等を行ったために「パソコンが同一でない」と判断されても、そのパソコンにおいてファイル類105の読み取り等を可能にするものである。
本発明の第2実施形態のファイル/キー/データ管理システムの構成図を図5に示す。なお、図1と同一要素のものについては同一符号を付して説明は省略する。
図5において、インターネット200には、センター300と、複数台のパソコン100、100、・・・が接続されている。このセンター300には、センター300用のファイル/キー/データ管理ソフト150がインストールされている。ただし、ソフト150は、図示しないCD−ROM等により提供されたり、図示しないサーバからインターネット200を通じてダウンロードの形で提供されるようにしても良い。
そして、センター300には、パソコン100、100、・・・からインターネット200やフレキシブルディスク等の記録媒体を介して、後述する初回パソコン固有情報1pi〜Npiや暗号化ファイルFAcが送信されるようになっている。また、センター300では、パソコン100、100、・・・を使用するユーザからの登録あるいはそのユーザに対するユーザIDの発行やその認証等が行われるようになっている。その一方で、センター300は、認証の取れたユーザに対して、例えば一部データ破損等の生じたような場合に、センター300に蓄積している固有情報等を送信することも可能なようになっている。
さらに、センター300には、登録されたユーザIDと受信した初回パソコン固有情報1pi〜Npi等とが、互いに対応付けされながら保存されるデータベース301が設けられている。そして、固有情報のデータベース301への蓄積や、データベース301からの固有情報の読み出しの際には、ソフト150により所定の制御が行われるようになっている。
かかる構成において、ソフト150の動作について説明する。まず、登録意思確認動作、保存/バックアップ動作(初回保存動作付き)及び登録動作について説明する。この動作を示したフローチャートを図6、図7に示す。なお、図2と同一要素のものについては同一符号を付して説明は省略する。
図6、図7において、保存/バックアップ動作(初回保存動作付き)を行う前に、登録意思確認動作においてユーザに登録意思があるか否かが確認される。
まず、ステップ301では、パソコン100においてソフト150の使用が初回か否かが判断される。
そして、ステップ301で初回であると判断された場合には、ステップ303に進む。一方、ステップ301で初回でないと判断された場合には、以前に登録の意思確認が行われたと判断できるので、ステップ311以降の保存/バックアップ動作が開始される。
その後、ステップ303では、ステップ301で初回であると判断されたパソコン100にユーザ登録用の画面を表示する。ただし、このユーザ登録用の画面は、後に選択により任意に表示可能とされても良い。そして、ステップ305では、ステップ303で表示されたユーザ登録用の画面に対して、実際に登録を行うか否かの選択が行われる。登録を行う意思がある場合にはその旨の選択を行うことで、ステップ307で登録意思が確認される。
一方、ステップ305で登録を行う意思がない場合には、その旨の選択を行うことで、本フローが一度終了される。その後、再度のステップ301で初回でないと判断されることで、ステップ311以降の保存/バックアップ動作が開始される。これ以降、ステップ305で登録を行わない旨を選択したパソコン100に対しては、第1実施形態と同様の制御のみが行われるようになる。すなわち、保存/バックアップしたパソコン100と、読み取り/編集しようとするパソコン100とが同一でないと判断されると、ファイル類105の読み取り等が一切禁止され、その救済が行われることはない。
そして、ステップ307で登録意思が確認されると、初回保存動作付きの保存/バックアップ動作が開始される。
この初回保存動作付きの保存/バックアップ動作は、第1実施形態の保存/バックアップ動作と近似しているが、ステップ103(パソコン固有情報1p〜Npの検出)とステップ105(パソコン固有情報1p〜Npとファイル類をまとめる)の間に、ステップ309、311が挿入されている点が異なっている。
すなわち、ステップ305で登録の意思の確認がされた場合には、ステップ103でのパソコン固有情報1p〜Npの検出の後に、ステップ309でそのパソコン固有情報1p〜Npを、パソコン100の記憶装置107に保存する。このような初回であると判断された場合に保存されるパソコン固有情報1p〜Npを初回パソコン固有情報1pi〜Npiという(添字iは初回であることを意味する添字である)。なお、この初回パソコン固有情報1pi〜Npiの保存先としては、記憶装置107のうちでも容易に書き換えできない領域に保存されることが望ましい。
そして、ステップ311では、ステップ105以降の保存/バックアップ動作で使用されるパソコン固有情報1p〜Npを、ステップ309で保存された初回パソコン固有情報1pi〜Npiで上書きする。
すなわち、ステップ301で初回であると判断された場合には、ステップ103で検出されたパソコン固有情報1p〜Npと、初回パソコン固有情報1pi〜Npiとは同一となるため、以降のフローは第1実施形態の保存/バックアップ動作と全く同じになる。
これに対し、ステップ301で初回でないと判断された場合には、あたかも現在のパソコン100が、ステップ301で初回であると判断されたときのパソコン100であるが如く、以降の保存/バックアップ動作が行われる。
そして、ステップ311でパソコン固有情報1p〜Npが上書きされると、第1実施形態と同様のフローにより、ファイル類105やパソコン固有情報1p〜Np等に基づいて暗号化ファイルFAcが生成され、ファイル類105の保存/バックアップ動作が行われる(ステップ105からステップ115まで)。
なお、ステップ115で記憶装置107に保存/バックアップされる際には、さらに圧縮化されることが好ましい。この場合、LZH形式等の汎用の圧縮方法ではなく、また、圧縮の際にパスワード等を要求するような特殊な圧縮が行われることが望ましい。
次に、ファイル類105の保存/バックアップ動作が終了すると、図7に示すステップ351以降においてユーザの登録動作が行われる。
まず、ステップ351では、パソコン100において、ソフト150の使用が初回か否かが再度判断される。そして、ステップ351で初回であると判断された場合には、ステップ353に進む。一方、ステップ351で初回でないと判断された場合には、そのまま本フローは終了される。
そして、ステップ353では、ステップ351で初回であると判断されたパソコン100に対して、センター300に接続するか否かの選択が行われる。これにより、ステップ353では、間接的にユーザの登録意思が再確認される。そして、登録を行う意思がある場合にはセンター300に接続する旨の選択を行うことでステップ355に進む。一方、ステップ305の段階では登録意思があったが、その後意思がなくなった場合には、センター300に接続しない旨の選択をすることで、本フローは終了される。
ステップ355では、ステップ353でセンター300に接続する旨の選択が行われたパソコン100に対し、ユーザ登録サイトへの接続が行われる。また、ステップ357では、ステップ355で接続されたユーザ登録サイトにおいて、ユーザのメールアドレス、名前、住所等の情報入力が行われる。
さらに、ステップ359では、ステップ357におけるメールアドレス等の入力の後に、ステップ115で生成された暗号化ファイルFAcと、ステップ309で保存された初回パソコン固有情報1pi〜Npiとが、センター300に送信される。もちろん、ステップ309で保存された初回パソコン固有情報1pi〜Npiの代わりに、ステップ311で上書きされたパソコン固有情報1p〜Npを送信しても良い。
また、この際には初回パソコン固有情報1pi〜Npiのみを送信するようにしても良い。
そして、ステップ361では、センター300において、ステップ359で送信された暗号化ファイルFAcと初回パソコン固有情報1pi〜Npiとを受信する。
その後、ステップ363では、ステップ361で受信した暗号化ファイルFAcと初回パソコン固有情報1pi〜Npiのうちから、初回パソコン固有情報1pi〜Npiをデータベース301に保存する。この際、データベース301では、初回パソコン固有情報1pi〜Npiが、後述するステップ365でパソコン100に返信されるユーザID等と対応付けされながら、図8に示すような構造により保存される。なお、このセンター300のデータベース301に蓄積された初回パソコン固有情報1pi〜Npiを蓄積固有情報1d〜Ndという(添字dは蓄積されたことを意味する添字である)。
例えば、図8に示すように、データベース301では、ユーザID毎に上位のカテゴリが形成されている。そして、新規のユーザの場合は、登録により新たなユーザID用のカテゴリが形成される。また、各ユーザID用のカテゴリの下位には蓄積固有情報1d〜Ndが保存されている。さらに、以下に示す救済動作を行うことで、各ユーザID用のカテゴリの下位には複数組の蓄積固有情報1d〜Ndが設けられる場合もある(ユーザID=bbbbにて例示する)。
そして、ステップ365では、パソコン100に対して、ユーザIDとパスワード等が付与される。このユーザIDとパスワード等を用いることで、センター300との個別交信が可能となる。そして、例えばパソコン100の記憶装置107に保存されたパソコン固有情報1p〜Npを消滅させてしまったような場合に、センター300に保存された蓄積固有情報1d〜Nd等の入手等が可能となる。その後、ステップ367では、パソコン100に確認のメールが送信される。これにより、ステップ369でユーザの登録が完了される。
次に、保存/バックアップされたファイル類の読み取り/編集動作、再保存/再バックアップ動作及び救済動作について説明する。この動作を示したフローチャートを図9〜図11に示す。なお、図4と同一要素のものについては同一符号を付して説明は省略する。
図9〜図11において、ファイル類の読み取り/編集を行うに際し、ステップ201からステップ209までは、第1実施形態と同様である。ただし、ステップ203では、図6のステップ115において圧縮化されて保存された場合には、解凍化を行う必要がある。また、以下のステップ255でも、逆に同様の圧縮化が行われても良い。
そして、本実施形態では、ステップ211、213の分岐において、保存/バックアップしたパソコン100と、読み取り動作が行われているパソコン100とが異なっていると判断された場合でも、図10のステップ401に進む。そして、ステップ401以降の処理を加えることで、読み取りを可能とするものである。この点、第1実施形態の読み取り/編集動作では、ステップ211、213でパソコン100が異なっていると判断された場合に、そのままステップ109以降の保存/バックアップ動作に進んでいたのとは異っている。
以下、保存/バックアップしたパソコン(パソコン100Aとする)に対して大規模な部品等の改造やパソコンの買換え、譲渡等が行われ、ステップ211、213の分岐において、現在読み取り等を行おうとしているパソコン(説明の都合上パソコン100Bとする)が同一でないと判断されたものとして説明する。
まず、ステップ401では、読み取り等を行おうとしているパソコン100Bに対して、そのファイル類105の救済動作を行うか否かの選択が行われる。この際には、パソコン100Bに「救済するか否か」の問い合わせウィンドウが起動される。
そして、ステップ401で救済を行う旨の選択を行った場合には、ステップ403に進む。一方、ステップ401で救済を行わない旨の選択を行った場合には、図9のステップ109以降の保存/バックアップ動作が行われる。この場合、ファイル類105の読み取り/編集を行うことはできない。
そして、ステップ401で救済を行う旨の選択を行った場合には、救済動作に進み、ステップ403で救済したいファイル類105が含まれる暗号化ファイルFAcの選択が行われる。さらに、ステップ405では、救済したい暗号化ファイルFAcが保存されているパソコン100Bからパソコン固有情報1p〜Npが検出される。
その後、ステップ407では、ステップ405でパソコン固有情報1p〜Npが検出されたパソコン100Bに対して、センター300に接続するか否かの選択が行われる。これにより、ステップ407では、間接的に救済動作を行うか否かが再確認される。そのため、救済動作を行う場合にはセンター300に接続する旨の選択を行うことでステップ409に進む。一方、ステップ401の段階では救済動作を行う意思があったが、その後意思がなくなった場合には、センター300に接続しない旨の選択をすることで、本フローは終了される。
さらに、ステップ409では、ステップ407でセンター300に接続する旨の選択が行われたパソコン100Bに対し、ユーザIDとパスワードの入力が要求される。そして、ステップ411では、ステップ409で入力されたユーザIDとパスワードが、センター300に存在するか否かが確認される。ここで、センター300にユーザIDが存在しない場合や、パスワード認証が取れない場合には、再度ステップ407に戻りユーザIDとパスワードの入力が要求される。しかしながら、この場合に本フローが終了されても良い。従って、前述した登録動作においてユーザ登録が行われていない場合には、これ以降のフローに進むことはできない。
さらに、ステップ411で確認が取れた場合には、ステップ413において、ステップ403で指定された暗号化ファイルFAcと、ステップ405で検出されたパソコン100Bのパソコン固有情報1p〜Npとが、センター300に送信される。これに対応して、ステップ415では、センター300において、ステップ413で送信された暗号化ファイルFAcとパソコン固有情報1p〜Npとが受信される。そして、ステップ417では、ユーザIDとパスワードの確認が行われる。
さらに、図11のステップ418では、センター300において受信した暗号化ファイルFAcを第1共通キー、第2共通キーで復号化して、この暗号化ファイルFAcから、保存/バックアップを行ったパソコン100AのファイルFA固有情報1f〜Nfを抽出する。このステップ418の動作は、第1実施形態の読み取り/編集動作のステップ203、207と同様である。ここで、暗号化ファイルFAcから抽出されるファイルFA固有情報1f〜Nfは、ステップ311において初回パソコン固有情報1pi〜Npiで上書きされたパソコン固有情報1p〜Npである。
そして、ステップ419では、ステップ418で抽出されたパソコン100AのファイルFA固有情報1f〜Nfと、データベース301に蓄積された蓄積固有情報1d〜Ndのうちステップ417で確認されたユーザIDのカテゴリに属する蓄積固有情報1d〜Ndとを対比する。そして、以下のステップ421、423により、ファイル類105の救済を許可するか否かが判断される。
すなわち、ステップ421では、ファイルFA固有情報1f〜Nfと蓄積固有情報1d〜Ndに対して、固有情報1、2、・・・、N毎の個別の対比を行う。そして、全てが一致している場合には、ステップ359等でセンター300への登録を行ったパソコン100Aであると判断されるので、次のステップ423に進む。
一方、ステップ421で、ファイルFA固有情報1f〜Nfと蓄積固有情報1d〜Ndとが全て一致しないと判断された場合には、不正に救済作業を行っているか、あるいは救済作業の途中で間違いがあったと考えられるので、エラーを返して本フローを終了させる。
続いて、ステップ423では、この救済動作を行うのに回数制限がある場合には、その回数制限を越えていないか否か判断される。この場合、センター300のデータベース301には、各ユーザIDに対応付けされて救済動作を行った回数が保存されることが望ましい。また、このステップ423では、救済動作を行うに際し課金する場合には、支払いが行われたか否かが判断される。この場合、ユーザに対し直接課金の請求を行っても良いし、ベンダーに対してこれを行っても良い。ユーザに対し課金の請求を行う場合には、クレジットカード等の番号の入力を要求しても良い。
そして、ステップ423で上記のような確認が取れた場合には、ファイル類105の救済が許可されたものとして、ステップ424に進む。一方、ステップ423で以上のような確認が取れない場合には、救済作業の意思がなくなった等と判断できるので、エラーを返して本フローを終了させる。
その後、ステップ424では、センター300側で、パソコン100Bから送信された暗号化ファイルFAcに対し、その中のファイルFA固有情報1f〜Nfから固有情報キーを生成して、暗号化ファイル類105cの復号化を行う。このステップ424の動作は、第1実施形態の読み取り/編集動作のステップ215、216、217と同様である。
そして、ステップ425では、センター300側で、パソコン100Aから抽出したファイルFA固有情報1f〜Nfを、パソコン100Bから送信されたパソコン固有情報1p〜Npで上書きする。
さらに、ステップ427では、ステップ425でファイルFA固有情報1f〜Nfを上書きしたパソコン固有情報1p〜Npを、センター300のデータベース301に保存する。この場合、既に存在するパソコン100Aの蓄積固有情報1d〜Ndを上書きしないように、別途カテゴリを設けて保存する。これにより、再度登録動作を行うことなくパソコン100Bの登録が行われたのと同様になる。
さらに、ステップ429では、センター300側で、ステップ425で上書きされたパソコン100BのファイルFA固有情報1f〜Nfを用いて、第1実施形態と同様の保存/バックアップ動作(ステップ105からステップ115まで)により暗号化ファイルFAcを生成する。そして、ステップ431では、ステップ429で生成された暗号化ファイルFAcを、センター300からユーザのパソコン100Bにダウンロードさせる。
これにより、ステップ433では、パソコン100Bのパソコン固有情報1p〜Npを用いて暗号化ファイルFAcの復号化が可能となるため、ファイル類105の読み取り/編集動作が可能となり、ファイル類105が救済される。
次に、ステップ435で、センター300に登録されたパソコン固有情報1p〜Npをもって、パソコン100の初回パソコン固有情報1pi〜Npiを上書きする。従って、以降のデータ保存等の際には、新規にセンター300に登録されたパソコン固有情報1p〜Npをもってファイル類105は暗号化される。
以上により、同一でないと判断されたパソコン100Bにおいても、ファイル類105の読み取り/編集等が可能となる。そして、この処理はセンター300側で行われるため、第三者の不正使用を防止しつつ保存/バックアップされたファイル類105の救済を行うことができる。
次に、本発明の第3実施形態について説明する。
第1実施形態であるファイル/キー/データ管理システムは、1台のパソコン100でのファイル類105の読み取り/編集動作を可能にするものであったが、本実施形態であるファイル/キー/データ管理システムは、複数台のパソコン100、100、・・・でのファイル類105の読み取り/編集動作を可能にするものである。
本発明の第3実施形態のファイル/キー/データ管理システムの構成図を図12に示す。なお、図1と同一要素のものについては同一符号を付して説明は省略する。
図12において、インターネット200には、ファイルF2サーバ500と、複数台のパソコン100A、100B、・・・が接続されている。このファイルF2サーバ500には、ファイルF2サーバ500用のファイル/キー/データ管理ソフト150がインストールされている。
そして、ファイルF2サーバ500と、パソコン100A、100B、・・・との間では、パソコン固有情報1p〜Npや蓄積ファイルF2dの送受信が行われるようになっている(ファイルF2、蓄積ファイルF2dの内容については以下に示す)。また、ファイルF2サーバ500では、蓄積ファイルF2dがソフト150の制御によりデータベース501に蓄積されたり、データベース501から読み出されるようになっている。
一方、パソコン100Aとパソコン100B等との間では、インターネット200を介して、ファイルF1やファイルF2等の送受信が行われるようになっている。
ところで、本実施形態のファイル/キー/データ管理システムでは、第1実施形態と異なりファイルFAが存在せず、この代わりにファイルF1とファイルF2とを有している。このファイルF1及びファイルF2の構造を図13に示す。
図13において、ファイルF1は、第1実施形態の暗号化ファイル類105cと近似しており、ファイル類105が、パソコン固有情報1p〜Npに基づいた固有情報キーにより暗号化されたものとなっている。しかしながら、以下のファイルF2と一対一に関連付けされている点が異なっている。すなわち、一つのファイルF1に対して、常に一つのファイルF2が対応付けされて生成されるようになっている。
一方、ファイルF2には、後述するファイルF2登録動作により登録された複数のパソコン100A、100B、・・・からの複数組のパソコン固有情報1p〜Npが記録されている。そして、各パソコン固有情報1p〜Npには、ファイルF1の暗号元である旨を示す暗号元フラグCFが記録されるようになっている。
例えば、この暗号元フラグCFが”1”の場合にはファイルF1がそのパソコン固有情報1p〜Npに基づいた固有情報キーにより暗号化されたことを示している。一方、暗号元フラグCFが”0”の場合にはファイルF1がそのパソコン固有情報1p〜Npに基づいた固有情報キーにより暗号化されたものではないことを示している。
かかる構成において、ソフト150の動作について説明する。まず、ファイルF2登録動作、ファイルF2共有動作及び保存/バックアップ動作について説明する。この動作を示したフローチャートを図14、図15に示す。なお、図2と同一要素のものについては同一符号を付して説明は省略する。
図14、図15において、本実施形態の保存/バックアップ動作や読み取り/編集動作等を行う前に、ファイルF2登録動作が行われる。
例えば、あるパソコン100(パソコン100Aとする)でファイルF2登録動作を行う場合には、ステップ501で、パソコン100AがファイルF2サーバ500に接続される。そして、ステップ503で、パソコン100Aのパソコン固有情報1p〜Npが検出される。
さらに、ステップ505では、ステップ503で抽出されたパソコン固有情報1p〜NpをファイルF2サーバ500に送信し、これをステップ507でファイルF2サーバ500側が受信する。
その後、ステップ509では、ファイルF2サーバ500において、受信したパソコン100Aのパソコン固有情報1p〜Npをデータベース501に蓄積する。なお、このファイルF2サーバ500のデータベース501に蓄積されたファイルF2のことを蓄積ファイルF2dという。
これにより、ステップ511では、パソコン100AについてのファイルF2登録動作が終了される。そして、このファイルF2登録動作を複数台のパソコン100B、・・・、100Xで繰り返し行うことで、蓄積ファイルF2d内には複数組のパソコン固有情報1p〜Npが記録され、これがファイルF2サーバ500で一元的に管理される。そして、この蓄積ファイルF2dをファイルF2サーバ500で一元的に管理することで、ファイルF2サーバ500の有する蓄積ファイルF2dが常に最新の状態となる。
次に、他のパソコン100(パソコン100Bとする)でファイル類105の保存/バックアップ動作等を行う場合には、予めファイルF2共有動作が行われる。
このファイルF2共有動作では、まず、ステップ531で、パソコン100BがファイルF2サーバ500に接続される。一方、ステップ533では、ファイルF2サーバ500において、データベース501から蓄積ファイルF2dが読み出される。
そして、ステップ535では、ステップ533で読み出された蓄積ファイルF2dが、パソコン100Bにダウンロードされる。なお、このパソコン100にダウンロードされた蓄積ファイルF2dのことをパソコンファイルF2pという。
そして、このパソコンファイルF2pがパソコン100Bの記憶装置107等に保存されると、ステップ537ではファイルF2の共有動作が終了する。
なお、このファイルF2共有動作は、パソコン100B側からの要求により蓄積ファイルF2dがダウンロードされる場合に限られない。例えば、ファイルF2登録動作のたびに、蓄積ファイルF2dに既に登録されている各パソコン100A、100B、・・・に対して、最新の蓄積ファイルF2dが一斉配信されるようにしても良い。
このように、保存/バックアップ動作を行う前にファイルF2共有動作が行われることで、ファイルF2サーバ500に蓄積されている最新の蓄積ファイルF2dが、パソコン100B内でパソコンファイルF2pとして所有されるようになる。
続いて、ファイル類105の保存/バックアップ動作について説明する。ファイル類105の保存バックアップ動作では、ステップ101からステップ107(ファイル類を固有情報キーで暗号化する)までは第1実施形態等と同様である。そして、ステップ551でファイルF1が完成される。
次に、ステップ553では、ステップ537で共有化したパソコンファイルF2p内に、ステップ103で検出したパソコン固有情報1p〜Npが存在するかが判断される。この場合、完全に一致する固有情報があるか否かが判断される。
そして、パソコンファイルF2p内にパソコン100Bのパソコン固有情報1p〜Npが存在しない場合には、パソコン100Bは蓄積ファイルF2dへの登録が行われていないと考えられるので、本フローは終了される。従って、この場合には、第1実施形態と同様の保存/バックアップ動作のみ行えるようになる。
一方、パソコンファイルF2p内にパソコン100Bのパソコン固有情報1p〜Npが存在する場合には、パソコン100Bは蓄積ファイルF2dへの登録が行われていると考えられるので、ステップ555に進む。
そして、ステップ555では、パソコンファイルF2pに対して暗号元フラグCFの書き込みを行う。すなわち、ファイルF1はパソコン100Bのパソコン固有情報1p〜Npから生成された固有情報キーにより暗号化されているので、パソコンファイルF2p内のパソコン100Bに対する暗号元フラグCFを”1”にする。一方、他のパソコン(パソコン100A、・・・、100X)に対する暗号元フラグCFを”0”にする。
これにより、ファイルF1を暗号化した固有情報キーが、どのパソコン100のパソコン固有情報1p〜Npに基づき生成されたかが判断されるようになる。
そして、ステップ557では、暗号元フラグCFの書き込みが行われたパソコンファイルF2pを第2共通キーで暗号化する。これにより、ステップ559でファイルF2が完成される。
さらに、ステップ561では、ステップ551で完成されたファイルF1と、ステップ559で完成されたファイルF2とが、互いに関連付けされる。すなわち、ファイルF1とファイルF2とが一対一に対応するようになる。この関連付けの仕方としては、例えばファイルF1とファイルF2とを同一ファイル名称としたり、ヘッダ部に共通データを記録したり、あるいはファイルF1完成(更新)時点の時刻データ等をファイルF2内に組み込む等で可能である。
そして、ステップ563では、ステップ561で一対一に関連付けされたファイルF1とファイルF2とが、第1共通キーで暗号化される。これにより、ファイル類105の保存/バックアップ動作が終了する。
次に、ファイルF2を用いた読み取り/編集救済動作について説明する。
図16において、保存/バックアップされたファイル類105を読み取る際には、まず、第1実施形態と同様にステップ201でソフト150の立ち上げのためのパスワードの入力が要求される。そして、ステップ581では、ファイルF1の保存元である記憶装置107を指定して、読み取りたいファイルF1を指定する。このとき、ステップ583では、ステップ581で指定されたファイルF1と一対一に関連付けされたファイルF2の読み出しも行われる。
そして、ステップ585では、ファイルF1とファイルF2とが第1共通キーで復号化される。一方、ステップ205では、第1実施形態と同様にファイルF1の読み取りを行っているパソコン100(パソコン100Cとする)からパソコン固有情報1p〜Npが検出される。また、ステップ587では、復号生成されたファイルF2が第2共通キーで復号化される。
その後、ステップ591では、ステップ205で検出したパソコン100CのMACアドレス等が、ファイルF2内のいずれかのパソコンのMACアドレス等の情報と一致するか否か判断される。ただし、このMACアドレス等の情報との一致を判断する前に、パソコン名の一致を判断するようにしても良い。パソコン名は、ユニークなパソコン名を予め登録しておく。そして、MACアドレス等が一致しないと判断された場合には、ステップ593でファイルF2を第2共通キーで再暗号化した後、本フローは終了される。
一方、MACアドレス等が一致する場合には、さらにステップ211に進む。ステップ211では、このMACアドレス等が一致したところのパソコンに属するパソコン固有情報1p〜Npについて、第1実施形態と同様の処理が行われるが説明は省略する。そして、ステップ211で固有情報1〜Nが半数以上一致していると判断された場合には、ステップ595に進む。
ステップ595では、パソコン100Cにおいて、ファイルF2内の暗号元フラグCFが”1”であるパソコン固有情報1p〜Npに基づいて固有情報キーが生成される。これにより、保存/バックアップ動作を行ったパソコン100Bのパソコン固有情報1p〜Npに基づいて固有情報キーが生成される。
そのため、ステップ217においてファイルF1の復号化が可能となる。従って、第1実施形態と同様に、ファイル類105の読み取り、編集、再保存/再バックアップ動作を行えるようになる。
以上のように、ファイルF2内に複数のパソコン固有情報1p〜Npを含めることで、このファイルF2に含まれる複数のパソコン100A、100B、・・・間でファイル類105の読み取り、編集が可能となる。また、第1実施形態と同様のフローにより、ファイル類105が保存/バックアップされているので、ファイル類105の不正使用を防止することができる。
なお、本実施形態においては、蓄積ファイルF2dは、ファイルF2サーバ500で一元的に管理するとして説明してきたが、これに限られない。すなわち、蓄積ファイルF2dを1枚のフレキシブルディスク等の記録媒体に保存することで、これを物理的に管理するようにしても良い。
また、共有化されるパソコンデータ等を含む蓄積ファイルF2dが存在するファイルF2サーバ500に対し、インターネット200を介して各処理の都度逐次参照するようにしても良い。
次に、本発明の第4実施形態について説明する。
第4実施形態であるファイル/キー/データ管理システムは、第3実施形態のファイル/キー/データ管理システムで用いたファイルF2に、さらにパソコン読み取りフラグが設定されたものである。
第4実施形態に用いられるファイルF1及びファイルF2の構造を図17に示す。なお、ファイルF1の構造は図13と同様である。
図17において、ファイルF2には、各パソコン固有情報1p〜Npにパソコン読み取りフラグPFが設定されている。
例えば、このパソコン読み取りフラグPFが”1”の場合には、ファイルF1がそのパソコン100で読み取り可能に設定されていることを示している。一方、パソコン読み取りフラグPFが”0”の場合には、ファイルF1がそのパソコン100で読み取り不可能に設定されていることを示している。
かかる構成において、本実施形態のソフト150の動作について説明する。
図18において、保存/バックアップ動作(図14の処理については第3実施形態と同様である)では、ステップ555の次に、ステップ601としてパソコンファイルF2pにパソコン読み取りフラグPFを設定する動作が追加されている。このステップ601では、パソコンファイルF2p内に蓄積されているパソコン100A、100B、・・・毎にパソコン読み取りフラグPFの書き込みが行われる。
例えば、読み取りを許可したいパソコン100に対してはパソコン読み取りフラグPFを”1”とし、読み取りを不許可としたいパソコン100に対してはパソコン読み取りフラグPFを”0”とすれば良い。これにより、ファイルF1の暗号元において、任意のパソコン100だけにファイル類105の読み取り許可を与えることができる。もちろん、パソコン読み取りフラグPFを全て”1”としても良いが、この場合第3実施形態と同様の動作となる。
一方、図19において、読み取り/編集動作では、ステップ211の次に、ステップ631として読み取りを行っているパソコン100Cが読み取り可能とされているか否かの判断が追加されている。このステップ631では、ファイルF2内の、パソコン100Cのパソコン固有情報1p〜Npに対応するパソコン読み取りフラグPFが”1”か”0”かが判断される。そして、パソコン100Cのパソコン読み取りフラグPFが”1”である場合には、以降のステップ595以降に進む(以降は第3実施形態等と同じである)。また、パソコン100Cのパソコン読み取りフラグPFが”0”である場合には、ステップ593に進む。
なお、ステップ587の次に、パソコンファイルF2p内でまずパソコン名を検索し、一致するパソコン名が存在するか否か判断するステップを追加するようにしても良い。
以上により、ファイルF1の暗号元において、任意のパソコン100だけにファイル類105の読み取り許可を与えることができる。
なお、ファイルF2には、さらに個人用の読み取りフラグが設定されても良い。この場合のファイルF1及びファイルF2の構造を図20に示す。なお、ファイルF1の構造は図13と同様である。
図20において、ファイルF2には個人用読み取りフラグIFが設定されている。
そして、この個人用読み取りフラグIFが”1”の場合にはファイルF1がそのユーザで読み取り可能に設定されていることを示している。一方、個人用読み取りフラグIFが”0”の場合にはファイルF1がそのユーザで読み取り不可能に設定されていることを示している。
この個人用読み取りフラグIFの設定は、上述した保存/バックアップ動作中のステップ601において(各パソコン100、100、・・・毎にパソコン読み取りフラグPFを設定したのと同様に)ユーザ毎に設定すれば良い。
そして、読み取り/編集動作ではステップ631において、ファイルF1の読み取り等を行っているユーザが読み取り可能とされているか判断すれば良い。
この場合、パソコン固有情報1p〜Npとしてバイオメトリクス情報を用いることで、このバイオメトリクス情報からユーザの特定を行えば良い。そして、特定したユーザに対する個人用読み取りフラグIFが”1”か”0”か判断すれば良い。
以上により、パソコンだけでなく特定の個人に対しても、ファイル類105の読み取り許可を与えることができる。
次に、本発明の第5実施形態について説明する。
第5実施形態であるファイル/キー/データ管理システムは、第4実施形態のファイル/キー/データ管理システムで用いたファイルF2に、さらにID及びパスワードが設定されたものである。
第5実施形態に用いられるファイルF1及びファイルF2の構造を図21に示す。なお、ファイルF1の構造は図13と同様である。
図21において、ファイルF2にはID及びパスワードが設定されている。このID及びパスワードは、ファイルF2毎に決められるようになっている。
かかる構成において、本実施形態のソフト150の動作について説明する。
図22において、保存/バックアップ動作(図14の処理については第3実施形態と同様である)では、第4実施形態のステップ601の次に、ステップ651としてID及びパスワードの設定動作が追加されている。このステップ651では、ファイル類105の読み取りを許可したいユーザが知っているか、あるいはそのユーザに知らせる予定のID及びパスワードがパソコンファイルF2pに設定される。なお、このステップ651におけるID及びパスワードの設定は、ステップ601におけるパソコン読み取りフラグPF等の設定の前に行われても良い。
一方、図23において、読み取り/編集動作では、第4実施形態のステップ631の次に、ステップ681としてID及びパスワードの入力動作が追加されている。そして、ステップ681で入力されたID及びパスワードに対し、ステップ683では、ファイルF2に設定されたID及びパスワードとの一致、不一致が確認される。その結果、ID及びパスワードが一致すると判断された場合には、以降のステップ595以降に進む(以降は第3実施形態等と同じである)。一方、ID及びパスワードが不一致であると判断された場合には、ステップ593に進む。
以上により、ファイルF1の暗号元において特定のID及びパスワードを設定することで、そのID及びパスワードを知っているユーザ等にのみファイル類105の読み取り許可を与えることができる。
なお、前述の各実施形態における読み取り/編集動作の処理は、図24に示すような、ドラッグアンドドロップを用いた処理により実行されても良い。
すなわち、ステップ701において、本ソフト150のアイコンにファイルF1をドラッグアンドドロップする。これにより、ステップ703において、各実施形態における読み取り/編集動作の処理が自動で行われる。そして、ステップ703における処理が終了されることで、ステップ705では、ファイルF1が復号化されてファイル類105の読み取り等が行われる。
次に、本発明の第6実施形態について説明する。
第6実施形態であるファイル/キー/データ管理システムは、第5実施形態のファイル/キー/データ管理システムで用いたファイルF2に、さらに保存モードが設定されたものである。
第6実施形態に用いられるファイルF1及びファイルF2の構造を図25に示す。なお、ファイルF1の構造は図13と同様である。
図25において、ファイルF2には保存モードSMが設定されている。この保存モードSMは、ファイルF2毎に決められている。そして、この保存モードSMを設定することにより、以下に示すようなパソコン読み取りフラグPFと、ID及びパスワードの一致、不一致の判断との間に、優先順位等が設けられるようになっている。この保存モードSMに応じた動作の一例について図26に示す。
図26において、保存モードSMがモード1の場合には、パソコン読み取りフラグPFが”1”であり、かつID及びパスワードが一致した場合にのみ、ファイル類105の読み取り等が可能となっている。このモード1は、第5実施形態と同様の処理である。
一方、モード2の場合には、パソコン読み取りフラグPFが”1”であることだけで、ファイル類105の読み取り等が可能となっている。すなわち、このモード2は、ID及びパスワードの一致、不一致を確認していないので、第4実施形態と同様の処理である。
また、モード3の場合には、ID及びパスワードが一致することだけで、ファイル類105の読み取り等が可能となっている。すなわち、このモード3では、パソコン読み取りフラグPFの確認をしていない。
さらに、モード4の場合には、パソコン読み取りフラグPFが”1”であること、又はID及びパスワードが一致することにより、ファイル類105の読み取り等が可能となっている。すなわち、パソコン読み取りフラグPFが”0”であり、かつID及びパスワードが不一致の場合にのみファイル類105の読み取り等ができなくなる。
このように、保存モードSMを適宜設定することで、ファイル類105の読み取り等に際しての認証レベル(すなわち、認証の困難さ)が変更可能となっている。
かかる構成において、本実施形態のソフト150の動作について説明する。
図27おいて、保存/バックアップ動作(図14の処理については第3実施形態と同様である)では、第5実施形態のステップ651の次に、ステップ751として保存モードSMの設定動作が追加されている。このステップ751では、ファイルF2内に保存モードSMを設定することで、読み取り先においてどの程度の認証レベルを必要とするか、設定できるようになっている。
なお、このステップ751は、ステップ601の前に行われても良い。これにより、例えば保存モードSMがモード2の場合には、ステップ651のID及びパスワードの設定を省略可能になるからである。
一方、図28、図29において、読み取り/編集動作では、第5実施形態のステップ211の次に、各保存モードSMに対応した動作が行われるようになっている。図28(a)は、モード1の読み取り/編集動作を示したものであるが、これは第5実施形態と同様である。また、図28(b)は、モード2の読み取り/編集動作を示したものであるが、これも第4実施形態と同様である。
さらに、図29(a)は、モード3の読み取り/編集動作を示したものである。このモード3では、ステップ211の次にステップ631におけるパソコン読み取りフラグPFの確認が行われずに、ステップ681、683のID及びパスワードの確認のみが行われる。そして、ID及びパスワードが一致していればステップ595に進み、ファイル類105の読み取り等が行われる。
また、図29(b)は、モード4の読み取り/編集動作を示したものである。このモード4では、他のモード1〜3と異なり、ステップ631及びステップ683の分岐が反転している。そして、ステップ631で読み取り可能とされておらず、かつID、パスワードが一致しない場合以外は、ステップ595に進み、ファイル類105の読み取り等が行われる。
以上のように、ファイルF2に保存モードSMを設定することで、このファイルF2を用いたファイル類105の読み取り等に際して、その認証レベルを適宜変更可能となっている。
なお、各モードによる読み取り/編集動作の後には、ファイル類105の再保存/再バックアップ動作が行われるが、このときに、読み取り/編集動作における保存モードSMと異なる保存モードSMを設定することも可能である。例えば、読み取り/編集動作においてモード2によりファイル類105の読み取り等を行った場合、再保存/再バックアップ動作においてモード1を設定してファイル類105の再保存等を行っても良い。
次に、本発明の第7実施形態について説明する。
第2実施形態であるファイル/キー/データ管理システムは、一つのファイル類ずつについてセンター接続の上で救済動作を行うものであったが、本実施形態であるファイル/キー/データ管理システムは、救済したいファイル類が多数存在する場合でも、容易に救済を行えるようにするものである。
本発明の第7実施形態のファイル/キー/データ管理システムの構成図を図30に示す。なお、図5と同一要素のものについては同一符号を付して説明は省略する。
図30において、本実施形態のファイル/キー/データ管理システムは、第2実施形態のファイル/キー/データ管理システムと近似しているが、センター350に初回パソコン固有情報1pi〜Npiのみが送信される(すなわち、暗号化ファイルFAcは送信されない)点が異なっている。また、パソコン100には、初回パソコン固有情報1pi〜Npiだけでなく、後述する登録固有情報1r〜Nrが保存されるようになっている。登録固有情報1r〜Nrは、初回パソコン固有情報1pi〜Npiと同じファイルに構成されても良いが、独立したファイルに構成されても良い。
かかる構成において、本実施形態のソフト150の動作について説明する。本実施形態の登録意思確認動作、保存/バックアップ動作(初回保存動作付き)及び登録動作は、第2実施形態(図6、図7)と同様である。
また、ファイル類の救済動作を図31〜図33に示す。なお、図9は、第2実施形態と同様である。また、図10、図11と同一要素のものについては同一符号を付して説明は省略する。
図31〜図33において、図9のステップ211、213の分岐で読み取り等を行おうとしているパソコンが同一でないと判断された場合には、ステップ701で、パソコン100内に後述する登録固有情報1r〜Nrが存在するか否かが判断される。このとき、パソコン100において初めて救済動作を行う場合には、このステップ701で登録固有情報1r〜Nrが存在しないと判断されるので、ステップ401以降に進む。
ステップ401では、第2実施形態と同様に、読み取り等を行おうとしているパソコン100において、そのファイル類105の救済動作を行うか否かの選択が行われる。そして、ステップ401で救済を行う旨の選択を行った場合には、ステップ703で初回パソコン固有情報1pi〜Npiを自動選択する。その後、第2実施形態と同様に、ステップ405、407、409、411の処理を行う。
そして、ステップ411で、ユーザIDとパスワードがセンター350に存在することの確認が取れた場合には、ステップ705において、ステップ703で自動選択された初回パソコン固有情報1pi〜Npiと、ステップ405で検出されたパソコン固有情報1p〜Npとが、センター350に送信される。これに対応して、ステップ707では、センター350において、ステップ705で送信された初回パソコン固有情報1pi〜Npiとパソコン固有情報1p〜Npとが受信される。そして、ステップ417でユーザIDとパスワードの確認が行われる。
さらに、図32のステップ709では、センター350で受信した初回パソコン固有情報1pi〜Npiを第1共通キー、第2共通キーで復号化して、この初回パソコン固有情報1pi〜Npiを抽出する。
そして、ステップ711では、ステップ709で抽出された初回パソコン固有情報1pi〜Npiと、データベース301に蓄積された蓄積固有情報1d〜Ndのうちステップ417で確認されたユーザIDのカテゴリに属する蓄積固有情報1d〜Ndとを対比する。
そして、第2実施形態と同様のステップ421、423により、ファイル類105の救済を許可するか否かが判断される。その後、ステップ421、423でファイル類105の救済が許可された場合には、ステップ427でパソコン固有情報1p〜Npをセンター350のデータベース301に追加する。
さらに、ステップ713では、ステップ427でデータベース301に追加したパソコン固有情報1p〜Npを第1共通キー、第2共通キーで暗号化する。なお、この暗号化されたパソコン固有情報1p〜Npを登録固有情報1r〜Nrという(添字rは登録されたことを意味する添字である)。
そして、ステップ715では、ステップ713で暗号化された登録固有情報1r〜Nrをパソコン100にダウンロードさせる。また、ステップ717では、ステップ715でダウンロードした登録固有情報1r〜Nrをパソコン100に保存する。この場合、登録固有情報1r〜Nrの保存先としては、記憶装置107のうちでも容易に書き換えできない領域に保存されることが望ましい。
その後、第2実施形態と同様に、ステップ435で今回新規にセンターに登録されたパソコン固有情報1p〜Npを用いて、初回パソコン固有情報1pi〜Npiを上書きする。
そして、以上の動作により、本実施形態のフローが一度終了する。その後、もう一度ファイル類105の読み取り動作を行うことにより、図9のステップ211、213の分岐で読み取り等を行おうとしているパソコンが同一でないと判断されるので、再度ステップ701に至る。
このとき、ステップ701では、ステップ717においてパソコン100に登録固有情報1r〜Nrが保存されているため、登録固有情報1r〜Nrが存在すると判断される。
そして、図33のステップ731において、暗号化されている登録固有情報1r〜Nrが第1共通キー、第2共通キーで復号化される。また、ステップ733で、この復号化された登録固有情報1r〜Nrがパソコン100に読み出される。その後、ステップ735で、パソコン100から検出したパソコン固有情報1p〜Npと、ステップ731で復号化された登録固有情報1r〜Nrとの対比を行う。この場合、第1実施形態のステップ211、213と同様の方法により、パソコン固有情報1p〜Npと登録固有情報1r〜Nrとを対比する。
これにより、パソコン固有情報1p〜Npと登録固有情報1r〜Nrとが同一であると判断された場合には、ファイル類105の読み取りを行っているパソコン100が、図32のステップ421、423等で救済が許可されたパソコン100であると判断される。一方、パソコン固有情報1p〜Npと登録固有情報1r〜Nrとが同一でないと判断された場合には、図31のステップ401以降に進む。そして、第2実施形態と同様に、読み取り等を行おうとしているパソコン100において、そのファイル類105の救済動作を行うか否かの選択が再び問われる。
ファイル類105の救済動作を行うように選択された場合には、新しい固有情報のセンターへの登録や、このセンターにて登録された登録固有情報1r〜Nrのパソコン100における更新等の処理が再び同様に繰り返される。
一方、図33のステップ211、213でパソコン固有情報1p〜Npと登録固有情報1r〜Nrとが同一であると判断された場合には、以降のステップ215、216、217でファイルFA固有情報1f〜Nfから固有情報キーが生成され、ステップ219でファイル類105の読み取り、編集が行われる。
そして、ステップ219でファイル類105の編集等が終了した場合には、ステップ737において、ステップ731で復号化された登録固有情報1r〜Nrと、ステップ219で読み取り、編集が行われたファイル類105とを、一つのファイルにまとめる。
そして、ステップ739、255では、この登録固有情報1r〜Nrに基づいて、ファイル類105を暗号化するための固有情報キーを生成し、この固有情報キーでファイル類105を暗号化する。その後、この暗号化されたファイル類105に対して、保存/バックアップ動作のステップ109以降の処理が行われる。
なお、ファイル類105が多数存在する場合には、あるファイル類105についての上記の救済動作を行った後に、再び別のファイル類105で救済動作を行う。
この場合、ステップ701では、登録固有情報1r〜Nrが存在すると判断されるので、第2実施形態のようにセンター300との間で交信を行うことなく、ファイル類105の救済を行うことができる。
また、ステップ211、213において、ファイル類105の救済が許可されたパソコン100であると判断できるので、第2実施形態と同様に、第三者の不正使用を防止しつつ、ファイル類105の救済を行うことができる。
以上により、救済したいファイル類105が多数存在する場合でも、簡単に救済を行うことができる。
次に、本発明の第8実施形態について説明する。
本実施形態は、第1〜7実施形態のファイル/キー/データ管理システムを著作権の保護に適用したときの一例を示すものである。各実施形態のファイル/キー/データ管理システムは、所定のアプリケーションに組み込まれている。
第8実施形態の動作について説明する。
まず、使用権登録申請動作を図34に示す。図34において、ステップ801では、パソコン100からセンターにファイルFAを送信する。ファイルFAは、著作権の保護が望まれるファイルである。そして、このファイルFAは、各実施形態で説明したのと同様に、ファイル類105がパソコン固有情報1p〜Npを基に暗号化されたものである。ファイル類105とパソコン固有情報1p〜Npとは一体化されても良いし、別ファイルにて構成されても良い。別ファイルにて構成した場合には、パソコン固有情報1p〜Npのみをセンターに送信するようにしても良い。
そして、ステップ803では、センターでパソコンから送信されたファイルFAを受け付ける。
その後、ステップ805では、センターで受け付けたファイルFAからパソコン固有情報1p〜Npを抽出して、このパソコン固有情報1p〜Npを基にファイルFBを生成する。
ここで、ファイルFBは、ファイルFA内のパソコン固有情報1p〜Npのうち、一部あるいは全部の固有情報109を基に生成されたファイルをいう。そして、ステップ807では、ステップ805で生成されたファイルFBに、センターで設定したパスワード(以下、登録済パスワードという)を入れて、パソコン100に返信する。
これに対し、ステップ809において、パソコン100ではステップ807で返信されたファイルFBと、ファイルFA中のパソコン固有情報1p〜Npとを対比する。そして、ステップ811で、ファイルFBとファイルFA中のパソコン固有情報1p〜Npとが一致すると判断された場合には、以降のステップ813に進む。一方、ステップ811でファイルFBとファイルFA中のパソコン固有情報1p〜Npとが一致しないと判断された場合には、エラーを返して本フローが終了される。
その後、ステップ813において、パソコン100ではステップ807で返信されたファイルFBに含まれる登録済パスワードを、ファイルFAに保存する。これにより、ステップ815において、ファイルFAの使用権の登録が終了される。
次に、使用権登録確認動作を図35に示す。図35において、ステップ851では、ファイル類105を読み取り、編集等をするためのアプリケーションを起動する。
そして、ステップ853では、ファイルFAがパソコンに存在するか確認される。このステップ853でファイルFAが存在しないと判断された場合には、エラーを返して本フローが終了される。一方、ステップ853でファイルFAが存在すると判断された場合には、ステップ855で、登録済パスワードがファイルFAに存在するか判断される。
そして、ステップ855において、登録済パスワードがファイルFAに存在しないと判断された場合には、使用権登録申請動作を行っていないと考えられるので、登録申請画面をパソコンに表示してステップ801以降に進む。一方、登録済パスワードがファイルFAに存在すると判断された場合には、使用権登録申請動作を行っていると考えられるので、ステップ857でファイルFAの使用権が確認される。
その後、ステップ859では、上述した第1〜7実施形態のいずれの形態によるファイル類105の管理を行うか選択される。これにより、ステップ861では、選択された形態によるファイル類105の管理が行われる。また、ステップ859以降では、ステップ857におけるファイルFAの使用権の確認の下に、アプリケーションによる任意の動作が行われる。
以上により、第1〜7実施形態のファイル/キー/データ管理システムによる暗号化方式をCD等で提供されるテキストデータや画像データ、音楽データ等の著作権保護に対して適用することができる。すなわち、これらのデータは生データのままでは不正にコピーされ使用されるおそれがあるが、第1〜7実施形態のファイル/キー/データ管理システムを採用することで、登録申請したパソコンのみで、データが使用可能となる。
また、すかし等を入れて著作権の保護を行うシステムではないため、画像や音質等の劣化を防止することができる。さらに、パソコン固有情報1p〜Npとしてバイオメトリクス情報を用いれば、パソコン単位での保護だけでなく、人単位での保護も可能となる。
次に、本発明の第9実施形態について説明する。
本実施形態は、第1〜7実施形態のファイル/キー/データ管理システムをセンターにおける情報の利用規制に応用したときの一例を示すものである。即ち、センターホームページへのアクセスは、予め登録されたものに限って認め、かつ登録されたものにのみ情報の閲覧等の利用を認めるものである。
情報は、例えば売り上げデータ等の販売管理情報等であって、第3者のインターネット200を通じてのアクセスや閲覧等が制限されるべきものである。
ユーザのパソコン(携帯電話等であってもよい)には、固有情報を取得したり、ファイルの送受信、復号化等の処理を行うためのソフトが配設されている。また、センターのサーバには、情報を保存、暗号化したり、ユーザの本人認証等の判断や送受信処理を行うソフトが配設されている。
次に、第9実施形態の動作について説明する。
売り上げデータ送信動作を図36、図37に示す。まず、図36において、ステップ901ではソフトにより、パソコン固有情報1P〜NPが検出され、ステップ903でこの検出したパソコン固有情報1P〜NPがファイルF2に保存される。このファイルF2は、記憶装置に記憶される。パソコン固有情報1P〜NPは、それぞれハッシュ値化されるのが望ましい。
一方、ユーザが売り上げデータ等の情報をセンターにて確認したい場合には、ステップ905で図示しない情報の閲覧ボタンを押す。このとき、インターネット200に接続された後、ステップ907でパスワードの入力画面が現れる。
さらに、ステップ909では、ステップ907で表示されたパスワード入力用の画面に対し、ユーザによりユーザID及びパスワードの入力が行われる。このとき、ユーザは、予めセンターに対して情報の閲覧や入手の要求を行う旨の登録を行っており、この登録によりユーザID及びパスワードの発行を受けている。また、この登録の際には、パソコン固有情報1p〜Npがセンターに登録され、センターでは、ユーザIDと対応してパソコン固有情報1p〜Np(すなわち、蓄積固有情報1d〜Nd)が蓄積されている。
その後、ステップ911では、入力されたユーザID及びパスワードが、パソコンからセンターに送信される。また、ステップ913では、ステップ903で保存されたファイルF2がセンターに自動送信される。
これに対し、センターでは、ステップ915において、ステップ911で送信されたユーザID及びパスワードや、ステップ913で送信されたファイルF2を受信する。そして、ステップ917では、予めセンターに登録されたユーザID及びパスワードの中に、ステップ915で受信したユーザID及びパスワードと一致するものが存在するかが確認される。具体的には、ステップ919で一致するユーザID及びパスワードが存在すると判断された場合には、次のステップ921に進む。一方、一致するユーザID及びパスワードが存在しないと判断された場合には、ユーザからの情報の閲覧や入手の要求を拒否し、本フローは終了される。
さらに、ステップ919で一致するユーザID及びパスワードが存在すると判断された場合には、ステップ921ではファイルF2の受信日時を記録する。この受信日時の「日」のデータは例えば年/月/日のデータであり、「時」のデータは例えば時/分/秒のデータである。
ただし、この受信日時の代わりに(あるいは受信日時とともに)、ファイルF2の送信日時を記録しても良い。また、ファイルF2の受信日時や送信日時の代わりに(あるいはこれらとともに)、センターやユーザのパソコンで設定された乱数を記録するようにしても良い。
すなわち、このステップ921で記録されるデータは変動値であり、かつ他のユーザの動作の際に記録されるデータと異なるデータであることが望ましい。従って、ファイルF2の受信日時、送信日時や乱数等を用いることで、簡単に変動値を生成することができる。
その後、ステップ923では、ステップ915で受信したファイルF2が、予めセンターに蓄積された蓄積固有情報1d〜Ndのうちステップ919で確認されたユーザIDのカテゴリに属する蓄積固有情報1d〜Ndと、対比される。
具体的には、ステップ925で、ステップ915で受信したファイルF2内のMACアドレス等が、蓄積固有情報1d〜Nd内のパソコンのMACアドレス等と一致するかが判断される。
また、ステップ927では、ステップ925でMACアドレス等が一致すると判断された場合に、このMACアドレス等が一致したファイルF2について、固有情報1〜Nが半数以上一致しているかが判断される。そして、ステップ927で固有情報1〜Nが半数以上一致していると判断された場合には、ステップ929に進む。但し、ステップ925の処理を省略し、ステップ927の処理のみが行われるようにされてもよい。
一方、ステップ925でMACアドレスが一致しない、あるいはステップ927で固有情報1〜Nが半数以上一致しないと判断された場合には、ユーザからの情報の閲覧や入手の要求を拒否し、本フローは終了される。
その後、ステップ929では、ステップ915で受信したファイルF2の固有情報と、ステップ921で記録したファイルF2の受信日時とから、所定のアルゴリズムに基づき固有情報キーが生成される。なお、固有情報キーの生成に際しては、固有情報キー生成の論理値を示すキー生成論理値を定義するようにしてもよい。キー生成論理値aには、固有情報キー生成のための論理手順が示されている。例えば、このキー生成論理値aには、固有情報データの内の先頭から第何桁目と第何桁目を抽出し、どのような演算を施すか、あるいは、この抽出したデータをどのように配列してキーを生成するか等の論理手順データが示されている。論理手順は変数化され、キー生成論理値には、この変数への指令データが記録されてもよい。
しかしながら、キー生成論理値aが番号等で指定されることで、固有情報キー生成の論理手順が一つ決定されるようにされてもよい。この場合、固有情報キー生成のための論理手順は複数用意され、予め各キー生成論理値毎に対応されてそれぞれの論理手順がプログラミング化されている。この固有情報キーは、ファイルF2の固有情報(固定値)とファイルF2の受信日時(変動値:乱数等でもよい)とから生成されるため、全体として変動するキーとなる。
そして、ステップ931では、ステップ929で生成された固有情報キーにより、情報が暗号化される。このような固有情報キーで暗号化された情報をファイルF8という。なお、情報は、暗号化に加えて圧縮化等されたり、暗号化に代えて圧縮化等されるようにしてもよい。このとき、固有情報キーは、圧縮化、解凍化等の処理のためのパスワードとして用いられる。但し、情報は、すかし情報として特定の画像ファイルの中に埋設される等されてもよい。
ステップ933では、ファイルF2から固有情報が抽出され、この固有情報がファイルF2の受信日時及び復号化許可符号とともに、ファイルF9に保存される。キー生成論理値aが設定されている場合には、このデータもファイルF9に保存される。
ここで、復号化許可符号とは、ステップ919のユーザID及びパスワードの一致、ステップ925、927における固有情報の対比において固有情報1〜Nが所定割合以上一致すると判断されたときに、この動作を行っているユーザに対し情報の復号化を許可することを示す符号である。この復号化許可符号には、情報の復号化を許可する回数、期間、所定時期に至ったときにファイルを消去するか否か等の設定が行われるようにしてもよい。また、この復号化許可符号は、復号化の際にユーザにより手入力される暗証キーとして用いられてもよい。このとき、復号化許可符号は各ユーザ毎に異なるように設定される。
その後、ステップ935では、ステップ933で保存されたファイルF9を第1共通キー及び第2共通キーで暗号化する。
そして、ステップ937では、センターから、ステップ931で暗号化された情報(ファイルF8)と、ステップ935で暗号化されたファイルF9とが、ユーザのパソコンに送信される。
以上により、ユーザからの情報の閲覧や入手の要求に対応して、センターからユーザに情報の送信が行われる。
次に、売り上げデータ確認動作を図38に示す。図38において、ステップ951では、ユーザのパソコンで、センターから送信されたファイルF8及びファイルF9が受信される。受信されたファイルF8及びファイルF9は、直ちに復号化されてもよいが、一旦保存され、必要なときに復号化されるようにしてもよい。ステップ953では、ステップ951で受信したファイルF9(暗号化されている)に対して、第1共通キー及び第2共通キーで復号化が行われる。
その後、ステップ955では、ステップ953で復号化されたファイルF9内に、復号化許可符号が存在するかが確認される。そして、復号化許可符号が存在すると判断された場合には、情報の復号化を許可されたユーザであると判断できるので、以降のステップ957に進む。なお、復号化許可符号に設定された情報が存在する場合には、これらの条件が判断される。一方、復号化許可符号が存在しないと判断された場合には、ステップ965でファイルF8を復号化することなく、本フローが終了される。但し、ステップ933の復号化許可符号の設定及びステップ955の処理は省略されてもよい。
ステップ957では、ステップ903でユーザのパソコンに保存されたファイルF2と、ステップ953で復号化されたファイルF9に含まれる固有情報とが比較される。
具体的には、ステップ959では、パソコンに保存されたファイルF2とファイルF9に含まれる固有情報とに対して、固有情報1、2、・・・、N毎の個別の対比を行う。そして、固有情報1〜Nの全てが一致している場合には、ステップ923等でセンターで固有情報の一致が確認されたパソコンであると判断されるので、次のステップ961に進む。
一方、ステップ959で、固有情報1〜Nの全てが一致しないと判断された場合には、ステップ965でファイルF8を復号化することなく、本フローが終了される。
なお、ステップ957では、ステップ903でユーザのパソコンに保存されたファイルF2を用いるとして説明したが、ユーザのパソコンよりパソコン固有情報1P〜NPを改めて検出し、固有情報1〜Nの一致を判断してもよい。
また、固有情報1〜Nの一致判断を省略し、ユーザのパソコンより改めて検出したパソコン固有情報1P〜NPを基に所定のアルゴリズムの下に固有情報キーを生成し、ファイルF8を直接復号化するようにしてもよい。この場合には、受信日時や乱数等も省略されてもよい。
その後、ステップ961では、ステップ953で復号化されたファイルF9に含まれる固有情報とファイルF2の受信日時とから、ファイルF8を復号化するための固有情報キーが所定のアルゴリズムの下に生成される。なお、キー生成論理値aが設定されている場合には、このデータに従って論理手順が設定される。そして、ステップ963では、この固有情報キーにより、ファイルF8が復号化される。
なお、図示しないが、このステップ963におけるファイルF8の復号化の前に、第5実施形態(図23)で示したようなID及びパスワードによる認証を行っても良い。また、バイオメトリクス情報によるユーザの認証を行うようにしても良い。
その結果、ステップ967では、情報(例えば、売り上げデータ)の確認が行われる。情報の確認に際しては、当該ソフトに専用の閲覧機能を有するようにしてもよいが、復号化されたファイルに関連付けされた所定の市販ソフトが起動され、閲覧可能とされてもよい。また、復号化されたファイルは再び暗号化された状態で残されるようにしてもよい。
以上により、重要な情報(例えば、売り上げデータ)が流出した場合でも、この情報は固有情報キーにより暗号化されているため、他のパソコンでは復号することができず、情報が不正使用されることはない。また、固有情報キーは受信日時や乱数に基づいて生成された変動するキーであるため、固有情報キーの解読が困難であり、極めて安全である。
次に、本発明の第10実施形態について説明する。
本発明の第10実施形態では、パソコン固有情報1p〜Npをセンターに登録することで、センター側で、このパソコン固有情報1p〜Npをもとに何度でも必要な情報の暗号化を可能とし、一方、ユーザ側では、センター側より送信された情報を、このパソコン固有情報1p〜Npを基に復号化可能とするものである。
尚、図36、図37及び図38と同一要素のものについては同一符号を付して説明は省略する。
図39のフローチャートにおいて、ユーザのパソコンにインストールされたソフトにより、パソコン固有情報1p〜Npが抽出され、ファイルF2に保存される。ユーザがユーザID、パスワードを入力すると、ユーザID、パスワードと共にファイルF2がセンターに送信される。ステップ971において、センターでは、受信されたパソコン固有情報1p〜Npをデータベース中の該当するユーザIDの属する位置に保存登録する。
図40のフローチャートに基づいて、売上データの送信動作について説明する。
ユーザがセンターより情報の入手を希望する場合、ステップ905でセンターに対し要求を行う。ユーザID、パスワードの入力が登録されたものである場合には、ステップ973で受信日時が記録される。但し、受信日時に代えて乱数等でもよい。ステップ975では、既にセンターに登録済の固有情報と受信日時とから所定のアルゴリズムを基に固有情報キーが生成される。なお、固有情報キーの生成に際しては、固有情報キー生成の論理値を示すキー生成論理値を定義するようにしてもよい。そして、ステップ931で情報が固有情報キーで暗号化され、ファイルF8が作成される。
ステップ977では、登録済の固有情報が抽出され、この固有情報が受信日時及び復号化許可符号とともに、ファイルF9に保存される。復号化許可符号には、前述のステップ933と同様に各種設定が行われるようにしてもよい。キー生成論理値aが設定されている場合には、このデータもファイルF9に保存される。その後、ファイルF8とファイルF9とがユーザのパソコンに送信される。
図41のフローチャートは売上データ確認動作についてである。
ファイルF8とファイルF9とがユーザのパソコンで受信され、復号化許可符号が存在している場合、ステップ979でパソコン固有情報1p〜Npがユーザのパソコンから検出される。但し、ステップ977の復号化許可符号の設定及びステップ955の処理は省略されてもよい。そして、ステップ981で、この検出されたパソコン固有情報1p〜NpとファイルF9に保存されていた登録済の固有情報とが対比される。
ステップ925及びステップ927の判断で、固有情報が所定割合以上一致している等の場合には、ステップ961でファイルF9に保存されていた登録済の固有情報と受信日時から所定のアルゴリズムを基に固有情報キーが生成される。その後、ステップ963でこの固有情報キーにより、ファイルF8が復号化される。
なお、固有情報1〜Nの対比判断を省略し、ステップ979でユーザのパソコンより改めて検出したパソコン固有情報1P〜NPを基に所定のアルゴリズムの下に固有情報キーを生成し、ファイルF8を直接復号化するようにしてもよい。この場合には、受信日時や乱数等も省略されてもよい。
一方、ステップ925及びステップ927の判断で、固有情報が所定割合以上一致しなかった等の場合には、ステップ965でファイルF8は復号化されない。なお、この際には、登録済の固有情報を新規の固有情報に改めて変更登録申請するように促す画面を表示する等されてもよい。
以上により、センター側では、登録済の固有情報を利用していつでも何回でも情報を暗号化し、送信可能である。固有情報のセンターへの送信は、基本的に1回だけ行えば足りるのでユーザへの負担が少なくてすむ。ユーザのパソコンの一部部品が交換や改造等された場合であっても復号化可能である。また、パソコンが登録済のパソコンと異なれば、復号化はできない。なお、登録済のパソコンは現在ネット接続されたパソコンに限定されるものではない。任意のパソコンを予め登録することで、そのパソコンでしか復号化できなくできる。この際には、ファイルF9にこの任意のパソコンの登録済の固有情報が保存される。また、予め複数のパソコンを登録することで、これらの複数のパソコンのいずれでも復号化可能にできる。この際には、ファイルF9にこれらの複数のパソコンの登録済の固有情報が保存される必要がある。
次に、本発明の第11実施形態について説明する。
本発明の第11実施形態では、固有情報を相手側に渡すのではなく、情報の暗号化等のためのデータ変換キーである固有情報キーを生成した上で、この固有情報キーを相手側に渡すようにしたものである。そして、相手側で暗号化等のデータ変換のされた情報は、ユーザ側に送られ、ユーザ側で改めて固有情報キーを生成した上で復元化されるようにしたものである。本発明の第11実施形態のフローチャートを図47に示す。
図47において、ステップ1101では、ユーザ側の情報処理装置である例えばパソコンにインストールされたソフトが起動され、情報の閲覧や入手等の要求がされる。この際には、ステップ1103でパソコン固有情報1P〜NPが検出される。そして、ステップ1105では、この検出したパソコン固有情報1P〜NPから所定のアルゴリズムを基に固有情報キーが生成される。
ステップ1107では、この固有情報キーが相手側である例えばセンターに送信される。但し、このとき、固有情報キーに加えて固有情報キー生成のための論理手順を示すキー生成理論値が同様に送信されるようにしてもよい。このようにキー生成理論値も送信することとすれば、固有情報キーの生成方法が常に同じではなくなるため解析され難くできる。キー生成理論値は、送信の都度異なるようにすることが望ましい。送信された固有情報キーは、ステップ1109でセンターに受信される。なお、固有情報キー生成の際には、乱数や日時データが考慮されてもよい。
ステップ1111では、センターにおいて、この固有情報キーにより情報の入れられたファイルF8が暗号化される。そして、ステップ1113で暗号化されたファイルF8がユーザのパソコンに送信される。キー生成理論値等が存在している場合には、このファイルF8と同様に送信されるようにしてもよい。ステップ1115では、ファイルF8がユーザのパソコンに受信される。ステップ1117では、ファイルF8を直ちに閲覧するか否かの問い合わせがされる。「直ちに閲覧しない」が選択された場合には、ステップ1119でファイルF8がユーザのパソコンに保存される。キー生成理論値等が存在している場合には、このファイルF8と共に保存される。なお、ユーザがこのファイルF8を復号化したくなった場合には、ステップ1121以降の処理が行われる。
一方、ステップ1117で「直ちに閲覧する」が選択された場合には、ステップ1121で改めてパソコン固有情報1P〜NPが検出される。但し、ステップ1103で検出されたパソコン固有情報1P〜NPがメモリ等に残されている場合には、このパソコン固有情報1P〜NPが参照されてもよい。そして、ステップ1123では、この検出したパソコン固有情報1P〜NPから所定のアルゴリズムを基に固有情報キーが生成される。なお、キー生成理論値等が存在している場合には、このキー生成理論値等が読まれ、このキー生成理論値に記録された論理手順に従って固有情報キーが生成される。ステップ1125では、ファイルF8がこの固有情報キーにより復号化される。
以上により、閲覧要求のされたパソコンでのみ閲覧が可能となる。ファイルF8を他のパソコンに移動しても閲覧ができない。通信傍受された場合であっても内容を解析できない。
次に、本発明の第12実施形態について説明する。
本実施形態は、機密情報を確認したいユーザ側の環境に制限されることなく、機密情報の確認を可能にさせるものである。本実施形態であるファイル/キー/データ管理システムの構成図を図42に示す。
図42において、機密情報の送信を行うユーザ(以下、本実施形態ではユーザAという)のパソコン100Aには、本実施形態による機密情報の管理を行うためのソフトがインストールされている。また、顧客情報データベースにより、顧客情報が管理されている。一方、機密情報の確認を行うユーザ(以下、本実施形態ではユーザBという)のパソコン100Bには、かかる機密情報の管理用のソフトはインストールされていない。パソコン100Bは、携帯電話等であってもよい。
そして、パソコン100Aとパソコン100Bとの間は、メールにより交信されるようになっている。
次に、本発明の第12実施形態の動作について説明する。まず、固有情報取得動作を図43に示す。この固有情報取得動作は、ユーザBのパソコン100Bのパソコン固有情報1p〜NpをユーザAが取得するための動作である。
図43において、ステップ1001では、ユーザAのパソコン100Aにおいて、機密情報の管理用のソフトが起動される。そして、ステップ1003では、顧客情報データベースの顧客情報の中から機密情報の確認を行わせたいユーザ(すなわち、ユーザB)の選択が行われる。なお、このステップ1003で選択されるユーザについては、事前に顧客情報データベースの顧客情報の中にそのメールアドレスが保存されている。
その後、ステップ1005では、ステップ1003で選択されたユーザBが、顧客情報データベース内に存在しないかが判断される。そして、この顧客情報データベース内にユーザBが存在する場合には、すでに固有情報取得動作(ステップ1029までの動作)を行ったユーザであると判断できるので、ステップ1041(図44)以降の動作に進む。一方、顧客情報データベース内にユーザBが存在しない場合には、以下のステップ1007に進む。
ステップ1007では、固有情報取得依頼メールが作成される。この固有情報取得依頼メールには、図46(a)に示すように、ユーザBのパソコン固有情報1p〜Npを取得等するための実行ファイルA.exeが添付される。また、固有情報取得依頼メールには、本文の内容として、送信先のユーザの氏名や住所、あるいはユーザの希望するユーザIDやそのパスワードの記載を要求する旨の文章が含まれる。ユーザIDやユーザの氏名や住所等は、顧客情報データベース内に存在するデータから抽出されて記載されてもよい。さらに、本文の内容として、実行ファイルA.exeの使い方が記載される。但し、この実行ファイルA.exeは、メールソフトと一体化されてもよい。
その後、ステップ1009では、ステップ1007で作成された固有情報取得依頼メールがユーザBに送信される。これに対し、ステップ1011では、ユーザBが固有情報取得依頼メールを受信する。そして、ステップ1013では、ユーザBのパソコン100Bにおいて固有情報取得依頼メールに添付されている実行ファイルA.exeが実行される。この実行ファイルA.exeの実行は、固有情報取得依頼メールに記載された実行ファイルA.exeの使い方に従って行われる。
このとき、ステップ1015では、パソコン固有情報1p〜Npの取得を行うパソコンを指定する。
例えば、ユーザBが固有情報取得依頼メールを受信したパソコン100Bしか所有していない場合には、このパソコン100Bが指定される。
また、ユーザBがパソコン100Bの他にパソコンを所有している場合には、ステップ1015でその中の1台を機密情報の確認を行うパソコンとして指定してもよい。この場合には、当該パソコンに実行ファイルA.exeが移される。そして、この実行ファイルA.exeが起動されることで、そのパソコンが機密情報の確認を行うパソコンとして指定されることになる。さらに、このときに複数台のパソコン100が指定されるようにしても良い。
そして、ステップ1017では、指定されたパソコン100からパソコン固有情報1p〜Npの取得が行われる。前述のようにステップ1015で複数台のパソコン100が指定された場合には、複数組のパソコン固有情報1p〜Npの取得が順次行われる。
そして、ステップ1019では、ステップ1017で取得されたパソコン固有情報1p〜Npのファイルが暗号化される。
その後、ステップ1021では、返信メール(以下、固有情報メールという)が作成される。この固有情報メールには、図46(b)に示すように、パソコン固有情報1p〜Npのファイルが添付される。また、固有情報メールには、固有情報取得依頼メールの要求に応じて、ユーザBの氏名や住所、ユーザBの希望するユーザIDやそのパスワードの記入が行われる。さらに、この固有情報メールには、必要に応じてバイオメトリクス情報や記録媒体のID等が添付されるようにしてもよい。
そして、ステップ1023では、ステップ1021で作成された固有情報メールがユーザAに送信される。これに対し、ステップ1025では、ユーザAが固有情報メールを受信する。その結果、ステップ1027では、ユーザAのパソコン100Aにおいて、ユーザBのパソコン固有情報1p〜Npが取得される。この際には、ステップ1019で行われた暗号が復号化される。
なお、ステップ1021における固有情報メールへのパソコン固有情報1p〜Npの添付や、ステップ1023での固有情報メールの送信は、ユーザBの手動によらず、実行ファイルA.exeの実行により自動で行われるようにしても良い。また、ステップ1021での固有情報メールの作成においては、ユーザBの氏名や住所、ユーザBの希望するユーザIDやそのパスワードの記入が行われるとして説明したが、この記入は省略されても良い。
そして、ステップ1029では、ステップ1027で取得したパソコン固有情報1p〜Npに基づき顧客情報データベースが作成される。この顧客情報データベースでは、図46(c)に示すように、ユーザのメールアドレス毎に上位のカテゴリが形成されている。そして、新規のユーザの場合には、ステップ1027でのパソコン固有情報1p〜Npの取得により、新たなメールアドレスのカテゴリが形成される。
また、メールアドレスのカテゴリの下位には、ステップ1027で取得したパソコン固有情報1p〜Npが配列される。さらに、このメールアドレスのカテゴリの下位には、固有情報メールに記入されたユーザBの氏名や住所、ユーザBのユーザIDやパスワード等が配列される。
なお、ステップ1017で複数台のパソコンからパソコン固有情報1p〜Npを取得した場合には、複数組のパソコン固有情報1p〜Npが配列される(メールアドレス=33333にて例示する)。また、固有情報メールの作成において、ユーザBの氏名や住所等の記入が省略された場合には、この欄は省略されてもよい(メールアドレス=22222にて例示する)。予めこれらの情報がユーザA側に登録されている場合には、これらの情報が補足される。
次に、機密情報送信動作を図44に示す。この機密情報送信動作は、ユーザAからユーザBに機密情報を送信するための動作である。
図44において、ステップ1041では、ユーザAのパソコン100Aにおいて、機密情報の管理用のソフトが起動される。そして、ステップ1043では、機密情報の確認や閲覧を行わせたいユーザBが、ステップ1029で作成された顧客情報データベースの中から選択される。
その後、ステップ1045では、ステップ1043で選択されたユーザBのパソコン固有情報1p〜Npが、顧客情報データベースから取得される。また、この際には、パソコン固有情報1p〜Npの他に、固有情報メールの送受信日時や、パソコン100A(若しくは100B)で設定された乱数等が取得される。
そして、ステップ1047では、ステップ1045で取得されたパソコン固有情報1p〜Npや、送受信日時、乱数等から所定のアルゴリズムに基づき固有情報キーが生成され、この固有情報キーによりユーザBに送信する機密情報が暗号化される。但し、固有情報キーとして、バイオメトリクス情報や記録媒体のID等が用いられるようにされてもよい。また、機密情報はメールに添付される添付ファイルであってもよいし、メール本文の一部又は全部であってもよい。なお、この固有情報キーは、パソコン固有情報1p〜Np(固定値)と、送受信日時や乱数等(変動値)との組み合わせから生成されるため、全体として変動するキーとなる。但し、固有情報キーは、パソコン固有情報1p〜Np(固定値)だけから生成されてもよいし、この内の任意の固有情報の組み合わせ等から生成されてもよい。また、送受信日時又は乱数等と組み合わされる他、送受信日時又は乱数等だけで生成されてもよい。なお、固有情報キーの生成に際しては、前述した固有情報キー生成の論理値を示すキー生成論理値を定義するようにしてもよい。
また、機密情報は、暗号化に加えて圧縮化等されたり、暗号化に代えて圧縮化等されるようにしてもよい。
その後、ステップ1049では、ステップ1047で暗号化された機密情報と、ユーザBのパソコン100Bにおいてパソコン固有情報1p〜Npの対比等の処理を行うための実行ファイルB.exeとが、1対1に関連付けられる。
そして、ステップ1051では、機密情報メールが作成される。この機密情報メールには、図46(d)に示すように、ステップ1047で暗号化された機密情報が添付される。また、機密情報メールには、ステップ1045で取得されたパソコン固有情報1p〜Npや、送受信日時、乱数等が添付される。さらに、この機密情報メールには、実行ファイルB.exeが添付され、また、ステップ1049における機密情報と実行ファイルB.exeとの関連付けを示すファイルが添付される。
さらに、機密情報メールには、本文の内容として、実行ファイルB.exeの使い方が記載される。
なお、この機密情報メールに添付される機密情報、パソコン固有情報1p〜Np等、実行ファイルB.exe、機密情報と実行ファイルB.exeとの関連付けファイルは、それぞれ別のファイルとして作成されるのではなく、全てをまとめて1つの実行ファイルとして構成されてもよい。この場合には、関連付けファイルは不要とされてもよい。実行ファイルは、例えばjavaスクリプト等で記載されhtm形式等とされてもよい。また、実行ファイルB.exeは、電子メールソフトと一体化されてもよい。
そして、ステップ1053では、ステップ1051で作成された機密情報メールがユーザBに送信される。これに対し、ステップ1055では、ユーザBが機密情報メールを受信する。
次に、機密情報確認動作を図45に示す。この機密情報確認動作は、ユーザB側で機密情報を確認するための動作である。
図45において、ステップ1071では、ユーザBのパソコン100Bにおいて機密情報メールに添付されている実行ファイルB.exeが実行される。この実行ファイルB.exeの実行は、機密情報メールに記載された実行ファイルB.exeの使い方に従って行われる。この際には、予め登録されたパスワード等の入力が行われ、一致した場合に以降の処理が可能とされてもよい。
その後、ステップ1073では、ユーザBのパソコン100Bからパソコン固有情報1p〜Npの取得が行われる。そして、ステップ1075では、ユーザBのパソコンから取得したパソコン固有情報1p〜Npと、機密情報メールに添付されたパソコン固有情報1p〜Npとが対比される。
具体的には、ステップ1077では、ユーザBのパソコンから取得したパソコン固有情報1p〜Npと、機密情報メールに添付されたパソコン固有情報1p〜Npとに対して、固有情報1、2、・・・、N毎の個別の対比を行う。そして、固有情報1〜Nの全てが一致している場合には、ユーザB側のパソコンが、ユーザAの顧客情報データベースの中に含まれるパソコンであると判断されるので、次のステップ1079に進む。
一方、ステップ1077で、固有情報1〜Nの全てが一致しないと判断された場合には、機密情報の復号化が行われることなく、本フローは終了される。ただし、この場合には、再度固有情報取得動作(ステップ1001以降)を行って、現在のパソコン固有情報1p〜NpがユーザAの顧客情報データベース内に追加されるようにすれば良い。
その後、ステップ1079では、機密情報メールに添付されたパソコン固有情報1p〜Npや、送受信日時、乱数等から、所定のアルゴリズムに基づき機密情報を復号化するための固有情報キーが生成される。そして、ステップ1081では、この固有情報キーにより、機密情報が復号化される。
その結果、ステップ1083では、機密情報の確認が行われる。
以上により、重要な機密情報が流出した場合でも、この機密情報は固有情報キーにより暗号化されているため、他のパソコンでは復号することができず、機密情報が不正使用されることはない。通信途上で傍受されても解析はできない。
特に、機密情報を確認するユーザBに対しては、機密情報の送信を行うユーザA側から実行ファイルA.exeがメールにて添付送信されることにより、ユーザB側のパソコン固有情報1p〜Npが取得される。また、ユーザA側からは、機密情報とともに実行ファイルB.exeがメールにて添付送信されることにより、固有情報の対比が行われる。そのため、ユーザB側に特別なソフトがインストールされていなくても、機密情報の不正使用を防止することができる。従って、機密情報の送信相手側の環境に制限されることなく、安全に機密情報の確認を行わせることができる。
さらに、本実施形態の場合、顧客情報データベースはユーザA側で作成、保存されるため、認証局が不要である。従って、機密情報の交信を行うユーザ(ユーザAとユーザB)の間でのみ機密情報やパソコン固有情報1p〜Np等の交信が行われ、第三者を介在しないため、極めて安全かつ安心である。
なお、本実施形態においては、ステップ1077では、固有情報1〜Nの全ての一致を判断するとして説明してきたが、これに限られない。前述の各実施形態に示した通り、各固有情報には重み付け等が考慮され、所定の割合以上が一致しているか否か等で判断されるようにしてもよい。
すなわち、ステップ1077では、ユーザBのパソコンから取得したパソコン固有情報1p〜Np内のMACアドレス等と、機密情報メールに添付されたパソコン固有情報1p〜Np内のパソコンのMACアドレス等との一致を判断しても良い。さらに、このMACアドレス等が一致すると判断された場合には、固有情報1〜Nの半数以上が一致しているかを判断しても良い。なお、これらの動作は、第3実施形態のステップ591、ステップ211(図16)と同様である。
このことにより、固有情報1〜Nの一部の変更等による復号化の不許可を回避することができ、正常使用を行っているユーザに対する煩わしさを解消することができる。
従って、一度ユーザB側のパソコン固有情報1p〜Npが取得されれば、固有情報の変更が無い限り、若しくは大幅な固有情報の変更が無い限り何度でも適用可能である。
また、本実施形態においては、機密情報メールにパソコン固有情報1p〜Npが添付されるとして説明したが、パソコン固有情報1p〜Npは添付されなくても可能である。この場合、ステップ1075とステップ1077の処理は省略され、ステップ1079においては、ユーザBのパソコンから取得したパソコン固有情報1p〜Npを基に送受信日時、乱数等から所定のアルゴリズムに基づき固有情報キーが生成される。その後、この固有情報キーによりユーザBに送信された機密情報が復号化される。