(57)【要約】【課題】  コンテンツのネットワークによる配信が、サーバの負担を少なくして行えるようにする。また、その際にセキュリティ強度を高くして配信できるようにする。【解決手段】  所定のネットワークに接続されたサーバ側で、配信可能なコンテンツに関するデータを管理するコンテンツデータベースと、各コンテンツのクラスタ分けに関するデータを持つコンテンツクラスタリストと、各クラスタを保管しているアドレスに関するクラスタデータベースとを持って、サーバに接続可能な機器側で、受信したコンテンツを、そのコンテンツを分割したクラスタ単位で、少なくとも一部のクラスタを保存し、保存されたコンテンツの番号と、保存されたクラスタの番号とを管理し、受信したコンテンツのクラスタの転送要求に応じて、コンテンツ保存処理で保存した所定のクラスタを、指示されたアドレスに転送する。【選択図】      図５ 
2005056345.tif 000002
【特許請求の範囲】
【請求項１】
所定のネットワークに接続されるサーバにおいて、
当該サーバが管理するコンテンツに関するデータを持つコンテンツデータベースと、
前記コンテンツデータベースで管理される各コンテンツのクラスタ分けに関するデータを持つコンテンツクラスタリストと、
前記コンテンツクラスタリストで示された各クラスタを保管しているアドレスに関するクラスタデータベースを備えた
サーバ。
【請求項２】
請求項１記載のサーバにおいて、
認証用データベースを備え、前記クラスタデータベースで示された各クラスタの保管場所毎に、各クラスタを暗号化する鍵を前記認証用データベースが管理する
サーバ。
【請求項３】
請求項２記載のサーバにおいて、
前記コンテンツクラスタリストに保管されたクラスタ分けに関するデータと、前記クラスタデータベースに保管された各クラスタを保管しているアドレスに関するデータと、前記認証用データベースに保管された暗号化用鍵に関するデータとを、コンテンツを再生するためのキューシートとして、コンテンツデータを要求するアドレスに前記ネットワークを介して送信する
サーバ。
【請求項４】
所定のネットワークと通信を行う通信手段と、
前記通信手段を介して受信したコンテンツを、そのコンテンツを分割したクラスタ単位で、少なくとも一部のクラスタを保存するコンテンツ保存手段と、
前記コンテンツ保存手段に保存されたコンテンツの番号と、保存されたクラスタの番号とを管理し、前記通信手段で受信したコンテンツのクラスタの転送要求に応じて、前記コンテンツ保存手段が保存した所定のクラスタを、前記通信手段から要求されたアドレスに転送する制御手段とを備えた
コンテンツ提供装置。
【請求項５】
請求項４記載のコンテンツ提供装置において、
前記コンテンツ保存手段が保存するクラスタのデータは、前記通信手段が受信した他のコンテンツ提供装置から転送されたクラスタのデータである
コンテンツ提供装置。
【請求項６】
請求項４記載のコンテンツ提供装置において、
前記コンテンツ保存手段が保存するクラスタのデータは、所定のコンテンツ入力手段から転送されて前記通信手段が受信したクラスタのデータである
コンテンツ提供装置。
【請求項７】
請求項４記載のコンテンツ提供装置において、
前記コンテンツ保存手段が保存するクラスタのデータは、前記通信手段が所定のサーバから受信した鍵のデータに基づいて暗号化して保存する
コンテンツ提供装置。
【請求項８】
所定のネットワークと通信を行う通信手段と、
前記通信手段を介して受信したキューデータに基づいて、所定のコンテンツを分割したクラスタデータを指示されたアドレスから転送させる制御手段と、
前記制御手段の制御で受信した各クラスタデータを集めてコンテンツのデータを得るコンテンツ取得手段とを備えた
コンテンツ受信装置。
【請求項９】
請求項８記載のコンテンツ受信装置において、
前記コンテンツ取得手段が取得したクラスタのデータは、前記キューデータに含まれたクラスタデータ毎に個別の鍵のデータに基づいて復号する
コンテンツ受信装置。
【請求項１０】
請求項９記載のコンテンツ受信装置において、
前記コンテンツ取得手段で復号したクラスタのデータは、前記キューデータに含まれた鍵のデータに基づいて更に別の暗号化を行って保存する
コンテンツ受信装置。
【請求項１１】
所定のネットワークを介して配信可能なコンテンツに関するデータを管理するコンテンツデータベースの作成と、
前記コンテンツデータベースで管理される各コンテンツのクラスタ分けに関するデータを持つコンテンツクラスタリストの作成と、
前記コンテンツクラスタリストで示された各クラスタを保管しているアドレスに関するクラスタデータベースの作成とを行い、
作成された各データベース及びリストのデータに基づいて、コンテンツの配信管理を行う
サーバ管理方法。
【請求項１２】
請求項１１記載のサーバ管理方法において、
さらに前記クラスタデータベースで示された各クラスタの保管場所毎に、各クラスタを暗号化する鍵を管理する認証用データベースを作成する
サーバ管理方法。
【請求項１３】
請求項１２記載のサーバ管理方法において、
前記コンテンツクラスタリストに保管されたクラスタ分けに関するデータと、前記クラスタデータベースに保管された各クラスタを保管しているアドレスに関するデータと、前記認証用データベースに保管された暗号化用鍵に関するデータとから、コンテンツを再生するためのキューシートを作成し、
作成されたキューシートを、コンテンツデータを要求するアドレスに前記ネットワークを介して送信する
サーバ管理方法。
【請求項１４】
所定のネットワークを介して受信したコンテンツを、そのコンテンツを分割したクラスタ単位で、少なくとも一部のクラスタを保存するコンテンツ保存処理と、
前記コンテンツ保存処理で保存されたコンテンツの番号と、保存されたクラスタの番号とを管理し、受信したコンテンツのクラスタの転送要求に応じて、前記コンテンツ保存処理で保存した所定のクラスタを、外部から要求されたアドレスに転送するクラスタデータ送信処理とを行う
コンテンツ提供方法。
【請求項１５】
請求項１４記載のコンテンツ提供方法において、
前記コンテンツ保存処理で保存するクラスタのデータは、所定のネットワークを介して接続されたコンテンツ蓄積手段が蓄積したクラスタのデータを転送したものである
コンテンツ提供方法。
【請求項１６】
請求項１４記載のコンテンツ提供方法において、
前記コンテンツ保存処理が保存するクラスタのデータは、所定のネットワークを介して外部から入力したコンテンツを分割したデータである
コンテンツ提供方法。
【請求項１７】
請求項４記載のコンテンツ提供方法において、
前記コンテンツ保存処理で保存するクラスタのデータは、所定のサーバから受信した鍵のデータに基づいて暗号化して保存する処理である
コンテンツ提供方法。
【請求項１８】
所定のネットワークを介して受信したキューデータに基づいて、所定のコンテンツを分割したクラスタデータを指示されたアドレスから転送させ、
その転送処理で受信した各クラスタデータを番号順に集めて、コンテンツのデータを得るコンテンツ取得処理を行う
コンテンツ受信方法。
【請求項１９】
請求項１８記載のコンテンツ受信方法において、
前記コンテンツ取得処理で取得したクラスタのデータは、前記キューデータに含まれたクラスタデータ毎に個別の鍵のデータに基づいて復号する復号処理を行う
コンテンツ受信方法。
【請求項２０】
請求項１９記載のコンテンツ受信方法において、
前記コンテンツ取得処理で復号したクラスタのデータは、前記キューデータに含まれた鍵のデータに基づいて更に別の暗号化を行って保存する
コンテンツ受信方法。
【請求項２１】
所定のネットワークに接続されたサーバ側で、
前記ネットワークを介して配信可能なコンテンツに関するデータを管理するコンテンツデータベースの作成と、
前記コンテンツデータベースで管理される各コンテンツのクラスタ分けに関するデータを持つコンテンツクラスタリストの作成と、
前記コンテンツクラスタリストで示された各クラスタを保管しているアドレスに関するクラスタデータベースの作成とを行い、
作成された各データベース及びリストのデータに基づいて、コンテンツの配信管理を行い、
前記ネットワークを介して前記サーバに接続可能な機器側で、
受信したコンテンツを、そのコンテンツを分割したクラスタ単位で、少なくとも一部のクラスタを保存するコンテンツ保存処理と、
前記コンテンツ保存処理で保存されたコンテンツの番号と、保存されたクラスタの番号とを管理し、受信したコンテンツのクラスタの転送要求に応じて、前記コンテンツ保存処理で保存した所定のクラスタを、前記サーバから指示されたアドレスに転送するクラスタデータ送信処理とを行う
コンテンツ配信方法。
【請求項２２】
請求項２１記載のコンテンツデータ配信方法において、
前記サーバに接続可能な機器から別の機器に転送されたクラスタデータを、前記サーバから送られたキューデータに基づいて番号順に集めて、コンテンツのデータを得るコンテンツ取得処理を行う
コンテンツ配信方法。
【請求項２３】
請求項２２記載のコンテンツ受信方法において、
前記それぞれの機器で保存されるクラスタのデータは、前記サーバ側から送られるキューデータに含まれた鍵のデータに基づいて、クラスタ毎に個別の暗号化処理を行う
コンテンツ配信方法。
【請求項２４】
所定のネットワークに接続されるサーバで実行されるプログラムにおいて、
当該サーバが管理するコンテンツに関するデータを持つコンテンツデータベースを作成する機能と、
前記コンテンツデータベースで管理される各コンテンツのクラスタ分けに関するデータを持つコンテンツクラスタリストを作成する機能と、
前記コンテンツクラスタリストで示された各クラスタを保管しているアドレスに関するクラスタデータベースを作成する機能を実行する
プログラム。
【請求項２５】
請求項２４記載のプログラムにおいて、
認証用データベースを作成する機能を備え、前記クラスタデータベースで示された各クラスタの保管場所毎に、各クラスタを暗号化する鍵を前記認証用データベースが管理する処理を実行する
プログラム。
【請求項２６】
請求項２５記載のプログラムにおいて、
前記コンテンツクラスタリストに保管されたクラスタ分けに関するデータと、前記クラスタデータベースに保管された各クラスタを保管しているアドレスに関するデータと、前記認証用データベースに保管された暗号化用鍵に関するデータとを、コンテンツを再生するためのキューシートとして、コンテンツデータを要求するアドレスに前記ネットワークを介して送信する処理を実行する
プログラム。
【請求項２７】
所定のネットワークを介して受信したコンテンツを、そのコンテンツを分割したクラスタ単位で、少なくとも一部のクラスタを保存するコンテンツ保存処理を行う機能と、
前記コンテンツ保存処理で保存されたコンテンツの番号と、保存されたクラスタの番号とを管理し、受信したコンテンツのクラスタの転送要求に応じて、前記コンテンツ保存処理で保存した所定のクラスタを、要求されたアドレスに転送する制御処理を行う機能とを実行する
プログラム。
【請求項２８】
請求項２７記載のプログラムにおいて、
前記コンテンツ保存処理で保存するクラスタのデータは、所定のサーバから受信した鍵のデータに基づいて暗号化して保存する処理である
プログラム。
【請求項２９】
所定のネットワークを介して受信したキューデータに基づいて、所定のコンテンツを分割したクラスタデータを指示されたアドレスから転送させる制御処理と、
前記制御処理による制御で受信した各クラスタデータを集めてコンテンツのデータを得るコンテンツ取得処理とを実行する
プログラム。
【請求項３０】
請求項２９記載のプログラムにおいて、
前記コンテンツ取得処理で取得したクラスタのデータは、前記キューデータに含まれたクラスタデータ毎に個別の鍵のデータに基づいて復号する
プログラム。
【請求項３１】
請求項２９記載のプログラムにおいて、
前記コンテンツ取得処理で復号したクラスタのデータは、前記キューデータに含まれた鍵のデータに基づいて更に別の暗号化を行って保存する
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば映像プログラムなどのコンテンツデータをインターネットなどのネットワークを経由して配信する場合に適用して好適なサーバ、コンテンツ提供装置及びコンテンツ受信装置と、これらの装置に適用されるコンテンツ提供方法及びコンテンツ受信方法、並びにこれらの方法を実行するプログラムに関する。
【背景技術】
【０００２】
従来、インターネットを経由して映像プログラムなどの比較的大容量のコンテンツデータを配信するストリーミングサービスでは、コンテンツを提供するサーバが一つまたは、一ヶ所に置かれ、多数のクライアントが集中的に接続される。
【０００３】
即ち、例えば図２１に示すように、１台のサーバ１がネットワーク上に用意されて、サービスを受けるクライアント側の機器であるＣＰＥ（Customer Premise Equipment）２ａ〜２ｎが複数台用意されて、それぞれのＣＰＥ２ａ〜２ｎで、サーバ１に用意されたコンテンツデータの配信を受けることができる構成としてある。ここでは、１４台のＣＰＥ２ａ〜２ｎを用意してあり、その内の７台のＣＰＥ２ａ〜２ｇが、サーバ１からのコンテンツデータの配信を受けているサービス中であり、他のＣＰＥは待機中としてある。ここで１４台を例として示したのは説明を簡単するためであり、実際のコンテンツデータ配信では、より多くの数のクライアントからの同時アクセスがあることは多々ある。
【０００４】
特許文献１には、インターネットなどの通信ネットワークを介して、コンテンツデータなどを配信することについての開示がある。
【特許文献１】特開２００３−１９６４９１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このようにサーバにはクライアントからの同時アクセスがあるため、サーバは、接続されたクライアントの数の総数に相当する計算負担とネットワーク負担がかかることになる。一般には、コンテンツの配信を開始したサービス開始直後には、沢山のクライアントが同時にリクエストする事になり、サーバの能力が十分でなければサーバ・ダウンの障害が発生し、その防止の為に能力を十分に用意すれば、それだけコストの増加を強いられる。サービスの開始から時間が立てばリクエストは減るので、用意したサーバ能力は過剰投資になる。また、人気の高騰などで予期せぬリクエストの増加にサーバの強化が追いつかずにサーバ・ダウンしてビジネスチャンスを逃す可能性もある。このようなコンテンツ配信システムでは、例えば同時アクセスの想定数は、人気の高いコンテンツの場合、１００万台を超える場合もある。
【０００６】
図２１の例では、７台のＣＰＥ２ａ〜２ｇがサービスを受けているが、このような場合、サーバ１には、７台分の演算負荷（各ＣＰＥとほぼ同じだけの演算負荷がかかる事が多い）と、７台分のネットワーク負荷がかかってしまう事になる。その為、サーバにはクライアント側の機器より高いコストの装置が要求され、図２１の例では最悪、ＣＰＥ７台分の設備投資となってしまう。また、サーバには統計的に最大の数の能力を用意しておかなければならないが（ここでは例えば７台を最大の同時アクセス数と想定する）、通常のサービス時には必ずしも最大に達していない。もし、平均で２台程度しかサービスしていないと仮定すれば、５台分の能力の過剰投資とも考えられる。
【０００７】
また、このようなコンテンツ配信システムでは、セキュリティ強度も弱いものが多い。多くの場合、サーバ負荷、および、サーバコストの低減を目的の為、暗号化を行わないものが多かった。その為、盗まれる危険が大きく、価値のあるコンテンツをネットワークで配信することは、ほとんどなかった。また、暗号化を行っても、トラフィックの度に暗号化するのが難しく、一般にはデータ配信時の暗号化は、小さなサイズのデータ（テキスト等）にしか適用していなかった。大きなストリームではコストを抑える為に暗号化済みのデータを流していたが、その場合は、多数のＣＰＥで共通に同じ鍵を使っていることになり、また長い間コンテンツが同じ鍵で暗号化され、同じ鍵が何度も送られてくる為、鍵解析のヒントを与えることになる等の問題があり、暗号の強度が低い。
【０００８】
本発明の第１の目的は、コンテンツのネットワークによる配信が、サーバの負担を少なくして行えるようにすることにある。また本発明の第２の目的は、コンテンツのネットワークによる配信が、セキュリティ強度を高くして行えるようにすることにある。
【課題を解決するための手段】
【０００９】
本発明は、所定のネットワークに接続されたサーバ側で、ネットワークを介して配信可能なコンテンツに関するデータを管理するコンテンツデータベースの作成と、コンテンツデータベースで管理される各コンテンツのクラスタ分けに関するデータを持つコンテンツクラスタリストの作成と、コンテンツクラスタリストで示された各クラスタを保管しているアドレスに関するクラスタデータベースの作成とを行い、作成された各データベース及びリストのデータに基づいて、コンテンツの配信管理を行い、サーバに接続可能な機器側で、受信したコンテンツを、そのコンテンツを分割したクラスタ単位で、少なくとも一部のクラスタを保存するコンテンツ保存処理と、コンテンツ保存処理で保存されたコンテンツの番号と、保存されたクラスタの番号とを管理し、受信したコンテンツのクラスタの転送要求に応じて、コンテンツ保存処理で保存した所定のクラスタを、サーバから指示されたアドレスに転送するクラスタデータ送信処理とを行うようにしたものである。
【００１０】
このようにしたことで、コンテンツのデータを、そのコンテンツを分割して生成されたクラスタ単位で、ネットワーク上の機器に分散して保存させることが可能になり、コンテンツの配信を受ける機器側では、その分散して保存されたクラスタ単位のコンテンツデータを、サーバから指示されたアドレスにアクセスして収集できるようになる。
【発明の効果】
【００１１】
本発明によると、コンテンツのデータを、そのコンテンツを分割して生成されたクラスタ単位で、ネットワーク上の機器に分散して保存させることが可能になり、コンテンツの配信を受ける機器側では、その分散して保存されたクラスタ単位のコンテンツデータを、サーバから指示されたアドレスにアクセスして収集でき、サーバから直接コンテンツデータの配信を受ける必要がなくなり、コンテンツデータの同時配信の要求がある場合に、アクセスをネットワーク上の各機器で分散させることが可能になり、サーバに過大な同時アクセス機能がなくても、多くのユーザへのコンテンツデータの同時配信が可能になる。
【００１２】
この場合、サーバが認証用データベースを備えて、クラスタデータベースで示された各クラスタの保管場所毎に、各クラスタを暗号化する鍵を認証用データベースが管理することで、それぞれの機器で分散保管されるクラスタ単位のコンテンツデータが、それぞれ個別の鍵で暗号化されて保管されることになり、コンテンツデータのセキュリティ強度が高くなる。
【００１３】
また、コンテンツクラスタリストに保管されたクラスタ分けに関するデータと、クラスタデータベースに保管された各クラスタを保管しているアドレスに関するデータと、認証用データベースに保管された暗号化用鍵に関するデータとを、コンテンツを再生するためのキューシートとして、コンテンツデータを要求する機器側に送ることで、コンテンツデータを要求する機器では、そのキューシートで指示されたデータに基づいて、コンテンツをネットワーク上から分散して収集できると共に、その収集したコンテンツの復号が行え、良好に処理できるようになる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の一実施の形態を、図１〜図２０を参照して説明する。
図１は、本例のネットワークシステムの全体構成の例を示した図である。サービスを提供する側としては、サービスサーバ１０１とコンテンツサーバ１１０が用意してあり、それぞれのサーバがインターネット９９に接続できる構成としてある。各サーバについては、１つのサーバに複数の機能を含めても構わないし、１つの機能を複数のサーバに分けても構わない。また、処理の分散の為にサービスサーバは複数の装置に分割しても良い。
サービスを受ける側としては、ユーザネットワーク装置１０ａ，１０ｂ，‥‥が多数用意してあり、それぞれのユーザネットワーク装置１０ａ，１０ｂ，‥‥には、アプリケーション装置５０ａ，５０ｂ，‥‥が接続してある。各ユーザネットワーク装置１０ａ，１０ｂ，‥‥は、プロバイダ２００，３００を介してインターネット９９に接続される。ここでは、第１のプロバイダ２００と第２のプロバイダ３００を示してある。ユーザネットワーク装置には、アプリケーション装置以外の装置、例えばコンテンツ入力装置７０が接続される場合もある。
【００１５】
各プロバイダ２００，３００には、プロバイダストレージ２１０，３１０を置く事も出来る。コンテンツサーバ自身や、プロバイダストレージ（コンテンツサーバと同じだがネットワーク負荷を分散させる為、プロバイダに近い所に設置するのが好ましい）は、ユーザネットワーク装置と同様の機能のものが使用可能である。但し、データを保存するディスクの容量を大きくする等の変更は適宜行われる。ユーザネットワーク装置で保管されているコンテンツデータは全て一時的に保管するもので、一定時間が経過して再利用されなかった場合には破棄していく（揮発）が、コンテンツサーバ、プロバイダストレージに保管されているデータの一部は破棄しない設定（不揮発）をする。この設定自体はサービスサーバ１０１から指示されるものであり、有料コンテンツ等、コンテンツ入力装置７０などを使用して外部から入力されたコンテンツに不揮発の設定をする。また、コンテンツサーバ、プロバイダストレージにも揮発するデータ領域も確保しておき、ユーザネットワーク装置の利用度合（利用しているユーザが多いとコンテンツを提供するユーザネットワーク装置では能力が足りなくなる可能性もある）に応じて複製される。また、プロバイダに近い所に設置すればセンター側へのネットワーク負荷を軽減する事で、コストを縮小できる。
【００１６】
なお、ネットワークに接続されるためのハードウェア構成としては、ユーザネットワーク装置、コンテンツサーバ、プロバイダストレージは基本的には同じであり、制御処理構成やアプリケーションを実行するための構成などが各機器で異なる。図１に示したシステムはユーザ側からの要求で、映像プロバイダなどのコンテンツデータを配信する、いわゆるビデオオンデマンドを行う場合を想定している。ネットワークに接続されてコンテンツデータを扱う機器（即ちユーザネットワーク装置／コンテンツサーバ／プロバイダストレージ）は、後述するように、ネットワークに接続される機構と、コンテンツデータを記憶（保存）する記憶手段としてのハードディスク（ＨＤ）記録再生部、それに暗号／復号の機構部を備えている。ハードディスクには、サービス提供側が提供したいコンテンツデータが分割、暗号化して格納され、ユーザがサービスを受ける時に、他の装置からかき集めてきて再構成する処理が実行される。これを実現する為の手順として、後述するように、コンテンツ登録手順と、コンテンツ取得手順と、コンテンツ事前配布手順とを実行するようにしてある。
【００１７】
次に、ネットワークに接続される各機器の構成について説明する。まず、各機器の機能の概要を説明すると、サービスサーバ１０１は、認証データベース（ユーザネットワーク装置認証と装置契約／属性）と、コンテンツデータベース（コンテンツの管理）と、コンテンツクラスタリストデータベース（コンテンツのクラスタリスト）と、クラスタリストデータベース（ユーザが保管しているクラスタリスト）とを備える。コンテンツを保管しているサーバであるコンテンツサーバは、後述するユーザネットワーク装置と同等の構成ものが使用可能である。ユーザネットワーク装置は、従来例で説明したＣＰＥに相当する機能を有する機器であり、ネットワークに接続する機能と、コンテンツデータなどを保存する機能と、暗号／復号の機能を有する。コンテンツ入力装置は、コンテンツを入力する装置である。ユーザアプリケーション装置は、映像再生装置やテレビジョン受像機やオーディオ受信機（ラジオ受信機）などの機器で構成される。
【００１８】
なお、ビデオプログラムやオーディオプログラム等の提供物であるコンテンツは、ファイルの形で表現される。このコンテンツは、クラスタと称されるコンテンツを分割した最小単位毎に扱うようにしてあり、暗号／復号、保存等の処理についても、クラスタ単位で実行される。１つのコンテンツでは各クラスタのサイズが皆等しい大きさとする。また、コンテンツを分割したクラスタは、クラスタリストと称されるコンテンツを複数まとめたリスト（クラスタ番号列）によって管理され、クラスタ番号順にデータが集められることで、１単位のコンテンツのデータが得られるようにしてある。ただし、ユーザネットワーク装置がリクエストを行うときはオフセット指定（途中から）することも可能である。また本例の場合には、キューシートと称されるコンテンツを再構築するための情報を使用して、サービスサーバがユーザネットワーク装置やコンテンツサーバ、プロバイダストレージに指示を送るようにしてある。このキューシートには、クラスタリストの順や持っているユーザネットワーク装置のアドレス情報、クラスタの鍵などの情報をまとめている。
【００１９】
コンテンツデータを分割したクラスタについて説明すると、本例では、コンテンツデータを流通させる際には、コンテンツはクラスタという単位で等分化されて扱うようにしてあり、このクラスタには番号が振られて管理される。１つのコンテンツデータが再生される事は、即ち、番号順にクラスタが並べられる事である。このクラスタを複数並べたものをクラスタリストと呼ぶ。ネットワーク転送や暗号化は、この単位で行い、ユーザネットワーク装置、コンテンツサーバ、プロバイダストレージ等には、この単位で保管されリクエストを受ける。クラスタリストは必ずしも順番とならずに、例えば１，２，５，８のように様に飛んでいても構わないが、クラスタの番号の小さい方から並べられている。コンテンツデータを再構築する際には、コンテンツの保存されている複数のコンテンツサーバ（または、ユーザネットワーク装置、プロバイダストレージ）にクラスタリストの単位でリクエストし、それをユーザネットワーク装置内で並べ替える。また、受けとるコンテンツサーバ（またはユーザ装置、プロバイダストレージ）ごとに違う暗号鍵がかけられていて、それを復号化して、自装置の暗号鍵で暗号化する。暗号化するのはコンテンツデータを保護する為であり、コンテンツサーバごとに違う鍵で暗号化するのは、暗号鍵が漏洩した時の被害を限定する為である。
【００２０】
これらの処理の手順や、情報（相手の装置のＩＰアドレスや、コンテンツの暗号鍵）はサービスサーバより送られてくる。本システムではデータが暗号化されて別の装置に分散されて保管されているが、分散の情報や鍵情報は全てサービスサーバが一元管理する仕組みとしいある。この為、情報の漏洩の可能性を限定し、セキュリティを保っている。本システムでは、サービスサーバがユーザネットワーク装置、コンテンツサーバ、プロバイダストレージに渡す情報を、キューシートという時間的（ファイルの先頭から）に並べられたファイルにまとめている。
【００２１】
そして、本例によるコンテンツ配信処理としては、ユーザネットワーク装置を相互に接続し、従来はサーバから行っていたコンテンツ送信を、ユーザネットワーク装置で行うことにより、サーバの負担を軽くするようにしたものである。具体的には、例えば図５に示すように、１台のサーバ１（このサーバは図１でのサービスサーバとコンテンツサーバの双方が含まれている）と、そのサーバ１からコンテンツの配信を受ける１４台のユーザネットワーク装置（ＣＰＥ）２ａ〜２ｎが、ネットワークに接続されているとして、その内の７台のユーザネットワーク装置２ａ〜２ｇがサービスを受けている。
【００２２】
この場合、本例では、コンテンツのデータについては主に互いに接続されたユーザネットワーク装置から獲得するようにしている。図５の例では、最初にコンテンツデータの配信を受けるＣＰＥ２ｂについては、サーバ１（コンテンツサーバ）からコンテンツのデータを受信するが、他のＣＰＥは、そのＣＰＥ２ｂに保存されたデータを順に転送するようにしてある。この場合、例えばコンテンツを２分割して（即ち２つクラスタに分割して）、１つのＣＰＥが最大で２つのＣＰＥ（もしくはサーバ）からコンテンツを受信する。或いは、より多くの数に分割したクラスタを生成させても良い。但し、分割数が多くなると、それだけ各ＣＰＥ（ユーザネットワーク装置）での処理負担が多くなる。また、自身の装置内にコンテンツの一部を保存している場合には、自身の装置内からデータを補完する為、ネットワークへの負荷を更に軽減する事が出来る。
【００２３】
図５の例では、ほとんどのＣＰＥが別のＣＰＥからコンテンツを獲得しているが、コンテンツの保存状態によっては、十分な送信ＣＰＥが獲得出来ないかも知れないが、その場合はサーバから受信する事になる。また、コンテンツを受信すると、その一部をＣＰＥ内に保存し、他のＣＰＥからの要求に応える構成とする。これによって、よりリクエストの多いコンテンツの複製は多く作られていく事により、サーバの負担は軽くなるのである。逆にリクエストの少ないコンテンツの場合は、一対一のサーバクライアントモデルに近づくが、リクエストが少ない為、もともとサーバの負担は軽い。また、この柔軟な仕組みにより、過剰なサーバ投資をしなくても、リクエストの変化に対応が出来る様になる。
【００２４】
次に、ＣＰＥであるユーザネットワーク装置の構成例を、図２を参照して説明する。ユーザネットワーク装置１０は、ユーザネットワーク装置全体の動作を司る制御手段である中央制御ユニット（ＣＰＵ）１１と、ユーザネットワーク装置の処理プログラムなどが記憶されたＲＯＭ１２と、データ処理に使用されるＲＡＭ１３と、コンテンツデータなどを保存するハードディスク記録再生部１４と、プロバイダを介してネットワークに接続するためのネットワークコントローラ１５と、映像データやオーディオデータなどの入出力用のポート（以下ＡＶポートと称する）を制御するＡＶポートコントローラ１６が、暗号機能ブロック部（耐タンパー機構）２０の機構で保護されている。
【００２５】
ハードディスク記録再生部１４にコントローラを保存する際には、既に説明したクラスタ単位でコンテンツが断片化されて保存され、それぞれのクラスタが別の暗号キーで暗号化されている。その暗号化に対応する鍵は、この装置とは別のサーバ側が保管していて、再生時以外はユーザネットワーク装置内には存在しない。ネットワークコントローラ１５としては、例えば100BASE-T 等の通信規格の適用が想定される。ＡＶポートコントローラ１６に接続される出力ポートとしては、その出力ポートに接続される機器（映像機器やオーディオ機器など）との間に、別の装置を挟みにくくする為に、例えば光ケーブルなどで接続するための光学デバイスを用いたポートとするのが望ましい。データは本ポート上でも暗号化されて流す。
【００２６】
暗号機能ブロック部（耐タンパー機構）２０については、ここでは、耐タンパー機構の施されたハードウェアで実装するようにしてあり、暗号化と復号化の機能を実行する暗号化・復号化モジュール部２１を備える。この暗号化・復号化モジュール部２１では、ここでは例えばＡＥＳ（Advanced Encryption Standard）と称される米国商務省標準技術局によって定められた標準暗号を適用するが、暗号強度が十分であれば、triple-DES等の別の暗号方式でも良い。また、暗号化と複合化のモジュールが独立していても良い。このモジュール部２１には、暗号／復号用のキー（鍵）を保存しておくテーブル２２が接続してあり、１ペア以上の暗号を保存する。また、暗号化・復号化モジュール部２１とは別の暗号化・復号化モジュール部２４を備え、この暗号化・復号化モジュール部２４にも、暗号／復号用のキーを保存しておくテーブル２３が接続してあり、１ペア以上の暗号を保存する。２つの暗号化・復号化モジュール部２１，２４は、基本的に同じ処理構成である。なお、１つの暗号化・復号化モジュール部でパフォーマンスが十分であれば、２組みのモジュール部を設ける必要はない。
【００２７】
そして暗号機能ブロック部２０は、中央制御ユニット（ＣＰＵ）２５を備え、この中央制御ユニット２５が外部との鍵のやりとりと、各暗号化・復号化モジュール部２１，２４及びキー保存用テーブル２２，２３の管理などを行う。この中央制御ユニット２５は、キー保存用テーブル２２，２３にデータを直接書込める唯一の存在であり、外部から鍵を受けとる場合には、公開鍵暗号方式を用いる。鍵の方式は規定しないが、処理プログラムは、例えば暗号機能ブロック部２０内のＲＯＭ２６から読み込み、ＲＡＭ２７を使用して処理される。また、外部からの問い合わせがある場合には、中央制御ユニット２５の制御で、暗号機能ブロック部２０内のＩＤ記憶部２９に記憶された機器ＩＤを返送する機能も有する。
【００２８】
暗号機能ブロック部２０内のＲＯＭ２６に記憶されるプロバイダの内容としては、例えば、外部からのＩＤの問い合わせ応答、公開鍵方式による外部からの鍵格納要求応答、外部からのデータ加工（複合化と暗号化）要求応答等の機能を有する。ＲＡＭ２７等の処理メモリが暗号機能ブロック部２０内にあるまことで、外部から動作を推測されないようにすることができる。また、ＩＤ記憶部２９は、不揮発性のメモリを使用して、ユーザは改ざん出来ない機構を備えるのが望ましい。さらに、暗号機能ブロック部２０内には、乱数発生器２８を備え、暗号化処理に使用される。この乱数発生器２８は、例えばＩＣのノイズを用いる等、自然現象を用いて生成する方が安全性は高まるが、計算で生成したり、中央制御ユニット２５内で作成しても良い。
【００２９】
次に、ユーザネットワーク装置に接続されるユーザアプリケーション装置の構成を、図３を参照して説明する。ユーザアプリケーション装置は、ユーザがサービスを受ける装置である。ここでは、テレビジョン放送受信用のチューナの様な機器を想定したが、テレビジョン受像機やオーディオ受信装置（ラジオ受信機）等の様な機器でも良い。ここでは、ユーザアプリケーション装置として、ビデオ変換装置５０として示してある。
【００３０】
ビデオ変換装置５０は、暗号機能ブロック部（耐タンパー機構）６０を備えて、その暗号機能ブロック部（耐タンパー機構）６０に配置された復号化モジュール部６１で復号化の処理を行う。ここでは、ユーザネットワーク装置と同様に、例えばＡＥＳと称される米国商務省標準技術局によって定められた標準暗号を適用するが、暗号強度が十分であれば、triple-DES等の別の暗号方式でも良い。鍵は１種類だけ扱うので鍵の保存メモリを内包する。また、外部との鍵のやりとりや、公開鍵暗号方式での鍵の受取りなどの制御を行うために、中央制御ユニット（ＣＰＵ）６２を備える。さらに、ＩＤ記憶部５１と、プログラムが格納されているＲＯＭ６３と、動作用のワークメモリ、スタックメモリであるＲＡＭ６４と、乱数発生器６５を備える。ＲＯＭ６３に格納されたプログラムは公開鍵方式による外部からの鍵格納要求応答、外部からのデータ加工（複合化）要求応答等の機能を有する。また、ＲＡＭ６４を暗号機能ブロック・耐タンパー機構部６０内に備えることで、外部から動作を推測されない。また、乱数発生器６５については、公開鍵暗号方式の鍵の作成に使用し、例えばＩＣのノイズを用いる等、自然現象を用いて生成する方が安全性は高まるが、計算で生成したり、中央制御ユニット６２内で作成しても良い。
【００３１】
また、この暗号機能ブロック部（耐タンパー機構）６０の外部の構成として、映像装置や音声装置を接続する為の双方向の通信ポートであるＡＶポートのコントローラ５３と、映像出力用及び音声出力用のポートのためのＡ／Ｖ変換器５４と、ユーザインターフェース５５とを備える。Ａ／Ｖ変換器５４で変換された信号が出力される映像出力用及び音声出力用のポートには、受像機（映像表示装置）やオーディオ再生装置などが接続される。ユーザインターフェース５５としては、キーボードやリモートコントロール装置などで構成される。このユーザアプリケーション装置であるビデオ変換装置５０は、サービスを受けるのに使用され、簡単なブラウザ機能を有し、サーバにアクセスしてコンテンツを選んでリクエストを行う。保存機能は原則的に無く、バッファはデコードに必要な分だけあれば良い。原則として、ストリームの安定性はユーザネットワーク装置側が保証する。但し、データが途切れたりする障害の可能性はあるので、障害処理は必要である。
【００３２】
次に、コンテンツ入力装置の構成例を、図４を参照して説明する。コンテンツ入力装置は、ユーザネットワーク装置（または、コンテンツサーバ）のＡＶポートを通して、本例のシステムにコンテンツデータを入力する装置である。ここでは、映像を入力する機能を例として説明する。図４に示したコンテンツ入力装置７０は、暗号機能ブロック・耐タンパー機構部８０を備えて、その暗号機能ブロック部（耐タンパー機構）８０に配置された暗号化モジュール部８１で暗号化の処理を行う。ここでは、ユーザネットワーク装置などと同様に、例えばＡＥＳと称される米国商務省標準技術局によって定められた標準暗号を適用するが、暗号強度が十分であれば、triple-DES等の別の暗号方式でも良い。鍵は１種類だけ扱うので鍵の保存メモリを内包する。また、外部との鍵のやりとりや、映像／音声入力されたデータを暗号化してＡＶポートに出力させたり、公開鍵暗号方式での鍵の受取りを行う制御のために、中央制御ユニット（ＣＰＵ）８２を備える。さらに、プログラムが格納されているＲＯＭ８３と、動作用のワークメモリ、スタックメモリであるＲＡＭ８４と、ＩＤ記憶部８５と、乱数発生器８６を備える。ＲＯＭ８３に格納されたプログラムは公開鍵方式による外部からの鍵格納要求応答、外部からのデータ加工（複合化）要求応答等の機能を有する。また、ＲＡＭ８４を暗号機能ブロック部（耐タンパー機構）８０内に備えることで、外部から動作を推測されない。ＩＤ記憶部８５は、機器ＩＤを格納する不揮発性のメモリで、ユーザが改ざん出来ない機構を備え、なりすまし防止の為、耐タンパー機構内部に格納する。また、乱数発生器８６については、公開鍵暗号方式の鍵の作成に使用し、例えばＩＣのノイズを用いる等、自然現象を用いて生成する方が安全性は高まるが、計算で生成したり、中央制御ユニット８２内で作成しても良い。
【００３３】
そして、本例のコンテンツ入力装置７０は、ユーザインターフェース７１と、双方向の通信ポート（ＡＶポート）が接続されるＡＶポートコントローラ７２と、映像入力用及び音声入力用のポートのためのＡ／Ｖ変換器７３とを備える。ユーザインターフェース７１は、リモートコントロール装置やキーボード等で構成されて、例えばコンテンツをサーバに登録するのに使用される。本例のコンテンツ入力装置７０は、本例のシステムにコンテンツを登録するのに使用する。コンテンツに対する、ライセンス情報、課金情報、有効期限、提供形態（機器の制限や、ＣＭの挿入等）は、サービスサーバに登録する。この作業自体はユーザインターフェースを用いて明示的に行う。コンテンツデータは、センター側のコンテンツサーバに、クラスタリスト毎に分散されて格納する。その際に各クラスタに消去しない属性（保存属性）を付加して置く。また、必要に応じてプロバイダストレージにも保存する。基本的には家庭のユーザネットワーク装置には保存しない。また、コンテンツサーバに保存する場合に２つ以上のコピーを作成する様にする事で、装置の故障に対する強度を高めたり、アクセス頻度の高いコンテンツの処理を軽減する事も出来る。
【００３４】
次に、コンテンツサーバの構成について説明すると、基本的に図２に示したユーザネットワーク装置１０と同じ構成が適用できる。但し、ディスク容量、計算能力、暗号処理能力等を、ユーザネットワーク装置よりも強化してあっても良く、またＡＶポートコントローラ１６等が省略された構成であっても良い。ユーザネットワーク装置とコンテンツサーバとを区別するには、機器ＩＤを予約された番号にするか、ネットワークアドレスを用いるか、その両方を利用するという手段がある。コンテンツサーバの場合には、原則としてユーザネットワーク装置と異なり不揮発のコンテンツデータを保管しておくという役割がある（サーバからの指示による）。
【００３５】
次に、サービスサーバの構成について説明すると、サービスサーバは本システムの管理を行うものであり、図１の例では、１つのサーバとして定義しているが、リクエストが多さに応じて負荷分散して複数のサーバに実装しても良い。サービスサーバは、機器の管理、トラフィック（転送ごと）の管理、鍵の管理、サービスの管理を行う。また、それらに対応したデータベース「認証データベース」、「コンテンツデータベース」、「クラスタリストデータベース」、「クラスタリストキーデータベース」を持っている。本システムの機器のネットワークを介したリクエストに応じて、機器の認証、ユーザ契約の確認と課金、コンテンツデータの登録、コンテンツデータの一覧の作成と対応、コンテンツデータの複製や削除やその管理、コンテンツデータの鍵の管理、キューシートの作成、等、本システムでのデータの送受の際に発生する制御を行う。これらは後述する各手順「コンテンツ登録手順」「コンテンツ取得手順」「コンテンツ事前配布手順」で使用される。次に、サービスサーバ内に管理される各データベースについて説明する。なお、図示した各データベース中の値については、あくまでも一例を示したものである。
【００３６】
図６は、認証データベースの例を示した図である。認証データベースは、各ユーザネットワーク機器についての機器ＩＤと、ＩＰアドレスと、契約情報（コース、時間制限等）とが、管理番号を付与して管理するようにしてある。ＩＰアドレスについては更新可能としても良い。機器ＩＤは、本システムに接続された際に確認を行う、認証に用いられる。これによって契約内容が決定し、機器によって許される操作等が決定する。また、この認証で、ＩＰアドレスを更新する。このＩＰアドレスはキューシートを作成する際に用いられる。また、機器のＩＰアドレスの有効性を示す情報（ＩＰアドレスの更新時間等）を実装しても良い。機器ＩＤはなりすましを防止する為、一般には公開しない（ユーザ装置内の耐タンパー機構内に守られていてユーザにも知らせない）。キューシートを作成する時には機器ＩＤをＩＰアドレスに変換して渡される。
【００３７】
図７は、コンテンツデータベースの例を示した図である。コンテンツ番号と、表題と、検索キーワードと、クラスタサイズ(bytes等) と、契約情報（属性）と、説明（html等）とで構成してある。このコンテンツデータベースは、サービスサーバで管理するコンテンツの一覧である。コンテンツ番号はＩＤの様な順不同なものでも良い。表題や検索キーワードはコンテンツの一覧を作成する際に使用する。クラスタサイズは該当するコンテンツのクラスタの大きさを定義する。この機能は原則としてコンテンツの大きさにより決定される。即ち、例えば音楽データ等の小さいデータはサイズも小さく、映像データの様に大きいデータはサイズも大きくする。契約情報は、ユーザの認証に応じて、アクセスの許可をしたり、代価を定義している。
【００３８】
図８は、クラスタリストデータベースの例を示した図である。コンテンツ番号と、総数と、各クラスタ毎の値とが格納される。クラスタリストデータベース内のコンテンツ番号は、「コンテンツデータベース」と対応している。コンテンツごとにクラスタリストを定義している。総数は当該コンテンツのクラスタリストの数である。クラスタ１，クラスタ２‥‥はクラスタ定義であり、クラスタを示す数値列で定義される。クラスタリストはサービスサーバによりコンテンツが登録された時に生成される。クラスタリストに含まれるクラスタは重なっていても、重なっていなくても構わず、重なっていれば冗長性となりネットワーク耐性が増す。
【００３９】
図９は、クラスタリストキーデータベースを、コンテンツ毎に作成した場合の例を示した図である。この表がコンテンツの数だけ用意されるものである。クラスタ番号は「クラスタリストデータベース」のクラスタ１，クラスタ２‥‥の番号にあたり、そのクラスタリストをどの装置が保管しているかを示す。ＩＤ（数値）／ＫＥＹ（数値）は、その装置の機器ＩＤ番号と暗号鍵である。キューシートを作成する際には、ＩＤを「認証データベース」でＩＰアドレスに変換し、ＩＤは直接渡さない。また、装置は稼働状態等で優先度が変わるので、ユーザネットワーク装置からのレポートにより優先順をアップデートする。
【００４０】
次に、キューシートの構成について説明する。図１０は、キューシートの構成例を示した図である。キューシートは、図１０に示すように、キューシートヘッダと、コンテンツ情報１，コンテンツ情報２，‥‥コンテンツ情報ｎ（ｎは任意の整数）で構成される。コンテンツ情報はファイルの頭から順に並んでいる。時系列にならんでいると考えてもいい。キューシートはサーバが作成発行するものだが、暗号鍵情報に関してはユーザネットワーク装置が発行した公開鍵で暗号化して送られる。それを、そのままユーザネットワーク装置のＲＡＭ１３に格納し、必要に応じて暗号機能ブロック・耐タンパー機構部２０に送り登録を行う。キューシートヘッダはキューシート全体に対する情報が必須である。本例では複数のコンテンツを復号して番組を作成する為、複数のコンテンツ数を用意している。コンテンツ情報は時間軸の順に並べられていて順に取得して行く。これは例えばテレビジョン放送の様にＣＭをはさみ込んだり、ユーザ趣向のニュース番組／音楽番組等のオムニバス形式の番組を送る場合に有用である。
【００４１】
図１１は、キューシートヘッダの構成例である。コンテンツ情報数と、指示と、その他の情報などのキューシート全体に対する情報を記述する。コンテンツ情報数は以降に続くコンテンツ情報の数を示す。指示は、受信してＡＶポートに送信するか、単に受信してコピーを作成する、ＡＶポートから受けてクラスタリストを作成する、マルチキャスト受信をする、等の指示が書かれている。
【００４２】
図１２は、コンテンツ情報の構成例である。コンテンツ情報は、コンテンツ情報ヘッダと多数のクラスタ情報の並びから成る。ヘッダにはクラスタ全体に対する情報を格納し、クラスタ情報にはクラスタリストごとの情報を格納する。
【００４３】
図１３は、コンテンツ情報ヘッダの構成例を示す。コンテンツ情報ヘッダは、コンテンツ属性と、クラスタサイズと。保存暗号鍵と、その他の情報などが配置される。コンテンツ属性は、画像、音楽等、コンテンツに関する属性を記述する。但し、コンテンツ属性は、システムによっては必須ではない。クラスタサイズは、１クラスタのサイズが記述される。一般的にはバイト単位で記述される。保存暗号鍵は、ユーザネットワーク装置に保管する時、および、ストリームバッファ用に一時保管するときの暗号鍵に使用する。各クラスタのデータは、予めサーバに送ったユーザネットワーク装置の公開鍵で暗号化されている。
【００４４】
図１４は、クラスタ情報の構成例を示す。クラスタ情報は、コンテンツ番号と、リスト番号と、クラスタ列と、時刻情報と、保存フラグと、複数のIP/Keyで構成される。クラスタ情報はデータを取得する先（別のユーザネットワーク装置）に関する情報が記載されている。コンテンツ番号はコンテンツデータベースのコンテンツ番号を用いる。但し、ＩＤを使用しても良い。リスト番号はクラスタリストデータベースから得られる。クラスタ１、クラスタ２‥‥と並んでいる番号が相当する。このコンテンツ番号とリスト番号を用いて、他のユーザネットワーク装置（もしくはコンテンツサーバ）のデータを特定する。クラスタ列はクラスタリストデータベースから得られた番号列である。この番号はコンテンツ全体における番号である。保存フラグは、このリストを保存、または削除の指示が書込まれる。指示の内容としては、「保存しない」、「一時保存する」、「永久保存する」、「削除する」等を、用意している。一時保存の指示があれば一定時間保存し、その間にリクエストが来なければ削除して行く。永久保存はコンテンツサーバ用に用意したもので削除の指示が無ければ削除しない。最後に削除は、原則として永久保存したリストを削除する為に用意している。
【００４５】
複数のIP/Keyは、各番号のクラスタリストが保存されている、他のユーザネットワーク装置（またはコンテンツサーバ）のIPアドレスと鍵のペアである。複数、用意しているのは、他のユーザネットワーク装置が電源オフや、他のサービス中で、コンテンツの送出が出来ない状態の時に、別の装置からコンテンツを受ける為である。これを元にコンテンツ送出可能な端末をユーザネットワーク装置自身が探す。これによりサービスサーバの負担は軽減する。また、その後に他の装置のネットワーク状況（応答が無い等）の情報はサービスサーバにレポートするので、サービスサーバは自ら確認しなくても、ネットワークの状況を把握する事が出来る。ただし、マルチキャスト受信の指示を受けている場合にはＩＰアドレスは受信するマルチキャストアドレス（これもＩＰアドレスの範疇）となる。
【００４６】
次に、このように構成されるキューシートのサービスサーバでの作成処理を、図２０のフローチャートを参照して説明する。キューシートとしては、コンテンツ登録かコンテンツ取得かの要求により、処理が異なり、まずいずれの処理か判断する（ステップＳ２０１）。そして、コンテンツ取得である場合には、ステップＳ２０２に移り、マルチキャスト受信，ユニキャスト受信，ＡＶポートへの出力，等の指示に従い、キューシートヘッダの指示に値を書き込む。そして、コンテンツデータベースを参照して、コンテンツ番号により検索しクラスタサイズを取得する（ステップＳ２０３）。次に、クラスタリストデータベースを参照して、コンテンツ番号によりクラスタリストを取得する（ステップＳ２０４）。次に、クラスタリストキーデータベースを参照して、コンテンツ番号によりクラスタ番号毎のＩＤと鍵（KEY ）を取得する（ステップＳ２０５）。次に、認証データベースを参照して、ＩＤをＩＰアドレスに変換する（ステップＳ２０６）。そして、これらの得られた情報により、キューシートを作成する（ステップＳ２０７）。
【００４７】
また、ステップＳ２０１で、コンテンツ登録である番号には、ステップＳ２１１に移り、ＡＶポートからの受信をキューシートヘッダの指示に値に書込む。次に、クラスタサイズを決定し、コンテンツデータベースにコンテンツ番号を追加する（ステップＳ２１２）。次に、クラスタリストを作成して、クラスタリストデータベースに追加する（ステップＳ２１３）。次に、認証データベースより機器を選んで、ＩＤとＩＰアドレスを取得する（ステップＳ２１４）。次に、ＩＤ毎に鍵（KEY ）を作成して、ＩＤと共にクラスタリストキーデータベースに追加する（ステップＳ２１５）。そして、作成した情報によりキューシートを作成する（ステップＳ２１６）。
【００４８】
このようにして作成されたキューシートが、サービスサーバからネットワークを介して各機器に送られる。
【００４９】
次に、本例のシステムで実行されるコンテンツ登録手順を、図１５及び図１６を参照して説明する。図１５は、マルチキャストの場合のコンテンツ登録手順であり、図１６は、ユニキャストの場合のコンテンツ登録手順である。このコンテンツの登録は、例えばユーザネットワーク装置、またはコンテンツサーバのＡＶポートに、コンテンツ入力装置を接続して行う。コンテンツ入力装置ではＡＶポート用の暗号を行う為に、暗号化処理を行う。
【００５０】
図１５を参照してマルチキャストでのユーザによる登録手順について説明すると、まず、ユーザネットワーク装置をネットワークに接続、ユーザネットワーク装置とコンテンツ入力装置を接続して、それぞれ電源を入れる。そして、ユーザネットワーク装置とサービスサーバ間で認証を行う（ステップＳ１１，Ｓ１２）。この認証処理は、例えば接続する事で認証動作を開始するように構成すれば良いが、必要ならばスイッチを入れるようにしても良い。この認証処理で、サービスサーバはユーザネットワーク装置のＩＤを「認証データベース」で確認する。次にユーザネットワーク装置を介して、コンテンツ入力装置とサービスサーバ間で認証を行う（ステップＳ１３，Ｓ１４）。なお、以降ではコンテンツ入力装置の通信は、常にユーザネットワーク装置を介して行われる。そして、サービスサーバはコンテンツ入力装置のＩＤを「認証データベース」で確認する。
【００５１】
次に、ユーザがコンテンツ入力装置を用いて、コンテンツ登録の操作を行い、コンテンツ入力装置がサービスサーバに、コンテンツ追加登録を行う（ステップＳ１５）。この処理で、サービスサーバは「コンテンツデータベース」にコンテンツの登録をする。次に、サービスサーバから、コンテンツ入力装置に、コンテンツの送信準備の指示を送る（ステップＳ１６）。この送信準備要求で、ユーザネットワーク装置は、コンテンツ入力装置に対して、ＡＶデータ（コンテンツデータ）要求を逐次行い（ステップＳ１７，Ｓ１９，Ｓ２１‥‥）、その応答及びコンテンツデータを逐次伝送させる（ステップＳ１８，Ｓ２０，Ｓ２２‥‥）。また、サービスサーバは、コンテンツを保存するコンテンツサーバに対して予め受信の指示を出している（ステップＳ２３）。
【００５２】
次に、サービスサーバからユーザネットワーク装置に、コンテンツの送信要求を送り（ステップＳ２４）、ユーザネットワーク装置に蓄積されたコンテンツを、複数のコンテンツサーバに対してマルチキャストで送信する（ステップＳ２５，Ｓ２６，Ｓ２７）。以下、送信要求（ステップＳ２８）と、マルチキャストでの送信（ステップＳ２９，Ｓ３０‥‥）が繰り返される。送信が終了したら、ユーザネットワーク装置は、サービスサーバに対してレポートを送信し（ステップＳ３１）、コンテンツを受信したコンテンツサーバ（又はユーザネットワーク装置）からもレポートを送信する（ステップＳ３２）。送信が終了したらコンテンツ入力装置は切断しても良い。
【００５３】
ユニキャストの場合には、図１６に示すように、まず、ユーザネットワーク装置をネットワークに接続、ユーザネットワーク装置とコンテンツ入力装置を接続して、それぞれ電源を入れる。そして、ユーザネットワーク装置とサービスサーバ間で認証を行う（ステップＳ４１，Ｓ４２）。ここの認証処理で、サービスサーバはユーザネットワーク装置のＩＤを「認証データベース」で確認する。次にユーザネットワーク装置を介して、コンテンツ入力装置とサービスサーバ間で認証を行う（ステップＳ４３，Ｓ４４）。そして、サービスサーバはコンテンツ入力装置のＩＤを「認証データベース」で確認する。
【００５４】
次に、ユーザがコンテンツ入力装置を用いて、コンテンツ登録の操作を行い、コンテンツ入力装置がサービスサーバに、コンテンツ追加登録を行う（ステップＳ４５）。この処理で、サービスサーバは「コンテンツデータベース」にコンテンツの登録をする。次に、サービスサーバから、コンテンツ入力装置に、コンテンツの送信準備の指示を送る（ステップＳ４６）。この送信準備要求で、ユーザネットワーク装置は、コンテンツ入力装置に対して、ＡＶデータ（コンテンツデータ）要求を逐次行い（ステップＳ４７，Ｓ４９，Ｓ５１‥‥）、その応答及びコンテンツデータを逐次伝送させる（ステップＳ４８，Ｓ５０，Ｓ５２‥‥）。そして、ユーザネットワーク装置での準備が完了すると、レポートをサービスサーバに送る（ステップＳ５３）。
【００５５】
次に、サービスサーバは、コンテンツを保存するコンテンツサーバ（又はユーザネットワーク装置：以下の説明ではコンテンツサーバであるとする）に対してキューシートを送り（ステップＳ５４）、コンテンツサーバは、ユーザネットワーク装置に対して、コンテンツデータ要求を行い（ステップＳ５５）、その応答と１単位（１クラスタ）のコンテンツデータをユーザネットワーク装置からコンテンツサーバに転送させる（ステップＳ５６）。コンテンツサーバでは、１クラスタのコンテンツデータを受信して保存する毎に、レポートをサービスサーバに送り（ステップＳ５７）、次のキューシートを受信する（ステップＳ５８）。そして、コンテンツサーバから、ユーザネットワーク装置に対して、コンテンツデータ要求（ステップＳ５９）と、その応答と１クラスタのコンテンツデータの転送（ステップＳ６０）と、レポートの送信（ステップＳ６１）とを、そのコンテンツデータが全て転送されるまで繰り返し実行する。
【００５６】
図１５に示したマルチキャスト送信と、図１６に示したユニキャスト送信とは、いずれを実行しても良く、各ユーザネットワーク装置やコンテンツ入力装置が、いずれも対応していることが好ましいが、マルチキャストの場合、予めサービスサーバに指示されていたコンテンンツサーバがコンテンツを受信してサービスサーバに指示されていたコンテンツの断片を保存することになる。ユニキャストの場合には、ユーザネットワーク装置が一旦コンテンツを貯えて断片化して、サービスサーバに指示されたコンテンツサーバに１つずつ送信することになり、マルチキャストに比べて時間がかかってしまうが、より確実な伝送処理である。
【００５７】
次に、コンテンツ取得手順を、図１７を参照して説明する。コンテンツを受信する際には、ユーザネットワーク装置は複数のユーザネットワーク装置またはコンテンツサーバから断片化されたコンテンツデータを受けとって再構成を行う。まず、ユーザネットワーク装置をネットワークに接続し、ユーザネットワーク装置とアプリケーション装置を接続して、それぞれ電源を入れる。そして、ユーザネットワーク装置とサービスサーバ間で認証を行う（ステップＳ７１，Ｓ７２）。なお、接続する事で認証動作を開始するように構成するのが一般的であるが、必要ならばスイッチを入れることで、認証動作が開始するようにしても良い。この認証処理で、サービスサーバはユーザネットワーク装置のＩＤを「認証データベース」で確認する。次に、ユーザネットワーク装置を介して、アプリケーション装置とサービスサーバ間で認証を行う（ステップＳ７３，Ｓ７４）。以降ではアプリケーション装置の通信は、常にユーザネットワーク装置を介して行われる。この認証処理で、サービスサーバはアプリケーション装置のＩＤを「認証データベース」で確認する。
【００５８】
次に、ユーザがアプリケーション装置を用いてコンテンツ一覧の取得を行う。このため、アプリケーション装置がサービスサーバのコンテンツデータベースから一覧を取得する（ステップＳ７５）。その一覧の表示などを行って、ユーザがコンテンツを選択し、アプリケーション装置がサービスサーバにコンテンツをリクエストする（ステップＳ７６）。サービスサーバはユーザネットワーク装置に「キューシート」を渡し、ＡＶポート再生の指示を出す（ステップＳ７７）。このときの「キューシート」は「クラスタリストデータベース」、「クラスタリストキーデータベース」、「認証データベース」から作成する。
【００５９】
次に、ユーザネットワーク装置は「キューシート」に従って、別のユーザネットワーク装置（複数）に順次コンテンツデータを要求するリクエストをして（ステップＳ７８，Ｓ８１，Ｓ８５‥‥）、コンテンツの断片を取得する（ステップＳ７９，Ｓ８２，Ｓ８７‥‥）。コンテンツを他のユーザネットワーク装置又はコンテンツサーバから受信する受信する際には、同じクラスタリストでも複数の相手にリクエストを行うようにしても良い。実際に受信している最中でも通信の切断に備えて、他のユーザネットワーク装置にサービス可能かどうかの問い合わせは継続して行っておき、障害の際に即座に切り替える様な仕組みにしても良い。コンテンツの断片は、通信相手のユーザネットワーク装置ごとに違う鍵で暗号化されている。その鍵自体は「キューシート」の指示に従い、ユーザネットワーク装置内に登録していく。キューシート自体は、公開鍵で暗号化されて保管されているが、これをそのまま、暗号機能ブロック内のＣＰＵに渡して登録する。従って、実際の鍵がクラック可能な所に平文で置かれることはない。鍵は複数取り扱えるような構造となっていて、コンテンツの断片の復号には鍵のエントリ番号等によってコントロールする。
【００６０】
そして、断片の取得が完了（または失敗や中断）したら、ユーザネットワーク装置はその結果をレポートとしてサービスサーバに送信する（ステップＳ８９）。サービスサーバはその情報を元にクラスタリストデータベースの順位等を更新し、データの確度を向上させる（失敗や中断が多い時は削除もする）。また、サービスサーバは受信中のユーザネットワーク装置に適宜クラスタリストの保存の指示を行い、同時にクラスタリストデータベースも更新する。ユーザネットワーク装置は受けとったコンテンツの断片を暗号化して、メモリおよびＨＤに保存する。保管用の鍵は、「キューシート」の「コンテンツ情報ヘッダ」の「保存暗号鍵」で指示される。この鍵もユーザネットワーク装置自身の発行した公開鍵で暗号化されているので、復号出来るのは耐タンパー機構の内部のＣＰＵだけである。暗号鍵はユーザネットワーク装置内に保存されている。このとき、コンテンツとユーザネットワーク装置の組み合わせにより、決して保存されないクラスタリスト番号を用意し（保存の指示をしないという事）、複数回リクエストを行うことによって１つの装置に全てのデータが保存される事を避ける様にするのが望ましい。
【００６１】
ユーザネットワーク装置で取得して一旦保存したコンテンツは再構成を行い、復号化して、更にＡＶポート用に暗号化して、逐次アプリケーション装置に送り（ステップＳ８０，Ｓ８３，Ｓ８６，Ｓ８８‥‥）、応答を返送させる（ステップＳ８４）。アプリケーション装置は受けとったコンテンツデータを複号化して、映像や音声等に変換する。
【００６２】
図１８，図１９は、コンテンツ事前配布手順を示した図である。一般に、コンテンツを配信するサービスの開始時はアクセスが集中する事が予想され、コンテンツサーバの能力では足りない事が考えられる為、事前配布という手法で予めユーザネットワーク装置に保管するようにしても良い。また、ユーザの趣向や予約操作によって、予めユーザネットワーク装置に保管して置くことにより、ユーザの回線帯域の節約や補助とすることが出来る。特にユーザの回線帯域幅がコンテンツより細い場合は予約による保管が必須となる。また、サービス中のリクエスト数増加によるコピーの作成にも使用される。ここでは事前配布の方法はマルチキャストによるもの（図１８の例）と、ユニキャストによるもの（図１９の例）の２種類が考えられる。
【００６３】
マルチキャストの場合は、一度に多数のユーザ端末が受ける事が出来て、しかもネットワーク帯域を浪費しない為、もっとも配布に適している。図１８を参照して、以下にその手順を説明すると、まず、コンテンツを持っているユーザネットワークとサービスサーバとの間で認証処理を行う（ステップＳ９１，Ｓ９２）。このときには、例えばコンテンツを保持するユーザネットワーク装置に、コンテンツ提供のリクエストを発行する。ユーザネットワーク装置はＯＫ又はＮＧの応答を返す。また、サービスサーバは受信するユーザネットワーク装置にマルチキャスト受信の指示の入った「キューシート」を発行して受信を促す（ステップＳ９３）。準備が整ったら、サービスサーバがトラフィックに高負荷を与えない様に考慮しながら、ユーザネットワーク装置に順次送信の指示を発行し（ステップＳ９４，Ｓ９６‥‥）、コンテンツデータをマルチキャストで送信させる（ステップＳ９５，Ｓ９７‥‥）。受信したコンテンツサーバ（またはユーザネットワークサーバ、プロバイダストレージ）はデータを受信して保存し、受信結果のレポートをサービスサーバに発行する（ステップＳ９９）。この時、通常のコンテンツデータ受信ではクラスタリストで定義された順でデータが発行されるが、マルチキャスト受信の場合は１から順にデータが発行される。その為、保存する際にはクラスタリストの指示にしたがって、間欠的に保存する。サービスサーバはレポートを元に、「クラスタリストデータベース」を更新する。
【００６４】
また、ネットワークの制限やユーザ都合（指示）により事前配布を受ける場合は以下の様になる。ただし、ユーザ指示の場合にはサービスサーバは事前にユーザから指示を受けとっているものとする。まず、コンテンツを持っているユーザネットワークとサービスサーバとの間で認証処理を行う（ステップＳ１０１，Ｓ１０２）。サービスサーバは受信するユーザネットワーク装置に受信の指示の入った「キューシート」を発行して受信を促す（ステップＳ１０３）。「キューシート」は「クラスタリストデータベース」、「クラスタリストキーデータベース」、「認証データベース」から作成する。受信側のユーザネットワーク装置（またはコンテンツサーバ、プロバイダストレージ）は「キューシート」に従って、別のユーザネットワーク装置（複数）に順次リクエストをして（ステップＳ１０４，Ｓ１０８‥‥）、コンテンツの断片を取得し（ステップＳ１０５，Ｓ１０９‥‥）、ハードディスク等に保管していく。この際にも、同じクラスタリストでも複数の相手にリクエストを行って、実際に受信している最中でも通信の切断に備えて、他のユーザネットワーク装置にサービス可能かどうかの問い合わせは継続して行っておき、障害の際に即座に切り替える様な仕組みにしても良い。断片の取得が完了（または失敗や中断）したら、受信側のユーザネットワーク装置はその結果をレポートとしてサービスサーバに送信する（ステップＳ１０７，Ｓ１１０）。サービスサーバはその情報を元にクラスタリストデータベースの順位等を更新し、データの確度を向上させる（失敗や中断が多い時は削除もする）。ユーザネットワーク装置は受けとったコンテンツの断片を暗号化して、ハードディスク等に保存する。保管用の鍵は、「キューシート」の「コンテンツ情報ヘッダ」の「保存暗号鍵」で指示される。この鍵もユーザネットワーク装置自身の発行した公開鍵で暗号化されているので、復号出来るのは耐タンパー機構の内部のＣＰＵでしか出来ない。
【００６５】
以上説明したように、本例のシステムでコンテンツの配信を行うようにしたことで、データ通信がネットワーク的に近い所で行われる為、局所的な負荷がかからず、ネットワーク資源を有効に活用出来る。また、データの通信が分散している為、コンテンツサーバの負荷やネットワーク負荷が低く、過剰投資を抑制できる。
【００６６】
また、全ての通信に暗号をかけているが、暗号の演算は、ユーザネットワーク装置がそれぞれ行う為、特定のサーバに負担がかからない。また、リクエストの集中するコンテンツ程、コンテンツのコピーが増える仕組みの為、リクエストの増加に対してサービスの能力が自然と向上する。さらに、ネットワークが増大しても、コンテンツの保存・送信能力、暗号の演算能力が、比例して増加する為、ネットワーク（サーバ設備）の設計が容易で管理しやすい。
【００６７】
また、コンテンツのコピーが多数作られるため、データ破損障害に強いという効果を有する。コンテンツのコピーがネットワーク的に沢山の場所に置かれ、状態の良いネットワークが選択出来るため、ネットワーク障害に強い。コンテンツはコピーが発生する際に、ネットワーク装置ごとにユニークな鍵で暗号化されるため、１つの鍵が解析されても他のコンテンツデータに用いる事が出来ず、セキュリティ強度が高くなる。さらに、コンテンツが細分化され複数の装置に保存されている為、データを盗む時には複数の装置が必要になり、物理的にセキュリティが高められる。コンテンツのコピーが発生する際に、コンテンツと装置の組み合わせで、絶対に保存しない部分を意図的に作る為、暗号化されたデータの全てを得るのが困難である。この為セキュリティ強度が高くなる。
【００６８】
また、本例のシステムの場合には、基本的に同一構成のハードウェアで、ユーザネットワーク装置とコンテンツサーバとプロバイダゲートウェイを製作可能であるので、量産効果により安価にシステムを構築することが可能となる。さらに、映像プログラムなどのコンテンツを配信する際に、最新のＣＭの挟み込み等が可能なので、既存のテレビジョン放送サービスの置き換えが出来る。
【００６９】
なお、ここまで説明した実施の形態では、ネットワークに接続されるそれぞれの機器は、図２，図３，図４などで説明した専用のネットワーク装置を想定したが、例えば各種データ処理を行うパーソナルコンピュータ装置に、本例での処理に相当する機能を実行するプログラム（ソフトウェア）を実装させて、同様の処理でコンテンツデータの配信を受けたり、コンテンツデータを保存する処理を行うようにしても良い。そのパーソナルコンピュータ装置などのデータ処理装置に実装されるプログラムについては、光ディスク，メモリカードなどの各種記録（記憶）媒体を介して配付しても良く、或いはインターネットなどの通信手段を介して配付しても良い。
【図面の簡単な説明】
【００７０】
【図１】本発明の一実施の形態によるネットワーク全体の構成例を示す構成図である。
【図２】本発明の一実施の形態によるユーザネットワーク装置の構成例を示すブロック図である。
【図３】本発明の一実施の形態によるアプリケーション装置の構成例を示すブロック図である。
【図４】本発明の一実施の形態によるコンテンツ入力装置の構成例を示すブロック図である。
【図５】本発明の一実施の形態によるサービスモデルの例を示す説明図である。
【図６】本発明の一実施の形態による認証データベースの例を示す説明図である。
【図７】本発明の一実施の形態によるコンテンツデータベースの例を示す説明図である。
【図８】本発明の一実施の形態によるクラスタリストデータベースの例を示す説明図である。
【図９】本発明の一実施の形態によるクラスタリストキーデータベースの例を示す説明図である。
【図１０】本発明の一実施の形態によるキューシートの例を示す説明図である。
【図１１】本発明の一実施の形態によるキューシートヘッダの例を示す説明図である。
【図１２】本発明の一実施の形態によるコンテンツ情報の例を示す説明図である。
【図１３】本発明の一実施の形態によるコンテンツ情報ヘッダの例を示す説明図である。
【図１４】本発明の一実施の形態によるクラスタ情報の例を示す説明図である。
【図１５】本発明の一実施の形態によるコンテンツ登録手順の例（マルチキャストの例）を示すシーケンス図である。
【図１６】本発明の一実施の形態によるコンテンツ登録手順の例（ユニキャストの例）を示すシーケンス図である。
【図１７】本発明の一実施の形態によるコンテンツ取得手順の例を示すシーケンス図である。
【図１８】本発明の一実施の形態によるコンテンツ事前配付手順の例（マルチキャストの例）を示すシーケンス図である。
【図１９】本発明の一実施の形態によるコンテンツ事前配付手順の例（ユニキャストの例）を示すシーケンス図である。
【図２０】本発明の一実施の形態によるキューシートの作成処理例を示したフローチャートである。
【図２１】従来のサービスモデルの例を示した説明図である。
【符号の説明】
【００７１】
１…サーバ、２ａ〜２ｎ…ＣＰＥ、１０…ユーザネットワーク装置、１１…中央制御ユニット（ＣＰＵ）、１２…ＲＯＭ、１３…ＲＡＭ、１４…ハードディスク記録再生部、１５…ネットワークコントローラ、１６…ＡＶポートコントローラ、２０…暗号機能ブロック部、５０…ビデオ変換装置、５１…ＩＤ記憶部、５３…ＡＶポートコントローラ、５４…ＡＶ変換部、５５…ユーザインターフェース部、６０…暗号機能ブロック部、７０…ビデオ入力装置、７１…ユーザインターフェース部、７２…ＡＶポートコントローラ、７３…ＡＶ変換部、８０…暗号機能ブロック部、９９…インターネット、１０１…サービスサーバ、１１０…コンテンツサーバ、２００，３００…プロバイダ、２１０，３１０…プロバイダストレージ
【図１】
2005056345.tif 000003
【図２】
2005056345.tif 000004
【図３】
2005056345.tif 000005
【図４】
2005056345.tif 000006
【図５】
2005056345.tif 000007
【図６】
2005056345.tif 000008
【図７】
2005056345.tif 000009
【図８】
2005056345.tif 000010
【図９】
2005056345.tif 000011
【図１０】
2005056345.tif 000012
【図１１】
2005056345.tif 000013
【図１２】
2005056345.tif 000014
【図１３】
2005056345.tif 000015
【図１４】
2005056345.tif 000016
【図１５】
2005056345.tif 000017
【図１６】
2005056345.tif 000018
【図１７】
2005056345.tif 000019
【図１８】
2005056345.tif 000020
【図１９】
2005056345.tif 000021
【図２０】
2005056345.tif 000022
【図２１】
2005056345.tif 000023