説明

通信システム、情報処理装置、及びプログラム

【課題】通信路を介して通信可能に接続された機器間で、複製を許すことなく、かつ安全にデジタルデータを移動できるようにする。
【解決手段】秘密分散部112で移動対象のデジタルデータ131を秘密分散法により複数の分散データに分割し、さらに一部の分散データを乱数Rを鍵として暗号部113で暗号化してすべての分散データを送信側装置100から受信側装置200に送信した後、送信側装置ですべての分散データが削除されるまでは、鍵である乱数Rを受信側装置に送信しないよう制御することで、秘密分散法により複数の分散データに分割されたデジタルデータが、送信側装置及び受信側装置の両方に復元可能な状態で同時に存在することを防止できるようにする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信システム、情報処理装置、及びプログラムに関し、特に、デジタルコンテンツなどのデータを機器間で移動させるための通信技術に関する。
【背景技術】
【0002】
従来、ネットワークなどの通信路を介して通信可能に接続された機器間でのデータ移動処理は、移動対象のデジタルデータを機器間で複製した後、時限などを契機として移動元の機器内のデジタルデータを削除することにより実現されている。すなわち、従来の機器間のデータ移動処理は、実在する物質の移動のように移動対象のデジタルデータそのものが移動するのではなく、デジタルデータを移動先の機器に対して複写することにより複製し、その後移動元の機器からデジタルデータを削除する。
【0003】
しかしながら、上述した従来の機器間のデータ移動処理においては、移動元機器及び移動先機器の両方に移動対象のデジタルデータが存在する期間がある。したがって、従来の方法では、移動元機器内のデジタルデータの削除処理が何らかの方法(例えば、複製処理後にデータの移動先機器から移動元機器へ複製失敗の虚偽通知を行うなど)で阻まれると、データ移動処理後に一方の機器にのみ存在すべきデジタルデータが両方の機器に存在する状態が発生し、実質的にデジタルデータの複製を許してしまう。
【0004】
また、ストリーミング型通信によりコンテンツを送信する場合にデジタルデータを安全に送信するための通信技術(例えば、特許文献1参照。)や、デジタルデータの不正コピー防止技術(例えば、特許文献2参照。)が提案されている。
【0005】
【特許文献1】特開2004−53968号公報
【特許文献2】特開2000−228061号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
本発明は、通信路を介して通信可能に接続された機器間で、複製を許すことなく、かつ安全にデジタルデータを移動できるようにすることを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明は、移動元である送信側装置では、移動先である受信側装置に移動させるデジタルデータを秘密分散法により複数の分散データに分割し、その中の一部の分散データを、所定情報を鍵として暗号化する。そして、当該一部の分散データを除くすべての分散データ及び暗号化された分散データを受信側装置に送信して、保持しているすべての分散データを削除した後に鍵となる所定情報を送信する。また、受信側装置では、受信した所定情報を鍵として、受信した複数の分散データのうち暗号化されている分散データを復号し、復号された分散データと受信した分散データとを用いてデジタルデータを復元する。
【0008】
上記構成によれば、デジタルデータを秘密分散法により複数の分散データに分割し、さらに一部の分散データを暗号化してすべての分散データを送信側から受信側に送信した後、送信側ですべての分散データが削除されるまでは、暗号化した分散データを復号するための鍵である所定情報を受信側に送信しないよう制御する。これにより、秘密分散法により複数の分散データに分割されたデジタルデータが、送信側及び受信側の両方に復元可能な状態で同時に存在することを防止することができる。
【発明の効果】
【0009】
本発明によれば、移動させるデジタルデータを秘密分散法により複数の分散データに分割し、さらに一部の分散データを所定情報を鍵として暗号化してすべての分散データを送信するとともに、送信側ですべての分散データが削除されるまでは鍵である所定情報を受信側に送信しないよう制御する。これにより、通信路を介して通信可能に接続された送信側及び受信側の両方の装置にデジタルデータが復元可能な状態で同時に存在することを確実に防止し、装置間で複製を許すことなくかつ安全にデジタルデータを移動することができる。
【発明を実施するための最良の形態】
【0010】
以下、本発明の実施形態を図面に基づいて説明する。
(第1の実施形態)
以下に説明する本発明の第1の実施形態では、一例としてデジタルデータを(n,n)秘密分散法(nは自然数)によりn個の分散データに分割し、送信側の情報処理装置から受信側の情報処理装置に移動するものとする。ここで、(n,n)秘密分散法は、デジタルデータをn個の分散データに分割し、その中のn個の分散データを用いることで分割前のデジタルデータを復元可能な秘密分散法である。すなわち、(n,n)秘密分散法では、分割されたn個の分散データのうち1つでも分散データがなくなると、元のデジタルデータを復元することができない。
【0011】
図1は、本発明の第1の実施形態における通信システムの構成例を示す図である。
図1において、100、200は情報処理装置であり、ここでは情報処理装置100を送信側装置(機器)とし、情報処理装置200を受信側装置(機器)とする。
【0012】
情報処理装置100は、管理部110及び記憶装置130を有する。
管理部110は、情報処理装置100における通信動作を含む各種動作に係る制御やデータ管理等を行う。管理部110は、制御部111、秘密分散部112、暗号部113、及び記憶部114A、114Bを有する。
【0013】
制御部111は、管理部110内の各機能部を統括的に制御する。
秘密分散部112は、記憶装置130から移動対象のデジタルデータを読み出し、それを(n,n)秘密分散法によりn個の分散データに分割する。
【0014】
暗号部113は、入力されるデータに所定情報を鍵として暗号化処理を施し、暗号化されたデータを出力する。本実施形態において、具体的には、暗号部113は、秘密分散部112で(n,n)秘密分散法により分割された分散データのうち一部の分散データを、乱数Rを鍵として暗号化する。
【0015】
ここで、秘密分散部112及び暗号部113のそれぞれは、その機能を有するハードウェアにより実現しても良いし、図示しないCPUがソフトウェア(コンピュータプログラム)を実行することにより各機能を実現するようにしても良い。
【0016】
記憶部114A、114Bは、管理部110にて実行される各種動作に係るデータを記憶するためのものである。記憶部114A、114Bは、例えばフラッシュメモリやFeRAM(強誘電体メモリ)などの半導体メモリにより構成される。
【0017】
例えば、記憶部114Aには、移動対象のデジタルデータを特定するためのコンテンツIDや、各分散データが記憶された記憶領域の先頭を示すポインタや、暗号化処理の鍵(共通鍵)としての乱数Rが記憶される。この乱数Rは、管理部110内あるいは情報処理装置100内に設けた図示しない乱数発生部で生成される。また、記憶部114Bには、暗号部113での暗号化処理に係るデータが記憶される。
【0018】
なお、図1においては、2つの記憶部114A、114Bを設けるようにしているが、これに限定されるものではなく記憶部の態様は任意である。例えば、2つの記憶部114A、114Bに相当する機能を1つの記憶部により実現するようにしても良いし、より多くの記憶部を設けても良い。
【0019】
記憶装置130は、例えばハードディスク記憶装置などのデータ保存用の記憶装置である。記憶装置130には、例えば秘密分散部112で(n,n)秘密分散法により分割された分散データが記憶される。
【0020】
情報処理装置200は、管理部210及び記憶装置230を有する。
管理部210は、情報処理装置200における通信動作を含む各種動作に係る制御やデータ管理等を行う。管理部210は、制御部211、復元部212、復号部213、及び記憶部214A、214Bを有する。
【0021】
制御部211は、管理部210内の各機能部を統括的に制御する。
復元部212は、(n,n)秘密分散法により分割されたn個の分散データを用いて移動対象のデジタルデータを復元する。
復号部213は、入力される暗号化されたデータに所定情報を鍵として復号処理を施し、暗号化されたデータを解読して出力する。本実施形態において、具体的には、復号部213は、送信側の情報処理装置100から供給される乱数Rを鍵として、情報処理装置100において暗号化された一部の分散データを復号する。
【0022】
ここで、復元部212及び復号部213のそれぞれは、その機能を有するハードウェアにより実現しても良いし、図示しないCPUがソフトウェア(コンピュータプログラム)を実行することにより各機能を実現するようにしても良い。
【0023】
記憶部214A、214Bは、管理部210にて実行される各種動作に係るデータを記憶するためのものであり、例えばフラッシュメモリやFeRAM(強誘電体メモリ)などの半導体メモリにより構成される。例えば、記憶部214Aには、情報処理装置100の記憶部114Aと同様に、コンテンツIDや、ポインタや、乱数Rが記憶される。この乱数Rは、情報処理装置100から供給される。また、記憶部214Bには、復号部213での復号処理に係るデータが記憶される。
【0024】
なお、図1においては、2つの記憶部214A、214Bを設けるようにしているが、これに限定されるものではなく記憶部の態様は任意である。例えば、2つの記憶部214A、214Bに相当する機能を1つの記憶部により実現するようにしても良いし、より多くの記憶部を設けても良い。
【0025】
記憶装置230は、例えばハードディスク記憶装置などのデータ保存用の記憶装置である。記憶装置230には、例えば情報処理装置100から送信され情報処理装置200にて受信した複数の分散データが記憶される。
【0026】
情報処理装置100と情報処理装置200は、通信路301、302、303を介して通信可能に接続されている。ここで、通信路301は、安全性に関して何ら制限のない通信路であり、一方、通信路302、303は、通信の安全性が要求される通信路である。情報処理装置100と情報処理装置200は、通信路302を介して暗号化された一部の分散データの通信を行い、通信路303を介して乱数Rの通信を行う。また、情報処理装置100と情報処理装置200は、通信路301を介して暗号化された一部の分散データを除いた他のすべての分散データの通信を行う。なお、通信路302、303は、同じ通信路であっても良いし、異なる通信路であっても良い。
【0027】
次に、動作について説明する。
図2は、第1の実施形態における通信システムの処理シーケンスを示す図である。なお、以下の説明での情報処理装置100、200における各処理は、それぞれの制御部111、211が各機能部に指示を行うことにより実行される。
【0028】
まず、ステップS1にて、移動対象のデジタルデータを特定するためのコンテンツIDを指定したデータ移動要求が、受信側の情報処理装置200から送信側の情報処理装置100に対してなされると、送信側の情報処理装置100の管理部110にて、制御部111は、受信したデータ移動要求におけるコンテンツIDを記憶部114Aに登録する(記憶させる)(S2)。なお、送信側の情報処理装置100は、データ移動要求に対してデータ移動を拒否することも可能であり、その場合にはコンテンツIDを登録せずに受信側の情報処理装置200に拒否する旨の通知を返す。
【0029】
次に、ステップS3にて、秘密分散部112は、記憶部114Aに登録されたコンテンツIDに対応するデジタルデータX131を記憶部130から読み出し、読み出したデジタルデータX131を(n,n)秘密分散法によりn個の分散データSDSに分割する。なお、秘密分散法により分割された各分散データを、以下では「share」とも称す。このデジタルデータX131を秘密分散法により分割して得られた複数の分散データのうち、その一部であるshareA(SDSA)は記憶部114Bに記憶され、残りの(n−1)個のshare(shareB、shareC、…)は記憶装置130に記憶される。
【0030】
ステップS4にて、制御部111は、図示しない乱数発生部で乱数Rを生成させ、生成された乱数Rを記憶部114Aに登録する。
次に、ステップS5にて、暗号部113は、ステップS4において記憶部114Aに登録された乱数Rを鍵として、記憶部114Bに記憶されているshareA(SDSA)を暗号化しshareA’(SDSA’)を生成する。生成されたshareA’(SDSA’)、すなわち暗号化処理されたshareAは、記憶部114Bに記憶される。
【0031】
続いて、ステップS6にて、制御部111は、記憶装置130に記憶された各shareの記憶領域の先頭ポインタを記憶部114Aに登録する。
【0032】
次に、ステップS7にて、制御部111は、各shareの先頭ポインタ等を適宜参照し、記憶部114A及び記憶装置30に記憶されている各shareを読み出し、図示しない送信手段により情報処理装置200に送信する。このステップS7においては、移動させるデジタルデータX131に係る各shareのうち、shareAを除くすべてのshare(SDS)、すなわち記憶装置130に記憶されているshareB、shareC、…と、乱数Rを用いた暗号化処理により得られ記憶部114Aに記憶されているshareA’とが情報処理装置200に送信される。
【0033】
また、情報処理装置100より送信された各shareは、情報処理装置200の図示しない受信手段により受信される。受信されたshareA’(SDRA’)は記憶部214Bに記憶され、残りの(n−1)個のshare(shareB、shareC、…)は記憶装置230に記憶される。
【0034】
ステップS8にて、情報処理装置200の制御部211は、記憶装置230に記憶した各shareの記憶領域の先頭ポインタを記憶部214Aに登録する。
続いて、ステップS9にて、制御部211は、受信したshareA’(SDRA’)を復号するための鍵である乱数Rの送信を情報処理装置100に対して要求する。
【0035】
ステップS10にて、情報処理装置100の制御部111は、情報処理装置200から乱数Rの送信要求を受けると、記憶装置130に記憶している移動対象のデジタルデータX131及び各shareと、記憶部114Aに記憶しているポインタを削除する。なお、shareA(SDSA)については、ステップS5での処理以後からステップS10までの間の任意のタイミングで削除すればよい。したがって、情報処理装置100には、記憶部114Aに記憶されたコンテンツIDと乱数Rのみが残る。
【0036】
次に、ステップS11にて、制御部111は、情報処理装置200との間に安全な通信路303を確保した後、乱数Rの送信要求に対する応答として記憶部114Aに記憶されている乱数Rを送信手段により情報処理装置200に送信する。この乱数Rの送信は、例えばDiffie−Hellman鍵共有法などの一連の安全な鍵共有手続きで送信可能であり、一般に使用されている暗号化技術を適用することができる。
【0037】
そして、ステップS12にて、情報処理装置200の制御部211は、受信手段により乱数Rを受信すると、受信した乱数Rを記憶部214Aに登録して、乱数Rの受信確認(ACK)を情報処理装置100に送信する。
【0038】
次に、ステップS13にて、情報処理装置200の復号部213は、受信し記憶部214Aに登録された乱数Rを鍵として、記憶部214Bに記憶されているshareA’(SDRA)を復号してshareA(SDRA)を生成する。復号されたshareA(SDRA)は、記憶部214Bに記憶される。
【0039】
続いて、ステップS14にて、復元部212は、記憶部214Bに記憶されているshareA(SDRA)、及び記憶部230に記憶されている(n−1)個のshare(shareB、shareC、…)を読み出す。そして、復元部212は、これらの読み出したshareを用いて、デジタルデータY231を復元する。
【0040】
また、ステップS12において送信された乱数Rの受信確認(ACK)を受けた情報処理装置100では、ステップS15にて、制御部111は、記憶部114Aに記憶しているコンテンツIDと乱数Rを削除する。
以上のようにして、情報処理装置100内のデジタルデータX131が、デジタルデータY231として情報処理装置200に移動される。
【0041】
第1の実施形態では、図2に太線により示したように、送信側の情報処理装置100は、ステップS10での処理が行われるまで移動対象のデジタルデータX131を復元可能な状態で保持し、受信側の情報処理装置200は、ステップS11での処理以降において移動対象のデジタルデータX131と同じデジタルデータY231を復元可能な状態で保持する。
【0042】
すなわち、送信側の情報処理装置100でデジタルデータX131に係るすべての分散データが削除されるまでは、暗号化された分散データshareA’を復号するための鍵である乱数Rが受信側の情報処理装置200に供給されることがなく、分散データの削除完了後に乱数Rが情報処理装置200に送信されるので、情報処理装置100、200の両方がデジタルデータX131を復元可能な状態で同時に保持する期間は存在しない。したがって、情報処理装置100、200との間でデジタルデータX131の複製を許すことなくかつ安全に移動することができる。
【0043】
また、本実施形態では、情報処理装置100から情報処理装置200にデジタルデータX131を移動する際、暗号化された分散データshareA’と鍵である乱数Rのみを安全な通信路302、303を介してセキュアに移動し、他の分散データshareB、shareC、…は通常の通信路301を介して移動するだけで、デジタルデータX131をセキュアに移動させることができる。
【0044】
情報処理装置100、200の間で通信されるshareA’、shareB、shareC、…は、(n,n)秘密分散法により分割されているので、その一部が盗られてもデジタルデータX131を復元することができない。したがって、(n,n)秘密分散法によりデジタルデータX131を分割することで、例えば特開平8−46607号公報や特開平11−317734号に記載されているようにデジタルデータX131の分割と符号化による安全性の向上を図り、通信される一部の分散データが盗られてもデジタルデータX131が復元されることを防止することができる。
【0045】
さらには、(n,n)秘密分散法の特徴を利用して一部の分散データを暗号化するだけで、shareA’、shareB、shareC、…のすべてが盗られても暗号化された分散データを含むため、そのままではデジタルデータX131を復元することができず、暗号化及び復号化に係る処理負担を軽減しながらも、デジタルデータX131が復元されることを防止することができる。したがって、情報処理装置100から情報処理装置200にデジタルデータX131をセキュアに移動するための負荷を軽減することができる。
【0046】
また、本実施形態によれば、情報処理装置100から情報処理装置200へのデジタルデータX131の移動処理中に、少なくとも一方の情報処理装置100、200がダウンしたり、通信路301〜303が遮断されたりして、移動処理が中断されても移動処理を再開することが可能になる。
【0047】
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。
以下に説明する本発明の第2の実施形態においても、一例としてデジタルデータを(n,n)秘密分散法(nは自然数)によりn個の分散データに分割し、送信側の情報処理装置から受信側の情報処理装置に移動するものとする。
【0048】
図3は、本発明の第2の実施形態における通信システムの構成例を示す図である。
図3において、400、500は情報処理装置であり、ここでは情報処理装置400を送信側装置(機器)とし、情報処理装置500を受信側装置(機器)とする。
【0049】
情報処理装置400において、管理部410及び記憶装置430は、図1に示した情報処理装置100の管理部110及び130にそれぞれ対応する。
また、管理部410において、制御部411、秘密分散部412、暗号部413、及び記憶部414A、414Bは、図1に示した管理部110内の制御部111、秘密分散部112、暗号部113、及び記憶部114A、114Bにそれぞれ対応しており、同様の機能を実現する。
【0050】
ただし、暗号部413は、秘密分散部412で(n,n)秘密分散法により分割された分散データのうち一部の分散データを乱数Rを鍵として暗号化するのに加え、さらにこの乱数Rを記憶部414Aに記憶されている公開鍵を用いて暗号化する。また、記憶部414Aには、コンテンツID、ポインタ、及び乱数Rに加え、情報処理装置500から予め供給される公開鍵、及びその公開鍵により暗号化して得られた乱数R’が記憶される。
【0051】
なお、秘密分散部412及び暗号部413のそれぞれは、その機能を有するハードウェアにより実現しても良いし、図示しないCPUがソフトウェア(コンピュータプログラム)を実行することにより各機能を実現するようにしても良い。また、図3においては、2つの記憶部414A、414Bを設けるようにしているが、これに限定されるものではなく記憶部の態様は任意である。
【0052】
同様に、情報処理装置500において、管理部510及び記憶装置530は、図1に示した情報処理装置200の管理部210及び230にそれぞれ対応する。
また、管理部510において、制御部511、復元部512、復号部513、及び記憶部514A、514Bは、図1に示した管理部210内の制御部211、復元部212、復号部213、及び記憶部214A、214Bにそれぞれ対応しており、同様の機能を実現する。
【0053】
ただし、復号部513は、送信側の情報処理装置100から供給される乱数R’をその暗号化に用いられた公開鍵に対応する秘密鍵により復号して乱数Rを生成するとともに、その乱数Rを鍵として、情報処理装置100において暗号化された一部の分散データを復号する。また、記憶部514Aには、コンテンツID、ポインタ、乱数R、乱数R’、及び情報処理装置400に供給した公開鍵に対応する秘密鍵が記憶される。
【0054】
なお、秘密分散部512及び暗号部513のそれぞれは、その機能を有するハードウェアにより実現しても良いし、図示しないCPUがソフトウェア(コンピュータプログラム)を実行することにより各機能を実現するようにしても良い。また、図3においては、2つの記憶部514A、514Bを設けるようにしているが、これに限定されるものではなく記憶部の態様は任意である。
【0055】
また、情報処理装置400と情報処理装置500は、安全性に関して何ら制限のない通信路601、及び通信の安全性が要求される通信路602、603を介して通信可能に接続されている。情報処理装置400と情報処理装置500は、通信路602を介して暗号化された一部の分散データの通信を行い、通信路603を介して乱数R’の通信を行う。また、情報処理装置400と情報処理装置500は、通信路601を介して暗号化された一部の分散データを除いた他のすべての分散データの通信を行う。なお、通信路602、603は、同じ通信路であっても良いし、異なる通信路であっても良い。
【0056】
次に、動作について説明する。
図4は、第2の実施形態における通信システムの処理シーケンスを示す図である。なお、以下の説明での情報処理装置400、500における各処理は、それぞれの制御部411、511が各機能部に指示を行うことにより実行される。
まず、ステップS21にて、受信側の情報処理装置500にて秘密鍵及び公開鍵が生成され、制御部511は、生成した秘密鍵を記憶部514Aに登録する(記憶させる)。
【0057】
次に、ステップS22にて、移動対象のデジタルデータを特定するためのコンテンツID及び公開鍵を情報として有するデータ移動要求が、受信側の情報処理装置500から送信側の情報処理装置400に対してなされると、送信側の情報処理装置400の管理部410にて、制御部411は、受信したコンテンツID及び公開鍵を記憶部414Aに登録する(S23)。なお、送信側の情報処理装置400は、データ移動要求に対してデータ移動を拒否することも可能であり、その場合にはコンテンツID及び公開鍵を登録せずに受信側の情報処理装置500に拒否する旨の通知を返す。
【0058】
次のステップS24〜S27での処理は、図2に示したステップS3〜S6での処理と同様であるので説明は省略する。
【0059】
ステップS28にて、情報処理装置400の暗号部413は、記憶部414Aに登録されている乱数Rを、同じく記憶部414Aに登録されている公開鍵により暗号化して乱数R’を生成する。生成された乱数R’は、記憶部414Aに記憶される。なお、乱数R’の生成は、ステップS26での処理以後からステップS32までの間に行えば良い。
【0060】
次のステップS29〜S31での処理は、図2に示したステップS7〜S9での処理と同様であるので説明は省略する。ただし、本実施形態では、ステップS31において、情報処理装置500の制御部511は、公開鍵により暗号化された乱数R’の送信を情報処理装置400に対して要求する。
【0061】
ステップS32にて、情報処理装置400の制御部411は、情報処理装置500から乱数R’の送信要求を受けると、記憶装置430に記憶している移動対象のデジタルデータX431及び各shareと、記憶部414Aに記憶しているポインタ及び乱数Rを削除する。ここで、shareA(SDSA)については、ステップS26での処理以後からステップS32までの間に削除すればよい。したがって、情報処理装置400には、記憶部414Aに記憶されたコンテンツIDと乱数R’のみが残る。
【0062】
次に、ステップS33にて、制御部411は、乱数R’の送信要求に対する応答として記憶部414Aに記憶されている乱数R’を送信手段により通信路603を介して情報処理装置500に送信する。そして、ステップS34にて、情報処理装置500の制御部511は、受信手段により乱数R’を受信すると、受信した乱数R’を記憶部514Aに登録して、乱数R’の受信確認(ACK)を情報処理装置400に送信する。
【0063】
次に、ステップS35にて、情報処理装置500の復号部513は、記憶部514Aに登録された乱数R’を秘密鍵により復号して乱数Rを生成する。さらに、ステップS36にて、復号部513は、ステップS35において生成した乱数Rを鍵として、記憶部514Bに記憶されているshareA’(SDRA’)を復号してshareA(SDRA)を生成する。復号されたshareA(SDRA)は、記憶部514Bに記憶される。
【0064】
続いて、ステップS37にて、復元部512は、記憶部514Bに記憶されているshareA(SDRA)、及び記憶部530に記憶されている(n−1)個のshare(shareB、shareC、…)を読み出す。そして、復元部512は、これらの読み出したshareを用いて、デジタルデータY531を復元する。
【0065】
また、ステップS34において送信された乱数R’の受信確認(ACK)を受けた情報処理装置400では、ステップS38にて、制御部411は、記憶部414Aに記憶しているコンテンツIDと乱数R’を削除する。
以上のようにして、情報処理装置400内のデジタルデータX431が、デジタルデータY531として情報処理装置500に移動される。
【0066】
第2の実施形態では、上述した第1の実施形態と同様の効果が得られ、さらに乱数Rを公開鍵により暗号化して送信側の情報処理装置400から受信側の情報処理装置500に送信することで、乱数Rの送信を送信するために安全な通信路を確保する必要がなくなる。したがって、情報処理装置400から情報処理装置500にデジタルデータX431をセキュアに移動するための負荷を分散することができる。
【0067】
次に、本発明の第3の実施形態について説明する。
以下に説明する本発明の第3の実施形態では、一例としてデジタルデータを(n,n)秘密分散法(nは自然数)によりn個の分散データに分割し、送信側の情報処理装置から受信側の情報処理装置に移動するものとする。
【0068】
図5は、本発明の第3の実施形態における通信システムの構成例を示す図である。
図5において、700、800は情報処理装置であり、ここでは情報処理装置700を送信側装置(機器)とし、情報処理装置800を受信側装置(機器)とする。
【0069】
情報処理装置700において、管理部710内の制御部711、秘密分散部712、暗号部713、及び記憶部714A、714Bは、図1に示した管理部110内の制御部111、秘密分散部112、暗号部113、及び記憶部114A、114Bにそれぞれ対応しており、同様の機能を実現する。
同様に、情報処理装置800において、管理部810内の制御部811、復元部812、復号部813、及び記憶部814A、814Bは、図1に示した管理部210内の制御部211、復元部212、復号部213、及び記憶部214A、214Bにそれぞれ対応しており、同様の機能を実現する。
また、情報処理装置700と情報処理装置800は、通信路903、904を介して通信可能に接続されている。通信路903、904は、図1に示した通信路302、303にそれぞれ対応する。
【0070】
また、900は共通サーバ(記憶装置)であり、情報処理装置700及び800のそれぞれに対して、通信路901及び902を介して通信可能なように接続されている。本実施形態では、共通サーバ900には、デジタルデータX731を秘密分散法により分割して得られた複数の分散データのうち、sharea(SDSa)を除いた残りの(n−1)個のshareSD(shareb、sharec、…)が記憶される。
【0071】
なお、第3の実施形態における通信システムは、外部の記憶装置である共通サーバ900により記憶装置130及び記憶装置230の共通化を図っている点が異なるのみで、動作については上述した第1の実施形態での処理と同様であるのでその説明は省略する。
【0072】
第3の実施形態では、上述した第1の実施形態と同様の効果が得られるとともに、各情報処理装置700、800が記憶装置を備える必要がなく、システム構成の規模を縮小することができる。
【0073】
なお、上述した各実施形態では、移動対象のデジタルデータを(n,n)秘密分散法により分割する場合を一例として示しているが、これに限定されるものではなく、例えば(k,n)しきい値秘密分散法、(n,L,n)しきい値秘密分散法、及び(k,L,n)しきい値秘密分散法を適用することができる。ここで、k及びnは自然数かつk≧nであり、Lは自然数である。
【0074】
(k,n)しきい値秘密分散法は、デジタルデータをk個の分散データに分割し、その中のn個の分散データを用いることで元のデジタルデータを復元可能な秘密分散法であり、一部の分散データを紛失又は破壊しても元のデジタルデータを復元することができる。上述した各実施形態に適用する場合には、k個の分散データのうち{k−(n−1)}個の分散データに暗号化を施すようにすれば良い。
【0075】
(n,L,n)しきい値秘密分散法は、デジタルデータをn個の分散データに分割し、その中のn個の分散データを用いることで元のデジタルデータを復元可能であるとともに、1つの分散データのサイズが(1/L)である秘密分散法であり、1つの分散データのサイズが(1/L)になることで、処理情報量や使用記憶領域を削減することができる。また、情報処理装置間のデータ通信量も削減することができる。
【0076】
(k,L,n)しきい値秘密分散法は、デジタルデータをk個の分散データに分割し、その中のn個の分散データを用いることで元のデジタルデータを復元可能であるとともに、1つの分散データのサイズが(1/L)である秘密分散法である。この(k,L,n)しきい値秘密分散法を用いた場合には、一部の分散データを紛失又は破壊しても元のデジタルデータを復元することができ、かつ1つの分散データのサイズが(1/L)になることで処理情報量、使用記憶領域、データ通信量を削減することができる。
【0077】
また、上述した実施形態では、セキュリティを高めるために分散データであるshareA及びshareA’を管理部に記憶するようにしているが、shareA及びshareA’を記憶装置に記憶するようにしても良い。このようにした場合には、すべての分散データが記憶装置に記憶されることとなり、管理部が備えるべき記憶領域を削減することができる。
【0078】
また、分散データであるshareA及びshareA’に加え、移動対象のデジタルデータを管理部に記憶するようにしても良い。このようにした場合には、管理部外に記憶されているすべてのデータを取得しても移動対象のデジタルデータを復元することができないので、移動対象のデジタルデータが不当に復元されることを確実に防止することができる。
【0079】
また、送信側と受信側の情報処理装置間でデジタルデータ移動を折衝する際、データ移動要求を行う前に、shareAの暗号化方法、鍵共有方法(乱数Rの受け渡し方法)などを交渉(ネゴシエーション)し、その結果をポリシーとして管理部内の記憶部等に登録しておくようにしても良い。このようにした場合には、shareAの暗号化方法、鍵共有方法、暗号や共有に係るアルゴリズムを情報処理装置間で選択することができ、セキュリティ強度を高めることができる。
【0080】
また、1つの送信側の情報処理装置から1つの受信側の情報処理装置へのデジタルデータの移動に限らず、秘密分散法により予め分割された分散データを有する複数の送信側の情報処理装置から1つの受信側の情報処理装置へのデジタルデータの移動にも本発明は適用可能である。
【0081】
また、送信側の情報処理装置が移動対象のデジタルデータを秘密分散法により複数の分散データに分割した後、最も圧縮率の高いデータ圧縮方式を選択して各分散データを圧縮するようにしても良い。なお、適用した圧縮方式についての情報は管理部内の記憶部に格納しておき、乱数R(乱数R’)とともに受信側の情報処理装置に送信すればよい。各分散データを圧縮するようにした場合には、圧縮処理による分散データのサイズ削減により、使用メモリ量や通信/情報処理量を削減することができる。分散データ毎に圧縮方式を適切に選択するようにしても良い。
【0082】
また、上述した各実施形態は、音声や映像などのデジタルデータが伝送されるストリーミング型データ配信などに適用することも可能である。ストリーミング型データ配信で伝送される音声/映像に係るサブパケットの伝送に本実施形態におけるデータ移動処理を適用することで、一部のサブパケットが欠落しても劣化はするが再生可能なストリーミング型データの性質を利用し、デジタルデータの移動を繰り返すたびにデータの劣化が生じる通信システムを構築することができ、デジタルコンテンツの不正コピー等を抑制することができる。
【0083】
(その他の実施形態)
また、以上に説明した各実施形態における通信システムでの情報処理装置は、コンピュータのCPU又はMPU、RAM、ROMなどで構成できるものであり、RAMやROMに記憶されたプログラムが動作することによって実現でき、上記プログラムは本発明の実施形態に含まれる。また、コンピュータが上記機能を果たすように動作させるプログラムを、例えばCD−ROMのような記録媒体に記録し、コンピュータに読み込ませることによって実現できるものであり、上記プログラムを記録した記録媒体は本発明の実施形態に含まれる。上記プログラムを記録する記録媒体としては、CD−ROM以外に、フレキシブルディスク、ハードディスク、磁気テープ、光磁気ディスク、不揮発性メモリカード等を用いることができる。
【0084】
また、コンピュータがプログラムを実行し処理を行うことにより、上述の実施形態の機能が実現されるプログラムプロダクトは、本発明の実施形態に含まれる。上記プログラムプロダクトとしては、上述の実施形態の機能を実現するプログラム自体、上記プログラムが読み込まれたコンピュータ、ネットワークを介して通信可能に接続されたコンピュータに上記プログラムを提供可能な送信装置、及び当該送信装置を備えるネットワークシステム等がある。
【0085】
また、コンピュータが供給されたプログラムを実行することにより上述の実施形態の機能が実現されるだけでなく、そのプログラムがコンピュータにおいて稼働しているOS(オペレーティングシステム)又は他のアプリケーションソフト等と共同して上述の実施形態の機能が実現される場合や、供給されたプログラムの処理の全て又は一部がコンピュータの機能拡張ボードや機能拡張ユニットにより行われて上述の実施形態の機能が実現される場合も、かかるプログラムは本発明の実施形態に含まれる。また、本発明をネットワーク環境で利用するべく、全部又は一部のプログラムが他のコンピュータで実行されるようになっていても良い。
【0086】
例えば、上記各実施形態に示した情報処理装置は、図6に示すようなコンピュータ機能1000を有し、そのCPU1001により上記実施形態での動作が実施される。
コンピュータ機能1000は、上記図6に示すように、CPU1001と、ROM1002と、RAM1003と、キーボード(KB)1009のキーボードコントローラ(KBC)1005と、表示部としてのCRTディスプレイ(CRT)1010のCRTコントローラ(CRTC)1006と、ハードディスク(HD)1011及びフレキシブルディスク(FD)1012のディスクコントローラ(DKC)1007と、ネットワークインタフェースカード(NIC)1008とが、システムバス1004を介して互いに通信可能に接続された構成としている。
【0087】
CPU1001は、ROM1002又はHD1011に記憶されたソフトウェア(プログラム)、又はFD1012より供給されるソフトウェア(プログラム)を実行することで、システムバス1004に接続された各構成部を総括的に制御する。
すなわち、CPU1001は、上述したような動作を行うための処理プログラムを、ROM1002、HD1011、又はFD1012から読み出して実行することで、上記実施形態での動作を実現するための制御を行う。
RAM1003は、CPU1001の主メモリ又はワークエリア等として機能する。
【0088】
KBC1005は、KB1009や図示していないポインティングデバイス等からの指示入力を制御する。CRTC1006は、CRT1010の表示を制御する。DKC1007は、ブートプログラム、種々のアプリケーション、ユーザファイル、ネットワーク管理プログラム、及び上記実施形態における上記処理プログラム等を記憶するHD1011及びFD1012とのアクセスを制御する。NIC1008はネットワーク1013上の他の装置と双方向にデータをやりとりする。
【0089】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
本発明の諸態様を付記として以下に示す。
【0090】
(付記1)通信路を介して通信可能に接続された外部装置に移動させるデジタルデータを秘密分散法により複数の分散データに分割する秘密分散手段と、
上記複数の分散データのうち一部の分散データを、所定情報を鍵として暗号化する暗号処理手段と、
上記外部装置に対して、上記一部の分散データを除くすべての分散データ及び上記暗号処理手段で暗号化された分散データを送信手段により送信させ、さらに保持しているすべての上記分散データを削除した後に上記所定情報を上記送信手段により送信させる制御手段とを備えることを特徴とする情報処理装置。
(付記2)上記秘密分散手段は、(n,n)秘密分散法(nは自然数)により上記デジタルデータをn個の分散データに分割し、
上記暗号処理手段は、上記n個の分散データのうち少なくとも1つの分散データを暗号化することを特徴とする付記1記載の情報処理装置。
(付記3)上記秘密分散手段は、(k,n)しきい値秘密分散法、(n,L,n)しきい値秘密分散法、及び(k,L,n)しきい値秘密分散法(k及びnは、k≧nかつ自然数、Lは自然数)の何れかの秘密分散法により、上記デジタルデータを複数の分散データに分割することを特徴とする付記1記載の情報処理装置。
(付記4)付記1〜3の何れか1項に記載の情報処理装置から送信される複数の分散データ及び所定情報を受信可能な情報処理装置であって、
受信した上記複数の分散データのうち暗号化されている分散データを、受信した上記所定情報を鍵として復号する復号処理手段と、
上記復号処理手段により復号された分散データと上記受信した分散データとを用いてデジタルデータを復元する復元手段とを備えることを特徴とする情報処理装置。
(付記5)上記暗号処理手段は、予め供給される公開鍵により上記所定情報をさらに暗号化し、
上記制御手段は、上記一部の分散データを除くすべての分散データ及び上記暗号処理手段で暗号化された分散データを送信手段により送信させ、さらに保持しているすべての上記分散データを削除した後に、上記暗号化された所定情報を上記送信手段により送信させることを特徴とする付記1〜3の何れか1項に記載の情報処理装置。
(付記6)付記5記載の情報処理装置から送信される複数の分散データ及び暗号化されている所定情報を受信可能な情報処理装置であって、
受信した暗号化されている所定情報を上記公開鍵に対応する秘密鍵により復号し、さらに受信した上記複数の分散データのうち暗号化されている分散データを、上記復号した所定情報を鍵として復号する復号処理手段と、
上記復号処理手段により復号された分散データと上記受信した分散データとを用いてデジタルデータを復元する復元手段とを備えることを特徴とする情報処理装置。
(付記7)上記制御手段は、通信路を介して通信可能に接続された外部記憶装置に、上記秘密分散手段により得られる上記複数の分散データのうち上記一部の分散データを除くすべての分散データを送信し記憶させることを特徴とする付記1〜3及び5の何れか1項に記載の情報処理装置。
(付記8)第1の情報処理装置と第2の情報処理装置とが通信路を介して通信可能に接続された通信システムであって、
上記第1の情報処理装置は、移動させるデジタルデータを秘密分散法により複数の分散データに分割し、所定情報を鍵として一部の当該分散データを暗号化してすべての分散データを上記第2の情報処理装置に送信し、
上記第2の情報処理装置は、上記第1の情報処理装置より送信された分散データを受信し、すべての分散データを受信すると上記所定情報を上記第1の情報処理装置に要求し、
上記第1の情報処理装置は、当該要求を受けた場合には保持しているすべての上記分散データを削除し、当該分散データの削除完了後に上記所定情報を上記第2の情報処理装置に送信し、
上記第2の情報処理装置は、上記第1の情報処理装置より送信された所定情報を受信し、受信した上記所定情報を鍵として暗号化されている分散データを復号し、すべての分散データを用いて上記デジタルデータを復元することを特徴とする通信システム。
(付記9)通信路を介して通信可能に接続された外部装置に移動させるデジタルデータを秘密分散法により複数の分散データに分割する秘密分散ステップと、
上記秘密分散ステップにて得られる上記複数の分散データのうち一部の分散データを、所定情報を鍵として暗号化する暗号処理ステップと、
上記一部の分散データを除くすべての分散データ及び上記暗号処理ステップにて暗号化された分散データを、送信手段により上記外部装置に送信する第1の送信ステップと、
上記第1の送信ステップ後に保持しているすべての上記分散データを削除する削除ステップと、
上記削除ステップによりすべての上記分散データを削除した後、上記所定情報を送信手段により上記外部装置に送信する第2の送信ステップとをコンピュータに実行させるためのプログラム。
(付記10)通信路を介して通信可能に接続された外部装置から送信される複数の分散データを受信手段により受信する第1の受信ステップと、
上記第1の受信ステップ後に、鍵となる所定情報を上記外部装置に対して要求する鍵要求ステップと、
上記要求に対する応答として、上記外部装置から送信される上記所定情報を受信手段により受信する第2の受信ステップと、
上記第1の受信ステップにて受信した複数の分散データのうち暗号化されている分散データを、上記第2の受信ステップにて受信した上記所定情報を鍵として復号する復号処理ステップと、
上記復号処理ステップにて復号された分散データと上記第1の受信ステップにて受信した分散データとを用いてデジタルデータを復元する復元ステップとをコンピュータに実行させるためのプログラム。
【図面の簡単な説明】
【0091】
【図1】本発明の第1の実施形態における通信システムの構成例を示す図である。
【図2】第1の実施形態における通信システムの処理シーケンスを示す図である。
【図3】本発明の第2の実施形態における通信システムの構成例を示す図である。
【図4】第2の実施形態における通信システムの処理シーケンスを示す図である。
【図5】本発明の第3の実施形態における通信システムの構成例を示す図である。
【図6】本発明の各実施形態における通信システムを構成する情報処理装置を実現可能なコンピュータの一構成例を示すブロック図である。
【符号の説明】
【0092】
100 情報処理装置(送信側)
110 管理部
111 制御部
112 秘密分散部
113 暗号部
114A、114B 記憶部
130 記憶装置
200 情報処理装置(受信側)
210 管理部
211 制御部
212 復元部
213 復号部
214A、214B 記憶部
230 記憶装置
301、302、303 通信路

【特許請求の範囲】
【請求項1】
通信路を介して通信可能に接続された外部装置に移動させるデジタルデータを秘密分散法により複数の分散データに分割する秘密分散手段と、
上記複数の分散データのうち一部の分散データを、所定情報を鍵として暗号化する暗号処理手段と、
上記外部装置に対して、上記一部の分散データを除くすべての分散データ及び上記暗号処理手段で暗号化された分散データを送信手段により送信させ、さらに保持しているすべての上記分散データを削除した後に上記所定情報を上記送信手段により送信させる制御手段とを備えることを特徴とする情報処理装置。
【請求項2】
上記秘密分散手段は、(n,n)秘密分散法(nは自然数)により上記デジタルデータをn個の分散データに分割し、
上記暗号処理手段は、上記n個の分散データのうち少なくとも1つの分散データを暗号化することを特徴とする請求項1記載の情報処理装置。
【請求項3】
上記暗号処理手段は、予め供給される公開鍵により上記所定情報をさらに暗号化し、
上記制御手段は、上記一部の分散データを除くすべての分散データ及び上記暗号処理手段で暗号化された分散データを送信手段により送信させ、さらに保持しているすべての上記分散データを削除した後に、上記暗号化された所定情報を上記送信手段により送信させることを特徴とする請求項1又は2記載の情報処理装置。
【請求項4】
第1の情報処理装置と第2の情報処理装置とが通信路を介して通信可能に接続された通信システムであって、
上記第1の情報処理装置は、移動させるデジタルデータを秘密分散法により複数の分散データに分割し、所定情報を鍵として一部の当該分散データを暗号化してすべての分散データを上記第2の情報処理装置に送信し、
上記第2の情報処理装置は、上記第1の情報処理装置より送信された分散データを受信し、すべての分散データを受信すると上記所定情報を上記第1の情報処理装置に要求し、
上記第1の情報処理装置は、当該要求を受けた場合には保持しているすべての上記分散データを削除し、当該分散データの削除完了後に上記所定情報を上記第2の情報処理装置に送信し、
上記第2の情報処理装置は、上記第1の情報処理装置より送信された所定情報を受信し、受信した上記所定情報を鍵として暗号化されている分散データを復号し、すべての分散データを用いて上記デジタルデータを復元することを特徴とする通信システム。
【請求項5】
通信路を介して通信可能に接続された外部装置に移動させるデジタルデータを秘密分散法により複数の分散データに分割する秘密分散ステップと、
上記秘密分散ステップにて得られる上記複数の分散データのうち一部の分散データを、所定情報を鍵として暗号化する暗号処理ステップと、
上記一部の分散データを除くすべての分散データ及び上記暗号処理ステップにて暗号化された分散データを、送信手段により上記外部装置に送信する第1の送信ステップと、
上記第1の送信ステップ後に保持しているすべての上記分散データを削除する削除ステップと、
上記削除ステップによりすべての上記分散データを削除した後、上記所定情報を送信手段により上記外部装置に送信する第2の送信ステップとをコンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2007−97102(P2007−97102A)
【公開日】平成19年4月12日(2007.4.12)
【国際特許分類】
【出願番号】特願2005−287182(P2005−287182)
【出願日】平成17年9月30日(2005.9.30)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】