JP2006270344A - 情報処理システム、情報処理装置および方法、並びにプログラム - Google Patents

情報処理システム、情報処理装置および方法、並びにプログラム Download PDF

Info

Publication number
JP2006270344A
JP2006270344A JP2005083699A JP2005083699A JP2006270344A JP 2006270344 A JP2006270344 A JP 2006270344A JP 2005083699 A JP2005083699 A JP 2005083699A JP 2005083699 A JP2005083699 A JP 2005083699A JP 2006270344 A JP2006270344 A JP 2006270344A
Authority
JP
Japan
Prior art keywords
key
content
encryption
terminal
encrypted
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.)
Granted
Application number
JP2005083699A
Other languages
English (en)
Other versions
JP4605453B2 (ja
Inventor
Shinako Matsuyama
科子 松山
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2005083699A priority Critical patent/JP4605453B2/ja
Publication of JP2006270344A publication Critical patent/JP2006270344A/ja
Application granted granted Critical
Publication of JP4605453B2 publication Critical patent/JP4605453B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】 コンテンツの公開を、公開側の負担を軽減した状態で行えるようにする。
【解決手段】 端末21は、他の端末に公開するコンテンツを生成し、暗号化し、サーバ11に送信し、管理させる。端末21は、鍵を生成し、生成した鍵を鍵として生成した鍵を暗号化する。暗号化された鍵は、サーバ11で管理される。端末21は、端末22に生成した鍵を配布する。端末22は、サーバ11から、端末21が公開しているコンテンツを取得する。端末22は、端末21から配布された鍵を用い、コンテンツを復号する。本発明は、コンテンツを複数のユーザに公開するサーバに適用することができる。
【選択図】図1

Description

本発明は、情報処理システム、情報処理装置および方法、並びにプログラムに関し、特に、仮想的な仲介点を設け、その仲介点で、ユーザのデータや鍵を管理させることにより、Peer-to-peerなどにおけるコミュニケーションをより円滑に、より効率良く行えるようにする際に適用して好適な情報処理システム、情報処理装置および方法、並びにプログラムに関する。
ネットワークの普及や携帯型の端末の普及にともない、端末同士でデータの授受を行う、例えば、Peer-to-peerなどと称されることが一般的に行われている。例えば、所定のサーバからデータをダウンロードすることは一般的に行われている。
サーバからダウンロードされるデータが暗号化されている場合、その暗号を解くための鍵などが必要となる。その鍵は、通常、サーバに、メールアドレスなどの個人情報を登録することを条件に、与えられることが多かった。そのために、匿名性が損なわれるといった問題があった。
また、サーバへのアクセス時に、正当なユーザであるか否かを判断するための認証処理が行われる場合がある。その認証処理には、サーバ側と端末側との間で数回のデータの授受が行われる。このことは、サーバ側と端末側、共に、オーバーヘッドな処理となっている。
さらに、どのユーザに、どのコンテンツを提供するかのアクセス制御を行う必要があるため、サーバ側でのユーザ毎のコンテンツアクセス管理のオーバーヘッドがあると共にサーバ側が、いつ、どのユーザが、どのコンテンツにアクセスしたかを管理することになり匿名性が保たれないという問題があった。
そこで、暗号化データを受ける側が、暗号化データを提供する側に対して匿名性を保ち、また、認証などの処理にかかるオーバーヘッドな処理を削減することを、本出願人が、先に出願した特許文献1において提案している。
特願2005−027220号公報
上記したように、Peer-to-peerなどと称される端末同士でのデータの授受が一般的に行われるようになってきている。また特許文献1に開示されている技術を適用することにより、端末同士でデータの授受を行う際、そのデータの授受にかかる処理で端末にかかる負担を軽減することができる。
このような状況下では、端末同士でデータの授受を行うことがより普及すると考えられる。よって、所定の端末が他の端末に対して公開するデータの数が増え、他の端末も、その公開されているデータを取得する回数が増えると考えられる。
このように、公開するデータが増加すると、そのデータを記憶(管理)する端末の記憶容量が問題となることがある。すなわち、Peer-to-peerなどでデータを授受する端末が、公開するデータを管理し、また、他の端末で公開されているデータを取得するような場合、それらのデータを全てを記憶するための記憶容量も増大することになる。
また、特許文献1のように、データを公開する側で、データを公開する先の端末の数だけ少なくとも鍵を管理するような場合、公開先の端末が増加すると、その鍵を管理する領域も増加することになる。また、鍵を変更するなどの鍵に係わる演算処理なども増大することになる。
本発明はこのような状況に鑑みてなされたものであり、鍵やデータを管理しやすくする。また、その鍵を用いて、データの授受を簡便に行えるようにし、その授受を行う端末の処理負担を軽減できるようにする。
本発明の情報処理システムは、コンテンツを公開する第1の端末、公開されているコンテンツを管理するサーバ、および、公開されているコンテンツを利用する第2の端末を含む情報処理システムであって、第1の端末は、コンテンツの暗号化に係わる鍵を生成する生成手段と、生成手段により生成された鍵を、第2の端末に配布する配布手段と、生成手段により生成された鍵を、その鍵自身を鍵として暗号化する鍵暗号化手段と、暗号化手段により暗号化された鍵を、サーバに送信する鍵送信手段と、コンテンツを生成し、予め保持しているマスター鍵で暗号化する第1のコンテンツ暗号化手段と、第1のコンテンツ暗号化手段により暗号化されたコンテンツを、サーバに送信するコンテンツ送信手段とを備え、サーバは、鍵送信手段により送信された鍵を受信する鍵受信手段と、鍵受信手段により受信された鍵を管理する鍵管理手段と、コンテンツ送信手段により送信されたコンテンツを受信するコンテンツ受信手段と、コンテンツ受信手段により受信されたコンテンツを、コンテンツ暗号化鍵で暗号化する第2のコンテンツ暗号化手段と、鍵管理手段で管理されている鍵を鍵として、コンテンツ暗号化鍵を暗号化するコンテンツ鍵暗号化手段と、第2のコンテンツ暗号化手段により暗号化されたコンテンツ、コンテンツ鍵暗号化手段により暗号化されたコンテンツ暗号化鍵、および、コンテンツ鍵暗号化手段による暗号化に用いられた鍵を識別する鍵情報を公開エリアに公開する公開手段とを備え、第2の端末は、配布手段により配布された鍵を取得し、記憶する鍵記憶手段と、公開手段により公開エリアに公開されているコンテンツ、コンテンツ暗号化鍵、および、鍵情報を取得する取得手段と、取得手段により取得された鍵情報が示す鍵を、鍵記憶手段から読み出し、コンテンツ暗号化鍵を復号するコンテンツ鍵復号手段と、取得手段により取得されたコンテンツを、コンテンツ鍵復号手段により復号されたコンテンツ鍵を用いて復号する第1のコンテンツ復号手段と、第1のコンテンツ復号手段により復号されたコンテンツを、予め保持しているマスター鍵で復号する第2のコンテンツ復号手段とを備えることを要旨とする。
本発明の第1の情報処理装置は、第1に、コンテンツの暗号化に係わる鍵を生成する生成手段と、生成手段により生成された鍵を、第1の情報処理装置に配布する配布手段と、生成手段により生成された鍵を、その鍵自身を鍵として暗号化する鍵暗号化手段と、暗号化手段により暗号化された鍵を、第2の情報処理装置に送信する鍵送信手段と、コンテンツを生成し、予め保持しているマスター鍵で暗号化するコンテンツ暗号化手段と、コンテンツ暗号化手段により暗号化されたコンテンツを、第2の情報処理装置に送信するコンテンツ送信手段とを備えることを要旨とする。
第2に、前記第1の要旨に加え、前記生成手段により生成される鍵は、複数の階層を有するバイナリツリー状の鍵であることを要旨とする。
第3に、前記第2の要旨に加え、前記配布手段は、バイナリツリー状の鍵のうち、異なる階層の鍵をセットにして第1の情報処理装置に配布することを要旨とする。
第4に、前記第1の要旨に加え、他の情報処理装置から配布された鍵を取得し、記憶する鍵記憶手段と、第2の情報処理装置の公開エリアに公開されている暗号化されているコンテンツ、コンテンツの暗号化に用いられたコンテンツ暗号化鍵、および、コンテンツ暗号化鍵の暗号化に用いられた鍵を識別する鍵情報を取得する取得手段と、取得手段により取得された鍵情報が示す鍵を、鍵記憶手段から読み出し、コンテンツ暗号化鍵を復号するコンテンツ鍵復号手段と、取得手段により取得されたコンテンツを、コンテンツ鍵復号手段により復号されたコンテンツ鍵を用いて復号する第1のコンテンツ復号手段と、第1のコンテンツ復号手段により復号されたコンテンツを、マスター鍵で復号する第2のコンテンツ復号手段とをさらに備えることを要旨とする。
本発明の第1の情報処理方法は、コンテンツの暗号化に係わる鍵を生成する生成ステップと、生成ステップにより生成された鍵の第1の情報処理装置への配布を制御する配布制御ステップと、生成ステップの処理で生成された鍵を、その鍵自身を鍵として暗号化する鍵暗号化ステップと、暗号化ステップの処理で暗号化された鍵の第2の情報処理装置への送信を制御する鍵送信制御ステップと、コンテンツを生成し、予め保持されているマスター鍵で暗号化するコンテンツ暗号化ステップと、コンテンツ暗号化ステップの処理で暗号化されたコンテンツの、第2の情報処理装置への送信を制御するコンテンツ送信制御ステップとを含むことを要旨とする。
本発明の第1のプログラムは、コンテンツの暗号化に係わる鍵を生成する生成ステップと、生成ステップにより生成された鍵の第1の情報処理装置への配布を制御する配布制御ステップと、生成ステップの処理で生成された鍵を、その鍵自身を鍵として暗号化する鍵暗号化ステップと、暗号化ステップの処理で暗号化された鍵の第2の情報処理装置への送信を制御する鍵送信制御ステップと、コンテンツを生成し、予め保持されているマスター鍵で暗号化するコンテンツ暗号化ステップと、コンテンツ暗号化ステップの処理で暗号化されたコンテンツの、第2の情報処理装置への送信を制御するコンテンツ送信制御ステップとを含む処理をコンピュータに実行させることを要旨とする。
本発明の第2の情報処理装置は、他の情報処理装置で生成され、その生成された鍵自身で暗号化された鍵を受信する鍵受信手段と、鍵受信手段により受信された鍵を管理する鍵管理手段と、他の情報処理装置で生成され、暗号化されたコンテンツを受信するコンテンツ受信手段と、コンテンツ受信手段により受信されたコンテンツを、コンテンツ暗号化鍵で暗号化するコンテンツ暗号化手段と、鍵管理手段で管理されている鍵を鍵として、コンテンツ暗号化鍵を暗号化するコンテンツ鍵暗号化手段と、コンテンツ暗号化手段により暗号化されたコンテンツ、コンテンツ鍵暗号化手段により暗号化されたコンテンツ暗号化鍵、および、コンテンツ鍵暗号化手段による暗号化に用いられた鍵を識別する鍵情報を公開エリアに公開する公開手段とを備えることを要旨とする。
本発明の第2の情報処理方法は、他の情報処理装置で生成され、その生成された鍵自身で暗号化された鍵の受信を制御する鍵受信制御ステップと、鍵受信制御ステップの処理で受信が制御された鍵を管理する鍵管理ステップと、他の情報処理装置で生成され、暗号化されたコンテンツの受信を制御するコンテンツ受信制御ステップと、コンテンツ受信制御ステップの処理で受信が制御されたコンテンツを、コンテンツ暗号化鍵で暗号化するコンテンツ暗号化ステップと、鍵管理ステップの処理で管理されている鍵を鍵として、コンテンツ暗号化鍵を暗号化するコンテンツ鍵暗号化ステップと、コンテンツ暗号化ステップの処理により暗号化されたコンテンツ、コンテンツ鍵暗号化ステップの処理により暗号化されたコンテンツ暗号化鍵、および、コンテンツ鍵暗号化ステップの処理による暗号化に用いられた鍵を識別する鍵情報を公開エリアに公開する公開ステップとを含むことを要旨とする。
本発明の第2のプログラムは、他の情報処理装置で生成され、その生成された鍵自身で暗号化された鍵の受信を制御する鍵受信制御ステップと、鍵受信制御ステップの処理で受信が制御された鍵を管理する鍵管理ステップと、他の情報処理装置で生成され、暗号化されたコンテンツの受信を制御するコンテンツ受信制御ステップと、コンテンツ受信制御ステップの処理で受信が制御されたコンテンツを、コンテンツ暗号化鍵で暗号化するコンテンツ暗号化ステップと、鍵管理ステップの処理で管理されている鍵を鍵として、コンテンツ暗号化鍵を暗号化するコンテンツ鍵暗号化ステップと、コンテンツ暗号化ステップの処理により暗号化されたコンテンツ、コンテンツ鍵暗号化ステップの処理により暗号化されたコンテンツ暗号化鍵、および、コンテンツ鍵暗号化ステップの処理による暗号化に用いられた鍵を識別する鍵情報を公開エリアに公開する公開ステップとを含む処理をコンピュータに実行させることを要旨とする。
本発明の情報処理システムにおいては、1の端末が生成した鍵が、自己を鍵として暗号化され、サーバに提供される。また、1の端末が生成したコンテンツは、マスター鍵で暗号化された状態で、サーバに提供される。サーバに提供された鍵やコンテンツは、サーバ側で管理される。他の端末は、サーバ側で管理されているコンテンツを取得し、復号することができる。
本発明の第1の情報処理装置および方法、並びにプログラムにおいては、生成された鍵に対し、自己を鍵とした暗号化が施される。コンテンツは、マスター鍵で暗号化される。暗号化された鍵やコンテンツは、他の情報処理装置に提供される。
本発明の第2の情報処理装置および方法、並びにプログラムにおいては、他の情報処理装置において、生成され、その生成された鍵に対し、自己を鍵とした暗号化が施された鍵が取得される。また、暗号化されたコンテンツも取得される。コンテンツは、さらにコンテンツ暗号化鍵により暗号化される。鍵やコンテンツは、管理される。
本発明によれば、コンテンツを管理するときに端末にかかる処理負荷を軽減させることができる。
以下に本発明の最良の形態を説明するが、開示される発明と実施の形態との対応関係を例示すると、次のようになる。明細書中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
さらに、この記載は、明細書に記載されている発明の全てを意味するものではない。換言すれば、この記載は、明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現し、追加されたりする発明の存在を否定するものではない。
本発明の情報処理システム(例えば、図1に示すシステム)は、コンテンツを公開する第1の端末(例えば、図1の端末21)、公開されているコンテンツを管理するサーバ(例えば、図1のサーバ11)、および、公開されているコンテンツを利用する第2の端末(例えば、端末22)を含む情報処理システムであって、第1の端末は、コンテンツの暗号化に係わる鍵を生成する生成手段(例えば、図5の鍵生成部131)と、生成手段により生成された鍵を、第2の端末に配布する配布手段(例えば、図5の鍵配布部133)と、生成手段により生成された鍵を、その鍵自身を鍵として暗号化する鍵暗号化手段(例えば、図5の鍵暗号化部132)と、暗号化手段により暗号化された鍵を、サーバに送信する鍵送信手段(例えば、図5の鍵送信部134)と、コンテンツを生成し、予め保持しているマスター鍵で暗号化する第1のコンテンツ暗号化手段(例えば、図5のコンテンツ暗号化部136)と、第1のコンテンツ暗号化手段により暗号化されたコンテンツを、サーバに送信するコンテンツ送信手段(例えば、図5のコンテンツ送信部138)とを備え、サーバは、鍵送信手段により送信された鍵を受信する鍵受信手段(例えば、図3の情報取得部81)と、鍵受信手段により受信された鍵を管理する鍵管理手段(例えば、図3の鍵管理部88)と、コンテンツ送信手段により送信されたコンテンツを受信するコンテンツ受信手段(例えば、図3の情報取得部81)と、コンテンツ受信手段により受信されたコンテンツを、コンテンツ暗号化鍵で暗号化する第2のコンテンツ暗号化手段(例えば、図3の暗号化部83)と、鍵管理手段で管理されている鍵を鍵として、コンテンツ暗号化鍵を暗号化するコンテンツ鍵暗号化手段(例えば、図3の暗号化部83)と、第2のコンテンツ暗号化手段により暗号化されたコンテンツ、コンテンツ鍵暗号化手段により暗号化されたコンテンツ暗号化鍵、および、コンテンツ鍵暗号化手段による暗号化に用いられた鍵を識別する鍵情報を公開エリアに公開する公開手段(例えば、図3のコンテンツ公開部86)とを備え、第2の端末は、配布手段により配布された鍵を取得し、記憶する鍵記憶手段(例えば、図5の鍵管理部140)と、公開手段により公開エリアに公開されているコンテンツ、コンテンツ暗号化鍵、および、鍵情報を取得する取得手段(例えば、図5の取得部139)と、取得手段により取得された鍵情報が示す鍵を、鍵記憶手段から読み出し、コンテンツ暗号化鍵を復号するコンテンツ鍵復号手段(例えば、図5の復号部142)と、取得手段により取得されたコンテンツを、コンテンツ鍵復号手段により復号されたコンテンツ鍵を用いて復号する第1のコンテンツ復号手段(例えば、図5の復号部142)と、第1のコンテンツ復号手段により復号されたコンテンツを、予め保持しているマスター鍵で復号する第2のコンテンツ復号手段(例えば、図5の復号部142)とを備える。
本発明の第1の情報処理装置は、コンテンツの暗号化に係わる鍵を生成する生成手段(例えば、図5の鍵生成部131)と、生成手段により生成された鍵を、第1の情報処理装置に配布する配布手段(例えば、図5の鍵配布部133)と、生成手段により生成された鍵を、その鍵自身を鍵として暗号化する鍵暗号化手段(例えば、図5の鍵暗号化部132)と、暗号化手段により暗号化された鍵を、第2の情報処理装置に送信する鍵送信手段(例えば、図5の鍵送信部134)と、コンテンツを生成し、予め保持しているマスター鍵で暗号化するコンテンツ暗号化手段(例えば、図5のコンテンツ暗号化部136)と、コンテンツ暗号化手段により暗号化されたコンテンツを、第2の情報処理装置に送信するコンテンツ送信手段(例えば、図5のコンテンツ送信部138)とを備える。
他の情報処理装置から配布された鍵を取得し、記憶する鍵記憶手段(例えば、図5の鍵管理部140)と、第2の情報処理装置の公開エリアに公開されている暗号化されているコンテンツ、コンテンツの暗号化に用いられたコンテンツ暗号化鍵、および、コンテンツ暗号化鍵の暗号化に用いられた鍵を識別する鍵情報を取得する取得手段(例えば、図5の取得部139)と、取得手段により取得された鍵情報が示す鍵を、鍵記憶手段から読み出し、コンテンツ暗号化鍵を復号するコンテンツ鍵復号手段(例えば、図5の復号部142)と、取得手段により取得されたコンテンツを、コンテンツ鍵復号手段により復号されたコンテンツ鍵を用いて復号する第1のコンテンツ復号手段(例えば、図5の復号部142)と、第1のコンテンツ復号手段により復号されたコンテンツを、マスター鍵で復号する第2のコンテンツ復号手段(例えば、図5の復号部142)とをさらに備える。
本発明の第2の情報処理装置は、他の情報処理装置で生成され、その生成された鍵自身で暗号化された鍵を受信する鍵受信手段(例えば、図3の情報取得部81)と、鍵受信手段により受信された鍵を管理する鍵管理手段(例えば、図3の鍵管理部88)と、他の情報処理装置で生成され、暗号化されたコンテンツを受信するコンテンツ受信手段(例えば、図3の情報取得部81)と、コンテンツ受信手段により受信されたコンテンツを、コンテンツ暗号化鍵で暗号化するコンテンツ暗号化手段(例えば、図3の暗号化部83)と、鍵管理手段で管理されている鍵を鍵として、コンテンツ暗号化鍵を暗号化するコンテンツ鍵暗号化手段(例えば、図3の暗号化部83)と、コンテンツ暗号化手段により暗号化されたコンテンツ、コンテンツ鍵暗号化手段により暗号化されたコンテンツ暗号化鍵、および、コンテンツ鍵暗号化手段による暗号化に用いられた鍵を識別する鍵情報を公開エリアに公開する公開手段(例えば、図3のコンテンツ公開部86)とを備える。
以下に、本発明の実施の形態について図面を参照して説明する。
[システムの構成について]
図1は、本発明を適用したシステムの一実施の形態の構成を示す図である。ネットワーク10は、WAN(Wide Area Network)やLAN(Local Area Network)などから構成される。また、ネットワーク10は、有線で構成されていても良いし、無線で構成されていても良いし、有線と無線が混在していても良い。さらに、ネットワーク10は、ブルートゥース(Bluetooth)や赤外線などを用いてデータの授受を行う近距離通信も含む。
ネットワーク10には、サーバ11と、端末21乃至25が接続されている。端末21乃至25は、それぞれ、サーバ11に、コンテンツ(データ)を管理させ、その管理しているコンテンツを他の端末に公開させる機能を有する。
サーバ11は、比較的大容量な記憶領域を有し、計算能力を有し、端末21乃至25がアクセスできる装置であればよい。サーバ11は、例えば、家庭内ネットワークにおけるサーバでも良いし、共有して複数のユーザが利用する専用のサーバでも良い。
なお、図1においては、端末として端末21乃至25を図示したが、ネットワーク10には、さらに多くの端末が接続されている。また、サーバも、サーバ11だけでなく、複数のサーバがネットワーク10に接続されるようにしても良い。
[サーバの構成例]
図2は、サーバ11の内部構成例を示す図である。サーバ11は、パーソナルコンピュータなどで構成することができる。サーバ11のCPU(Central Processing Unit)41は、ROM(Read Only Memory)42に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)43には、CPU41が各種の処理を実行する上において必要なデータやプログラムなどが適宜記憶される。入出力インタフェース45は、キーボードやマウスから構成される入力部46が接続され、入力部46に入力された信号をCPU41に出力する。また、入出力インタフェース45には、ディスプレイやスピーカなどから構成される出力部47も接続されている。
さらに、入出力インタフェース45には、ハードディスクなどから構成される記憶部48、および、インターネットなどのネットワークを介して他の装置(例えば、端末21)とデータの授受を行う通信部49も接続されている。ドライブ50は、磁気ディスク61、光ディスク62、光磁気ディスク63、半導体メモリ64などの記録媒体からデータを読み出したり、データを書き込んだりするときに用いられる。
図3は、サーバ11が有する機能について説明する図である。サーバ11は、ネットワーク10を介して端末21乃至25から、それぞれ供給される情報(コンテンツや鍵)を取得する情報取得部81を有する。情報取得部81により取得された情報は、蓄積部82に一旦蓄積される。
蓄積部82に蓄積された情報のうちコンテンツは、暗号化部83に供給され、保持部84に保持されている(必要に応じ生成される)鍵により、暗号化され、コンテンツ管理部85に管理される。コンテンツ管理部85に管理されている情報は、コンテンツ公開部86により、コンテンツの公開を要求してきた端末に対して公開される。内部データベース87は、コンテンツ管理部85で管理されているコンテンツが登録された日時、変更された日時、端末側からのデータなどに関するデータを管理する。
ここで、“データの公開”とは、1の端末から供給され、サーバ11で管理されているコンテンツを、他の端末が取得し、正当な権利を有していれば利用できる状態とされていることであるとする。換言すれば、サーバ11で管理されているコンテンツを認証などの処理をしなくても取得できる状態にされているコンテンツを、公開されているコンテンツと称する。
蓄積部82に蓄積されている情報のうち、鍵に関する情報は、鍵管理部88に供給され、管理される。
[端末の構成例]
次に、端末21乃至25の構成について説明する。端末21乃至25は、それぞれパーソナルコンピュータで構成することができる。また、各端末21乃至25は、基本的に同様な構成とすることができるので、ここでは、端末21を例に挙げて説明を加える。
図4は、端末21の内部構成例を示す図である。端末21のCPU101は、ROM102に記憶されているプログラムに従って各種の処理を実行する。RAM103には、CPU101が各種の処理を実行する上において必要なデータやプログラムなどが適宜記憶される。入出力インタフェース105は、キーボードやマウスから構成される入力部106が接続され、入力部106に入力された信号をCPU101に出力する。また、入出力インタフェース105には、ディスプレイやスピーカなどから構成される出力部107も接続されている。
さらに、入出力インタフェース105には、ハードディスクなどから構成される記憶部108、および、インターネットなどのネットワークを介して他の装置(例えば、サーバ11)とデータの授受を行う通信部109も接続されている。ドライブ110は、セットされた記録媒体からデータを読み出したり、データを書き込んだりするときに用いられる。
図5は、端末21が有する機能について説明する図である。鍵生成部131は、コンテンツの暗号化に用いられる鍵を生成する。鍵生成部131により生成された鍵は、鍵暗号化部132により、暗号化される。暗号化された鍵は、鍵配布部133または鍵送信部134に供給される。鍵配布部133は、他の端末に対して鍵を配布するための処理を実行し、鍵送信部134は、サーバ11に対して鍵を送付する処理を実行する。
鍵暗号化部132は、鍵配布部133に鍵を供給する場合と、鍵送信部134に鍵を供給する場合とで、その暗号化の方式(用いる鍵など)を変更する。
コンテンツ生成部135は、コンテンツを生成する。生成されたコンテンツは、コンテンツ暗号化部136に供給される。コンテンツ暗号化部136は、コンテンツ生成部135から供給されたコンテンツを、マスター鍵保持部137により保持されているマスター鍵を用いて暗号化する。コンテンツ暗号化部136により暗号化されたコンテンツは、コンテンツ送信部138により、サーバ11に対して送信される。
取得部139は、他の端末から配布された鍵や、サーバ11で公開されている他の端末のコンテンツを取得する。取得部139は、他の端末からの鍵を取得した場合、鍵管理部140に、その取得した鍵を供給し、管理させる。取得部139は、サーバ11で公開されているコンテンツを取得した場合、コンテンツ管理部141に、その取得したコンテンツを供給し、管理させる。また、取得部139は、コンテンツの暗号化に用いられた鍵などの情報も取得し、その情報を、復号部142に供給する。
コンテンツ管理部141に管理されているコンテンツは、暗号化されており、端末21が、正当な権限を有していれば、鍵管理部140に管理されている鍵で復号することができる。復号部142は、鍵管理部140で管理されている鍵を用いて、コンテンツ管理部141で管理されているコンテンツを復号し、ディスプレイやスピーカなどから構成される出力部107(図4)に供給する。
情報送受信部143は、コンテンツIDを送信したり、その送信に対応してサーバ11側から送信されてきたコンテンツを受信したりする。
[システムの動作について]
次に、図6のフローチャートを参照し、図1に示したシステムの動作について説明する。図6に示したフローチャートの説明では、サーバ11、端末21、端末22の間で行われる動作を例に挙げて説明する。また、ここでは、端末21がコンテンツを公開する側であり、端末22が、そのコンテンツを利用する側であるとして説明をする。なお、サーバ11、端末21、端末22の各装置における詳細な動作については、後述するため、ここでは、簡便に説明を加える。
また、図6のフローチャートにおける処理の順番は、適宜変更可能であり、図6に示した処理の流れに限定されることを示すものではない。
ステップS11において、端末21は、鍵の配布に関する処理を実行する。この鍵の配布に関する処理は、生成された鍵を暗号化し、他の端末に配布する処理を含む。
ステップS51において、端末22は、鍵の記憶に関する処理を実行する。この鍵の記憶に関する処理は、端末21側のステップS11に対応する処理として実行され、その処理としては、受信された鍵を復号し、記憶するといった処理を含む。
ステップS12において、端末21は、端末側の鍵に関する処理を実行する。この端末側の鍵に関する処理は、暗号化に用いる鍵の生成、その鍵をサーバに送付するための暗号化の処理などを含む。
ステップS31において、サーバ11は、サーバ側の鍵に関する処理を実行する。このサーバ側の鍵に関する処理は、端末21側のステップS12に対応する処理として実行され、その処理としては、端末21側からの鍵を受信し、登録するといった処理を含む。
ステップS13において、端末21は、端末側のコンテンツに関する処理を実行する。この端末側のコンテンツに関する処理は、他の端末に対して公開するコンテンツを生成し、暗号化し、サーバ11に対して送信するといった処理を含む。
ステップS32において、サーバ11は、サーバ側のコンテンツに関する処理を実行する。このサーバ側のコンテンツに関する処理は、端末21側のステップS13に対応する処理として実行され、その処理としては、受信されたコンテンツをさらに暗号化し、管理するといった処理を含む。
ステップS52において、端末22は、コンテンツの利用に関する処理を実行する。このコンテンツの利用に関する処理は、サーバ11に登録されている他の端末が公開しているコンテンツを、サーバ11から取得し、復号し、利用する処理を含む。
ステップS14において、端末21は、端末側の所定の端末の排除に関する処理を実行する。この端末側の所定の端末の排除に関する処理は、端末21がコンテンツを公開するとして設定した端末から所定の端末を排除する(コンテンツを公開しないと設定する)ために、その排除する端末の情報を、サーバ11に送信する処理を含む。
ステップS33において、サーバ11は、サーバ側の所定の端末の排除に関する処理を実行する。このサーバ側の所定の端末の排除に関する処理は、端末21側のステップS14に対応する処理として実行され、その処理としては、端末22から要求された排除対象の端末に関する情報を受信し、その情報が示す端末を排除するための処理を含む。
ステップS15において、端末21は、端末側の情報の参照に関する処理を実行する。この端末側の情報の参照に関する処理は、自己がサーバ11に対してどのようなコンテンツを登録させたかなどを確認する際に行われる処理であり、参照したいコンテンツのIDなどを送付する処理を含む。
ステップS34において、サーバ11は、サーバ側の情報の参照に関する処理を実行する。このサーバ側の情報の参照に関する処理は、端末21側のステップS15に対応する処理として実行され、その処理としては、端末21から要求された参照対象のコンテンツのIDを受信し、そのIDに対応するコンテンツを読み出し、送信するといった処理を含む。
ステップS16において、端末21は、端末側の情報の削除に関する処理を実行する。この端末側の情報の削除に関する処理は、自己がサーバ11に対して登録させたコンテンツから所定のコンテンツを削除する際に行われる処理であり、削除したいコンテンツを送付する処理を含む。
ステップS35において、サーバ11は、サーバ側の情報の削除に関する処理を実行する。このサーバ側の情報の削除に関する処理は、端末21側のステップS16に対応する処理として実行され、その処理としては、端末21から削除が要求されたコンテンツを受信し、そのコンテンツを削除するといった処理を含む。
このようなサーバ11、端末21、端末22で行われる処理の詳細について、それぞれフローチャートを参照しながら以下に説明を加える。
[鍵の配布に関する処理について]
ステップS11において、端末21側で実行される鍵の配布に関する処理について図7のフローチャートを参照して説明する。ステップS101において、端末21の鍵生成部131(図5)は、やり取りするユーザ数の概算を決定する。
“やり取りするユーザ数”とは、端末21が生成したコンテンツを公開する先の端末(その端末を管理するユーザ)の数のことである。また“ユーザ数の概算”とは、生成される鍵が、図8を参照して後述するように、2を累乗した数になるためであり、また、生成された後の時点で、新たにやり取りしたいユーザが増える(または減る)ことも考えられるため、その時点におけるおおよその数が決定されればよいということを意味している。
ステップS102において、鍵生成部131は、ステップS101において決定されたユーザ数に対応する数の鍵を生成する。ステップS102における処理が実行されることにより生成される鍵の一例を、図8に示す。鍵生成部131(図5)により生成される鍵は、例えば、図8に示すようなバイナリツリー(binary tree)状の鍵である。鍵生成部131により生成された鍵は、後述する鍵配布部133の処理により、この場合、端末22乃至25に、それぞれ配布される。
図8に示したバイナリツリー状の鍵について説明を加える。バイナリツリー状の鍵とは、1つの鍵の下に2つの鍵が関連付けられ、その2つの鍵のそれぞれに、2つの鍵が関連付けられといったような構成を有する鍵であり、それぞれの鍵は、暗号化をする際(または復号する際)の鍵として用いられる鍵である。またバイナリツリー状の鍵は、その構造から、全部で(2n―1)個の鍵から構成される。このnは、鍵の階層の段数を表す。また、一番下の階層の鍵の個数は、(2n-1)個である。
図8に示した端末21が生成するバイナリツリー状の鍵は、例えば、鍵161に鍵162と鍵163が、鍵162に鍵164と鍵165が、鍵163に鍵166と鍵167が、それぞれ関連付けられた構造とされている。また、例えば、第1階層には鍵161が、第2階層には鍵162と鍵163が、第3階層には鍵164乃至167が、第4階層には鍵168乃至175が、第5階層には鍵176乃至191が、それぞれ配置されている。
この図8に示した鍵構造では、段数が5とされているため、全部で31(=25―1)個の鍵から構成されている。また、一番下の階層、すなわち、第5階層の鍵の個数は、16(=25-1)個とされている。
なおここでは、第1階層から階層が始まるとして説明を続けるが、第0階層から階層が始まるとしても良い。第0階層から階層が始まるとして設定された場合、上記した式など、その設定に合わせて適宜変更される。また、以下の説明においては、バイナリツリー状の鍵の中の1つの鍵を、鍵KEKと適宜表記する。
ステップS102において鍵生成部131により生成された、例えば、図8に示すような鍵は、鍵暗号化部132に供給される。鍵暗号化部132は、ステップS103において、供給された鍵を暗号化する。ステップS104において、鍵暗号化部132により暗号化された鍵は、鍵配布部133に供給され、他の端末に対して配布される。
鍵の配布は、直接的に、例えば、ブルートゥースや赤外線による近距離通信や、USBなどで直接端末同士を接続して行う通信で、鍵を配布する場合、第3者に取得されてしまう可能性が低いので(盗用される可能性が低いので)、鍵をそのままの状態で、配布してもよい。しかしながら、ネットワーク10(図1)を介して配布する場合、第3者に取得されてしまう可能性があるため、仮に第3者に取得されてしまっても、その第3者が、取得した鍵を利用できないように、暗号化した状態で、鍵を配布する方が好ましい。
そこで、ステップS103において、鍵の暗号化が行われる。暗号化の方式などは、どのような方式を用いても良い。
端末21の鍵生成部131により、図8に示すような、第1乃至第5階層から構成されるバイナリツリー状の鍵が生成され、暗号化が施された鍵は、鍵配布部133により他の端末に配布される。他の端末に配布されるのは、生成された鍵の一部分である。また、ここでは、鍵の配布される他の端末とは、端末22乃至25のことであるとする。
ここでは、端末22には、鍵161、鍵162、鍵164、鍵168、および鍵176がセットで配布されるとする。また端末23には、鍵161、鍵162、鍵164、鍵168、および鍵177がセットで配布されるとする。また端末24には、鍵161、鍵162、鍵164、鍵169、および鍵178がセットで配布されるとする。また端末25には、鍵161、鍵162、鍵164、鍵169、および鍵179がセットで配布されるとする。
このように、端末21で生成された鍵は、第1階層乃至第5階層の鍵がそれぞれセットにされた状態で、端末22乃至25に配布される。なお、以下の説明においては、この配信される鍵のセットを鍵KEKセットと称する。
鍵配布部133は、他の端末に鍵を配布する際、その配布先の端末(ユーザ)を識別するためのユーザIDを付与(生成)し、そのユーザIDも鍵KEKセットととともに、配布する。なお、ユーザIDは、ユーザIDだけでは第3者に仮に取得されてしまっても、問題が発生する可能性は低いため、暗号化しないで配布しても良い。
[鍵の記憶に関する処理について]
端末21において、図7に示したような処理が実行されることにより、端末22に対して鍵が配布されると、端末22は、鍵の記憶に関する処理(図6のステップS51に対応する処理)を実行する。この鍵の記憶に関する処理について、図9のフローチャートを参照して説明する。
ステップS121において、端末22は、端末21からの鍵KEKセットとユーザIDを受信する。端末22も、端末21と同じ機能を有し、図5に示しような機能を有する。端末22の取得部139’(端末21の取得部139と区別を付けるために、ダッシュを付けて記述する。他の部分も同様に記述する)は、ステップS121において、端末21からの鍵KEKセットとユーザIDを受信すると、受信したのは鍵であると判断し、鍵管理部140’に対して、受信された鍵とIDを供給する。
鍵管理部140’は、ステップS122において、供給された鍵KEKセットとユーザIDを記憶(管理)する。
図10は、端末22の鍵管理部140’に記憶されている鍵KEKセットとユーザIDの一例を示す図である。端末22の鍵管理部140’には、ユーザID211と鍵KEKセット221が関連付けられて管理され、ユーザID212と鍵KEKセット222が関連付けられて管理されている。
例えば、ユーザID211と鍵KEKセット221は、端末21から配布されたユーザIDと鍵KEKセットであるために、関連付けられて管理されている。
鍵管理部140’には、このようにして、複数の他の端末から配布され、供給された鍵が管理されている。
[端末側の鍵に関する処理について]
次に、端末21で行われる端末側の鍵に関する処理(図6のステップS12に対応する処理)について、図11のフローチャートを参照して説明する。端末21は、鍵を生成した場合、他の端末に配布する(図7のフローチャートに基づく処理)だけなく、サーバ11に対しても送信するといった処理を行う。
ステップS141において、鍵暗号化部132(図5)は、鍵生成部131により生成された、例えば、図8に示したバイナリツリー状の鍵を暗号化する。このステップ141が行われる前提として、鍵生成部131により鍵が生成されている(図7のステップS101とステップS102の処理が行われている)必要がある。
換言すれば、鍵生成部131により鍵が生成された場合、他の端末に対して鍵を配布する処理と、サーバ11に対して鍵を送信する処理とが行われ、その順序は問題ではない。すなわち、鍵が生成された場合、その鍵を他の端末に配布した後に、サーバ11に対して送信しても良いし、サーバ11に対して送信した後に、他の端末に配布するようにしても良いし、サーバ11と他の端末に同時に送信(配布)するようにしても良い。
ステップS141において、鍵生成部131により生成された鍵が、鍵暗号化部132により暗号化される。このステップS141における暗号化の処理は、ネットワーク10(図1)を介して、端末21からサーバ11に対して鍵が送付されるときに、第3者に取得されてしまったとしても、その第3者が取得した鍵を利用できないようにするという目的もあるが、次に示す目的もある。
すなわち、後述するように、端末21側で生成された鍵は、サーバ11で管理されるが、サーバ11で管理されている状態のときに鍵が第3者に取得されてしまう可能性があり、仮に第3者に取得されてしまったとしても、その第3者が取得した鍵を利用できないようにするという目的もある。
ステップS141において行われる鍵の暗号化は、次に説明するようにして行われる。すなわち、図8に示したようなバイナリツリー状の鍵が生成された場合、31個の鍵が存在するわけだが、この31個の鍵が、それぞれ、自己を自己で暗号化するといった方法で、暗号化が行われる。
これは、この鍵自身をサーバ11側に知られることを防ぐことで、サーバ11を使わない端末間の直接的な送受信においても、同一の鍵セットを利用することを可能とするためである。
例えば、図8に示した鍵161は、鍵161が用いられて暗号化される。以下、図8に示した鍵のうちの1つの鍵を表したいときには、例えば、鍵161を表したときには、鍵KEK161と記述する。
このように、鍵KEK161が鍵KEK161で暗号化されることを、E(鍵KEK161,鍵KEK161)と表記する。一般的に記載するならば、AをBで暗号化(Encryption)するとき、
E(B,A)
と記載する。以下の説明においては、何が何に対して暗号化されるのかということを表現するのに、上記したような表記を行う。
すなわち、ステップS141における暗号化は、鍵KEK毎に、
E(鍵KEK、鍵KEK)
とされる暗号化である。
ステップS141において、鍵暗号化部132により、バイナリツリー状の鍵が、それぞれ自己を鍵とする暗号化が行われると、その暗号化された鍵は、鍵送信部134に供給される。鍵送信部143は、ユーザIDを生成する。このユーザIDは、鍵配布部133が鍵を配布するときに生成したユーザIDと共用することができる。すなわち、鍵を管理するサーバ11側で、バイナリツリー状の鍵のうち、どの鍵がどの端末に割り当てられているのか(配布されたのか)が識別できる情報として、ユーザIDが用いられる。
ユーザIDは、どの鍵KEKがどの端末に割り当てられているかだけが判別できれば良い情報である。そのようなユーザIDが、ステップS142の処理として生成される。なお、ここでは、生成されるとしたが、この処理の前の時点で、鍵が他の端末に配布され、その時点で、ユーザIDが生成されていれば、そのユーザIDを流用して良い。
鍵送信部134は、ステップS143において、暗号化された鍵KEKとユーザIDを、サーバ11に対して送信する。
このようにして、端末21側で生成された鍵KEKは、サーバ11に対して暗号化された状態で、送信される。端末21側では、サーバ11に対して鍵KEKを送信するまで、生成した鍵KEKを保持しておく必要があるが、送信した後は、生成した鍵KEKを削除してしまっても良い。
鍵KEKを削除しても良いということは、端末21側で、鍵KEKを管理しなくてもよいことを意味し、鍵KEKを管理しなければ、鍵KEKを管理するために必要となる記憶容量を削減することができる。なお、端末21側では、どの端末にどの鍵KEKを配布したか(サーバ11側に送付したユーザID)は、管理している。
[サーバ側の鍵に関する処理について]
端末21において、図11に示したような処理が実行されることにより、サーバ11に対して鍵KEKが送信されると、サーバ11は、サーバ側の鍵に関する処理(図6のステップS31に対応する処理)を実行する。図12のフローチャートを参照し、サーバ11側の鍵に関する処理について説明する。
サーバ11の情報取得部81(図3)は、ステップS161において、端末21側から送信されてきた鍵KEKとユーザIDを受信する。情報取得部81は、受信された鍵KEKとユーザIDを一旦蓄積部82に蓄積させる。蓄積部82に蓄積された鍵KEKとユーザIDは、ステップS162において、鍵管理部88に供給され、管理される。
このようにして、サーバ11側で、端末21が生成した鍵KEKが、暗号化されている状態で管理される。また、その暗号化されている鍵KEKは、どの鍵KEKがどの端末に対して割り当てられているかを識別するためのユーザIDとともに管理されている。
[端末側のコンテンツに関する処理について]
次に、端末21で行われる端末側のコンテンツに関する処理(図6のステップS13に対応する処理)について、図13のフローチャートを参照して説明する。
端末21のコンテンツ生成部135(図5)は、コンテンツを生成する。ここでコンテンツとは、映像データ、音声データ、プログラムなど、端末21側で管理することができる種々のデータを含む意味である。
生成されたコンテンツは、コンテンツ暗号化部136に供給される。コンテンツ暗号化部136は、ステップS182において、供給されたコンテンツを、マスター鍵保持部137で保持されているマスター鍵MKで暗号化する。
マスター鍵MKは、ユーザ間(端末間)で共有されている鍵であるとする。この場合、マスター鍵MKは、端末21乃至25の間で、共有されている鍵である。また、このマスター鍵MKは、端末に埋め込まれている。“端末に埋め込まれている”とは、端末のユーザが読み出すことができない(取り出して他の目的で利用することができない)状態にされていることを意味する。このようなことを、適宜、マスター鍵MKは安全な領域に保持されていると記述する。
ここで、コンテンツをコンテンツCとし、マスター鍵をマスター鍵MKとすると、
E(マスター鍵MK、コンテンツC)
となる。
このような暗号化は、コンテンツ毎に行われる。例えば、コンテンツC1、コンテンツC2、コンテンツC3と3つのコンテンツが生成され、暗号化される場合、
E(マスター鍵MK、コンテンツC1)
E(マスター鍵MK、コンテンツC2)
E(マスター鍵MK、コンテンツC3)
という3つの暗号化されたコンテンツが生成されることになる。
ステップS183において、使用する鍵KEKのIDが設定される。暗号化したコンテンツを、どの端末(ユーザ)に公開するかにより、この鍵KEKのIDが設定される。例えば、鍵KEK161(図8)を配布した端末に対してコンテンツを公開する場合、鍵KEK161のIDが設定される。
鍵KEKのIDとしては、再度図8を参照するに、バイナリツリー状のどの鍵を用いて暗号化されているかがわかれば良く、鍵そのものを指定できるIDでも良いし、第n階層の鍵が暗号化に用いられたかがわかるIDでも良い。例えば、第5階層の鍵が暗号化に用いられた場合、IDとして“5”とだけ設定するようにしても良い。
ステップS184において、公開先のユーザのリストが作成される。コンテンツを公開する先のユーザ(端末)が設定され、その設定されたユーザのユーザIDが列挙されたものを公開先リストとする。ステップS184においては、この公開先リストが作成される。
ステップS185において、鍵KEKのID、コンテンツ暗号化部136で暗号化されたコンテンツ、および、このコンテンツを公開する先の公開先リストは、コンテンツ送信部138により、サーバ11に対して送信される。コンテンツは暗号化されているため、仮に、送信中に第3者に取得されてしまったとしても、その第3者が、コンテンツを利用することはできない。
このようにして、端末21側で生成されたコンテンツが、サーバ11側に送信される。
「サーバ側のコンテンツに関する処理について」
端末21において、図13に示したような処理が実行されることにより、サーバ11に対してコンテンツが送信されると、サーバ11は、サーバ側のコンテンツに関する処理(図6のステップS32に対応する処理)を実行する。図14のフローチャートを参照し、サーバ11側のコンテンツに関する処理について説明する。
ステップS201において、サーバ11の情報取得部81(図3)は、端末21側から送信されてきたコンテンツ、鍵KEKのID、公開先リストを受信する。受信されたこれらのデータは、蓄積部82に供給され、一旦蓄積される。暗号化部83は、ステップS202において、蓄積部83に蓄積されているコンテンツを暗号化するためのコンテンツ暗号化鍵を設定する。暗号化部83は、例えば、乱数を発生させ、その乱数をコンテンツ暗号化鍵と設定する。ここでは、コンテンツ暗号化鍵を、コンテンツ暗号化鍵CKと記述する。
暗号化部83は、ステップS203において、設定されたコンテンツ暗号化鍵CKで、蓄積部82に蓄積されているコンテンツ(端末21から送信されてきたコンテンツ)を暗号化する。この処理により
E(コンテンツ暗号化鍵CK、E(マスター鍵MK、コンテンツC))
が生成される。上記したように、端末21から送信されてくるコンテンツは、マスター鍵MKにより暗号化されており、その暗号化されているコンテンツを、さらに、コンテンツ暗号化鍵CKで暗号化することになる。
このようにして2重に暗号化されたコンテンツは、コンテンツ管理部85に供給され、管理される。
暗号化部83は、ステップS204において、コンテンツ暗号化鍵CKを、コンテンツ提供側の鍵(この場合、端末21の鍵)で暗号化する。換言すれば、コンテンツ暗号化鍵CKを、端末21の鍵KEKで暗号化する。そのための鍵KEKが、ステップS204において設定される。
この鍵KEKは、鍵管理部88に管理されている。この鍵管理部88に管理されている鍵KEKは、自己を鍵として自己を暗号化したデータであり、上記したように、
E(鍵KEK、鍵KEK)
という状態で管理されている。鍵管理部88には、バイナリツリー状の鍵が管理されているため、1つの鍵KEKを設定するためには、何らかの情報が必要である。その情報は、ここでは、端末21側から送信されてきた鍵KEKのIDであるとする。
すなわち、コンテンツを暗号化する鍵として、端末21側から送信され、蓄積部82に蓄積された鍵KEKのIDが示す鍵KEKが、鍵管理部88から読み出され、コンテンツ暗号化鍵CKの暗号化に用いられる。
鍵KEKのIDが示す鍵KEKが、鍵161(図8)である場合、E(鍵KEK161、鍵KEK161)が用いられて、コンテンツ暗号化鍵CKが暗号化される。
ステップS205において、E(鍵KEK、鍵KEK)を鍵とする暗号化が行われる。ステップS205の処理が行われることにより、
E(E(鍵KEK、鍵KEK)、コンテンツ暗号化鍵CK)
が生成される。
暗号化部83は、暗号化したコンテンツ暗号化鍵CKをコンテンツ管理部85に供給し、管理させる。コンテンツ管理部85には、暗号化されたコンテンツ、そのコンテンツを暗号化したコンテンツ暗号化鍵CK、そのコンテンツ暗号化鍵CKを暗号化した鍵KEKを識別するための鍵KEKのIDが管理される。このように、コンテンツ管理部85に管理されているコンテンツは、端末が、供給を要求してきたときに、その端末に対して供給される。このような状態を、上記したように公開と称する。
そして、他の端末がアクセスできるサーバ11内のエリアを公開エリアと称する。その公開エリアは、コンテンツ管理部85に設けられている(コンテンツ管理部85である)。コンテンツ管理部85で管理され、他の端末に公開された状態にすることを公開エリアに公開すると記述する。ステップS206において、コンテンツ管理部85で管理されているコンテンツが公開エリアに公開される。
ステップS207において、内部データベース87の内容が更新される。内部データベース87には、コンテンツが登録された日時などが管理されており、その日時などのデータが適宜更新される。
図15は、サーバ11のコンテンツ管理部85に管理されているデータについて説明するための図である。コンテンツ管理部85には、鍵KEKのID241とコンテンツ暗号鍵CK242が関連付けられて管理されている。このコンテンツ暗号化鍵CK242で暗号化されているコンテンツは、1つのグループとして管理されている。図15に示した例では、コンテンツ251乃至253という3つのコンテンツが、1グループとして管理されている。
このグループに属するコンテンツ251乃至253が公開されているユーザを示す公開先リスト261も、あわせて管理されている。
コンテンツ管理部85には、このようなグループが、複数管理されている。サーバ11は、コンテンツを公開すると、その公開しているコンテンツの提供を端末側から要求される状態となる。
[コンテンツの利用に関する処理について]
次に、端末22で行われるコンテンツの利用に関する処理(図6のステップS52に対応する処理)について、図16のフローチャートを参照して説明する。
ステップS241において、端末22の取得部139’(図5)は、サーバ11にアクセスし、暗号化されたコンテンツと鍵KEKを取得する。
受信された鍵KEKのID、コンテンツ暗号化鍵CK、コンテンツは、復号部142’に供給される。なお、これらの全てのデータまたは一部のデータは、一旦、コンテンツ管理部141’に蓄積された後に、必要に応じて復号部142’に供給されるようにしても良い。
ステップS245において、復号部142’は、供給されたコンテンツ暗号化鍵CKを復号する。コンテンツ暗号化鍵CKは、サーバ11側で、乱数が発生されることにより生成された鍵であり、鍵KEKにより暗号化されている(図14のステップS202とステップS203の処理)。よって、復号部142’に供給されるコンテンツ暗号化鍵CKは以下のような暗号化されているデータである。
E(E(鍵KEK、鍵KEK)、コンテンツ暗号化鍵CK)
すなわち、E(鍵KEK、鍵KEK)を鍵として暗号化されたコンテンツ暗号化鍵CKが、復号部142’に供給される。このE(鍵KEK、鍵KEK)は、鍵KEKを鍵として鍵KEKを暗号化したデータであり、この鍵KEKは、端末22側で、ステップS122(図9)の処理として、端末21側から配布され、鍵管理部140’で管理されている。
端末22には、例えば、図8を参照して説明したように、鍵161、鍵162、鍵164、鍵168、および鍵176がセットで配布されている。配布される際、暗号化が施されて配布されるとして説明したが、端末22側に配布された時点で、復号され、端末22では、復号された鍵KEKのセットが管理されている。
鍵管理部140’には、図17に示すような鍵KEKセット221が管理されている。すなわちこの場合、鍵KEKセット221として、鍵KEK161、鍵KEK162、鍵KEK164、鍵KEK168、および、鍵KEK176が管理されている。
このように、鍵管理部140には、複数の鍵が管理されているため、どの鍵を用いて復号を行うかの情報も、コンテンツ暗号化鍵CKと共に供給される。このどの鍵を用いて復号を行うかの情報は、鍵KEKのIDである。復号部142’は、供給された鍵KEKのIDを参照し、鍵管理部140に管理されている鍵KEKのセットから1つの鍵KEKを読み出す。
例えば、鍵KEKのIDが鍵KEK161を示すものであった場合、鍵KEKセット221から、鍵KEK161が読み出される。
読み出された鍵KEKが用いられてコンテンツ暗号化鍵CKの復号が行われる。復号部142’に供給されるコンテンツ暗号化鍵CKは、上記したように、
E(E(鍵KEK、鍵KEK)、コンテンツ暗号化鍵CK)
と暗号化されている。この暗号化されているコンテンツ暗号化鍵CKを復号するために、鍵管理部140’で管理されている鍵KEKが用いられる。
ここで、読み出された鍵KEKが、
鍵KEK161
であり場合、かつ、コンテンツ暗号化鍵CKが、
E(E(鍵KEK161、鍵KEK161)、コンテンツ暗号化鍵CK)
であった場合、コンテンツ暗号化鍵CKの暗号化に用いられた鍵KEK(鍵KEK161)と読み出された鍵KEK(鍵KEK161)が同一であるので、読み出された鍵KEKを用いて、正常にコンテンツ暗号化鍵CKの復号が行われる。
しかしながら、例えば、読み出された鍵KEKが、
鍵KEK161
であり場合、かつ、コンテンツ暗号化鍵CKが、
E(E(鍵KEK162、鍵KEK162)、コンテンツ暗号化鍵CK)
であった場合、コンテンツ暗号化鍵CKの暗号化に用いられた鍵KEK(鍵KEK162)と読み出された鍵KEK(鍵KEK161)が同一ではないので、読み出された鍵KEKを用いて、正常にコンテンツ暗号化鍵CKを復号することができない。
端末22が、端末21から正当に鍵KEKを配布されていれば(排除されたりしていなければ)、コンテンツ暗号化鍵CKに用いられた鍵KEKを管理しているため、上記したようなコンテンツ暗号化鍵CKを復号できないといった状況が発生する可能性はないが、正当に鍵KEKが配布されていなければ発生する可能性がある。
そこで、コンテンツ暗号化鍵CKが正当(正常)に復号できたか否かが、ステップS246において判断される。コンテンツ暗号化鍵CKが正常に復号できたか否かを判断する前の段階で、
E(E(鍵KEK、鍵KEK)、コンテンツ暗号化鍵CK)
に含まれる
E(鍵KEK、鍵KEK)
を復号し、その復号された鍵KEKと、鍵KEKのIDに対応し、鍵管理部88から読み出される鍵KEKが一致しているか否かを確認することができ、一致すれば正当であると判断することができる。
このような、復号された鍵KEKと読み出された鍵KEKが一致するか否かを判断することにより、サーバ11側で行われた暗号化自体が正当であるか否かを判断することができる。仮に、一致しなければ、何らかの不正な処理が行われた可能性があり、そのようなサーバ11は利用しないようにするといった処理を行うことが可能となる。
ステップS246において正常にコンテンツ暗号化鍵CKの復号ができたと判断された場合、ステップS247に処理が進められるが、正常にコンテンツ暗号化鍵CKの復号ができなかったと判断された場合、図16のフローチャートの処理は終了される。
ステップS247において、正常に復号されたコンテンツ暗号化鍵CKが用いられ、暗号化されているコンテンツが復号される。復号部142’に供給されるコンテンツは、サーバ11側でステップS203(図14)において、暗号化されているため、
E(コンテンツ暗号化鍵CK、E(マスター鍵MK、コンテンツC))
という状態のデータとされている。
ステップS247においては、まず、復号されたコンテンツ暗号化鍵CKで、E(コンテンツ暗号化鍵CK、E(マスター鍵MK、コンテンツC))が復号される(コンテンツの復号1とする)。この復号が行われることにより、E(マスター鍵MK、コンテンツC)が取り出される。
次に、ステップS248において、コンテンツの復号2が実行される。このコンテンツの復号2では、マスター鍵MKを鍵として復号が行われる。この復号が行われることにより、コンテンツCが取り出される。
このようにして、暗号化されているコンテンツの復号が行われる。
図18を参照し、再度、コンテンツの利用に関する処理について説明を加える。図18において、“ID”との記載は、鍵KEKのIDのことを意味し、“KEK”との記載は、鍵KEKのことを意味し、“CK”との記載は、コンテンツ暗号化鍵CKのことを意味し、“MK”との記載は、マスター鍵MKのことを意味し、“C”との記載は、コンテンツCのことを意味する。
ステップS242において受信された鍵KEKのIDに対応する
鍵KEK
が、鍵管理部140の鍵KEKのセットから読み出される。
ステップS243において受信された
E(E(鍵KEK、鍵KEK)、コンテンツ暗号化鍵CK)
に対して、
鍵KEK
を鍵とした復号が、ステップS244において行われる。
ステップS244における復号により、
コンテンツ暗号化鍵CK
が取り出される。
ステップS243において受信された
E(コンテンツ暗号化鍵CK、E(マスター鍵MK、コンテンツC))
に対して、
コンテンツ暗号化鍵CK
を鍵とした復号が、ステップS246において行われる。
ステップS246における復号により、
E(マスター鍵MK、コンテンツC)
が取り出される。
ステップS246において取り出された
E(マスター鍵MK、コンテンツC)
に対して、マスター鍵保持部137で保持されている
マスター鍵KM
を鍵とした復号が、ステップS247において行われる。
ステップ247における復号により、
コンテンツC
が取り出される。すなわち、コンテンツCが復号される。
このようにして復号されたコンテンツCは、コンテンツ管理部141(図5)に記憶(管理)される。
図19を参照し、再度、コンテンツの利用に関する処理について説明を加える。図19は、図18と同様の記載をしているが、図19を参照して説明するコンテンツの利用に関する処理は、正常にコンテンツCを復号できない場合である。
正常にコンテンツCを復号できない場合として、例えば、後述する、所定の端末の排除の処理が実行されることにより、コンテンツの公開先として排除されてしまった端末になったときなどがある。所定の端末の排除の処理が実行されることにより、コンテンツ暗号化鍵CKを暗号化する鍵KEKが変更される。この変更は、すなわち、鍵KEKのIDの変更になる。
よって、ステップS242において受信される鍵KEKのIDは、図18に説明した場合と異なるID’とされている。また、鍵KEKも図18に説明した場合と異なる鍵KEK’とされている。
ステップS242において受信された鍵KEKのID’に対応する
鍵KEK’
が、鍵管理部140の鍵KEKのセットから読み出される。しかしながら、排除対象になっている端末であれば、変更された鍵KEKのID’に対応する鍵KEK’が、鍵管理部140に管理されていることはない。よって、ステップS242における処理で、鍵KEK’が読み出されないので、その後の処理は行われない。
仮に、鍵KEKのID’と同じIDを有する鍵KEKが鍵管理部140で管理されており、鍵KEKが読み出されたとしても、その読み出される鍵KEKは、鍵KEK’とは異なる鍵KEKである。よって、正当性が確認できないため、処理は終了される。
仮に鍵KEKのID’に対応する鍵KEKが読み出されてしまった場合、また、通常、正当性が確認できなかったため、処理が終了されるのが、何らかの原因で終了されなかった場合(例えば、不正が行われた場合)、ステップS243において受信された
E(E(鍵KEK’、鍵KEK’)、コンテンツ暗号化鍵CK)
に対して、読み出された
鍵KEK
を鍵とした復号が、ステップS244において行われる。
E(E(鍵KEK’、鍵KEK’)、コンテンツ暗号化鍵CK)は、E(鍵KEK’、鍵KEK’)を鍵として暗号化されているため、鍵KEKでは正しく復号することができない。よって、仮に、鍵KEKが読み出されるなど、不都合な状態が発生したとしても、このような状況下では、コンテンツが正常に復号されることがない。
このように、サーバ11側で、暗号化に用いる鍵KEKを変えることにより、所定の端末(排除対象とされた端末)においては、コンテンツを復号できないことになる。このことは、不当に鍵KEKやコンテンツを取得した第3者においても同じであり、結果的にコンテンツを復号(利用)することができない。よって、第3者にコンテンツを不当に利用されてしまうといったことを防ぐことが可能となる。
[端末側の所定の端末の排除に関する処理]
上記したように、一旦鍵を配布した端末(コンテンツを公開した端末)を、排除する(コンテンツを公開しないようにする)ことができる。端末21が行う、所定の端末の排除に関する処理(図6のステップS14に対応する処理)について、図20のフローチャートを参照して説明する。
ステップS261において、端末21の情報送受信部143(図5)は、排除対象とする端末のIDと、その端末に公開しないコンテンツを送信する(コンテンツそのものでなくても、コンテンツを識別するためのコンテンツIDなどでもよい)。端末21は、他の端末に鍵を配布するとき、配布先の端末を識別するためのユーザIDを端末毎に割り当てている(図7のステップS104)。その処理で割り当てたユーザIDを、サーバ11に対して送信する。
[サーバ側の所定の端末の排除に関する処理について]
端末21側で、所定の端末の排除に関する処理が実行されると、その処理に対応し、サーバ11側でも所定の端末の排除に関する処理(図6のステップS33に対応する処理)が実行される。図21は、サーバ側の所定の端末の排除に関する処理について説明するためのフローチャートである。
ステップS281において、サーバ11の情報取得部81は、端末21からの情報を受信する。その情報には、端末21側で排除したい端末として設定された端末のユーザIDと、その排除対象とされる端末に公開したくないとして設定されたコンテンツそのもの(または、対応するコンテンツID)とが含まれている。
ステップS282において、受信されたコンテンツを暗号化するためのコンテンツ暗号化鍵CKが設定される。ステップS282乃至S287の処理は、基本的に、図14のステップS202乃至207と同様であるので、その詳細な説明は省略する。
すなわち、図21に示したフローチャートの処理(サーバ側の所定の端末の排除に関する処理)は、公開するコンテンツを暗号化するコンテンツ暗号化鍵CKを、排除対象となる端末が復号できない鍵に変更(コンテンツ暗号化鍵CKを暗号化する鍵KEKを変更)する処理であり、コンテンツを暗号化するといった点では、図14に示したフローチャートの処理(サーバ側のコンテンツに関する処理)と同様である。よって、その処理は、同様の流れとすることができる。
具体的に“公開するコンテンツを暗号化するコンテンツ暗号化鍵CKを、排除対象となる端末が復号できない鍵に変更する”とは、暗号化部83により、新たに乱数を発生させ、その乱数を、新たなコンテンツ暗号化鍵CKと設定することにより、その変更は行われる。
また、“コンテンツ暗号化鍵CKを暗号化する鍵KEKを変更する”ということに関し、図8を再度参照して説明する。例えば、暗号化に用いられていた鍵KEKが、鍵KEK164であり、かつ、排除対象とされている端末が、端末124である場合、コンテンツ暗号化鍵CKを暗号化する鍵KEKは、鍵KEK168に変更される。
鍵KEK168は、端末124には配布されていないため、この鍵KEK168を鍵として暗号化されたデータを、端末124は、復号することができない。よって、E(鍵KEK168、鍵KEK168)を鍵として、コンテンツ暗号化鍵CKを暗号化することで、端末124を実質的に排除することが可能となる。
このように暗号化に用いられる鍵KEKが変更された場合、その変更後の鍵KEKを示す鍵KEKのIDが、コンテンツ暗号化鍵CKやコンテンツと関連付けられてコンテンツ管理部85で管理される。
このようにして、新たな鍵KEKにより暗号化が行われることにより、排除された端末側では、図19を参照して説明したように、コンテンツを復号できなくなるため、仮にサーバ11からコンテンツを取得することができても、結果的には復号できないので、排除されたことになる。
[端末側の情報の参照に関する処理]
上記したように、端末21側では、自己が生成したコンテンツは、サーバ11側で管理させるため、基本的に、端末21側で管理する必要がない。よって、端末21は、コンテンツを記憶させるための記憶容量を削減することができる。
端末21は、自己がサーバ11に登録したコンテンツを参照できるように構成されている。その端末側の情報の参照に関する処理(図6のステップS15に対応する処理)について、図22のフローチャートを参照して説明する。
ステップS301において、端末21の情報送受信部143(図5)は、参照したいコンテンツのコンテンツIDをサーバ11に対して送信する。サーバ11側で、コンテンツIDを受信したことによる処理が実行されることにより、端末21に、サーバ11からコンテンツが送信されてくる。この送信されてくるコンテンツには、コンテンツそのもののデータの他に、そのコンテンツを公開しているユーザ(端末)のユーザID(公開先リスト)が含まれる。さらに、そのコンテンツが公開された公開日などの情報もあわせて受信されるようにしても良い。
このようにして、端末21のユーザは、サーバ11に登録したコンテンツを参照することができる。
[サーバ側の情報の参照に関する処理について]
端末21側において、図22に示したような処理が実行されると、その処理に対応する処理として、サーバ11側では、サーバ側の情報の参照に関する処理(図6のステップS34に対応する処理)が実行される。図23のフローチャートを参照し、サーバ11側で実行される情報の参照に関する処理について説明する。
ステップS321において、サーバ11のコンテンツ公開部86は、端末21から送信されてきたコンテンツIDを受信する。コンテンツ公開部86は、ステップS322において、受信したコンテンツIDに対応するコンテンツ、そのコンテンツを公開した公開日、および、そのコンテンツを公開しているユーザ(端末)のユーザID(公開先リスト)をコンテンツ管理部85と内部エータベース87を参照して読み出す。
コンテンツ公開部86は、ステップS323において、読み出した情報を、要求を出してきた端末21に対して送信する。
[端末側の情報の削除に関する処理について]
端末21は、上記したように、サーバ11に登録させたコンテンツと、そのコンテンツに係わる情報を参照することができる。また、参照した結果、そのコンテンツを編集することも勿論可能である。さらに、編集の1つの処理とし、サーバ11に登録させたコンテンツを削除するといったことも可能である。
次に、端末21で行われる情報の削除に関する処理(図6のステップS16に対応する処理)について、図24のフローチャートを参照して説明する。ステップS341において、端末21の情報送受信部143(図5)は、削除したいコンテンツそのもの(またはコンテンツID)を、サーバ11に対して送信する。
[サーバ側の情報の削除に関する処理]
端末21側から削除したいコンテンツが送信されると、サーバ11は、その端末21側の処理に対応する処理として、情報の削除に関する処理(図6のステップS35に対応する処理)を実行する。図25のフローチャートを参照し、サーバ11側の情報の削除に関する処理について説明する。
ステップS361において、サーバ11のコンテンツ公開部86は、端末21から、削除対象のコンテンツを受信する。ステップS362において、削除対象とされたコンテンツ、鍵の情報、鍵KEKのIDなどが公開エリアから削除される。例えば、公開エリアに、図15に示したようなコンテンツ251乃至253が管理されていた場合、そして、そのコンテンツ251乃至253が削除対象とされた場合、コンテンツ251乃至253そのもの、鍵KEKのID241、コンテンツ暗号化鍵CK242、および、公開先リスト261が削除される。
コンテンツ251だけが削除対象とされていた場合、コンテンツ251そのものが削除される。この場合、コンテンツ252とコンテンツ253は、削除されないため、コンテンツ252とコンテンツ253を暗号化したコンテンツ暗号化鍵CK242と、そのコンテンツ暗号化鍵CK242を暗号化した鍵KEKのID241は、そのまま残される。
ステップS363において、必要に応じ、内部データベース87が更新される。
このように、端末21側で生成したコンテンツや暗号化に用いる鍵を、サーバ11で管理させるようにすることで、記憶容量の小さい端末21でも、コンテンツを公開することが可能となる。すなわち、端末21側で管理するデータのサイズを削減することが可能となる。
また、例えば、所定の端末を排除するような場合、上記したように、暗号化に用いる鍵KEKを変更することにより、また、変更後の鍵で再暗号化を行うことにより、その排除が実行されるが、その鍵の変更などに係わる演算は、端末21側では行わず、サーバ11側で行うので、端末21側が演算能力が低くても、コンテンツの公開、鍵の変更などを行うことが可能となる。すなわち、端末21側での演算量を低減させることが可能となる。
また、上記したように、暗号化が行われるので、意図したユーザのみが、コンテンツを利用できるようになる。すなわち、公開したくないユーザに、コンテンツが公開されてしまうようなことを防ぐことが可能となる。さらに、サーバ11に対しても暗号化したコンテンツを送付し、管理させることで、サーバ11からコンテンツなどのデータが、意図しない第3者に利用されてしまったり、サーバ11自体に悪用されてしまうといったような不都合が発生することを防ぐことが可能となる。
[記録媒体について]
上述した一連の処理は、それぞれの機能を有するハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
記録媒体は、図2に示すように、パーソナルコンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク61(フレキシブルディスクを含む)、光ディスク62(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク63(MD(Mini-Disc)(登録商標)を含む)、若しくは半導体メモリ4などよりなるパッケージメディアにより構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記憶されているROM42や記憶部48が含まれるハードディスクなどで構成される。
なお、本明細書において、媒体により提供されるプログラムを記述するステップは、記載された順序に従って、時系列的に行われる処理は勿論、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
本発明のシステムの一実施の形態の構成について説明する図である。 サーバの内部構成例を示す図である。 サーバの機能を説明する図である。 端末の内部構成例を示す図である。 端末の機能を説明する図である。 システムの動作について説明するフローチャートである。 端末の動作について説明するフローチャートである。 生成される鍵について説明するための図である。 鍵の記憶に関する処理について説明するためのフローチャートである。 鍵管理部で管理されるデータについて説明するための図である。 端末側の鍵に関する処理について説明するフローチャートである。 サーバ側の鍵に関する処理について説明するためのフローチャートである。 端末側のコンテンツに関する処理について説明するためのフローチャートである。 サーバ側のコンテンツに関する処理について説明するためのフローチャートである。 コンテンツ管理部で管理されるデータについて説明するための図である。 コンテンツの利用に関する処理について説明するためのフローチャートである。 鍵KEKセットについて説明するための図である。 コンテンツの復号について説明するための図である。 コンテンツの復号について説明するための図である。 端末の排除に関する処理について説明するためのフローチャートである。 端末の排除に関する処理について説明するためのフローチャートである。 端末側の情報の参照に関する処理について説明するためのフローチャートである。 サーバ側の情報の参照に関する処理について説明するためのフローチャートである。 端末側の情報の削除に関する処理について説明するためのフローチャートである。 サーバ側の情報の削除に関する処理について説明するためのフローチャートである。
符号の説明
11 サーバ, 21乃至25 端末, 81 情報取得部, 82 蓄積部, 83 暗号化部, 84 保持部, 85 コンテンツ管理部, 86 コンテンツ公開部, 87 内部データベース, 88 鍵管理部, 131 鍵生成部, 132 鍵暗号化部, 133 鍵配布部, 134 鍵送信部, 135 コンテンツ生成部, 136 コンテンツ暗号化部, 137 マスター鍵保持部, 138 コンテンツ送信部, 139 取得部, 140 鍵管理部, 141 コンテンツ管理部, 142 復号部, 143 情報送受信部

Claims (10)

  1. コンテンツを公開する第1の端末、公開されているコンテンツを管理するサーバ、および、公開されているコンテンツを利用する第2の端末を含む情報処理システムにおいて、
    前記第1の端末は、
    前記コンテンツの暗号化に係わる鍵を生成する生成手段と、
    前記生成手段により生成された前記鍵を、前記第2の端末に配布する配布手段と、
    前記生成手段により生成された前記鍵を、その鍵自身を鍵として暗号化する鍵暗号化 手段と、
    前記暗号化手段により暗号化された前記鍵を、前記サーバに送信する鍵送信手段と、
    前記コンテンツを生成し、予め保持しているマスター鍵で暗号化する第1のコンテン ツ暗号化手段と、
    前記第1のコンテンツ暗号化手段により暗号化された前記コンテンツを、前記サーバ に送信するコンテンツ送信手段と
    を備え、
    前記サーバは、
    前記鍵送信手段により送信された前記鍵を受信する鍵受信手段と、
    前記鍵受信手段により受信された前記鍵を管理する鍵管理手段と、
    前記コンテンツ送信手段により送信された前記コンテンツを受信するコンテンツ受信 手段と、
    前記コンテンツ受信手段により受信された前記コンテンツを、コンテンツ暗号化鍵で 暗号化する第2のコンテンツ暗号化手段と、
    前記鍵管理手段で管理されている前記鍵を鍵として、前記コンテンツ暗号化鍵を暗号 化するコンテンツ鍵暗号化手段と、
    前記第2のコンテンツ暗号化手段により暗号化された前記コンテンツ、前記コンテン ツ鍵暗号化手段により暗号化された前記コンテンツ暗号化鍵、および、前記コンテンツ 鍵暗号化手段による暗号化に用いられた前記鍵を識別する鍵情報を公開エリアに公開す る公開手段と
    を備え、
    前記第2の端末は、
    前記配布手段により配布された前記鍵を取得し、記憶する鍵記憶手段と、
    前記公開手段により公開エリアに公開されている前記コンテンツ、前記コンテンツ暗 号化鍵、および、前記鍵情報を取得する取得手段と、
    前記取得手段により取得された前記鍵情報が示す鍵を、前記鍵記憶手段から読み出し、 前記コンテンツ暗号化鍵を復号するコンテンツ鍵復号手段と、
    前記取得手段により取得された前記コンテンツを、前記コンテンツ鍵復号手段により 復号された前記コンテンツ鍵を用いて復号する第1のコンテンツ復号手段と、
    前記第1のコンテンツ復号手段により復号された前記コンテンツを、予め保持してい るマスター鍵で復号する第2のコンテンツ復号手段と
    を備える
    ことを特徴とする情報処理システム。
  2. コンテンツの暗号化に係わる鍵を生成する生成手段と、
    前記生成手段により生成された前記鍵を、第1の情報処理装置に配布する配布手段と、
    前記生成手段により生成された前記鍵を、その鍵自身を鍵として暗号化する鍵暗号化手段と、
    前記暗号化手段により暗号化された前記鍵を、第2の情報処理装置に送信する鍵送信手段と、
    前記コンテンツを生成し、予め保持しているマスター鍵で暗号化するコンテンツ暗号化手段と、
    前記コンテンツ暗号化手段により暗号化された前記コンテンツを、前記第2の情報処理装置に送信するコンテンツ送信手段と
    を備えることを特徴とする情報処理装置。
  3. 前記生成手段により生成される鍵は、複数の階層を有するバイナリツリー状の鍵である
    ことを特徴とする請求項2に記載の情報処理装置。
  4. 前記配布手段は、前記バイナリツリー状の鍵のうち、異なる階層の鍵をセットにして前記第1の情報処理装置に配布する
    ことを特徴とする請求項3に記載の情報処理装置。
  5. 他の情報処理装置から配布された鍵を取得し、記憶する鍵記憶手段と、
    前記第2の情報処理装置の公開エリアに公開されている暗号化されているコンテンツ、前記コンテンツの暗号化に用いられたコンテンツ暗号化鍵、および、前記コンテンツ暗号化鍵の暗号化に用いられた鍵を識別する鍵情報を取得する取得手段と、
    前記取得手段により取得された前記鍵情報が示す鍵を、前記鍵記憶手段から読み出し、前記コンテンツ暗号化鍵を復号するコンテンツ鍵復号手段と、
    前記取得手段により取得された前記コンテンツを、前記コンテンツ鍵復号手段により復号された前記コンテンツ鍵を用いて復号する第1のコンテンツ復号手段と、
    前記第1のコンテンツ復号手段により復号された前記コンテンツを、前記マスター鍵で復号する第2のコンテンツ復号手段と
    をさらに備えることを特徴とする請求項2に記載の情報処理装置。
  6. コンテンツの暗号化に係わる鍵を生成する生成ステップと、
    前記生成ステップにより生成された前記鍵の第1の情報処理装置への配布を制御する配布制御ステップと、
    前記生成ステップの処理で生成された前記鍵を、その鍵自身を鍵として暗号化する鍵暗号化ステップと、
    前記暗号化ステップの処理で暗号化された前記鍵の第2の情報処理装置への送信を制御する鍵送信制御ステップと、
    前記コンテンツを生成し、予め保持されているマスター鍵で暗号化するコンテンツ暗号化ステップと、
    前記コンテンツ暗号化ステップの処理で暗号化された前記コンテンツの、前記第2の情報処理装置への送信を制御するコンテンツ送信制御ステップと
    を含むことを特徴とする情報処理方法。
  7. コンテンツの暗号化に係わる鍵を生成する生成ステップと、
    前記生成ステップにより生成された前記鍵の第1の情報処理装置への配布を制御する配布制御ステップと、
    前記生成ステップの処理で生成された前記鍵を、その鍵自身を鍵として暗号化する鍵暗号化ステップと、
    前記暗号化ステップの処理で暗号化された前記鍵の第2の情報処理装置への送信を制御する鍵送信制御ステップと、
    前記コンテンツを生成し、予め保持されているマスター鍵で暗号化するコンテンツ暗号化ステップと、
    前記コンテンツ暗号化ステップの処理で暗号化された前記コンテンツの、前記第2の情報処理装置への送信を制御するコンテンツ送信制御ステップと
    を含む処理をコンピュータに実行させることを特徴とするプログラム。
  8. 他の情報処理装置で生成され、その生成された鍵自身で暗号化された鍵を受信する鍵受信手段と、
    前記鍵受信手段により受信された前記鍵を管理する鍵管理手段と、
    前記他の情報処理装置で生成され、暗号化されたコンテンツを受信するコンテンツ受信手段と、
    前記コンテンツ受信手段により受信された前記コンテンツを、コンテンツ暗号化鍵で暗号化するコンテンツ暗号化手段と、
    前記鍵管理手段で管理されている前記鍵を鍵として、前記コンテンツ暗号化鍵を暗号化するコンテンツ鍵暗号化手段と、
    前記コンテンツ暗号化手段により暗号化された前記コンテンツ、前記コンテンツ鍵暗号化手段により暗号化された前記コンテンツ暗号化鍵、および、前記コンテンツ鍵暗号化手段による暗号化に用いられた前記鍵を識別する鍵情報を公開エリアに公開する公開手段と
    を備えることを特徴とする情報処理装置。
  9. 他の情報処理装置で生成され、その生成された鍵自身で暗号化された鍵の受信を制御する鍵受信制御ステップと、
    前記鍵受信制御ステップの処理で受信が制御された前記鍵を管理する鍵管理ステップと、
    前記他の情報処理装置で生成され、暗号化されたコンテンツの受信を制御するコンテンツ受信制御ステップと、
    前記コンテンツ受信制御ステップの処理で受信が制御された前記コンテンツを、コンテンツ暗号化鍵で暗号化するコンテンツ暗号化ステップと、
    前記鍵管理ステップの処理で管理されている前記鍵を鍵として、前記コンテンツ暗号化鍵を暗号化するコンテンツ鍵暗号化ステップと、
    前記コンテンツ暗号化ステップの処理により暗号化された前記コンテンツ、前記コンテンツ鍵暗号化ステップの処理により暗号化された前記コンテンツ暗号化鍵、および、前記コンテンツ鍵暗号化ステップの処理による暗号化に用いられた前記鍵を識別する鍵情報を公開エリアに公開する公開ステップと
    を含むことを特徴とする情報処理方法。
  10. 他の情報処理装置で生成され、その生成された鍵自身で暗号化された鍵の受信を制御する鍵受信制御ステップと、
    前記鍵受信制御ステップの処理で受信が制御された前記鍵を管理する鍵管理ステップと、
    前記他の情報処理装置で生成され、暗号化されたコンテンツの受信を制御するコンテンツ受信制御ステップと、
    前記コンテンツ受信制御ステップの処理で受信が制御された前記コンテンツを、コンテンツ暗号化鍵で暗号化するコンテンツ暗号化ステップと、
    前記鍵管理ステップの処理で管理されている前記鍵を鍵として、前記コンテンツ暗号化鍵を暗号化するコンテンツ鍵暗号化ステップと、
    前記コンテンツ暗号化ステップの処理により暗号化された前記コンテンツ、前記コンテンツ鍵暗号化ステップの処理により暗号化された前記コンテンツ暗号化鍵、および、前記コンテンツ鍵暗号化ステップの処理による暗号化に用いられた前記鍵を識別する鍵情報を公開エリアに公開する公開ステップと
    を含む処理をコンピュータに実行させることを特徴とするプログラム。
JP2005083699A 2005-03-23 2005-03-23 情報処理システム、情報処理装置および方法、並びにプログラム Expired - Fee Related JP4605453B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005083699A JP4605453B2 (ja) 2005-03-23 2005-03-23 情報処理システム、情報処理装置および方法、並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005083699A JP4605453B2 (ja) 2005-03-23 2005-03-23 情報処理システム、情報処理装置および方法、並びにプログラム

Publications (2)

Publication Number Publication Date
JP2006270344A true JP2006270344A (ja) 2006-10-05
JP4605453B2 JP4605453B2 (ja) 2011-01-05

Family

ID=37205854

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005083699A Expired - Fee Related JP4605453B2 (ja) 2005-03-23 2005-03-23 情報処理システム、情報処理装置および方法、並びにプログラム

Country Status (1)

Country Link
JP (1) JP4605453B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002164880A (ja) * 2000-11-29 2002-06-07 Pfu Ltd コンテンツ提供サーバ、コンテンツ提供プログラムを記録した記録媒体、コンテンツ配信サーバ、およびコンテンツ配信プログラムを記録した記録媒体
JP2003289297A (ja) * 2002-01-25 2003-10-10 Matsushita Electric Ind Co Ltd データ配信システム
JP2004038883A (ja) * 2002-07-08 2004-02-05 Toppan Printing Co Ltd コンテンツ管理サーバ並びにコンテンツ管理方法
JP2005057435A (ja) * 2003-08-01 2005-03-03 Sony Corp クライアント機器及びクライアント機器におけるコンテンツ処理方法、並びにコンテンツ提供システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002164880A (ja) * 2000-11-29 2002-06-07 Pfu Ltd コンテンツ提供サーバ、コンテンツ提供プログラムを記録した記録媒体、コンテンツ配信サーバ、およびコンテンツ配信プログラムを記録した記録媒体
JP2003289297A (ja) * 2002-01-25 2003-10-10 Matsushita Electric Ind Co Ltd データ配信システム
JP2004038883A (ja) * 2002-07-08 2004-02-05 Toppan Printing Co Ltd コンテンツ管理サーバ並びにコンテンツ管理方法
JP2005057435A (ja) * 2003-08-01 2005-03-03 Sony Corp クライアント機器及びクライアント機器におけるコンテンツ処理方法、並びにコンテンツ提供システム

Also Published As

Publication number Publication date
JP4605453B2 (ja) 2011-01-05

Similar Documents

Publication Publication Date Title
US11431484B2 (en) Blockchain transaction privacy enhancement through broadcast encryption
CN108810004B (zh) 基于代理的可撤销多授权中心访问控制方法、云存储系统
CN108259169B (zh) 一种基于区块链云存储的文件安全分享方法及系统
RU2351078C2 (ru) Эффективное управление генерациями криптографических ключей
RU2406116C2 (ru) Миграция цифровой лицензии с первой платформы на вторую платформу
KR100911282B1 (ko) 정보 처리 장치
US7971261B2 (en) Domain management for digital media
US7864953B2 (en) Adding an additional level of indirection to title key encryption
KR100904572B1 (ko) 정보 처리 장치
JP3943090B2 (ja) コンテンツのディジタル権利管理(drm)ライセンスの発行に関するキャッシングされたユーザ−グループ情報の再検討
US7788728B2 (en) Method and apparatus for limiting number of times contents can be accessed using hash chain
US7778417B2 (en) System and method for managing encrypted content using logical partitions
JP2010176684A (ja) コンテンツ配信システムにおける複数のコンテンツのピースを伴うメディア・ストレージ構造の使用
JP2004259283A (ja) クロスフォレストディレクトリ情報に基づくコンテンツのディジタル権利管理(drm)ライセンスの発行
KR20020066233A (ko) 정보 처리 방법/장치 및 프로그램
JP2004048673A (ja) コンテンツ配布中に鍵管理ブロックのサイズを管理する方法、システム、およびプログラム
KR20030007771A (ko) 정보 처리 장치
KR20230041971A (ko) 분산적 컴퓨터 네트워크 상에서 안전한 데이터 전송을 위한 방법, 장치 및 컴퓨터 판독가능 매체
JP2005057701A (ja) 情報処理装置、およびコンテンツ情報管理方法、並びにコンピュータ・プログラム
CN114679340B (zh) 一种文件共享方法、系统、设备及可读存储介质
KR20200020122A (ko) 블록체인에 접속하는 클라이언트와 서비스 제공자간의 쿼리 처리 방법
JP5139045B2 (ja) コンテンツ配信システム、コンテンツ配信方法およびプログラム
JP2003289297A (ja) データ配信システム
JP4605453B2 (ja) 情報処理システム、情報処理装置および方法、並びにプログラム
JPH11331145A (ja) 情報共有システム、情報保管装置およびそれらの情報処理方法、並びに記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070816

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100701

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100706

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100823

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100909

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100922

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131015

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees