(57)【特許請求の範囲】
【請求項１】
第１と第２のノードの間に第１の安全な通信経路を確立し、第１と第３のノードの間に第２の安全な通信経路を確立する通信制御手段と、記憶手段とを具える、第４のノードとして用いられる情報処理装置であって、
前記通信制御手段は、
前記第１のノードとの間に第３の安全な通信経路を確立して、前記確立された第３の安全な通信経路上で前記第１のノードから、前記第２および第３のノードを含むグループに関連する公開可能な情報を含む前記第１および第２の通信経路の確立を求める第１の要求を受信し、
前記記憶手段に格納されているノード情報を参照して前記公開可能な情報に対応する前記第２のノードに関連する秘密情報と前記第３のノードに関連する秘密情報とを取り出し、前記取り出した秘密情報に基づいて前記第２および第３のノードとの間に第４および第５の通信経路をそれぞれ確立し、前記確立した第４の通信経路上で前記第２のノードに関連する公開可能な情報を含む前記第１の通信経路の確立を求める第２の要求を送信し、前記確立した第５の通信経路上で前記第３のノードに前記第１のノードに関連する公開可能な情報を含む前記第２の通信経路の確立を求める第３の要求を送信し、
前記第２および第３のノードから前記第２および第３の要求に対する許可または拒否を受信し、前記受信した許可に従って、前記確立された第３の安全な通信経路上で前記第１のノードに、前記第２および／または第３のノードに関連する前記取り出した秘密情報を送信することを特徴とする、
情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２つ以上のノードの間における安全な通信経路の確立に関し、特に、第３のノードを介した複数ノード間における安全な通信経路の確立に関する。
【背景技術】
【０００２】
２つのノード間に安全な通信経路を確立する方法としてＩＰｓｅｃ（ＩＰセキュリティ・プロトコル）およびＳＳＬ（Security Sockets Layer）／ＴＬＳ（Transport Layer Security）等の規格がある。いずれの規格においても、ノード間の通信経路の安全性を確保するためには、ノード間で、予め暗号方式、暗号鍵、その鍵の長さ等の取り決め、即ちＳＡ（Security Association）を確立し、相手の通信ノードの認証を行うことが必要である。
【０００３】
２つのノード間で暗号方式および暗号鍵を共有する方法としてＩＫＥ（Internet Key Exchange）が知られている。また、複数ノード間で暗号方式および暗号鍵を共有する方法として、ＲＦＣ（Request for Comments）３５４７によるＩＫＥ／ＧＤＯＩを利用する方法が知られている。この方法は、ＧＣＫＳ（Group Controller/Key Server）とグループ・メンバとの間のプロトコルを定義しており、許可されたグループ・メンバ間で同一のＳＡ（安全な通信を行うための条件、例えば、暗号化方式および暗号鍵等が安全な通信を行うノード間で決定された状態)を確立する。この方法は、ＧＣＫＳとグループ・メンバの間の経路が安全ではないと想定しており、従って、先ずＧＣＫＳとグループ・メンバの間で一時的に安全な経路を確立し、その安全な通信経路上で本来の安全な経路を確立するのに必要なＳＡの折衝を行う。
【０００４】
これらの既知の方法は、サーバと複数のメンバの間で同一のＳＡを保持することによって、１対ｎ（１サーバ対ｎメンバ）のコンテンツ配信用の通信経路またはコンテンツの暗号処理の負荷を軽減できる。
【０００５】
実藤によって公開された２００２年８月３０日付で公開された特開２００２−２４７１１１号公報には、プライベートなネットワークに対する外部からの不正アクセスを防止しうる方法及びその方法を実現する装置が記載されている。その方法によれば、端末から家庭内ネットワークに対するパケットが送信されると、そのネットワークのゲートウェイはそのパケットのパケット情報と自己認証データとをインターネット上のセキュリティ管理装置に送信する。セキュリティ管理装置は端末に認証データを要求する。セキュリティ管理装置は、受信した認証データに基づいて、送信者が正当な権利を有していれば、ゲートウェイに対してフィルタリング解除命令を出す。
【特許文献１】特開２００２−２４７１１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
前述したように、２つのノードの間の通信の安全性を確保するためには、ＳＡの確立と通信相手の認証とが必要である。各ノード毎に手動でＳＡを設定しておくことは可能であるが、その設定作業は複雑であり、誤操作が生じやすい。最小限の情報だけを与えて、自動的にＳＡを確立するＩＫＥ標準が提案されている。しかし、この場合でも、通信相手のＩＰアドレスが必要であり、どのようにして相手通信ノードのＩＰアドレスを取得するかが問題となる。
【０００７】
また、ＩＫＥ−ＳＡ折衝（ネゴシエーション）において用いられるＤＨ法（Diffie-Hellman鍵共有アルゴリズ）は、ＭＩＭ（Man-in-the-Middle）攻撃を受ける可能性があるので、ＤＨ法で生成される共有値に加えて、予め保持している共有秘密鍵および折衝始動者（negotiation initiator）と応答者によって生成されたランダム値などを用いて、通信経路を暗号化する鍵を生成する。しかし、この共有鍵をどのようにして２つのノード間で共有するかが問題となる。
【０００８】
さらに、折衝始動者と応答者が生成するランダム値を通信相手の公開鍵によって暗号化し、ランダム値を鍵の素材とすることによって、ＭＩＭ攻撃を防ぐ方法が、提案されている。この場合、中間者は、公開鍵によって暗号化されたランダム値を復号できないので、その鍵を計算できない。しかし、通信相手の公開鍵を両者が予め入手しておく必要があり、従って公開鍵の交換方法が問題となる。
【０００９】
本発明の目的は、別のノードを介して２つ以上のノードの間に安全な通信経路を確立するシステムを実現することである。
【００１０】
本発明の別の目的は、別のノードを介して複数のノードの間に安全なリレー形式のコンテンツ配信経路を確立するシステムを実現することである。
【課題を解決するための手段】
【００１１】
本発明の特徴によれば、第４のノードとして用いられる情報処理装置は、第１と第２のノードの間に第１の安全な通信経路を確立し、第１と第３のノードの間に第２の安全な通信経路を確立する通信制御手段と、記憶手段とを具え、その通信制御手段は、その第１のノードとの間に第３の安全な通信経路を確立して、その確立された第３の安全な通信経路上でその第１のノードから、その第２および第３のノードを含むグループに関連する公開可能な情報を含むその第１および第２の通信経路の確立を求める第１の要求を受信し、その記憶手段に格納されているノード情報を参照してその公開可能な情報に対応するその第２のノードに関連する秘密情報とその第３のノードに関連する秘密情報とを取り出し、その取り出した秘密情報に基づいてその第２および第３のノードとの間に第４および第５の通信経路をそれぞれ確立し、その確立した第４の通信経路上でその第２のノードに関連する公開可能な情報を含むその第１の通信経路の確立を求める第２の要求を送信し、その確立した第５の通信経路上でその第３のノードにその第１のノードに関連する公開可能な情報を含むその第２の通信経路の確立を求める第３の要求を送信し、その第２および第３のノードからその第２および第３の要求に対する許可または拒否を受信し、その受信した許可に従って、その確立された第３の安全な通信経路上でその第１のノードに、その第２および／または第３のノードに関連するその取り出した秘密情報を送信する。
【発明の効果】
【００１８】
本発明によれば、別のノードを介して２つ以上のノードの間に安全な通信経路を確立することができ、また、別のノードを介して複数のノードの間に安全なリレー形式のコンテンツ配信経路を確立することができる。
【００１９】
本発明の実施形態を図面を参照して説明する。図面において、同様の構成要素には同じ参照番号が付されている。
【発明を実施するための最良の形態】
【００２０】
図１は、本発明の第１の実施形態による、例えばインターネットのような外部ネットワーク５に結合された第１、第２および第３のノード２２、２８および１０からなるネットワーク構成を示している。第１および第２のノード２２および２８は、例えばＩＰｖ６規格に準拠したホーム・ゲートウェイ・サーバまたはパーソナル・コンピュータであってもよい。第３のノード１０は、例えばピア・ツー・ピア接続を支援するＩＳＰ（Internet Service Provider）またはサーバ・コンピュータであってもよく、第１および第２のノード２２および２８の固有情報を管理する。第１、第２および第３のノード２２、２８および１０は、通信制御モジュール（ＣＯＭ．ＣＴＲＬ）２２２、２８２および１０２をそれぞれ有する。
【００２１】
第１および第２のノード２２および２８は、公開可能な情報と、限定された者にだけ伝えられる秘密情報とを含むそれぞれのノードの固有情報を、第３のノード１０に予め登録する。第３のノード１０は、第１および第２のノード２２および２８の固有情報をその記憶装置１０１に格納する。その公開可能な情報には、例えばニックネームのようなノードの識別（ＩＤ）等が含まれる。その秘密情報には、ノードのＩＰアドレスおよび待ち受けポート番号等が含まれる。そのＩＰアドレスは、グローバルまたはプライベートＩＰアドレスであってもよく、動的にまたは固定的に割り当てられてもよい。
【００２２】
第１のノード２２は、ここではイニシエータ（始動者）として機能する。レスポンダ（応答者）として機能する第２のノード２８との間に安全な通信経路４０２を確立するために、第１のノード２２は、通信制御モジュール２２２によって、ＩＰアドレスＩＰADDR−Ｃの第３のノードとの間に、例えばＩＰｓｅｃのような規格に従った安全な通信経路４３２を先ず確立して、その通信経路４３２上で第３のノード１０に対して、ペイロード・フィールド中に発信元の第１のノード２２の識別ＩＤ−Ａおよび通信すべき第２のノード２８の識別ＩＤ−Ｂを含む、第２のノード２８との間の通信経路４０２の確立の許可の要求を表すパケットを送信する。
【００２３】
第３のノード１０は、通信制御モジュール１０２によって、その要求を表すパケットを受信して、そのパケット中の識別ＩＤ−Ｂに基づいて記憶装置１０１に格納されているノード固有情報のリストを参照して、第１のノード２２によって第２のノード２８との間に通信経路４０２を確立することが許容されるかどうかを判定する。それが許容されると判定された場合は、第３のノード１０（通信制御モジュール１０２）は、ＩＰアドレスＩＰADDR−Ｂの第２のノード２８との間に、例えばＩＰｓｅｃのような通信規格に従った安全な通信経路４３４を確立して、その通信経路４３４上で第２のノード２８に対して、ペイロード・フィールド中に第１のノード２２の識別ＩＤ−Ａ等の公開可能な情報を含む、第１のノード２２との間の通信経路４０２の確立の許可の要求を表すパケットを送信する。
【００２４】
第２のノード２８は、通信制御モジュール２８２によって、第１のノード２２の識別ＩＤ−Ａの公開可能な情報のみに基づいてその通信経路４０２の確立を許可するかどうかを判定する。それが拒否されると判定された場合は、第２のノード２８（通信制御モジュール２８２）は、その拒否を表すパケットを第３のノードに送信する。その拒否を表すパケットを受信したときは、第３のノード１０（通信制御モジュール１０２）は、その拒否を表すパケットを第１のノード２２に送信する。それが許可されると判定された場合は、第２のノード２８（通信制御モジュール２８２）は、その許可を表すパケットを第３のノードに送信する。その許可を表すパケットを受信したときは、第３のノード１０（通信制御モジュール１０２）は、第２のノード２８のＩＰアドレスＩＰADDR−Ｂの秘密情報を含むその許可を表すパケットを第１のノード２２に送信し、および／または第１のノード２２のＩＰアドレスＩＰADDR−Ａの秘密情報を含むパケットを第２のノード２８に送信する。
【００２５】
第１のノード２２（通信制御モジュール２２２）は、その受け取った第２のノード２８のＩＰアドレスＩＰADDR−Ｂの秘密情報を用いて、第２のノード２８との間に通信経路４０２を確立し、通信経路４０２上で所要の通信を行い、例えば静止画像または動画像ファイルのようなコンテンツＣを第２のノード２８に送信してもよい。図において破線矢印はコンテンツＣの流れを示している。代替構成として、第２のノード２８（通信制御モジュール２２２）が、その受け取った第１のノード２２のＩＰアドレスＩＰADDR−Ａの秘密情報を用いて、第１のノード２２との間に通信経路４０２を確立し、その後、第１のノード２２がその通信経路４０２上で所要の通信を行い、例えばコンテンツＣを第２のノード２８に送信してもよい。また、その逆であってもよい。
【００２６】
上述の通信について、第１のノード２２（通信制御モジュール２２２）と第３のノード１０（通信制御モジュール１０２）は、共有の秘密鍵ＫＡＣを保持し、パケットをその一方から他方へ送信するとき、秘密鍵ＫＡＣ、またはその秘密鍵ＫＡＣから導出された別の秘密鍵Ｋ’ＡＣを用いて、送信するペイロードまたは内容の少なくとも一部を暗号化してもよい。秘密鍵ＫＡＣは、単なるパスワードであっても、コンテンツ用の暗号鍵であってもよい。同様に、第３のノード１０（通信制御モジュール１０２）と第２のノード２８（通信制御モジュール２８２）も、共有の秘密鍵ＫＢＣを保持し、パケットをその一方から他方へ送信するとき、秘密鍵ＫＢＣ、またはその秘密鍵ＫＢＣから導出された別の秘密鍵Ｋ’ＢＣを用いて、送信するペイロードまたはコンテンツの一部を暗号化してもよい。
【００２７】
第３のノード１０（通信制御モジュール１０２）は、第２のノード２８から、第１のノード２２と第２のノード２８の間の通信経路４０２の確立の許可を受け取ったとき、第１のノード２２と第２のノード２８の間で共有される暗号鍵ＫABを生成して、秘密鍵ＫACまたはその派生秘密鍵Ｋ’ACを用いて、暗号鍵ＫABおよび場合によっては関連する時間情報を暗号化して、それを第１のノード２２に送信し、また、秘密鍵ＫBCまたはその派生秘密鍵Ｋ’BCを用いて、暗号鍵ＫABおよび場合によっては関連する時間情報を暗号化して、それを第２のノード２８に送信してもよい。その時間情報は、例えば時刻を含み、第１、第２および第３のノード２２、２８および１０は、その時刻から所定時間経過したときまたはその時刻になったときにその暗号鍵ＫABを無効とするようにしてもよい。第１のノード２２（通信制御モジュール２２２）と第２のノード２８（通信制御モジュール２８２）は、その受信した暗号鍵ＫABを保持し、パケットをその一方から他方へ送信するとき、暗号鍵ＫAB、またはその暗号鍵ＫABから導出された別の暗号鍵Ｋ’ABを用いて、送信するペイロードまたはコンテンツの一部を暗号化してもよい。
【００２８】
図２は、図１の第１の実施形態の変形である第２の実施形態のネットワーク構成を示している。図２において、第１および第２のノードと同等の第４のノード３０も外部ネットワーク５に結合されている。この場合、第３のノード１０は、グループ化された複数のノードの固有情報を格納して管理し、例えば第１および第２のノード２２および２８の固有情報で構成される第１のグループＧＩＤ−Ａの固有情報、および第１、第２および第４のノード２２、２８および３０の固有情報で構成される第２のグループＧＩＤ−Ｂの固有情報を管理する。第４のノード３０は通信制御モジュール（ＣＯＭ．ＣＴＲＬ)３０２を有する。
【００２９】
第１のノード２２は、イニシエータとして機能する。レスポンダとして機能する第２のノード２８および第４のノード３０との間に安全な通信経路４０２および４０４を確立するために、第１のノード２２は、第３のノード１０との間に安全な通信経路４３２を確立して、その通信経路４３２上で第３のノード１０に対して、ペイロード中に、第１のノードの識別ＩＤ−Ａと、第１、第２および第４のノード２２、２８および３０を含む第２のグループを表す識別ＧＩＤ−Ｂとを含む、第２のグループＧＩＤ−Ｂ中の他のノード２８および３０との間の通信経路４０２および４０４の確立の許可の要求を表すパケットを送信する。
【００３０】
第３のノード１０は、その要求を表すパケットを受信して、そのパケット中の識別ＧＩＤ−Ｂに基づいてその記憶装置１０１に格納されている対応する第２のグループＧＩＤ−Ｂのノード情報を参照して、第１のノード２２によって第１のノード２２と第２および第４のノード２８および３０との間に通信経路４０２および４０４を確立することが許容されるかどうかを判定する。例えば、第３のノード１０がＩＳＰのサーバである場合、第２のノード２８がそのサーバに登録されているかどうか等を判定し、登録されていると判定されたときにそれが許容されるようにすればよい。それが許容されると判定された場合は、上述したように、第３のノード１０は、ＩＰアドレスＩＰADDR−Ｂの第２のノード２８との間に安全な通信経路４３４を確立して、第２のノード２８に対して、第１のノード２２の識別ＩＤ−Ａ等の公開可能な情報を含む、第１のノードとの間の通信経路４０２の確立の許可の要求を表すパケットを送信する。同様に、第３のノード１０は、ＩＰアドレスＩＰADDR−Ｄの第４のノード３０との間に安全な通信経路４３６を確立して第４のノード３０に対して、第１のノード２２の識別ＩＤ−Ａ等の公開可能な情報を含む、第１のノードとの間の通信経路４０４の確立の許可の要求を表すパケットを送信する。
【００３１】
第２のノード２８は、上述したように、その識別ＩＤ−Ａの公開可能な情報のみに基づいてその通信経路４０２の確立を許可するかどうかを判定し、その許可を表すパケット拒否を表すパケットを第３のノードに送信する。第３のノード１０は、第２のノード２８のＩＰアドレスＩＰADDR−Ｂの秘密情報を含むその許可を表すパケットを第１のノード２２に送信し、第１のノード２２のＩＰアドレスＩＰADDR−Ａの秘密情報を含むパケットを第２のノード２８に送信し、またはその拒否を表すパケットを第１のノード２２に送信する。
【００３２】
同様に、第４のノード３０（通信制御モジュール３０２）は、その識別ＩＤ−Ａの公開可能な情報のみに基づいてその通信経路４０４の確立を許可するかどうかを判定し、その許可を表すパケットまたは拒否を表すパケットを第３のノードに送信する。第３のノード１０は、第４のノード３０のＩＰアドレスＩＰADDR−Ｄの秘密情報を含むその許可を表すパケットを第１のノード２２に送信し、第１のノード２２のＩＰアドレスＩＰADDR−Ａの秘密情報を含むパケットを第４のノード３０に送信し、またはその拒否を表すパケットを第１のノード２２に送信する。
【００３３】
第１のノード２２は、その受け取った第２のノード２８および／または第４のノード３０のＩＰアドレスＩＰADDR−Ｂおよび／またはＩＰADDR−Ｄを用いて、第２のノード２８および／または第４のノード３０との間に通信経路４０２および／または４０４をそれぞれ確立し、その後、所要の通信を行う。図において破線矢印はコンテンツＣの流れを示している。代替構成として、第２のノード２８および／または第４のノード３０（通信制御モジュール３０２）が、その受け取った第１のノード２２のＩＰアドレスＩＰADDR−Ａを用いて、第１のノード２２との間に通信経路４０２および／または４０４を確立し、その後、第１のノード２２が例えばコンテンツＣを第２のノード２８および／または第４のノード３０に送信してもよい。
【００３４】
図３は、本発明の第３の実施形態による、ネットワーク５に結合された、ノード固有情報管理ノード１２、暗号鍵管理ノード１４、コンテンツ配信ノード２４、および複数の受信ノード３０、３２、３４、．．．および３６のネットワーク構成を示している。図において破線矢印はコンテンツＣの流れを示している。コンテンツ配信ノード２４は例えばホーム・サーバである。ノード固有情報管理ノード１２は図２の第３のノード１０に対応するサーバである。暗号鍵管理ノード１４は、図２の第２のノード２８に対応するサーバである。ノード固有情報管理ノード１２と暗号鍵管理ノード１４は、１つのサーバとして統合されてもよい。受信ノード３０〜３４は、第２のノードと同様の構成を有し、例えばホーム・サーバまたはパーソナル・コンピュータである。ノード固有情報管理ノード１２、暗号鍵管理ノード１４、コンテンツ配信ノード２４、および複数の受信ノード３０、３２、３４、．．．および３６は、通信制御モジュール（ＣＯＭ．ＣＴＲＬ）１４２、２４２、３０２、３２２、３４２、．．．および３６２をそれぞれ有する。
【００３５】
コンテンツ配信ノード２４は、イニシエータとして機能する。レスポンダとして機能する暗号鍵管理ノード１４との間に安全な通信経路４０２を確立するために、コンテンツ配信ノード２４は、通信制御モジュール２４２によって、安全な通信経路４３２を先ず確立して、図２の第３のノード１０として機能するノード固有情報管理ノード１２に対して、コンテンツ配信ノード２４の認証用の識別ＩＤ−Ａおよびパスワードと、第３のグループの識別ＧＩＤ−Ｄとを含む、第３のグループＧＩＤ−Ｄのコンテンツ配信ノード２４および受信ノード３０〜３６の間のリレー形式のマルチキャスト通信経路またはデイジーチェーンの確立の許可の要求を表すパケットを送信する。
【００３６】
暗号鍵管理ノード１４は、通信制御モジュール１４２によって、その要求を表すパケットを受信して、そのパケット中の識別ＩＤ−Ａおよびパスワードに基づいてコンテンツ配信ノード２４の認証を行い、第３のグループの識別ＧＩＤ−Ｄに基づいてその記憶装置１０２に格納されている対応する第３のグループのノード固有情報を参照して、コンテンツ配信ノード２４によって受信ノード３０〜３６との間にリレー形式の配信経路４２２、４２４、４２６、４２８、．．．および４３０を確立することが許容されるかどうかを判定する。それが許容されると判定された場合は、ノード固有情報管理ノード１２は、通信制御モジュール１２２によって、暗号鍵管理ノード１４との間に安全な通信経路４３４を確立して、暗号鍵管理ノード１４に対して、ペイロード中においてコンテンツ配信ノード２４および受信ノード３０〜３６の識別ＩＤ−Ａ、ＩＤ−Ｄ、ＩＤ−Ｅ、ＩＤ−Ｆ、．．．およびＩＤ−Ｇの公開可能情報および／またはそれら識別のＩＰアドレスＩＰADDR−Ａ、ＩＰADDR−Ｄ、ＩＰADDR−Ｅ、ＩＰADDR−Ｆ、．．．およびＩＰADDR−Ｇの秘密情報を含む、コンテンツ配信ノード２４および受信ノード３０〜３６の間のリレー形式の通信経路４２２〜４３０の確立の要求を表すパケットを送信する。
【００３７】
暗号鍵管理ノード１４（通信制御モジュール１４２）は、その識別ＩＤ−Ａ、ＩＤ−Ｄ〜ＩＤ−Ｆの公開可能情報および／またはそのＩＰアドレスＩＰADDR−Ａ、ＩＰADDR−Ｄ〜ＩＰADDR−Ｇの秘密情報に基づいて、その記憶装置１０４に格納されている対応する第３のグループのノード情報を参照して、そのＩＰアドレスの秘密情報を用いて、受信ノード３０〜３４との間に安全な通信経路４０８、４１２、４１４、．．．４１６をそれぞれ確立して、その通信経路４０８〜４１６上でその受信ノード３０〜３４に対して、そのコンテンツ配信ノード２４およびその受信ノード３０〜３４の間のそれぞれの通信経路４２２〜４３０の確立の要求を表すパケットを送信する。
【００３８】
受信ノード３０〜３６は、それぞれの通信制御モジュール３０２〜３６２によって、その識別ＩＤ−Ａの公開可能な情報のみに基づいてその通信経路４０２の確立を許可するかどうかを判定する。受信ノード３０〜３６のいずれかがそれを拒否すると判定した場合は、その受信ノードは、その拒否を表すパケットを暗号鍵管理ノード１４に送信する。次いで、暗号鍵管理ノード１４は、コンテンツ配信ノード２４との間に確立された安全な通信経路４０２上でその拒否を表すパケットをコンテンツ配信ノード２４に送信する。受信ノード３０〜３６のいずれかがそれを許可すると判定した場合は、その受信ノードは、待ち受けポート番号を含むその許可を表すパケットを暗号鍵管理ノード１４に送信する。次いで、暗号鍵管理ノード１４は、コンテンツ配信ノード２４との間に安全な通信経路４０２を確立して、その許可を表すパケットをコンテンツ配信ノード２４に送信する。
【００３９】
暗号鍵管理ノード１４（通信制御モジュール１４２）は、受信ノード３０〜３６のいずれかからその許可を受信した場合は、さらに、コンテンツ配信ノード２４とその許可した受信ノードについてリレー配信のための通信経路の組合せのプランを作成し、さらに暗号鍵Ｋ（Ｋｃ、ＹｓおよびＸｓ）を生成して、コンテンツ配信ノード２４とその許可した受信ノードとの間に確立された安全な通信経路４０２、４０８、．．．４１６上で、コンテンツ配信ノード２４とその許可した受信ノード３０〜３６に対して、コンテンツＣを転送すべき宛先受信ノードのＩＰアドレス、待ち受けポート番号および暗号鍵Ｋ（ＫｃおよびＹｓ、またはＸｓ）を送信する。暗号鍵管理ノード１４（通信制御モジュール１４２）は、例えば、コンテンツ配信ノード２４に対して、受信ノード３０のＩＰアドレスＩＰADDR−Ｄおよび待ち受けポート番号と暗号鍵Ｋ（ＫｃおよびＹｓ）とを含むパケットを送信し、受信ノード３０に対して、受信ノード３２のＩＰアドレスＩＰADDR−Ｅおよび待ち受けポート番号と暗号鍵Ｋ（Ｘｓ）とを含むパケットを送信する。
【００４０】
その後、コンテンツ配信ノード２４（通信制御モジュール２４２）は、受信ノード３０のＩＰアドレスＩＰADDR−Ｄおよび待ち受けポート番号を用いて、その受信ノード３０との間に通信経路４２２を確立して、その通信経路４２２上で暗号鍵Ｋ（ＫｃおよびＹｓ）を用いて暗号化された例えばディジタル画像ファイルのようなコンテンツＣを受信ノード３０に送信する。受信ノード３０（通信制御モジュール３０２）は、その送信されたコンテンツＣを受信して、次の受信ノード３２のＩＰアドレスＩＰADDR−Ｅおよび待ち受けポート番号との間に通信経路４２４を確立して、その受信コンテンツＣを受信ノード３２に転送する。同様に、受信ノード３２（通信制御モジュール３２２）はその送信されたコンテンツＣを受信してその受信コンテンツＣを次の受信ノード３４に転送する。このようにして、暗号鍵管理ノード１４（通信制御モジュール１４２）は、コンテンツ配信経路４２２〜４３０を確立する。送信されたコンテンツＣはコンテンツ用の共通暗号鍵Ｋｃを用いて暗号化されている。受信ノード３０〜３６（通信制御モジュール３０２〜３６２）は、共通暗号鍵Ｋｃを用いてコンテンツＣを復号する。共通暗号鍵Ｋｃは、例えば、共用暗号鍵Ｙｓを用いて暗号化されており、共用暗号鍵Ｘｓを用いて復号される。
【００４１】
或る受信ノード、例えば受信ノード３２（通信制御モジュール３２２）が、コンテンツ配信ノード２４からの最初のコンテンツＣの配信リレー経路４２２、４２５、４２８、．．．４３０に参加していないと仮定する。その後、その受信ノード３２のユーザがその配信リレー経路に参加してコンテンツＣの受信を希望するとき、ユーザの操作に従って、その受信ノード３２は、前述したのと同様の形態で、ノード固有情報管理ノード１２との間に安全な通信経路４３８を確立して受信ノード３２の識別ＩＤ−Ｅおよびグループ識別ＧＩＤ−Ｄを含むその配信リレーへの参加の要求を送信する。上述のように、ノード固有情報管理ノード１２によってそれが許容されると判定された場合は、ノード固有情報管理ノード１２（通信制御モジュール１２２）が、安全な通信経路４３４上で暗号鍵管理ノード１４に受信ノード３２との間の安全な通信経路４１２を確立するよう要求する。暗号鍵管理ノード１４（通信制御モジュール１４２）は、コンテンツ配信ノード２４に受信ノード３２のそのコンテンツ配信経路への参加を通知し、受信ノード３２との間に安全な通信経路４１２を確立して受信ノード３２からその待ち受けポート番号および場合によってはＩＰアドレスＩＰADDR−Ｅを受け取って、受信ノード３２のＩＰアドレスＩＰADDR−Ｅおよびその待ち受けポート番号を受信ノード３０に通知し、安全な経路４１２上で受信ノード３２に受信ノード３４のＩＰアドレスＩＰADDR−Ｆおよび待ち受けポート番号を通知する。このようにして、受信ノード３２（通信制御モジュール３２２）は、コンテンツ配信経路４２２、４２４、４２６、４２８．．．４３０に組み込まれ、受信ノード３０から受信したコンテンツＣを受信ノード３４に転送するようになる。
【００４２】
一方、その後、或る受信ノード、例えば受信ノード３２のユーザがコンテンツＣの配信リレー経路から脱退する（外れる）ことを希望したときは、ユーザの操作に従って、その受信ノード３２（通信制御モジュール３２２）は、安全な通信経路４１２上で暗号鍵管理ノード１４に対して、配信リレー経路４２２〜４３０からの脱退の要求を表すパケットを送信する。安全な通信経路４１２が確立されていないときは、その受信ノード３２（通信制御モジュール３２２）は、上述のようにノード固有情報管理ノード１２を介して暗号鍵管理ノード１４との間に安全な通信経路４１２を先ず確立して、配信リレー経路４２２〜４３０からの脱退の要求を暗号鍵管理ノード１４に送信する。暗号鍵管理ノード１４（通信制御モジュール１４２）は、その脱退の要求に応答して、受信ノード３２を除いたリレー配信のための経路の組合せのプランを再作成して、新しい暗号化鍵（ＹｓおよびＸｓ）を生成して、変更後のコンテンツＣの配信リレー経路４２２、４２５、５２８、．．．４３０を形成するコンテンツ配信ノード２４および受信ノード３０、３４、．．．および３６に対してコンテンツＣを転送すべき宛先受信ノードのＩＰアドレス、待ち受けポート番号および新しい暗号鍵を再送信する。コンテンツ配信ノード２４（通信制御モジュール２４２）は、その新しい暗号鍵を用いてコンテンツＣを暗号化して宛先の受信ノード３０に送信する。受信ノード３０、３４、．．．および３６（通信制御モジュール３０２、３４２、．．．および３６２）は、その新しい暗号鍵を用いて受信コンテンツＣを復号する。
【００４３】
図４は、受信ノード３０〜３６が暗号鍵管理ノード１４に暗号鍵Ｋを要求し、暗号鍵管理ノード１４が受信ノード３０〜３６に暗号鍵Ｋを配布する手順を説明するのに役立つ。受信ノード３０〜３６のいずれかが、暗号鍵Ｋを用いて暗号化されたコンテンツＣを受信したとき、そのノードの鍵有無チェック・モジュール３００６、３２０６、．．．３６０６は、その受信ノードが暗号化および復号（暗号解読）用の暗号鍵Ｋを保有しているかどうかを判定する。それを保有していないと判定された場合には、そのノードの要求送信モジュール３００４、３２０４、．．．３６０４が安全な通信経路４０８〜４１６上で暗号鍵管理ノード１４に暗号鍵Ｋの配布を要求する。暗号鍵管理ノード１４は、その要求に応答して、安全な通信経路４０８〜４１６上で受信ノード３０〜３６に暗号鍵Ｋを配布する。
【００４４】
図５は、暗号鍵管理ノード１４による図３の暗号鍵Ｋの生成と、コンテンツ配信ノード２２におけるコンテンツ暗号化とを示している。
【００４５】
暗号鍵管理ノード１４は、ランダム値生成モジュール１２６、ＤＨ法公開値生成モジュール１２８、暗号鍵管理モジュール１２２および送信パケット生成モジュール１３０を含んでいる。ランダム値生成モジュール１２６が、生成された乱数に従ってランダム値Ｘｓを生成する。ＤＨ法公開値生成モジュール１２８が、演算Ｙｓ＝ｇXs（ｍｏｄ  ｐ）を実行して、公開値Ｙｓを生成する。ここで、ｐおよびｇは、ノード間で予め共有される値である。送信パケット生成モジュール１３０は、ペイロードとして、その公開値Ｙｓと、暗号鍵管理モジュール１２２から供給されたコンテンツ暗号化用の共通の暗号鍵Ｋｃとを含む送信パケット１３２を生成する。暗号鍵管理ノード１４は、その送信パケット１３２を安全な通信経路４０２上でコンテンツ配信ノード２４に送信する。
【００４６】
コンテンツ配信ノード２４は、ランダム値生成モジュール２４６、ＤＨ法公開値生成モジュール２４８、ＤＨ法共有値生成モジュール２５２、暗号化および送信パケット生成モジュール２５０、および例えば記憶装置のような配信用のコンテンツ・データ・ソース２３２を含んでいる。ランダム値生成モジュール２４６が、乱数に従ってランダム値Ｘ１を生成する。ＤＨ法公開値生成モジュール２４８が、演算Ｙ１＝ｇX1（ｍｏｄ  ｐ）を実行して、公開値Ｙ１を生成する。ＤＨ法共有値生成モジュール２５２が、演算Ｋsh＝ＹｓX1（ｍｏｄ  ｐ）を実行して、共通の暗号鍵Ｋｃを暗号化するのに用いられる共有値または共有鍵Ｋshを生成する。ＤＨ法では、Ｋsh＝ＹｓX1（ｍｏｄ  ｐ）＝Ｙ１Xs（ｍｏｄ  ｐ）が成立する。送信パケット生成モジュール２３０は、ペイロードとして、共通の暗号鍵Ｋｃを用いて暗号化されたコンテンツ２３４と、共有鍵Ｋshを用いて暗号化された暗号鍵Ｋｃと、公開値Ｙ１と、を含む送信パケット２３２を生成する。代替構成として、共有鍵Ｋshの代わりに、共有鍵Ｋshから導出された別の鍵Ｋ'を暗号鍵Ｋｃの暗号化に用いてもよい。
【００４７】
図６は、暗号鍵管理ノード１４による図３の暗号鍵Ｋの生成と、受信ノード３０におけるコンテンツ復号（暗号解読）とを示している。暗号鍵管理ノード１４において、送信パケット生成モジュール１３０は、ランダム値生成モジュール１２６によって発生されたランダム値Ｘｓを含む送信パケット１３４を、図３における安全な通信経路４０２〜４１６上で受信ノード３０〜３６に送信する。
【００４８】
受信ノード３０は、ＤＨ法共有値生成モジュール３０２および復号パケット生成モジュール３０４を含んでいる。受信ノード３０は、コンテンツ配信ノード２４から送信された、共通の暗号鍵Ｋｃを用いて暗号化されたコンテンツ・ファイル２３４、共有鍵Ｋshを用いて暗号化された共通鍵Ｋｃ、および公開値Ｙ１を含む受信パケット２３０を受信し、かつその受信パケット２３０を次の受信ノード３２に転送する。ＤＨ法共有値生成モジュール３０２は、演算Ｋsh＝Ｘ１Ys（ｍｏｄ  ｐ）を実行して、暗号鍵Ｋｃを暗号化するのに用いられた共有鍵Ｋshを生成する。ＤＨ法では、Ｋsh＝ＹｓX1（ｍｏｄ  ｐ）＝Ｙ１Xs（ｍｏｄ  ｐ）が成立する。復号パケット生成モジュール３０４は、共有鍵Ｋshを用いて暗号鍵Ｋｃを復号し、その復号された暗号鍵Ｋｃを用いてコンテンツ・ファイル２３４を復号して、復号されたコンテンツ・ファイル３４０を生成する。共有鍵Ｋshの代わりに、共有鍵Ｋshから導出された別の共有鍵Ｋ'shが暗号鍵Ｋｃの暗号化に用いられた場合は、共有鍵Ｋshから別の共有鍵Ｋ'shを導出して暗号鍵Ｋｃを復号する必要がある。
【００４９】
この実施形態では、受信ノード３０は、通常のＤＨ法において２つのノードの間で交換される公開値Ｙ１を、公開値Ｙｓを受信したコンテンツ配信ノード２４から取得し、安全な通信経路上で暗号鍵管理ノード１４からランダム値Ｘｓを取得する。これによって、ＤＨ法における共有鍵Ｋshが通信経路４０２〜４１６および４２２〜４２８中を流れないことが保証され、それによって、配信されるコンテンツＣはＭＩＭ攻撃から保護される。
【００５０】
暗号鍵管理ノード１４によって生成されるランダム値Ｘｓおよび公開値Ｙｓは定期的にまたは時々変更されてもよい。この場合、暗号鍵管理ノード１４は、その変更後の新しいランダム値Ｘｓおよび公開値Ｙｓを安全な通信経路４０２および４０８〜４１６上でコンテンツ配信ノード２４および受信ノード３０〜３６に送信する。さらに、コンテンツ配信ノード２４は、暗号鍵管理ノード１４から受信した前のパケット中の公開値Ｙｓを保持しており、新しいパケットを受信するたびに、新しいパケット中の公開値Ｙｓを前の公開値Ｙｓと比較して公開値Ｙｓが変更されたかどうかを判定する。公開値Ｙｓが変更されたときは、コンテンツ配信ノード２４はその変更後の新しい公開値Ｙｓに基づいて共有値または共有鍵Ｋshを再生成する。受信ノード３０〜３６は、その変更されたランダム値Ｘｓに基づいて共有鍵Ｋshを再生成する。
【００５１】
コンテンツ配信ノード２４によって生成されるランダム値Ｘ１および公開値Ｙ１も、定期的にまたは時々、またはランダム値Ｘｓおよび公開値Ｙｓが変更されたときに、変更されてもよい。この場合、コンテンツ配信ノード２４は、その変更されたランダム値Ｘ１を用いて暗号鍵Ｋｃの暗号化用の新しい共有鍵Ｋshを生成し、その新しい共有鍵Ｋshを用いてコンテンツを暗号化し、その暗号化されたコンテンツ・ファイル２３４と、その暗号化された暗号鍵Ｋｃと、変更後の新しい公開値Ｙ１とを含む送信パケット２３２を、受信ノード３０〜３６に送信する。受信ノード３０〜３６は、その変更された共有値Ｙ１に基づいて共有鍵Ｋshを再生成する。
【００５２】
図７は、暗号鍵管理ノード１４によって生成されるランダム値Ｘｓおよび公開値Ｙｓと、コンテンツ配信ノード２４によって生成されるランダム値Ｘ１および公開値Ｙ１とが同時に変更され得る場合における、受信ノード３０〜３６による共通の暗号鍵Ｋｃの復号の手順を示している。各受信ノード、例えば受信ノード３０は、ステップ７０２においてコンテンツ・パケット３３０を受信する。受信ノード３０は、ステップ７０４において、新しいパケット３３０中の公開値Ｙ１の値が前回の公開値Ｙ１と等しいかどうかを判定する。公開値Ｙ１が変更されていると判定された場合は、各受信ノードは、ステップ７０６において、安全な通信経路４０８〜４１６上で暗号鍵管理ノード１４に対して新しいランダム値Ｘｓを要求してそれを取得する。それによって、暗号鍵管理ノード１４は、各受信ノードの動作状態、例えば各受信ノードがコンテンツ配信経路から脱落していないかどうかを確認することができる。受信ノード３０のＤＨ法共有値生成モジュール２５２は、ステップ７０８において、その変更された公開値Ｙ１に基づいて共有鍵Ｋshを再生成し、その共有鍵Ｋshを用いて共通の暗号鍵Ｋｃを復号する。ステップ７０４において、公開値Ｙ１が変更されていないと判定された場合は、ステップ７１８において、その変更されていない共有鍵Ｋshを用いて暗号鍵Ｋｃを復号する。共有鍵Ｋshの代わりに、共有鍵Ｋshから導出された別の共有鍵Ｋ'shが秘密鍵Ｋｃの暗号化に用いられている場合は、共有鍵Ｋshから鍵Ｋ'shを導出して暗号鍵Ｋｃを復号する必要がある。
【００５３】
図８は、次に共有鍵Ｋshから別の共有鍵Ｋ’shを導出する方法の例を説明するのに役立つ。受信ノード３０〜３６の各々は、最初に暗号鍵管理ノード１４から定数Ｎを受け取るか、またはその受信ノードのユーザがＧＵＩを介して定数Ｎ（可変長）を設定して暗号鍵管理ノード１４に通知してもよい。その別の共有鍵Ｋ’shは、その定数Ｎおよび共有鍵Ｋshに基づいて、演算Ｋ’＝ＨＭＡＣ（Ｎ，Ｋ）を実行することによって、導出できる。ここで、ＨＭＡＣ（Ｎ，Ｋ）は、ＨＭＡＣ−ＳＨＡ−１の演算を表し、ＳＨＡ−１はハッシュ関数を表す。Ｉｐａｄは６４バイトのデータ（例えば、０ｘ３６３６３６．．．３６）であり、Ｏｐａｄは６４バイトのデータ（たとえば、０ｘ５ｃ５ｃ５ｃ．．．５ｃ）である。
【００５４】
ステップ８０２において、ＸＯＲ手段がＩｐａｄと共有鍵Ｋshの排他的論理和（ＸＯＲ）をとって、共有値Ｋsh ＸＯＲ Ｉｐａｄを生成する。ステップ８０４において、連結手段が、値Ｋsh ＸＯＲ Ｉｐａｄを値Ｎの前に連結して値｛Ｋsh ＸＯＲ Ｉｐａｄ，Ｎ｝を生成する。ステップ８０６において、ハッシュ値生成手段ＳＨＡ−１が、値｛Ｋsh ＸＯＲ Ｉｐａｄ，Ｎ｝のハッシュ値（１６０ビット）を生成する。ステップ８１２において、ＸＯＲ手段がＯｐａｄと共有鍵Ｋshの排他的論理和をとって、値Ｋsh（６４バイト） ＸＯＲ Ｏｐａｄを生成する。ステップ８１４において、連結手段が、第１のハッシュ値（１６０ビット）の前に連結して値｛Ｋsh（６４バイト） ＸＯＲ Ｏｐａｄ，ハッシュ値（１６０ビット）｝を生成する。ステップ８１６において、ハッシュ値生成手段ＳＨＡ−１が、値｛Ｋsh（６４バイト） ＸＯＲ Ｏｐａｄ，ハッシュ値（１６０ビット）｝のハッシュ値ＭＡＣ（１６０ビット）を生成する。ハッシュ値ＭＡＣ（１６０ビット）を、Ｋshから導出された共有鍵Ｋ’shとする。
【００５５】
以上説明した実施形態は典型例として挙げたに過ぎず、その各実施形態の構成要素を組み合わせること、その変形およびバリエーションは当業者にとって明らかであり、当業者であれば本発明の原理および請求の範囲に記載した発明の範囲を逸脱することなく上述の実施形態の種々の変形を行えることは明らかである。
【００５６】
以上の実施例を含む実施形態に関して、さらに以下の付記を開示する。
（付記１）  第２のノードとの間に第１の安全な通信経路を確立する通信制御手段を具える、第１のノードとして用いられる情報処理装置であって、
前記通信制御手段は、
第３のノードとの間に確立された第２の安全な通信経路上で前記第３のノードに、前記第２のノードに関連する公開可能な情報を含む前記第１の通信経路の確立の要求を送信し、
前記確立された第２の安全な通信経路上で前記第３のノードから前記第２のノードに関連する秘密情報を受信し、前記受信した秘密情報に基づいて前記第２のノードとの間に前記第１の安全な通信経路を確立するものであることを特徴とする、
情報処理装置。
（付記２）  前記通信制御手段は、前記情報処理装置と前記第３のノードの間で共有される秘密鍵または前記秘密鍵から派生する別の鍵を用いて、前記要求の少なくとも一部を暗号化して送信することを特徴とする、付記１に記載の情報処理装置。
（付記３）  第１と第２のノードの間に第１の安全な通信経路を確立する通信制御手段と、記憶手段とを具える、第３のノードとして用いられる情報処理装置であって、
前記通信制御手段は、
前記第１のノードとの間に確立された第２の安全な通信経路上で前記第１のノードから、前記第２のノードに関連する公開可能な情報を含む前記第１の通信経路の確立を求める第１の要求を受信し、
前記記憶手段に格納されているノード情報を参照して前記公開可能な情報に基づいて前記第２のノードに関連する秘密情報を取り出し、前記取り出した秘密情報に基づいて前記第２のノードとの間に第３の通信経路を確立し、前記確立された第３の通信経路上で前記第２のノードに、前記第１のノードに関連する公開可能な情報を含む前記第１の通信経路の確立を求める第２の要求を送信し、
前記第２のノードから前記第１の通信経路の確立の許可を受信し、前記受信した許可に従って、前記確立された第２の安全な通信経路上で前記第１のノードに、前記第２のノードに関連する前記取り出した秘密情報を送信することを特徴とする、
情報処理装置。
（付記４）  前記通信制御手段は、前記情報処理装置と前記第１のノードの間で共有される秘密鍵またはこの秘密鍵から派生する別の鍵を用いて、前記秘密情報の少なくとも一部を暗号化して送信し、前記情報処理装置と前記第２のノードの間で共有される秘密鍵またはこの秘密鍵から派生する別の鍵を用いて、前記第２の要求の少なくとも一部を暗号化して送信することを特徴とする、付記３に記載の情報処理装置。
（付記５）  前記通信制御手段は、
前記情報処理装置と前記第１のノードの間で共有される第１の鍵またはこの第１の鍵から派生する第２の鍵を用いて前記第１と第２のノードの間で共有される第３の鍵および時間情報を暗号化して、前記第２の安全な通信経路上で前記第１のノードに前記暗号化された第３の鍵を送信し、
前記情報処理装置と前記第２のノードの間で共有される第４の鍵またはこの第４の鍵から派生する第５の鍵を用いて前記第３の鍵および前記時間情報を暗号化して、前記第３の安全な通信経路上で前記第２のノードに前記暗号化された第３の鍵を送信することを特徴とする、
付記３に記載の情報処理装置。
（付記６）  第１のノードとの間に第１の安全な通信経路を確立する通信制御手段を具える、第２のノードとして用いられる情報処理装置であって、
前記通信制御手段は、
第３のノードとの間に確立された第３の通信経路上で前記第３のノードから、前記第１のノードに関連する公開可能な情報を含む前記第１の通信経路の確立の要求を受信し、
前記受信した前記要求に含まれる前記第１のノードに関連する前記公開可能な情報に基づいて、前記第１の通信経路の確立を許可するかどうかを判定し、
前記第１の通信経路の確立を許可すると判定された場合には、前記確立された第３の通信経路上で前記第３のノードに前記第１の通信経路の確立の許可を含む情報を送信し、前記第１のノードとの間に前記第１の通信経路を確立させることを特徴とする、
情報処理装置。
（付記７）  前記通信制御手段は、前記情報処理装置と前記第３のノードの間で共有される秘密鍵または前記秘密鍵から派生する別の鍵を用いて、前記許可を含む情報の少なくとも一部を暗号化して送信することを特徴とする、付記６に記載の情報処理装置。
（付記８）  第２のノードとの間に第１の安全な通信経路を確立し、第３のノードとの間に第２の安全な通信経路を確立する通信制御手段を具える、第１のノードとして用いられる情報処理装置であって、
前記通信制御手段は、
第４のノードとの間に確立された第３の安全な通信経路上で前記第４のノードに、前記第２および第３のノードを含むグループに関連する公開可能な情報を含む前記第１および第２の通信経路の確立の要求を送信し、
前記確立された第３の安全な通信経路上で前記第４のノードから、前記第２および／または第３のノードに関連する秘密情報を受信し、前記受信した秘密情報に基づいて前記第２および／または第３のノードとの間に前記第１および／または第２の安全な通信経路を確立するものであることを特徴とする、
情報処理装置。
（付記９）  第１と第２のノードの間に第１の安全な通信経路を確立し、第１と第３のノードの間に第２の安全な通信経路を確立する通信制御手段と、記憶手段とを具える、第４のノードとして用いられる情報処理装置であって、
前記通信制御手段は、
前記第１のノードとの間に確立された第３の安全な通信経路上で前記第１のノードから、前記第２および第３のノードを含むグループに関連する公開可能な情報を含む前記第１および第２の通信経路の確立を求める第１の要求を受信し、
前記記憶手段に格納されているノード情報を参照して前記公開可能な情報に基づいて前記第２および第３のノードに関連する秘密情報を取り出し、前記取り出した秘密情報に基づいて前記第２および第３のノードとの間に第４および第５の通信経路をそれぞれ確立し、前記確立された第４の通信経路上で前記第２のノードに関連する公開可能な情報を含む前記第１の通信経路の確立を求める第２の要求を送信し、前記確立された第５の通信経路上で前記第３のノードに前記第１のノードに関連する公開可能な情報を含む前記第２の通信経路の確立を求める第３の要求を送信し、
前記第２および第３のノードから前記第１および第２の通信経路の確立の許可または拒否を受信し、前記受信した許可に従って、前記確立された第３の安全な通信経路上で前記第１のノードに、前記第２および／または第３のノードに関連する前記取り出した秘密情報を送信することを特徴とする、
情報処理装置。
（付記１０）  第１のノードから第２のノードへのコンテンツ・データの配信を管理する通信制御手段を有する情報処理装置であって、
前記通信制御手段は、
前記第１のノードとの間に確立された通信経路上で前記第１のノードに対して、前記コンテンツ・データの送信に用いられる前記第２のノードに関連する秘密情報を送信することを特徴とする、
情報処理装置。
（付記１１）  前記第１のノードから前記第２のノードへの前記コンテンツ・データの配信を停止させるとき、前記第１のノードによって前記コンテンツ・データの送信に用いられる秘密情報を無効にすることを特徴とする、付記１０に記載の情報処理装置。
（付記１２）  前記第１のノードから前記第２のノードへ配信される前記コンテンツ・データを暗号化するための暗号鍵を暗号化するためのランダムな第１の値と、前記暗号鍵を復号するための前記第１の値に関連する第２の値とを生成し、前記暗号鍵および前記第１の値を前記第１のノードに送信し、前記第２の値を前記第２のノードに送信することを特徴とする、
付記１０に記載の情報処理装置。
（付記１３）  前記第１および第２の値を変更して、前記変更された第１の値を前記第１のノードに送信し、前記変更された第２の値を前記第２のノードに送信することを特徴とする、付記１２に記載の情報処理装置。
（付記１４）  第２のノードへ暗号化されたコンテンツ・データを配信する通信制御手段を有する、第１のノードとして用いられる情報処理装置であって、
前記通信制御手段は、
第３のノードとの間に確立された第１の安全な通信経路上で前記第３のノードから、前記コンテンツ・データの暗号化に用いられる暗号鍵と、前記暗号鍵を暗号化するための第１の値とを受信し、
前記暗号鍵を暗号化するのに用いられる第２の値と、暗号化された前記暗号鍵を復号するための前記第２の値に関連する第３の値を生成し、前記第２のノードとの間に確立された第２の安全な通信経路上で前記第２のノードに対して、前記第３の値と、前記第１の値および前記第２の値を用いて暗号化された前記暗号鍵と、前記暗号鍵を用いて暗号化された前記コンテンツ・データとを送信することを特徴とする、
情報処理装置。
（付記１５）  第１のノードから暗号化されたコンテンツ・データを受信する通信制御手段を有する、第２のノードとして用いられる情報処理装置であって、
前記通信制御手段は、
前記第１のノードとの間に確立された第１の安全な通信経路上で前記第１のノードから、暗号化された暗号鍵と、前記暗号化された暗号鍵を復号するための第１の値と、前記暗号鍵によって復号可能なコンテンツ・データとを受信し、
第３のノードとの間に確立された第２の安全な通信経路上で前記第３のノードから、前記暗号化された暗号鍵を復号するための第２の値を受信し、
前記第１の値および前記第２の値から前記暗号化された暗号鍵を復号するための第３の値を導出し、前記第３の値を用いて前記暗号化された暗号鍵を復号し、前記復号された暗号鍵を用いて前記暗号化されたコンテンツ・データを復号することを特徴とする、
情報処理装置。
（付記１６）  第２のノードとの間に第１の安全な通信経路を確立する第１のノードとして用いられる情報処理装置用のプログラムであって、
第３のノードとの間に確立された第２の安全な通信経路上で前記第３のノードに、前記第２のノードに関連する公開可能な情報を含む前記第１の通信経路の確立の要求を送信するステップと、
前記確立された第２の安全な通信経路上で前記第３のノードから前記第２のノードに関連する秘密情報を受信し、前記受信した秘密情報に基づいて前記第２のノードとの間に前記第１の安全な通信経路を確立するステップと、
を実行させるよう動作可能なプログラム。
（付記１７）  第２のノードへ暗号化されたコンテンツ・データを配信する第１のノードとして用いられる情報処理装置用のプログラムであって、
第３のノードとの間に確立された第１の安全な通信経路上で前記第３のノードから、前記コンテンツ・データの暗号化に用いられる暗号鍵と、前記暗号鍵を暗号化するための第１の値とを受信するステップと、
前記暗号鍵を暗号化するのに用いられる第２の値と、暗号化された前記暗号鍵を復号するための前記第２の値に関連する第３の値を生成し、前記第２のノードとの間に確立された第２の安全な通信経路上で前記第２のノードに対して、前記第３の値と、前記第１の値および前記第２の値を用いて暗号化された前記暗号鍵と、前記暗号鍵を用いて暗号化された前記コンテンツ・データとを送信するステップと、
を実行させるよう動作可能なプログラム。
（付記１８）  第１と第２のノードの間に第１の安全な通信経路を確立する第３のノードとして用いられる情報処理装置における通信方法であって、
前記第１のノードとの間に確立された第２の安全な通信経路上で前記第１のノードから、前記第２のノードに関連する公開可能な情報を含む前記第１の通信経路の確立を求める第１の要求を受信する工程と、
前記記憶手段に格納されているノード情報を参照して前記公開可能な情報に基づいて前記第２のノードに関連する秘密情報を取り出し、前記取り出した秘密情報に基づいて前記第２のノードとの間に第３の通信経路を確立し、前記確立された第３の通信経路上で前記第２のノードに、前記第１のノードに関連する公開可能な情報を含む前記第１の通信経路の確立を求める第２の要求を送信する工程と、
前記第２のノードから前記第１の通信経路の確立の許可を受信し、前記受信した許可に従って、前記確立された第２の安全な通信経路上で前記第１のノードに、前記第２のノードに関連する前記取り出した秘密情報を送信する工程と、
を含むことを特徴とする方法。
（付記１９）  第１のノードから第２のノードへのコンテンツ・データの配信を管理する情報処理装置における通信方法であって、
前記第１のノードとの間に確立された通信経路上で前記第１のノードに対して、前記コンテンツ・データの送信に用いられる前記第２のノードに関連する秘密情報を送信する工程を含むことを特徴とする方法。
【図面の簡単な説明】
【００５７】
【図１】図１は、本発明の第１の実施形態による、例えばインターネットのような外部ネットワークに結合された第１、第２および第３のノードからなるネットワーク構成を示している。
【図２】図２は、図１の第１の実施形態の変形である第２の実施形態のネットワーク構成を示している。
【図３】図３は、本発明の第３の実施形態による、ネットワークに結合された、ノード固有情報管理ノード、暗号鍵管理ノード、コンテンツ配信ノード、および複数の受信ノードのネットワーク構成を示している。
【図４】図４は、受信ノードが暗号鍵管理ノードに暗号鍵を要求し、暗号鍵管理ノードが受信ノードに暗号鍵を配布する手順を説明するのに役立つ。
【図５】図５は、暗号鍵管理ノードによる図３の暗号鍵の生成と、コンテンツ配信ノードにおけるコンテンツ暗号化とを示している。
【図６】図６は、暗号鍵管理ノードによる図３の暗号鍵の生成と、受信ノードにおけるコンテンツ復号とを示している。
【図７】図７は、暗号鍵管理ノードによって生成されるランダム値および公開値と、コンテンツ配信ノードによって生成されるランダム値および公開値とが同時に変更され得る場合における、受信ノードによる共通の暗号鍵の復号の手順を示している。
【図８】図８は、次に共有鍵から別の共有鍵を導出する方法の例を説明するのに役立つ。
【符号の説明】
【００５８】
５  ネットワーク
２２  第１のノード
２８  第２のノード
１０  第３のノード
１０１  記憶装置
４０２  第１の通信経路
４３２、４３４  安全な通信経路
【図１】
0004707325.tif 000002
【図２】
0004707325.tif 000003
【図３】
0004707325.tif 000004
【図４】
0004707325.tif 000005
【図５】
0004707325.tif 000006
【図６】
0004707325.tif 000007
【図７】
0004707325.tif 000008
【図８】
0004707325.tif 000009