(57)【特許請求の範囲】
【請求項１】
クライアントに対する配信用のコンテンツを生成するデータ処理部を有し、
前記データ処理部は、
オリジナルコンテンツに対して異なる付加情報を記録した複数の付加情報記録コンテンツからコンテンツ区分データであるセグメント単位でデータ選択を行ってクライアント提供コンテンツの生成処理を実行する構成であり、
前記クライアント提供コンテンツの生成処理において、コンテンツ配信クライアント単位で異なるセグメント列の選択を実行し、
該セグメント列の選択に際して、
前記コンテンツ配信クライアント単位のセグメント列に設定される付加情報のシーケンスを、配信コンテンツ単位の固有ＩＤと、該固有ＩＤに対する改ざん検証値と、エラー訂正コードを含むデータの繰り返しとなるようにセグメント列の選択を実行してクライアント提供コンテンツの生成処理を実行し、
コンテンツ配信先のクライアントを識別するクライアント情報と、該クライアントに提供したクライアント提供コンテンツのセグメント選択態様を示すセグメント列情報を対応付けた管理情報を生成して記憶部に記録する情報処理装置。
【請求項２】
前記データ処理部は、
コンテンツ区分データであるセグメント単位でデータ抽出領域を設定し、該データ抽出領域のデータをダミーデータで置き換えるとともに、
前記データ抽出領域のデータのみからなるサブコンテンツをコンテンツ配信先のクライアント固有の個別鍵で暗号化してクライアントに提供する請求項１に記載の情報処理装置。
【請求項３】
前記データ処理部は、
コンテンツ配信先のクライアントを識別するクライアント情報と、前記個別鍵との対応情報を前記管理情報中に記録する請求項２に記載の情報処理装置。
【請求項４】
前記付加情報は電子透かしデータとして記録された構成である請求項１に記載の情報処理装置。
【請求項５】
前記データ処理部は、
流通コンテンツに含まれる付加情報の解析処理により、前記流通コンテンツのセグメント列を取得し、取得したセグメント列情報と前記管理情報の登録情報との照合処理により、コンテンツ配信先としてのクライアントを特定する請求項１に記載の情報処理装置。
【請求項６】
前記データ処理部は、
流通した個別鍵と前記管理情報の登録情報との照合処理により、個別鍵配信先としてのクライアントを特定する請求項３に記載の情報処理装置。
【請求項７】
前記データ処理部は、
コンテンツの区分データであるセグメント単位で異なる電子透かしデータを記録した複数の異なる電子透かし記録コンテンツを保持し、
前記クライアントに対する配信処理単位で、前記複数の異なる電子透かし記録コンテンツから異なる組み合わせのセグメント選択を行うことで、クライアント識別情報となるセグメント単位の電子透かしデータ列を設定したコンテンツを生成する請求項１に記載の情報処理装置。
【請求項８】
前記データ処理部は、
コンテンツ区分データであるセグメント単位でデータ抽出領域を設定し、該データ抽出領域のデータをダミーデータで置き換えたメインコンテンツを複数クライアントに共通の共通鍵で暗号化した暗号化メインコンテンツと、
前記データ抽出領域のデータのみからなるサブコンテンツをコンテンツ配信先のクライアント固有の個別鍵で暗号化した暗号化サブコンテンツを生成する請求項１に記載の情報処理装置。
【請求項９】
前記データ処理部は、
前記暗号化メインコンテンツと暗号化サブコンテンツとの合成処理を実行して、クライアント提供コンテンツを生成する請求項８に記載の情報処理装置。
【請求項１０】
前記データ処理部は、
前記暗号化メインコンテンツのデータ領域と暗号化サブコンテンツのデータ領域を示す領域情報をクライアントに対する提供情報として生成する請求項８に記載の情報処理装置。
【請求項１１】
コンテンツ再生処理を実行するデータ処理部を有し、
前記データ処理部は、
コンテンツ区分データであるセグメント単位でダミーデータ領域が設定されたメインコンテンツに対して、前記ダミーデータ領域に対応するコンテンツであるサブコンテンツを合成するコンテンツ合成処理を行い、合成結果としての合成コンテンツを再生する構成であり、
前記メインコンテンツを構成するセグメント列の付加情報のシーケンスは、配信コンテンツ単位の固有ＩＤと、該固有ＩＤに対する改ざん検証値と、エラー訂正コードを含むデータの繰り返しであり、再生コンテンツの漏えい時に、漏えいコンテンツから前記固有ＩＤを正確に解析することを可能とした構成である情報処理装置。
【請求項１２】
前記メインコンテンツの暗号鍵と、前記サブコンテンツの暗号鍵は異なる鍵であり、
前記データ処理部は、
前記メインコンテンツのデータ領域とサブコンテンツのデータ領域を示す領域情報を取得して、該領域情報を参照して適用する鍵の切り替え処理を行う請求項１１に記載の情報処理装置。
【請求項１３】
情報処理装置において実行する情報処理方法であり、
データ処理部が、
オリジナルコンテンツに対して異なる付加情報を記録した複数の付加情報記録コンテンツからコンテンツ区分データであるセグメント単位でデータ選択を行ってクライアント提供コンテンツの生成処理を実行し、
前記クライアント提供コンテンツの生成処理において、コンテンツ配信クライアント単位で異なるセグメント列の選択を実行し、
該セグメント列の選択に際して、
前記コンテンツ配信クライアント単位のセグメント列に設定される付加情報のシーケンスを、配信コンテンツ単位の固有ＩＤと、該固有ＩＤに対する改ざん検証値と、エラー訂正コードを含むデータの繰り返しとなるようにセグメント列の選択を実行してクライアント提供コンテンツの生成処理を実行し、
コンテンツ配信先のクライアントを識別するクライアント情報と、該クライアントに提供したクライアント提供コンテンツのセグメント選択態様を示すセグメント列情報を対応付けた管理情報を生成して記憶部に記録する情報処理方法。
【請求項１４】
情報処理装置において情報処理を実行させるプログラムであり、
データ処理部に、
オリジナルコンテンツに対して異なる付加情報を記録した複数の付加情報記録コンテンツからコンテンツ区分データであるセグメント単位でデータ選択を行ってクライアント提供コンテンツの生成処理を実行させ、
前記クライアント提供コンテンツの生成処理において、コンテンツ配信クライアント単位で異なるセグメント列の選択処理を実行させ、
該セグメント列の選択に際して、
前記コンテンツ配信クライアント単位のセグメント列に設定される付加情報のシーケンスを、配信コンテンツ単位の固有ＩＤと、該固有ＩＤに対する改ざん検証値と、エラー訂正コードを含むデータの繰り返しとなるようにセグメント列の選択を実行してクライアント提供コンテンツの生成処理を実行させ、
コンテンツ配信先のクライアントを識別するクライアント情報と、該クライアントに提供したクライアント提供コンテンツのセグメント選択態様を示すセグメント列情報を対応付けた管理情報を生成して記憶部に記録させる処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、および情報処理方法、並びにプログラムに関する。特に、コンテンツの不正利用の防止や不正流通コンテンツの出所追跡を可能とするシステムにおいて利用される情報処理装置、および情報処理方法、並びにプログラムに関する。
【背景技術】
【０００２】
昨今、インターネット等のネットワークを介したデータ通信が盛んになり、多くの画像データや音楽データ等がネットワークを介して盛んに流通している。
【０００３】
音楽データ、画像データ等の多くのコンテンツは、その作成者あるいは販売者に著作権、頒布権等が保有されている。従って、例えばサービスプロバイダがサーバからネットワークを介してユーザにコンテンツを提供する場合、正規な利用権を持つユーザのみにコンテンツの利用を許容する利用制御を行うのが一般的である。
【０００４】
具体的には、例えばコンテンツを暗号化コンテンツとして送信し、正規なコンテンツ購入処理を行ったユーザに提供した暗号鍵によってのみ復号可能とするといった制御等が行われる。しかし、このような処理を行っても、例えば暗号化コンテンツを取得したユーザが復号したコンテンツや、暗号鍵を不正に配布、あるいは公開するなどの処理を行ってしまうと不特定多数のコンテンツの不正利用が発生する。特に昨今は、ネットワークを介したデータの不正公開や配信が行われるケースが多く、これらの不正をいかに防止するかが大きな課題となっている。
【０００５】
具体的な暗号鍵やコンテンツの不正流通例について図を参照して説明する。
図１は、暗号鍵の不正公開の一例を示す図である。コンテンツ配信サーバ１０は、暗号鍵１２を適用して暗号化した暗号化コンテンツ１１を暗号鍵１２とともに正規なコンテンツ購入手続を実行したクライアントＡ２１、クライアントＢ２２に提供する。
【０００６】
これらのクライアントＡ，２１、クライアントＢ２２は、暗号鍵１２を適用して暗号化コンテンツ１１の復号を行ってコンテンツ再生を実行することができる。
しかし、ここで、クライアントＢ２２が、暗号鍵１２を例えば誰でもアクセス可能なネット上のサイトに公開するといった行為を行ったとする。
【０００７】
このような鍵の公開処理を実行すると、公開された暗号鍵３１は、不特定多数のユーザにより取得可能な状態となる。
結果として、例えば正規なコンテンツ購入を行っていない不正ユーザ２３によって、公開された暗号鍵３１がネットを介して取得され、さらに、暗号化コンテンツのコピー３２を他のクライアント等から取得して暗号化コンテンツのコピー３２を、公開された暗号鍵３１を適用して復号しコンテンツ再生を行うことができる。
このような事態が発生すると、コンテンツの不正利用が蔓延することになる。
【０００８】
図１に示す例は、すべてのクライアントに提供する暗号鍵が同じ暗号鍵であるため、１人の不正者が鍵を漏えいしてしまうと、他のクライアントに提供した全てのコンテンツがすべてその不正鍵によって復号可能な事態となる。また、不正に鍵を公開したクライアントを特定することも困難となる。
【０００９】
このような問題を解決する手法としては、各クライアントに提供する暗号化コンテンツを異なる暗号鍵で暗号化した構成が有効となる。
すなわち、図２に示すように、コンテンツ配信サーバ１０は、
クライアントＡ２４に対しては、暗号鍵Ａ１４を適用して暗号化した暗号化コンテンツを暗号鍵Ａ１４とともに提供する。
クライアントＢ２５に対しては、暗号鍵Ｂ１５を適用して暗号化した暗号化コンテンツを暗号鍵Ｂ１５とともに提供する。
クライアントＣ２６に対しては、暗号鍵Ｃ１６を適用して暗号化した暗号化コンテンツを暗号鍵Ｃ１６とともに提供する。
【００１０】
このような設定とすれば、万が一、いずれかの暗号鍵が漏えいした場合、その漏えい鍵で復号できるコンテンツは、その漏えい鍵によって暗号化された１つの暗号化コンテンツに限られ、また漏えい元、すなわち暗号鍵を公開した不正クライアントの特定も可能となる。
【００１１】
しかしながら、このようにクライアント単位で暗号鍵を変更しようとすると、コンテンツ配信サーバ１０は、各クライアント単位で異なる暗号化コンテンツを生成することが必要となり、サーバ側の処理負荷が増大してしまうという問題が発生する。
【００１２】
図１、図２を参照して説明した例は、コンテンツの暗号化および復号処理に適用する暗号鍵の不正公開や漏えいを行った場合の例であるが、不正公開や漏えいの対象となるのは暗号鍵ばかりではなく、復号されたコンテンツである場合もある。
【００１３】
図３に、復号コンテンツの不正公開の例を示す。
コンテンツ配信サーバ１０は、暗号鍵１２を適用して暗号化した暗号化コンテンツ１１をクライアント２８に提供する。この提供処理は、正規のコンテンツ購入処理として実行される。
【００１４】
しかし、クライアント２８が暗号鍵１２を適用して暗号化コンテンツ１１を復号し、その復号コンテンツ１１を不正に公開してしまうと、結果として、不正公開コンテンツ３３が、図３に示す不正ユーザ２９を含む不特定多数のユーザによって利用可能な状態になってしまう。
【００１５】
このように復号コンテンツが公開されてしまうと、暗号鍵をクライアント単位で変更しても、復号コンテンツの不正利用が蔓延し、また復号コンテンツを不正公開したクライアントを特定することもできない。
【発明の概要】
【発明が解決しようとする課題】
【００１６】
本発明は、例えば上記問題点に鑑みてなされたものであり、不正に公開されたコンテンツの公開元の特定を可能とする情報処理装置、および情報処理方法、並びにプログラムを提供することを目的とする。
【００１７】
また、本発明は、不正にコンテンツを公開した公開元の特定を可能とする構成をサーバの処理負荷を過大に増大させることなく実現する情報処理装置、および情報処理方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１８】
本発明の第１の側面は、
クライアントに対する配信用のコンテンツを生成するデータ処理部を有し、
前記データ処理部は、
オリジナルコンテンツに対して異なる付加情報を記録した複数の付加情報記録コンテンツからコンテンツ区分データであるセグメント単位でデータ選択を行ってクライアント提供コンテンツの生成処理を実行する構成であり、
前記クライアント提供コンテンツの生成処理において、コンテンツ配信クライアント単位で異なるセグメント列の選択を実行し、
コンテンツ配信先のクライアントを識別するクライアント情報と、該クライアントに提供したクライアント提供コンテンツのセグメント選択態様を示すセグメント列情報を対応付けた管理情報を生成して記憶部に記録する情報処理装置にある。
【００１９】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、コンテンツ区分データであるセグメント単位でデータ抽出領域を設定し、該データ抽出領域のデータをダミーデータで置き換えるとともに、前記データ抽出領域のデータのみからなるサブコンテンツをコンテンツ配信先のクライアント固有の個別鍵で暗号化してクライアントに提供する。
【００２０】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、コンテンツ配信先のクライアントを識別するクライアント情報と、前記個別鍵との対応情報を前記管理情報中に記録する。
【００２１】
さらに、本発明の情報処理装置の一実施態様において、前記付加情報は電子透かしデータとして記録された構成である。
【００２２】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、流通コンテンツに含まれる付加情報の解析処理により、前記流通コンテンツのセグメント列を取得し、取得したセグメント列情報と前記管理情報の登録情報との照合処理により、コンテンツ配信先としてのクライアントを特定する。
【００２３】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、流通した個別鍵と前記管理情報の登録情報との照合処理により、個別鍵配信先としてのクライアントを特定する。
【００２４】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、コンテンツの区分データであるセグメント単位で異なる電子透かしデータを記録した複数の異なる電子透かし記録コンテンツを保持し、前記クライアントに対する配信処理単位で、前記複数の異なる電子透かし記録コンテンツから異なる組み合わせのセグメント選択を行うことで、クライアント識別情報となるセグメント単位の電子透かしデータ列を設定したコンテンツを生成する。
【００２５】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、コンテンツ区分データであるセグメント単位でデータ抽出領域を設定し、該データ抽出領域のデータをダミーデータで置き換えたメインコンテンツを複数クライアントに共通の共通鍵で暗号化した暗号化メインコンテンツと、前記データ抽出領域のデータのみからなるサブコンテンツをコンテンツ配信先のクライアント固有の個別鍵で暗号化した暗号化サブコンテンツを生成する。
【００２６】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記暗号化メインコンテンツと暗号化サブコンテンツとの合成処理を実行して、クライアント提供コンテンツを生成する。
【００２７】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記暗号化メインコンテンツのデータ領域と暗号化サブコンテンツのデータ領域を示す領域情報をクライアントに対する提供情報として生成する。
【００２８】
さらに、本発明の第２の側面は、
コンテンツ再生処理を実行するデータ処理部を有し、
前記データ処理部は、
コンテンツ区分データであるセグメント単位でダミーデータ領域が設定されたメインコンテンツに対して、前記ダミーデータ領域に対応するコンテンツであるサブコンテンツを合成するコンテンツ合成処理を行い、合成結果としての合成コンテンツを再生する情報処理装置にある。
【００２９】
さらに、本発明の情報処理装置の一実施態様において、前記メインコンテンツの暗号鍵と、前記サブコンテンツの暗号鍵は異なる鍵であり、前記データ処理部は、前記メインコンテンツのデータ領域とサブコンテンツのデータ領域を示す領域情報を取得して、該領域情報を参照して適用する鍵の切り替え処理を行う。
【００３０】
さらに、本発明の第３の側面は、
情報処理装置において実行する情報処理方法であり、
データ処理部が、
オリジナルコンテンツに対して異なる付加情報を記録した複数の付加情報記録コンテンツからコンテンツ区分データであるセグメント単位でデータ選択を行ってクライアント提供コンテンツの生成処理を実行し、
前記クライアント提供コンテンツの生成処理において、コンテンツ配信クライアント単位で異なるセグメント列の選択を実行し、
コンテンツ配信先のクライアントを識別するクライアント情報と、該クライアントに提供したクライアント提供コンテンツのセグメント選択態様を示すセグメント列情報を対応付けた管理情報を生成して記憶部に記録する情報処理方法にある。
【００３１】
さらに、本発明の第４の側面は、
情報処理装置において情報処理を実行させるプログラムであり、
データ処理部に、
オリジナルコンテンツに対して異なる付加情報を記録した複数の付加情報記録コンテンツからコンテンツ区分データであるセグメント単位でデータ選択を行ってクライアント提供コンテンツの生成処理を実行させ、
前記クライアント提供コンテンツの生成処理において、コンテンツ配信クライアント単位で異なるセグメント列の選択処理と、
コンテンツ配信先のクライアントを識別するクライアント情報と、該クライアントに提供したクライアント提供コンテンツのセグメント選択態様を示すセグメント列情報を対応付けた管理情報を生成して記憶部に記録させる処理を実行させるプログラムにある。
【００３２】
なお、本発明のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
【００３３】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００３４】
本発明の一実施例の構成によれば、不正流通コンテンツからその出所を検証可能とする構成が提供される。本発明の一実施例構成では、コンテンツに異なる付加情報を記録した複数の付加情報記録コンテンツからセグメント単位でデータ選択を行ってクライアント提供コンテンツを生成する。クライアント単位で異なるセグメント列を選択し、クライアント情報とセグメント列情報を対応付けた管理情報を生成し、不正流通コンテンツのセグメント列に基づいてコンテンツ流通元のクライアントを特定する。また、セグメント単位でデータ抽出領域を設定し、該データ抽出領域のデータをダミーデータで置き換え、共通鍵で暗号化した暗号化メインコンテンツと、データ抽出領域のデータをコンテンツ配信先のクライアント固有の個別鍵で暗号化した暗号化サブコンテンツを生成してクライアントに提供する。
本構成により、両出したコンテンツのセグメント列や個別鍵に基づいて、その流出元であるクライアントを特定することが可能となる。
【図面の簡単な説明】
【００３５】
【図１】暗号鍵の不正公開によるコンテンツの不正利用例について説明する図である。
【図２】暗号鍵の不正公開によるコンテンツの不正利用例について説明する図である。
【図３】復号コンテンツの不正公開によるコンテンツの不正利用例について説明する図である。
【図４】本発明の概要について説明する図である。
【図５】サーバの提供するコンテンツの具体例について説明する図である。
【図６】サーバの提供するコンテンツの具体例について説明する図である。
【図７】サーバがクライアントに提供するコンテンツを生成する際に実行する処理の具体例について説明する図である。
【図８】サーバがクライアントに提供するコンテンツを生成する際に実行する処理の具体例について説明する図である。
【図９】サーバがクライアントに提供するコンテンツを生成する際に実行する処理の具体例について説明する図である。
【図１０】サーバがクライアントに提供するコンテンツを生成する際に実行する処理の具体例について説明する図である。
【図１１】サーバがクライアントに提供するコンテンツを生成する際に実行する処理の具体例について説明する図である。
【図１２】サーバがクライアントに提供するコンテンツを生成する際に実行する処理の具体例について説明する図である。
【図１３】配信コンテンツ単位の固有ＩＤ（Ｕｎｉｑｕｅ  ＩＤ）の設定例について説明する図である。
【図１４】配信コンテンツ単位の固有ＩＤ（Ｕｎｉｑｕｅ  ＩＤ）、ＭＡＣ、ＥＣＣを含む電子透かしデータの具体例について説明する図である。
【図１５】配信コンテンツ単位の固有ＩＤ（Ｕｎｉｑｕｅ  ＩＤ）、ＭＡＣ、ＥＣＣを含む電子透かしデータの具体例について説明する図である。
【図１６】サーバの記憶手段に保持される管理情報のデータ構成例について説明する図である。
【図１７】サーバの構成と処理について説明する図である。
【図１８】サーバの構成と処理について説明する図である。
【図１９】複数のキャッシュサーバを利用したＣＤＮ（Ｃｏｎｔｅｎｔｓ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  Ｎｅｔｗｏｒｋ）によるコンテンツ配信処理例について説明する図である。
【図２０】複数のキャッシュサーバを利用したＣＤＮ（Ｃｏｎｔｅｎｔｓ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  Ｎｅｔｗｏｒｋ）によるコンテンツ配信処理例について説明する図である。
【図２１】クライアントにおけるコンテンツ再生処理例について説明する図である。
【図２２】サービスプロバイダ等のサーバにおいて実行するコンテンツ生成処理シーケンスについて説明するフローチャートを示す図である。
【図２３】サービスプロバイダ等のサーバにおいて実行するコンテンツ提供処理シーケンスについて説明するフローチャートを示す図である。
【図２４】クライアントにおけるコンテンツ再生処理について説明する図である。
【図２５】不正な流通コンテンツが発見された場合に実行する出所判定処理シーケンスについて説明するフローチャートを示す図である。
【図２６】サーバのハードウェア構成例について説明する図である。
【図２７】クライアントのハードウェア構成例について説明する図である。
【発明を実施するための形態】
【００３６】
以下、図面を参照しながら本発明の情報処理装置、および情報処理方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行う。
１．本発明の概要について
２．サーバのコンテンツ提供処理の具体例について
３．不正公開コンテンツに基づく公開元クライアントの特定処理について
４．サーバの構成と処理について
５．ＣＤＮを利用したコンテンツ配信処理について
６．クライアントにおけるコンテンツ再生処理について
７．サーバにおけるコンテンツ生成、提供処理シーケンスについて
７−１．サーバにおけるコンテンツ生成処理シーケンス
７−２．サーバにおけるコンテンツ提供処理シーケンス
８．クライアントにおけるコンテンツ再生シーケンスについて
９．サーバにおける不正流通コンテンツに基づく出所判定処理シーケンスについて
１０．各装置のハードウェア構成例について
【００３７】
［１．本発明の概要について］
以下、図面を参照しながら本発明の情報処理装置、および情報処理方法、並びにプログラムの詳細について説明する。
【００３８】
まず、図４を参照して、本発明の概要について説明する。本発明は例えばネットワーク上に流通する不正コンテンツの発信元を特定可能とするものである。
図４には映画や音楽などのコンテンツを提供するサービスプロバイダの運営するサーバ１００を示している。
例えばＰＣ等のクライアント１２０はサーバ１００にアクセスして、正規のコンテンツ購入手続を行ってコンテンツを取得する。図４に示すネットワーク上のルート（ａ）を介して正規コンテンツを取得する。
【００３９】
クライアント１２０のユーザは、正規購入コンテンツを一定の利用制限の下で再生する処理が許容される。例えば配信コンテンツが暗号化コンテンツである場合でも、正規購入者は、サーバから提供された復号用の鍵を適用して暗号化コンテンツを復号して再生することができる。
【００４０】
しかし、クライアント１２０のユーザは、復号したコンテンツを不正にネットワークを介して他のユーザ（図に示すクライアント１３１〜１３３のユーザ）に提供してしまう可能性がある。例えば図４に示すネットワーク上の経路（ｂ）を介して不特定多数のユーザに復号コンテンツを提供するといった事態が起こり得る。例えば不特定多数のユーザがアクセス可能なネットワーク上のサイトに復号コンテンツを置くといった処理である。
【００４１】
あるいは、クライアント１２０のユーザは、復号したコンテンツを、不正にディスクなどのメディアに記録して大量の不正コピー記録メディアを作成して他のユーザに提供してしまう場合がある。例えば図４に示すディスク１４１である。
【００４２】
本発明は、このような不正なコンテンツの流通が発覚した場合に、不正コンテンツの出所元を特定することを可能とする。図４に示す場合、この出所元はクライアント１２０となる。また、このような構成をサーバ１００の処理負荷を過大に増加させることなく実現する。
【００４３】
［２．サーバのコンテンツ提供処理の具体例について］
上述したように、本発明は、不正コンテンツの出所を追跡可能とするものであり、この処理の実現のために、正規コンテンツの提供を行うサーバ１００は、特殊な構成を持つコンテンツを生成してクライアントに提供する。
【００４４】
図５以下を参照して、例えばサービスプロバイダ等の運営するサーバにおけるコンテンツ提供処理の具体例について説明する。サーバは、コンテンツを不正に公開または流通させたクライアントあるいはユーザを特定可能とするための特殊なコンテンツを作成して各クライアントに提供する。
【００４５】
図５、図６は、サーバがクライアントに提供するコンテンツの概要について説明する図である。サーバは、
図５（１）複数の電子透かし（ＷＭ：Ｗａｔｅｒ  Ｍａｒｋ）入り暗号化コンテンツ（ｍｖ＿ｋ＿ｅｎ）（ただしｋ＝１〜ｍ）
図５（２）サブコンテンツ（ｓｖ＿ｋ）
これらのコンテンツをベースとして各クライアントに提供するコンテンツを生成する。
【００４６】
図５（１）の（Ｂ１）〜（Ｂｍ）に示す複数の電子透かし（ＷＭ：Ｗａｔｅｒ  Ｍａｒｋ）入り暗号化コンテンツ（ｍｖ＿ｋ＿ｅｎ）（ただしｋ＝１〜ｍ）は、元データとしての映画等のオリジナルのコンテンツ、すなわち図５（Ａ）に示すコンテンツに対して電子透かしを記録したコンテンツである。
【００４７】
（Ｂ１）〜（Ｂｍ）は、それぞれ異なる電子透かしデータ（例えば数値データ（１）〜（ｍ））を、コンテンツの区分データであるセグメント単位で記録し、ＭＰＥＧ圧縮処理等のエンコードを実行して、１つの共通する暗号鍵で暗号化したコンテンツとして生成される。
【００４８】
図５（２）サブコンテンツ（ｓｖ＿ｋ）は、図５（１）の（Ｂ１）〜（Ｂｍ）に示す複数の電子透かし（ＷＭ：Ｗａｔｅｒ  Ｍａｒｋ）入り暗号化コンテンツ（ｍｖ＿ｋ＿ｅｎ）の各セグメントから抽出した一部のコンテンツ列である。
図５（１）の（Ｂ１）〜（Ｂｍ）に示すデータの各セグメントに記載したデータ領域ａ１１〜ａｍｎによって図５（２）サブコンテンツ（ｓｖ＿ｋ）が構成されている。
【００４９】
図５（２）に示すサブコンテンツは、具体的には以下のデータである。
（Ｃ１）電子透かし（ＷＭ＿１）入りのストリーム（Ｂ１）から抽出した部分ストリーム（ｓｖ＿１）［データ領域ａ１１〜ａ１ｎによって構成される］
（Ｃ２）電子透かし（ＷＭ＿２）入りのストリーム（Ｂ２）から抽出した部分ストリーム（ｓｖ＿２）［データ領域ａ２１〜ａ２ｎによって構成される］
：
（Ｃｍ）電子透かし（ＷＭ＿ｍ）入りのストリーム（Ｂｍ）から抽出した部分ストリーム（ｓｖ＿ｍ）［データ領域ａｍ１〜ａｍｎによって構成される］
【００５０】
サーバは、これら図５（１），（２）に示すコンテンツをベースとして各クライアントに提供するコンテンツを生成する。
【００５１】
図６は、ある特定のクライアントに提供されるコンテンツの例を示している。ここではクライアントＡに対して提供するコンテンツの例を示す。
図６（３）に示す暗号化メインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）、
図６（４）に示す暗号化サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）、
これらがクライアントＡに対する提供コンテンツとなる。
【００５２】
なお、図６（４）に示す暗号化サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）は、図６（３）に示す暗号化メインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）の一部の欠落部分（ダミーデータで置き換えられた部分）に対応する正しいコンテンツの暗号化データである。
【００５３】
図６（３）に示す暗号化メインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）と、図６（４）に示す暗号化サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）を合成することでコンテンツ再生が可能となる。
なお、合成処理については、サーバ側で実行して合成コンテンツをクライアントに提供してもよいし、サーバ側で合成を行わず、図６（３）に示す暗号化メインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）と、図６（４）に示す暗号化サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）を個別にクライアントに提供して、クライアント側で合成処理を実行する設定としてもよい。
【００５４】
クライアント側で合成を実行する場合には、例えばコンテンツのダウンロード処理に際して実行して記憶部に合成結果を格納する処理態様や、ダウンロード時には合成せず、再生処理時に合成処理を実行するといった処理形態が可能となる。
【００５５】
なお、図６（３）に示す暗号化メインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）は、複数のクライアントに対して共通の暗号鍵で暗号化されたコンテンツであるが、図６（４）に示す暗号化サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）は、コンテンツ配信対象となるクライアント単位、あるいはコンテンツ配信処理単位で異なる暗号鍵（個別鍵）で暗号化される。
【００５６】
図６（３）に示す暗号化メインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）は、図５（１）の（Ｂ１）〜（Ｂｍ）に示す複数の電子透かし（ＷＭ：Ｗａｔｅｒ  Ｍａｒｋ）入り暗号化コンテンツ（ｍｖ＿ｋ＿ｅｎ）から、セグメント単位で１つずつ選択して生成されるコンテンツである。
【００５７】
選択するセグメントの組み合わせはクライアント毎に異なる設定とする。図６（３）に示す暗号化メインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）は、特定のクライアント（クライアントＡ）に提供する暗号化メインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）である。図６（３）には、図５（１）に示す点線枠によって示されるセグメント単位のコンテンツを組み合わせた例を示している。
セグメント１は、図５（１）に示す（Ｂｍ）のセグメント
セグメント２は、図５（１）に示す（Ｂ１）のセグメント
：
セグメントｎは、図５（１）に示す（Ｂ２）のセグメント
このセグメント列は、クライアントＡ固有のセグメント列として設定され、サーバは、このセグメント列情報をクライアント情報と対応付けた管理情報を生成して保持する。
【００５８】
図６（４）に示す暗号化サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）は、図６（３）に示す暗号化メインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）と同様のセグメント単位の選択態様（図５（２）に示す点線枠）でサブコンテンツを選択して個別鍵を適用した暗号化により生成する特定クライアント（クライアントＡ）に提供する暗号化サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）である。
サブコンテンツに対する暗号鍵である個別鍵は、クライアント単位やコンテンツの配信処理単位で異なる鍵として設定される。
【００５９】
図６（３），（４）に示す
暗号化メインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）、
暗号化サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）、
これらのデータはクライアント単位またはコンテンツ配信単位の固有データとして生成され、特定のクライアント（例えばクライアントＡ）に提供される。
【００６０】
サーバの実行する処理について、以下、処理シーケンスに従って説明する。
図７に示すステップ１（Ｓ１）から図１１に示すステップ８（Ｓ８）までの処理について順次説明する。
【００６１】
（ステップ１（Ｓ１））
まず、図７に示すステップ１（Ｓ１）の処理について説明する。
この処理は、オリジナルコンテンツから、複数の電子透かし（ＷＭ：Ｗａｔｅｒ  Ｍａｒｋ）入りエンコードコンテンツ（ｖ＿ｋ）（ただしｋ＝１〜ｍ）を生成する処理である。
【００６２】
サーバは、図７に示す（Ａ）オリジナルコンテンツをベースとして、（Ｂ１）〜（Ｂｍ）の各データを生成する。
（Ａ）コンテンツ（電子透かし記録なし）
これは、オリジナルコンテンツであり、例えば映画等のコンテンツである。なお、図７には、左から右に再生時間ｔ０，ｔ１，ｔ２，・・・を記載している、これらの再生時間ｔ１〜ｔｎは、例えば動画（ｖｉｄｅｏ）コンテンツの再生時間を示している。
【００６３】
サーバは、この（Ａ）コンテンツ（電子透かし記録なし）に対して、コンテンツ配信クライアントを識別するために適用する情報を記録した図７に示す（Ｂ１）〜（Ｂｍ）のデータを生成する。
【００６４】
具体的には、図７に示す（Ｂ１）〜（Ｂｍ）のｍ種類の電子透かし（ＷＭ：Ｗａｔｅｒｍａｒｋ）記録コンテンツを生成する。なお、サーバは、電子透かし記録処理の後、所定の符号化処理（例えばＭＰＥＧ圧縮等）を実行して、符号化（エンコード）された電子透かし記録コンテンツ（Ｂ１）：ｖ＿１〜（Ｂｍ）：ｖ＿ｍを生成する。
【００６５】
サーバは、まず、（Ａ）コンテンツに対して、それぞれ異なる電子透かしパターンを記録して、以下の複数の電子透かし記録コンテンツを作成する。
（Ｂ１）第１電子透かし（Ｗａｔｅｒｍａｒｋ１）記録コンテンツ
（Ｂ２）第２電子透かし（Ｗａｔｅｒｍａｒｋ２）記録コンテンツ
：
（Ｂｍ）第ｎ電子透かし（Ｗａｔｅｒｍａｒｋｍ）記録コンテンツ
これらの複数の電子透かし記録コンテンツを作成する。
【００６６】
さらに、電子透かし記録処理の後、所定の符号化処理（例えばＭＰＥＧ圧縮等）を実行して、符号化（エンコード）された電子透かし記録コンテンツ（Ｂ１）：ｖ＿１〜（Ｂｍ）：ｖ＿ｍを生成する。
【００６７】
これら、複数のコンテンツ（Ｂ１）〜（Ｂｍ）は、図に示すようにセグメントに分割される。１つのセグメントには１つ以上の画像フレームが含まれる。
例えば、図に示すように再生時間：ｔ０〜ｔ１までを第１セグメント、ｔ１〜ｔ２を第２セグメント、ｔ２〜ｔ３を第３セグメント、・・・このように、（Ａ）〜（Ｂｍ）のコンテンツを同じ区切り位置（ｔ０，ｔ１，ｔ２，・・・）でセグメントに分割する。
なお、（Ｂ１）〜（Ｂｍ）の各コンテンツの区切り位置（ｔ０，ｔ１，ｔ２，・・・）は同じ位置とする必要があるが、第１セグメント、第２セグメント、第３セグメント、・・これらの各セグメントの大きさは均一である必要はない。
【００６８】
（Ｂ１）〜（Ｂｍ）の各電子透かし記録コンテンツは、例えば、以下のような電子透かしデータを記録したコンテンツとして生成する。
（Ｂ１）各セグメントに電子透かしデータ（１）を記録した第１電子透かし（Ｗａｔｅｒｍａｒｋ１）記録コンテンツ
（Ｂ２）各セグメントに電子透かしデータ（２）を記録した第２電子透かし（Ｗａｔｅｒｍａｒｋ２）記録コンテンツ
：
（Ｂｍ）各セグメントに電子透かしデータ（ｍ）を記録した第ｍ電子透かし（Ｗａｔｅｒｍａｒｋｍ）記録コンテンツ
【００６９】
なお、電子透かしの記録態様としては既存の様々な手法が利用可能である。具体的には、例えばコンテンツを構成する画像の高周波領域に電子透かしの記録有りの情報と電子透かしデータ（１）〜（ｍ）のいずれかのデータを記録する。これらのデータはユーザの一般的な再生装置による画像再生処理では肉眼で観察することはできない微小レベルであり、電子透かし検出装置による電子透かし検出処理によって検出可能となる微小レベルのデータである。
【００７０】
サーバは、電子透かしの記録処理の後、所定の符号化処理（例えばＭＰＥＧ圧縮等）、すなわちエンコード処理を実行する。
この結果として、図７に示すｍ個の異なる電子透かしを記録したエンコードが施された電子透かし記録コンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］が生成される。すなわち、
（Ｂ１）＝（ｖ＿１）：各セグメントに電子透かしデータ（１）を記録した第１電子透かし（Ｗａｔｅｒｍａｒｋ１）記録コンテンツ
（Ｂ２）＝（ｖ＿２）：各セグメントに電子透かしデータ（２）を記録した第２電子透かし（Ｗａｔｅｒｍａｒｋ２）記録コンテンツ
：
（Ｂｍ）＝（ｖ＿ｍ）：各セグメントに電子透かしデータ（ｍ）を記録した第ｍ電子透かし（Ｗａｔｅｒｍａｒｋｍ）記録コンテンツ
これらのｍ個の異なるエンコード電子透かし記録コンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］を生成する。
【００７１】
次に、サーバは、これらのｍ個の異なるエンコード電子透かし記録コンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］の各セグメントの構成データの一部を抽出する。
この処理について、図８を参照して説明する。
【００７２】
（ステップ２〜３（Ｓ２〜Ｓ３））
次に、図８に示すステップ２〜３（Ｓ２〜Ｓ３）の処理について説明する。
図８は、ｍ個の異なるエンコード電子透かし記録コンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］の各セグメントから部分データ（サブコンテンツ）を抽出する処理について説明する図である。
（ステップ２（Ｓ２））複数のＷＭ入りコンテンツの各セグメントから抽出するサブコンテンツ領域を決定
（ステップ３（Ｓ３））サブコンテンツの抽出結果
これらの２つの処理に対応する図を示している。
【００７３】
まず、サーバは、図８（Ｓ２）に示すように、複数のＷＭ入りコンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］の各セグメントから抽出するサブコンテンツ領域を決定する。
サーバは、各ビデオストリームの中のセグメント毎に所定の部分を抜き出す。抽出位置は任意であるが、例えば、ビデオ内容がユーザにとって魅力的であるシーン等を選択し、かつエンコード処理単位としてのＧＯＰ単位で抽出することが好ましい。
【００７４】
なお、サブコンテンツの抽出位置は、ｍ個の異なる電子透かし記録コンテンツ［ｖ＿１）〜（ｖ＿ｍ）］のセグメントごとに異なる位置であっても同じ位置であってもよい。
【００７５】
ｍ個の異なる電子透かし記録コンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］のセグメント単位で抽出した抽出コンテンツ（部分ストリーム）をサブコンテンツとする。
この結果、図８（Ｓ３）に示すように、複数のＷＭ入りコンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］に対応するｍ個の部分ストリーム（サブコンテンツ）、すなわち、以下のデータが生成される。
（Ｃ１）電子透かし（ＷＭ＿１）入りのストリーム（Ｂ１）から抽出した部分ストリーム（ｓｖ＿１）
（Ｃ２）電子透かし（ＷＭ＿２）入りのストリーム（Ｂ２）から抽出した部分ストリーム（ｓｖ＿２）
：
（Ｃｍ）電子透かし（ＷＭ＿ｍ）入りのストリーム（Ｂｍ）から抽出した部分ストリーム（ｓｖ＿ｍ）
【００７６】
これらのｍ個の部分ストリーム（サブコンテンツ）の生成後、次の図９に示す処理（ステップ４（Ｓ４））を実行する。
【００７７】
（ステップ４（Ｓ４））
次に、図９に示すステップ４（Ｓ４）の処理について説明する。
この処理は、図８を参照して説明した各セグメントから部分データ（サブコンテンツ）を抽出した後のｍ個のエンコード電子透かし記録コンテンツ（Ｂ１）〜（Ｂｍ）［（ｖ＿１）〜（ｖ＿ｍ）］に対する処理である。
【００７８】
ｍ個のエンコード電子透かし記録コンテンツ（Ｂ１）〜（Ｂｍ）［（ｖ＿１）〜（ｖ＿ｍ）］の各セグメント内に設定された部分データ（サブコンテンツ）抽出位置のデータをダミーデータ、例えばオール０などのデータに置き換える。すなわち、抽出領域内の元のコンテンツデータは削除する。
【００７９】
このダミーデータに置き換えた後のｍ個のエンコード電子透かし記録コンテンツ（Ｂ１）〜（Ｂｍ）を、（ｍｖ＿１）〜（ｍｖ＿ｍ）とする。
さらに、サーバは、ダミーデータへの置換処理後のデータ（ｍｖ＿１）〜（ｍｖ＿ｍ）に対して、１つの暗号鍵（共通鍵）を適用して暗号化処理を実行する。
この暗号化後のデータが図９に示す（Ｂ１）〜（Ｂｍ）てある。
ダミーデータ置換と暗号化処理後のｍ個のエンコード電子透かし記録コンテンツ（Ｂ１）〜（Ｂｍ）を、（ｍｖ＿１＿ｅｎ）〜（ｍｖ＿ｍ＿ｅｎ）とする。
【００８０】
図９には、これらの処理後のデータとして以下のデータを示している。
（Ｂ１）暗号化とエンコードがなされた電子透かし（ＷＭ＿１）入りのストリーム（ｍｖ＿１＿ｅｎ）
（Ｂ２）暗号化とエンコードがなされた電子透かし（ＷＭ＿２）入りのストリーム（ｍｖ＿２＿ｅｎ）
：
（Ｂｍ）暗号化とエンコードがなされた電子透かし（ＷＭ＿ｍ）入りのストリーム（ｍｖ＿ｍ＿ｅｎ）
図に示す各セグメント中の黒塗り部分は、サブコンテンツとして抽出された領域であり、ダミーデータ（オール０など）に置換されたデータ領域である。
【００８１】
（ステップ５〜６（Ｓ５〜Ｓ６））
次に、図１０に示すステップ５〜６（Ｓ５〜Ｓ６）の処理について説明する。
この処理は、ある特定のクライアント（例えばクライアントＡ）に提供するコンテンツを生成するために実行されるセグメント選択処理である。図１０に示すステップ５〜６（Ｓ５〜Ｓ６）に示すセグメント選択処理は、クライアント単位、すなわちコンテンツ配信処理単位で実行される。
【００８２】
ここでは、コンテンツ配信処理対象クライアントをクライアントＡとして、クライアントＡに対して提供するコンテンツの生成処理として実行するセグメント選択処理の例について説明する。
【００８３】
特定のクライアントに対して提供するコンテンツの生成処理には、以下の２つの処理が含まれる。
図１０に示す（Ｂ１）〜（Ｂｍ）の暗号化とエンコードがなされた電子透かし記録コンテンツ（ｍｖ＿１＿ｅｎ）〜（ｍｖ＿ｍ＿ｅｎ）の各セグメントから１つずつデータを選択してメインコンテンツを生成する処理。
さらに、その選択処理と同様のセグメント選択態様で、図１０に示す（Ｃ１）〜（Ｃｍ）の部分ストリーム（サブコンテンツ）の選択を行ってサブコンテンツを生成する処理。
これらの処理である。
【００８４】
なお、以下では、
図１０に示す（Ｂ１）〜（Ｂｍ）の暗号化とエンコードがなされた電子透かし記録コンテンツ（ｍｖ＿１＿ｅｎ）〜（ｍｖ＿ｍ＿ｅｎ）をメインコンテンツ、
図１０に示す（Ｃ１）〜（Ｃｍ）の部分ストリームをサブコンテンツ、
として説明する。
【００８５】
まず、サーバはステップ５（Ｓ５）の処理として以下の処理を実行する。
特定のクライアント（例えばクライアントＡ）に対する提供するメインコンテンツの生成処理として、図１０に示す（Ｂ１）〜（Ｂｍ）のデータから各セグメント単位で１つのセグメントを選択する処理を実行する。
図に示す例では、
セグメント１については、（Ｂｍ）のメインセグメントデータ２０１−１
セグメント２については、（Ｂ１）のメインセグメントデータ２０１−２
：
セグメントｎについては、（Ｂ２）のメインセグメントデータ２０１−ｎ
このように、セグメント１〜ｎについて１つずつ選択して、クライアントＡに提供するメインコンテンツの構成データを選択する。
【００８６】
次に、サーバはステップ６（Ｓ６）の処理として以下の処理を実行する。
同じクライアントＡに対する提供するサブコンテンツの生成処理として、図１０に示す（Ｃ１）〜（Ｃｍ）のデータから各セグメント単位で１つの部分データ（サブコンテンツ）を選択する処理を実行する。
このサブコンテンツの選択処理は、メインコンテンツ（Ｂ１）〜（Ｂｍ）におけるセグメント選択態様（セグメント列）と同じ態様とする。
【００８７】
図に示す例では、メインコンテンツに対して、
セグメント１については、（Ｂｍ）のメインセグメントデータ２０１−１
セグメント２については、（Ｂ１）のメインセグメントデータ２０１−２
：
セグメントｎについては、（Ｂ２）のメインセグメントデータ２０１−ｎ
このように、セグメント１〜ｎについて１つずつセグメントデータを選択している。
【００８８】
この場合、サブコンテンツについても、
セグメント１に対応するサブコンテンツは、（Ｂｍ）のメインセグメントデータ２０１−１のデータ領域から抽出された部分データ（サブコンテンツａｍ１）をサブセグメントデータ２１１−１として抽出する。
セグメント２に対応するサブコンテンツは、（Ｂ１）のメインセグメントデータ２０１−２のデータ領域から抽出された部分データ（サブコンテンツａ１２）をサブセグメントデータ２１１−２として抽出する。
：
セグメントｎに対応するサブコンテンツは、（Ｂ２）のメインセグメントデータ２０１−ｎのデータ領域から抽出された部分データ（サブコンテンツａ２ｎ）をサブセグメントデータ２１１−ｎとして抽出する。
【００８９】
このように、メインコンテンツ（Ｂ１）〜（Ｂｍ）のセグメント選択態様（セグメント列）と、サブコンテンツ（Ｃ１）〜（Ｃｍ）のセグメント選択態様（セグメント列）を一致させて、クライアントに提供するメインコンテンツとサブコンテンツを生成する。
【００９０】
なお、セグメント列は、コンテンツの配信単位で異なる設定、すなわち、クライアント毎に異なる設定とし、このセグメント列情報をコンテンツ配信クライアント情報に対応付けて管理する。この管理情報については後述する。
【００９１】
（ステップ７〜８（Ｓ７〜Ｓ８））
次に、図１１に示すステップ７〜８（Ｓ７〜Ｓ８）の処理について説明する。
この処理は、あるクライアントに提供するコンテンツの最終的な生成処理に相当する。
図１１には、以下の２つの処理を示している。
（Ｓ７）複数の電子透かし（ＷＭ：Ｗａｔｅｒ  Ｍａｒｋ）入り暗号化コンテンツ（ｍｖ＿ｋ＿ｅｎ）からセグメント単位で１つずつ選択してクライアントに提供する暗号化メインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）を生成する処理。なお、このメインコンテンツはクライアント固有のセグメント列を有する。
（Ｓ８）メインコンテンツと同様のセグメント単位の選択態様（セグメント列）で選択したサブコンテンツに対して個別鍵を適用した暗号化により特定クライアントに提供する暗号化サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）を生成する処理。
これら２つの処理である。
【００９２】
ステップ７（Ｓ７）の処理は先に図１０を参照して説明したステップ５（Ｓ５）のメインコンテンツのセグメント選択処理によって選択されたセグメント（メインコンテンツのメインセグメント）のみからなるセグメント列を設定して特定クライアントに提供する暗号化メインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）を完成させる処理である。
なお、図１０、図１１に示す処理（ステップ５〜８（Ｓ５〜Ｓ８））はコンテンツの配信クライアント単位あるいはコンテンツの配信処理単位で逐次実行される。
【００９３】
ステップ８（Ｓ８）の処理は、先に図１０を参照して説明したステップ６（Ｓ６）のサブコンテンツのセグメント選択処理によって選択されたサブコンテンツ（サブセグメントデータ）のみからなる部分ストリーム（サブコンテンツ）を設定し、さらにコンテンツ配信処理単位、あるいはクライアント単位で異なる個別鍵を適用して暗号化処理を行い、特定クライアントに提供する暗号化サブコンテンツ（ｓｕｂ  ｃｌｉｐ＿ｅｎ）を完成させる処理である。
【００９４】
図に示すように、（Ｓ７）に示すメインコンテンツの暗号鍵は、コンテンツを配信する複数のクライアントに対して共通する共通鍵であるが、（Ｓ８）に示すサブコンテンツの暗号鍵は、コンテンツを配信するクライアント毎に異なる個別鍵である。
【００９５】
クライアントに対しては、
（Ｓ７）に示すメインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）と、その暗号鍵である共通鍵と、
（Ｓ８）に示すサブコンテンツ（ｓｕｂ  ｃｌｉｐ＿ｅｎ）と、その暗号鍵である個別鍵が提供されることになる。
【００９６】
なお、コンテンツ再生時には、メインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）に含まれるダミーデータ領域を、サブコンテンツ（ｓｕｂ  ｃｌｉｐ＿ｅｎ）で置き換える処理、すなわちメインコンテンツとサブコンテンツの合成処理が必要となる。
この合成処理は、クライアント側で実行する構成としてもよいし、サーバ側で実行して、合成後のデータをクライアントに提供する構成としてもよい。
【００９７】
図１２に、合成後のコンテンツ（ｍａｉｎ＋ｓｕｂ  ｃｌｉｐ＿ｅｎ）の構成例を示す。
図１２に示すコンテンツ（ｍａｉｎ＋ｓｕｂ  ｃｌｉｐ＿ｅｎ）は、メインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）に含まれるダミーデータ領域を、サブコンテンツ（ｓｕｂ  ｃｌｉｐ＿ｅｎ）で置き換えたコンテンツである。
【００９８】
この合成コンテンツ（ｍａｉｎ＋ｓｕｂ  ｃｌｉｐ＿ｅｎ）に含まれるメインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）のデータ領域は共通鍵による暗号化データである。
また、合成コンテンツ（ｍａｉｎ＋ｓｕｂ  ｃｌｉｐ＿ｅｎ）に含まれるサブコンテンツ（ｓｕｂ  ｃｌｉｐ＿ｅｎ）のデータ領域、すなわち、メインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）のダミーデータ領域をサブコンテンツ（ｓｕｂ  ｃｌｉｐ＿ｅｎ）で置き換えたデータ領域は、クライアント毎に異なる個別鍵で暗号化されたデータ領域となる。
【００９９】
クライアントにおけるコンテンツ再生時には、各領域に応じて共通鍵と個別鍵を切り替えて復号処理を実行することが必要となる。
サーバは、この切り替え処理のための領域情報、すなわち、共通鍵で暗号化されたメインコンテンツ部分と、個別鍵で暗号化されたサブコンテンツ部分とのデータ領域情報を記録した［抽出領域情報］を生成して、暗号化コンテンツおよび暗号鍵（共通鍵と個別鍵）とともにクライアントに提供する。
【０１００】
クライアントは、この［抽出領域情報］を参照して暗号鍵（共通鍵と個別鍵）の切り替え位置情報を取得して、鍵の切り替え行って暗号化コンテンツの復号、再生処理を実行する。すなわち、メインコンテンツ部分では共通鍵を適用した復号処理を実行し、サブコンテンツ部分では個別鍵を適用した復号処理を実行してコンテンツ再生を行う。
【０１０１】
サーバは、このようにコンテンツ配信毎にセグメントの組み合わせを変更するとともに、その一部をコンテンツ配信毎に異なる個別鍵で暗号化したコンテンツをクライアントに提供する。
この設定とすることにより、例えば、クライアントが暗号鍵を不正にする公開する場合、共通鍵と個別鍵の２つの鍵の公開が必要となり、また、その公開された鍵によって復号可能なコンテンツはその個別鍵を公開したクライアントに提供したコンテンツのみとなる。
【０１０２】
コンテンツを不正に公開すれば、公開されたコンテンツが暗号化コンテンツであっても、復号コンテンツであっても、その電子透かし情報に基づいてセグメント列の設定を解析することが可能となる。セグメント列はクライアント毎に異なる設定であり、セグメント列の解析により、不正にコンテンツを公開したクライアントを特定することが可能となる。
以下、この不正公開コンテンツに基づく公開元クライアントの特定処理について説明する。
【０１０３】
［３．不正公開コンテンツに基づく公開元クライアントの特定処理について］
上述したように、サーバは、コンテンツ配信毎にセグメントの組み合わせ（セグメント列）を変更するとともに、その一部をコンテンツ配信毎に異なる個別鍵で暗号化したコンテンツをクライアントに提供する。
【０１０４】
配信コンテンツ単位でセグメント列を変更することで、不正にコンテンツ公開を行ったクライアントを特定する処理の具体例について以下説明する。
【０１０５】
図１３には、電子透かしによる識別子（ＩＤ）を各セグメントに記録した（Ｂ１）〜（Ｂｍ）の各データと、各クライアントＡ，Ｂに提供する異なるセグメント列としたコンテンツの例を示している。
なお、図１３では、各クライアントに提供する異なるセグメント列の設定に基づくクライアントの特定処理のみについて説明するため、個別鍵で暗号化されたサブコンテンツについては省略して示してある。
【０１０６】
（Ｂ１）〜（Ｂｍ）は、それぞれ異なる電子透かしデータを記録したコンテンツである。すなわち、オリジナルのコンテンツ用画像データに対して、それぞれ異なる電子透かしデータ（例えば（１）〜（ｍ））を記録してコンテンツである。
（Ｂ１）第１電子透かし（Ｗａｔｅｒｍａｒｋ＿１）記録コンテンツ
（Ｂ２）第２電子透かし（Ｗａｔｅｒｍａｒｋ＿２）記録コンテンツ
：
（Ｂｍ）第ｍ電子透かし（Ｗａｔｅｒｍａｒｋ＿ｍ）記録コンテンツ
これらの複数の電子透かし記録コンテンツである。
【０１０７】
これら、複数のコンテンツ（Ｂ１）〜（Ｂｍ）について分割したセグメントが設定される。１つのセグメントには１以上の画像フレームが含まれる。
例えば、図に示すように再生時間：ｔ０〜ｔ１までを第１セグメント、ｔ１〜ｔ２を第２セグメント、ｔ２〜ｔ３を第３セグメント、・・・このように、（Ａ）〜（Ｂｍ）のコンテンツを同じ区切り位置（ｔ０，ｔ１，ｔ２，・・・）でセグメントに分割されている。
【０１０８】
サーバは図１３の下部に示すように、セグメントに分割した（Ｂ１）〜（Ｂｍ）のコンテンツを組み合わせて、各ユーザに提供するコンテンツを生成する。
図１３に示す例では、
（Ｕ１）クライアントＡ２２１に対する提供コンテンツは、
ｔ０〜ｔ１のセグメントを（Ｂｍ）第ｍ電子透かし記録コンテンツ、
ｔ１〜ｔ２のセグメントを（Ｂ２）第２電子透かし記録コンテンツ、
ｔ２〜ｔ３のセグメントを（Ｂ１）第１電子透かし記録コンテンツ、
ｔ３〜ｔ４のセグメントを（Ｂ２）第２電子透かし記録コンテンツ、
ｔ４〜ｔ５のセグメントを（Ｂｍ）第ｍ電子透かし記録コンテンツ、
ｔ５〜ｔ６のセグメントを（Ｂ１）第１電子透かし記録コンテンツ、
・・・
このような設定で構成したコンテンツである。
【０１０９】
一方、
（Ｕ２）クライアントＢ２２２に対する提供コンテンツは、
ｔ０〜ｔ１のセグメントを（Ｂ１）第１電子透かし記録コンテンツ、
ｔ１〜ｔ２のセグメントを（Ｂｍ）第ｍ電子透かし記録コンテンツ、
ｔ２〜ｔ３のセグメントを（Ｂｍ）第ｍ電子透かし記録コンテンツ、
ｔ３〜ｔ４のセグメントを（Ｂ２）第２電子透かし記録コンテンツ、
ｔ４〜ｔ５のセグメントを（Ｂ２）第２電子透かし記録コンテンツ、
ｔ５〜ｔ６のセグメントを（Ｂ１）第１電子透かし記録コンテンツ、
・・・
このような設定で構成したコンテンツである。
【０１１０】
このように、サーバは、コンテンツの配信処理単位で異なるセグメント列を設定したコンテンツを生成して各クライアントに提供する。
（Ｕ１）クライアントＡ２２１に対する提供コンテンツのセグメント配列は、
（Ｂｍ），（Ｂ２），（Ｂ１），（Ｂ２），（Ｂｍ），（Ｂ１）・・・であり、これらの配列中の電子透かしビットのセグメント単位の配列は、
ｍ，２，１，２，ｍ，１・・
となる。
【０１１１】
一方、
（Ｕ２）クライアントＢ２２２に対する提供コンテンツのセグメント配列は、
（Ｂ１），（Ｂｍ），（Ｂｍ），（Ｂ２），（Ｂ２），（Ｂ１）・・・であり、これらの配列中の電子透かしビットのセグメント単位の配列は、
１，ｍ，ｍ，２，２，１・・
となる。
【０１１２】
このように、選択セグメントを連結してクライアント（ユーザ）提供用のコンテンツを作成することで、セグメント単位の固有の電子透かしデータ列を設定し、これをクライアント識別子として用いることができる。
サーバはこれら電子透かしデータ列情報（＝セグメント列情報）をコンテンツ配信先のクライアントやユーザ情報に対応づけて管理情報として記録、保持する。
【０１１３】
なお、セグメントの組み合わせが異なってもコンテンツの画像（動画）本体データは同じであり、コンテンツに埋め込まれた電子透かしデータが異なるのみである。従って全てのユーザの観察する再生コンテンツは同じ映画等の再生データとなる。
【０１１４】
クライアントＡ，２２１は、［（Ｕ１）クライアントＡ提供コンテンツ］を、サーバから受領する。
クライアントＢ，２２２は、［（Ｕ２）クライアントＢ提供コンテンツ］を、サーバから受領する。
【０１１５】
クライアントは、これらの受領コンテンツを例えばハードディスク等のメディアに格納し、その後、ハードディスクから読み出して再生処理を行う。
コンテンツ再生に際して、電子透かしデータは観察できない低レベルの信号であり、各クライアントでは、電子透かしデータが記録されていることを全く気づくことなくコンテンツ再生を行うことができる。
【０１１６】
このように、サーバは配信コンテンツ各々を、全て異なるセグメント列に設定したコンテンツとして各ユーザ（クライアント）に提供する。
（Ｂ１）〜（Ｂｍ）のｍ種類の電子透かし記録コンテンツをセグメント単位で組み合わせて配列することで、様々な異なる電子透かしデータ列（＝セグメント列）を設定した配信コンテンツを生成することができる。これらの異なる電子透かしデータ列の各々がクライアント識別子、あるいは配信処理識別子として利用される。
【０１１７】
サーバは、新たなコンテンツ配信ごとに異なるセグメント列、すなわち電子透かしデータ列を持つ配信コンテンツを生成して提供する。
サーバは、クライアント（ユーザ）に提供する配信コンテンツに含まれる電子透かしデータ列の構成データを、配信コンテンツ対応の識別情報である固有ＩＤ（Ｕｎｉｑｕｅ  ＩＤ）として管理する。
この固有ＩＤは、サーバの管理情報として登録保持される。
配信コンテンツ単位の固有ＩＤ（Ｕｎｉｑｕｅ  ＩＤ）を含む電子透かしデータの具体例について、図１４を参照して説明する。
【０１１８】
図１４には、図１３を参照して説明した１つのクライアント配信コンテンツであるクライアントｘに提供するコンテンツ中のデータ列を示している。すなわち、
（Ｕｘ）クライアントｘに提供するコンテンツに記録された電子透かしのデータ列を示している。
電子透かしデータ列（＝セグメント列）は、
１２３５４１３５・・・・
このデータ列である。
【０１１９】
この電子透かしデータ列（＝セグメント列）には、
（１）サブコンテンツに対応して設定される固有ＩＤ（Ｕｎｉｑｕｅ  ＩＤ）、
（２）固有ＩＤに対する改ざん検証値（ＭＡＣ：Ｍｅｓｓａｇｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｃｏｄｅ）
（３）（固有ＩＤとＭＡＣ値）に対するエラー訂正コード（ＥＣＣ：Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ  Ｃｏｄｅ）
これらのデータが含まれる。
なお、これら（１）〜（３）のデータ組は１つの配信コンテンツ中に繰り返し設定される。
【０１２０】
固有ＩＤは、各配信コンテンツを識別可能なＩＤである。この固有ＩＤは、コンテンツを配信するサーバにおいて例えば乱数生成処理によって生成したＩＤでもよく、さらに、図１４に示すよう、ユーザＩＤ、取引ＩＤ、配信ＩＤ、クライアント装置ＩＤ、クライアントアドレス、クライアントＭＡＣアドレス等を適用してもよい。個々の配信コンテンツを識別可能なＩＤとして設定すればよい。このＩＤに対応するセグメント列の選択が行われる。あるいはランダムにセグメント列を選択決定し、その選択結果をＩＤとして利用してもよい。
【０１２１】
改ざん検証値は、固有ＩＤに対する改ざん検証値であり、例えばＭＡＣ（Ｍｅｓｓａｇｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｃｏｄｅ）が利用される。
【０１２２】
エラー訂正コードは、（固有ＩＤとＭＡＣ値）に対するエラー訂正コード（ＥＣＣ：Ｅｒｒｏｒ  Ｃｏｌｌｅｃｔｉｏｎ  Ｃｏｄｅ）であり、例えばＲｅｅｄ  Ｓｏｌｏｍｏｎ、あるいはＢＣＨ等のデータが利用される。
【０１２３】
コンテンツ配信を実行するサーバは、
まず、配信コンテンツに対応する固有ＩＤを決定し、
次に、固有ＩＤに対応するＭＡＣ値を算出し、
さらに、（固有ＩＤ＋ＭＡＣ）に対するＥＣＣを算出する。
この結果として設定される［固有ＩＤ／ＭＡＣ／ＥＣＣ］からなるデータ列に一致する電子透かしデータ列を決定し、その決定した電子透かしデータ列に従って、先に説明した電子透かし記録コンテンツ、すなわち、
（Ｂ１）第１電子透かし（Ｗａｔｅｒｍａｒｋ１）記録コンテンツ
（Ｂ２）第２電子透かし（Ｗａｔｅｒｍａｒｋ２）記録コンテンツ
：
（Ｂｍ）第ｍ電子透かし（Ｗａｔｅｒｍａｒｋｍ）記録コンテンツ
これらの複数のコンテンツからセグメントを順次選択して配信コンテンツを生成する。
【０１２４】
なお、図１５に示すように、サブコンテンツ中には、［固有ＩＤ／ＭＡＣ／ＥＣＣ］からなるデータ列が、繰り返し設定される。
【０１２５】
コンテンツを配信するサーバは、コンテンツ配信を実行するごとに配信コンテンツの固有ＩＤを含む管理情報をサーバの記憶手段に記録する。
図１６にサーバの記憶手段に保持される管理情報のデータ構成例を示す。
図１６に示すように、管理情報には、
配信コンテンツに対応する固有ＩＤとしてのセグメント列情報、
セグメント列構成情報、
配信コンテンツ情報、
配信先情報、
配信ユーザ情報、
配信日時情報、
暗号鍵情報（共通鍵、個別鍵）
例えばこれらの情報が含まれる。
【０１２６】
配信コンテンツに対応する固有ＩＤとしてのセグメント列情報は、各クライアントに提供したセグメントの選択情報に相当する。選択されたセグメントに応じた電子透かしデータ（１〜ｍ）の配列情報である。このセグメント列情報がクライアントや配信コンテンツの識別情報として利用される。
【０１２７】
セグメント列構成情報とは、コンテンツ構成データのどの位置に固有ＩＤ、ＭＡＣ、ＥＣＣが記録されているかを示す情報である。コンテンツを構成するセグメントのどのセグメントが固有ＩＤ記録セグメント、ＭＡＣ記録セグメント、ＥＣＣ記録セグメントであるかを示す情報である。
【０１２８】
暗号鍵情報には、各提供コンテンツの暗号化処理に適用した暗号鍵の情報が記録される。
すなわちメインコンテンツの暗号化に適用した共通鍵と、サブコンテンツの暗号化に適用した個別鍵の暗号鍵情報が記録される。
例えば、
クライアントＡに対して提供したコンテンツに適用した暗号鍵情報として、
共通鍵＝Ｋ１と、個別鍵＝Ｋ００１ａ
クライアントＢに対して提供したコンテンツに適用した暗号鍵情報として、
共通鍵＝Ｋ１と、個別鍵＝Ｋ００１ｂ
このような鍵情報が管理情報としてコンテンツの配信先情報に対応付けて記録される。
【０１２９】
例えば鍵の漏えいが発生した場合、その漏えいした鍵を解析して、図１６に示す管理情報と照合することで、鍵の漏えい元のクライアントがどのクライアントであるかを判断することが可能となる。
【０１３０】
図１６に示す管理情報の例は一例であり、これらの情報の全てを記録することが必ずしも必須ではなく、また、これらの情報以外の情報を管理情報として保持してもよい。セグメント構成情報についても、配信コンテンツごとに変更せず、統一したデータ配置としたセグメント構成を設定して配信するのであれば配信コンテンツ対応の登録情報として設定する必要はない。
ただし、識別情報である固有ＩＤと配信先を特定するための情報を対応付けて登録することは必須である。
【０１３１】
［４．サーバの構成と処理について］
次に、図１７、図１８を参照して、クライアントに提供するコンテンツを生成するサーバの構成と処理について説明する。
図１７と図１８はサーバにおけるコンテンツ生成処理を実行するデータ処理部の構成例を示す図であり、クライアントに提供するコンテンツを生成する処理の前半の処理を図１７、後半の処理を図１８に示している。
【０１３２】
図１７を参照してクライアントに提供するコンテンツの生成処理の前半の処理について説明する。
オリジナルコンテンツ３５０は、例えば映画等のコンテンツであり画像（ｖｉｄｅｏ）を含むデータである。例えばデータベース３００から取り出される。
【０１３３】
識別情報挿入部３０１は、オリジナルコンテンツ３５０に対して、コンテンツ配信先のクライアントを識別するための情報として利用可能な識別情報を記録する処理を行う。
具体的には、先に図５〜図１５を参照して説明したように、セグメント単位で所定の電子透かし情報（例えばデータ（１）〜（ｍ））記録したｍ個の電子透かし記録コンテンツ［（Ｂ１）ＷＭ＿１記録コンテンツ〜（Ｂｍ）ＷＭ＿ｍ記録コンテンツ］を生成する。
【０１３４】
識別情報の記録されたｍ個の電子透かし記録コンテンツ［（Ｂ１）ＷＭ＿１記録コンテンツ〜（Ｂｍ）ＷＭ＿ｍ記録コンテンツ］は、符号化部３０２において、例えばＭＰＥＧ圧縮等の符号化処理がなされる。
電子透かしが記録され、かつ符号化（エンコード）処理がなされたｍ個のデータ［（ｖ＿１）〜（ｖ＿ｍ）］は、データ抽出部３０３と、ダミーデータ設定部３０４に提供される。
なお、識別情報挿入部３０１の出力する電子透かし記録済み符号化（エンコード）データであるｍ個のデータ［（ｖ＿１）〜（ｖ＿ｍ）］は、先に図７参照して説明したｍ個のデータ（Ｂ１）〜（Ｂｍ）に相当する。
【０１３５】
データ抽出部３０３は、ｍ個の異なるエンコード電子透かし記録コンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］の各セグメントの構成データの一部を抽出する。この処理は、先に図８を参照して説明した処理に対応する。図８を参照して説明したように、ｍ個の異なるエンコード電子透かし記録コンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］の各セグメントから部分データ（サブコンテンツ）を抽出する。
【０１３６】
まず、図８（Ｓ２）に示すように、複数の電子透かし（ＷＭ）入りコンテンツの各セグメントから抽出するサブコンテンツ領域を決定し、図８（Ｓ３）に示すようにサブコンテンツの抽出結果を得る。図８（Ｓ３）に示すように、
（Ｃ１）電子透かし（ＷＭ＿１）入りのストリーム（Ｂ１）から抽出した部分ストリーム（ｓｖ＿１）
（Ｃ２）電子透かし（ＷＭ＿２）入りのストリーム（Ｂ２）から抽出した部分ストリーム（ｓｖ＿２）
：
（Ｃｍ）電子透かし（ＷＭ＿ｍ）入りのストリーム（Ｂｍ）から抽出した部分ストリーム（ｓｖ＿ｍ）
これ等のサブコンテンツを生成する。
【０１３７】
なお、前述したように、複数の電子透かし（ＷＭ）入りコンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］の各セグメントから抽出するサブコンテンツ領域の位置は任意であるが、例えば、ビデオ内容がユーザにとって魅力的であるシーン等を選択してエンコード処理単位としてのＧＯＰ単位で抽出することが好ましい。
【０１３８】
データ抽出部３０３の処理結果としての出力は、図１７に示すように、
エンコード済みＷＭ１記録コンテンツから抽出した部分コンテンツ（ｓｖ＿１）３５３−１、
エンコード済みＷＭ２記録コンテンツから抽出した部分コンテンツ（ｓｖ＿２）３５３−２、
：
エンコード済みＷＭｍ記録コンテンツから抽出した部分コンテンツ（ｓｖ＿ｍ）３５３−ｍ、
これらのデータとなる。
なお、データ抽出部３０３は複数のＷＭ入りコンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］の各セグメントから抽出したサブコンテンツ領域の位置情報を抽出領域情報３５１としてダミーデータ設定部３０４に出力する。
また、この抽出領域情報３５１は図１８に示すセグメント列選択部３１１にも提供される。
【０１３９】
ダミーデータ設定部３０４は、識別情報挿入部３０１から電子透かし記録済み符号化（エンコード）データであるｍ個のデータ［（ｖ＿１）〜（ｖ＿ｍ）］を入力し、さらにデータ抽出部３０３からサブコンテンツを抽出した領域についての位置情報である抽出領域情報３５１を入力する。
ダミーデータ設定部３０４は、ｍ個のデータ［（ｖ＿１）〜（ｖ＿ｍ）］の各セグメントに設定されたサブコンテンツ抽出領域をダミーデータ（オール０など）に置き換える処理を実行する。
【０１４０】
この処理は、先に図９を参照して説明した処理（Ｓ４）の前半の処理に対応する。図９を参照して説明したように、ｍ個の異なるエンコード電子透かし記録コンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］の各セグメントに設定した部分データ（サブコンテンツ）抽出領域をダミーデータ（オール０など）に置き換えて、ｍ個のストリーム（ｍｖ＿１）〜（ｍｖ＿ｍ）を生成する。
【０１４１】
ダミーデータ設定部３０４の生成したｍ個のストリーム（ｍｖ＿１）〜（ｍｖ＿ｍ）は、暗号化部Ａ３０５に入力される。暗号化部Ａは、クライアント共通の暗号鍵（共通鍵）を適用してｍ個のストリーム（ｍｖ＿１）〜（ｍｖ＿ｍ）を暗号化する。
【０１４２】
この処理は、先に図９を参照して説明した処理（Ｓ４）の後半の処理に対応する。図９を参照して説明したように、ｍ個の異なるエンコード電子透かし記録コンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］の各セグメントのサブコンテンツ抽出領域をダミーデータ（オール０など）に置き換えたｍ個のストリーム（ｍｖ＿１）〜（ｍｖ＿ｍ）に対して、クライアント共通の暗号鍵（共通鍵）を適用してｍ個の暗号化／エンコード済み電子透かし記録コンテンツ［ｍｖ＿１＿ｅｎ）〜（ｍｖ＿ｍ＿ｅｎ）］３５２−１〜ｍを生成する。
【０１４３】
次に、サーバにおけるクライアントに提供するコンテンツを生成する処理の後半について、図１８を参照して説明する。
【０１４４】
暗号化部Ａ３０５の生成したｍ個の暗号化／エンコード済み電子透かし記録コンテンツ［ｍｖ＿１＿ｅｎ）〜（ｍｖ＿ｍ＿ｅｎ）］３５２−１〜ｍは、セグメント列選択部Ａ３１１に入力される。
セグメント列選択部Ａ３１１は、メインコンテンツのセグメント列を決定する。すなわち、コンテンツ配信クライアント毎に異なるセグメント列を決定してｍ個の暗号化／エンコード済み電子透かし記録コンテンツ［ｍｖ＿１＿ｅｎ）〜（ｍｖ＿ｍ＿ｅｎ）］３５２−１〜ｍの各セグメントから１つずつ選択してクライアントに提供する固有のセグメント列からなるメインコンテンツを生成する。
【０１４５】
この処理は、先に図１０を参照して説明した処理（Ｓ５）の処理に対応する。図１０を参照して説明したように、特定のクライアントに対して提供するメインコンテンツは、図１０に示す（Ｂ１）〜（Ｂｍ）の暗号化とエンコードがなされた電子透かし記録コンテンツ（ｍｖ＿１＿ｅｎ）〜（ｍｖ＿ｍ＿ｅｎ）の各セグメントから１つずつデータを選択して生成される。
【０１４６】
図１０（Ｓ５）に示す例では、
セグメント１については、（Ｂｍ）のメインセグメントデータ２０１−１
セグメント２については、（Ｂ１）のメインセグメントデータ２０１−２
：
セグメントｎについては、（Ｂ２）のメインセグメントデータ２０１−ｎ
このように、セグメント１〜ｎについて１つずつ選択して、特定のクライアント（例えばクライアントＡ）に提供するメインコンテンツを生成する。
【０１４７】
なお、このときに決定したセグメント列情報３５７はサーバの保持する管理情報（図１６参照）中に登録される。
さらに、セグメント列選択部Ａ３５１において決定したクライアント固有のセグメント列に含まれる抽出領域情報（セグメント列対応抽出領域情報３５５）は、そのセグメント列からなるコンテンツの配信先クライアントにコンテンツに併せて提供される。クライアントは、この抽出領域情報を共通鍵と個別鍵の鍵切り替え位置情報として利用して各データ領域に対応する正しい鍵を選択適用して復号、再生を行うことができる。
【０１４８】
図１８に示すセグメント列選択部Ｂ３１２は、データ抽出部３０３から、
エンコード済みＷＭ１記録コンテンツから抽出した部分コンテンツ（ｓｖ＿１）３５３−１、
エンコード済みＷＭ２記録コンテンツから抽出した部分コンテンツ（ｓｖ＿２）３５３−２、
：
エンコード済みＷＭｍ記録コンテンツから抽出した部分コンテンツ（ｓｖ＿ｍ）３５３−ｍ、
これらのデータを入力する。
さらに、セグメント列選択部Ａからセグメント列情報３５７を入力する。
【０１４９】
セグメント列選択部Ｂ３１２は、セグメント列選択部Ａからセグメント列情報３５７に従って、メインコンテンツのセグメント列と同じ設定としてサブコンテンツのセグメント列を決定し、特定のクライアント向けのサブコンテンツを生成する。
【０１５０】
この処理は、先に図１０を参照して説明した処理（Ｓ６）の処理に対応する。図１０を参照して説明したように、図１０に示す（Ｃ１）〜（Ｃｍ）のデータから各セグメント単位で１つの部分データ（サブコンテンツ）を選択する処理を実行する。
このサブコンテンツの選択処理に際して、セグメント列選択部Ｂ３１２は、セグメント列選択部Ａから入力するセグメント列情報３５７を参照して、メインコンテンツ（Ｂ１）〜（Ｂｍ）におけるセグメント選択態様（セグメント列）と同じセグメント列に設定したサブコンテンツ選択処理を行う。
【０１５１】
次に、セグメント列選択部Ｂ３１２において、特定のクライアント向けのサブコンテンツのセグメント選択結果は暗号化部Ｂ３１３に入力される。
暗号化部Ｂ３１３は、特定のクライアント（例えばクライアントＡ）向けのサブコンテンツに対してクライアント固有の暗号鍵（個別鍵３５８）を適用した暗号化処理を実行する。
【０１５２】
この処理は、先に図１１（Ｓ８）を参照して説明した処理に対応する。サブコンテンツのセグメント選択処理によって選択されたサブコンテンツ（サブセグメントデータ）のみからなる部分ストリーム（サブコンテンツ）の暗号化処理である。コンテンツ配信処理単位、あるいはクライアント単位で異なる個別鍵を適用して暗号化処理を行い、特定クライアントに提供する暗号化サブコンテンツ（ｓｕｂ  ｃｌｉｐ＿ｅｎ）を完成させる。
【０１５３】
先に図１１（Ｓ７），（Ｓ８）を参照して説明したように（Ｓ７）に示すメインコンテンツの暗号鍵は、コンテンツを配信する複数のクライアントに対して共通する共通鍵であるが、（Ｓ８）に示すサブコンテンツの暗号鍵は、コンテンツを配信するクライアント毎に異なる個別鍵である。
【０１５４】
図１８に示す合成処理部３１４には、
セグメント列選択部Ａ３１１の生成した特定クライアント向けの共通鍵で暗号化されたメインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）３５６と、
セグメント列選択部Ｂ３１２の生成した特定クライアント向けの個別鍵で暗号化されたサブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）３５９と、
セグメント列選択部Ａ３１１の選択セグメントに対応する抽出領域情報であるセグメント列対応抽出領域情報３５５、
これらのデータが入力される。
【０１５５】
合成処理部３１４は、セグメント列対応抽出領域情報３５５に基づいて、メインコンテンツ３５６のダミーデータ領域に、サブコンテンツを設定する処理を実行する。
この処理によりも先に図１２を参照して説明したクライアントに対する提供コンテンツが生成される。
生成結果としてのクライアントＡ用のコンテンツ（ｍａｉｎ＋ｓｕｂ＿ｃｌｉｐ＿ｅｎ）３６０が図１２に示すコンテンツに対応し、これがクライアントに提供される。
【０１５６】
クライアントに対しては、
暗号化メインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）とサブコンテンツ（ｓｕｂ  ｃｌｉｐ＿ｅｎ）の合成結果としてのコンテンツ（ｍａｉｎ＋ｓｕｂ＿ｃｌｉｐ＿ｅｎ）３６０と、
暗号化メインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）の暗号鍵である共通鍵と、
暗号化サブコンテンツ（ｓｕｂ  ｃｌｉｐ＿ｅｎ）の暗号鍵である個別鍵、
さらに、暗号化メインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）と暗号化サブコンテンツ（ｓｕｂ  ｃｌｉｐ＿ｅｎ）の領域情報であるセグメント列対応領域情報、
これらのデータが提供される。
【０１５７】
なお、図１７、図１８を参照した説明では、サーバが合成処理部３１４において暗号化メインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）とサブコンテンツ（ｓｕｂ  ｃｌｉｐ＿ｅｎ）の合成処理により、コンテンツ（ｍａｉｎ＋ｓｕｂ＿ｃｌｉｐ＿ｅｎ）３６０を生成してクライアントに提供する処理例を説明した。
【０１５８】
しかし、この合成処理は、クライアント側で実行する構成としてもよい。その場合は、サーバは、クライアントに対して、合成前のデータである暗号化メインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）とサブコンテンツ（ｓｕｂ  ｃｌｉｐ＿ｅｎ）を個別に提供する。クライアントは、このデータに基づいて、合成処理部３１４と同様の合成処理を実行して再生用のコンテンツ（ｍａｉｎ＋ｓｕｂ＿ｃｌｉｐ＿ｅｎ）を生成する。
【０１５９】
［５．ＣＤＮを利用したコンテンツ配信処理について］
クライアントに対するコンテンツ配信処理例として、複数のキャッシュサーバを利用したＣＤＮ（Ｃｏｎｔｅｎｔｓ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  Ｎｅｔｗｏｒｋ）によるコンテンツ配信処理例について図１９、図２０を参照して説明する。
【０１６０】
図１９には、
配信サーバ４００、
キャッシュサーバａ，４０１、
キャッシュサーバｂ，４０２、
クライアントｃ１，４１１〜クライアントｃｎ，４１３
これらを示している。
【０１６１】
配信サーバ４００は、図１７、図１８を参照して説明したコンテンツの生成処理を行うコンテンツ配信元のサーバである。
キャッシュサーバａ，４０１、キャッシュサーバｂ，４０２は、例えば、特定の地区対応のキャッシュサーバ、具体的には例えばヨーロッパ地区、北米地区、あるいはアジア地区等の区域単位で設定された特定地区のクライアント対応のキャッシュサーバである。あるいはコンテンツの種類別に設定されたキャッシュサーバ等である。
図１９には、２つのキャッシュサーバを示しているが、この数は任意であり、さらに多数のキャッシュサーバを設ける設定としてもよい。、
【０１６２】
図１９に示す構成において、クライアントｃ１〜ｃｎ，４１１〜４１３に対するコンテンツ提供処理は、図に示すステップＳ５１〜ステップＳ５５のシーケンスに従って行われる。
【０１６３】
まず、ステップＳ５１において、
配信サーバ４００は、
電子透かし記録、ダミーデータ置き換え、共通鍵での暗号化処理、これらの処理が実行されたｍ個の電子透かし記録コンテンツ（Ｂ１）〜（Ｂｍ）のコピーデータと共通鍵を各キャッシュサーバに提供し、キャッシュサーバに格納させる。このデータは、図９を参照して説明した（Ｂ１）〜（Ｂｍ）のデータに相当する。
すなわち、
（Ｂ１）暗号化とエンコードがなされた電子透かし（ＷＭ＿１）入りのストリーム（ｍｖ＿１＿ｅｎ）
（Ｂ２）暗号化とエンコードがなされた電子透かし（ＷＭ＿２）入りのストリーム（ｍｖ＿２＿ｅｎ）
：
（Ｂｍ）暗号化とエンコードがなされた電子透かし（ＷＭ＿ｍ）入りのストリーム（ｍｖ＿ｍ＿ｅｎ）
これらのコピーデータと、共通鍵を各キャッシュサーバ４０１，４０２に提供する。
【０１６４】
次に、ステップＳ５２において、クライアントｃ１〜ｃｎ，４１１〜４１３は、配信サーバ４００に対して、コンテンツの配信（ダウンロード）要求を送信する。
【０１６５】
次に、ステップＳ５３において、配信サーバ４００は、クライアントからのコンテンツ配信要求をクライアント対応のキャッシュサーバに対して転送する。
たとえばヨーロッパのクライアントからのコンテンツ配信要求は、ヨーロッパ地区対応のキャッシュサーバに転送し、日本のクライアントからのコンテンツ配信要求は、日本やアジア地区対応のキャッシュサーバに転送するといった処理を行う。
【０１６６】
なお、このコンテンツ配信要求の転送処理に際して、配信サーバ４００は、クライアント対応の固有のセグメント列を決定し、この決定したセグメント列情報をキャッシュサーバに提供する。配信サーバ４００は、決定したセグメント列情報をクライアント情報に対応付けて管理情報として記録する。
【０１６７】
次にステップＳ５４において、配信サーバ４００は、クライアント対応の固有のセグメント列に従って選択したサブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）を生成し、生成したサブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）と、固有鍵と、セグメント列対応抽出領域情報をキャッシュサーバに提供する。
【０１６８】
次に、ステップＳ５５において、配信サーバ４００から、セグメント列情報と、サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）を受信したキャッシュサーバは、予め配信サーバ４００から受領済みのｍ個の電子透かし記録コンテンツ（Ｂ１）〜（Ｂｍ）のコピーデータから、セグメント列情報に従って、メインコンテンツのセグメントを選択して、クライアント対応のメインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）を生成する。
【０１６９】
さらに、メインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）とサブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）の合成処理により、クライアントに提供するコンテンツ（ｍａｉｎ＋ｓｕｂ＿ｃｌｉｐ＿ｅｎ）を生成してクライアントに提供する。
なお、クライアントに対しては、共通鍵、個別鍵、セグメント列対応抽出領域情報が併せて提供される。
この処理例は、キャッシュサーバにおいて合成処理を実行する処理例である。
【０１７０】
次に、ＣＤＮを利用したコンテンツ配信処理の別態様について図２０を参照して説明する。
図２０も図１９と同様、
配信サーバ４００、
キャッシュサーバａ，４０１、
キャッシュサーバｂ，４０２、
クライアントｃ１，４１１〜クライアントｃｎ，４１３
これらを示している。
【０１７１】
図２０に示す構成において、クライアントｃ１〜ｃｎ，４１１〜４１３に対するコンテンツ提供処理は、図に示すステップＳ７１〜ステップＳ７５のシーケンスに従って行われる。
【０１７２】
まず、ステップＳ７１において、
配信サーバ４００は、
電子透かし記録、ダミーデータ置き換え、共通鍵での暗号化処理、これらの処理が実行されたｍ個の電子透かし記録コンテンツ（Ｂ１）〜（Ｂｍ）のコピーデータと共通鍵を各キャッシュサーバに提供し、キャッシュサーバに格納させる。このデータは、図９を参照して説明した（Ｂ１）〜（Ｂｍ）のデータに相当する。
すなわち、
（Ｂ１）暗号化とエンコードがなされた電子透かし（ＷＭ＿１）入りのストリーム（ｍｖ＿１＿ｅｎ）
（Ｂ２）暗号化とエンコードがなされた電子透かし（ＷＭ＿２）入りのストリーム（ｍｖ＿２＿ｅｎ）
：
（Ｂｍ）暗号化とエンコードがなされた電子透かし（ＷＭ＿ｍ）入りのストリーム（ｍｖ＿ｍ＿ｅｎ）
これらのコピーデータと、共通鍵を各キャッシュサーバ４０１，４０２に提供する。
【０１７３】
次に、ステップＳ７２において、クライアントｃ１〜ｃｎ，４１１〜４１３は、配信サーバ４００に対して、コンテンツの配信（ダウンロード）要求を送信する。
【０１７４】
次に、ステップＳ７３において、配信サーバ４００は、クライアントからのコンテンツ配信要求をクライアント対応のキャッシュサーバに対して転送する。
なお、このコンテンツ配信要求の転送処理に際して、配信サーバ４００は、クライアント対応の固有のセグメント列を決定し、この決定したセグメント列情報をキャッシュサーバに提供する。配信サーバ４００は、決定したセグメント列情報をクライアント情報に対応付けて管理情報として記録する。
【０１７５】
次にステップＳ７４において、配信サーバ４００から、セグメント列情報を受信したキャッシュサーバは、予め配信サーバ４００から受領済みのｍ個の電子透かし記録コンテンツ（Ｂ１）〜（Ｂｍ）のコピーデータから、セグメント列情報に従って、メインコンテンツのセグメントを選択して、クライアント対応のメインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）を生成して、共通鍵とともにクライアントに提供する。
【０１７６】
次に、ステップＳ７５において、配信サーバ４００は、クライアント対応の固有のセグメント列に従って選択したサブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）を生成し、生成したサブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）と、固有鍵と、セグメント列対応抽出領域情報をクライアントに提供する。
【０１７７】
この処理例は、クライアントが、メインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）と、サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）を個別に受信する設定であり、クライアントにおいて合成処理を実行する処理例である。
なお、図１９、図２０を参照して説明したコンテンツ配信処理例の他にも、処理分担をさまざまな異なる設定とした処理が可能である。
【０１７８】
ＣＤＮ（Ｃｏｎｔｅｎｔｓ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  Ｎｅｔｗｏｒｋ）を利用したコンテンツ配信では、多くのキャッシュサーバを利用することでデータ配信の負荷を分散することが可能となり、特定の１つのサーバによる処理負荷の増大による配信遅延等を防止することができる。
【０１７９】
［６．クライアントにおけるコンテンツ再生処理について］
次に図２１を参照してクライアントにおけるコンテンツ再生処理例について説明する。図２１には、クライアントにおけるコンテンツ再生処理を実行するデータ処理部の構成と記憶部を示している。
クライアントは、サーバから、
暗号化コンテンツ（ｍａｉｎ＋ｓｕｂ＿ｃｌｉｐ＿ｅｎ）、
共通鍵、
個別鍵、
セグメント列対応領域情報、
これらのデータを受信し、記憶部５０１に格納する。
【０１８０】
クライアントのデータ処理部の制御部５０２は、まず、記憶部から抽出領域情報（＝セグメント列対応抽出領域情報）５１１を取得する。これは、クライアントに提供されたセグメント列を構成する各セグメントの暗号化データ構成を示す情報である。すなわち、
共通鍵で暗号化されたメインコンテンツ領域と、
個別鍵で暗号化されたサブコンテンツ領域、
これらの領域を確認することができる情報である。
【０１８１】
図２１に示すように、クライアントの制御部５０２は、記憶部５０１から抽出領域情報５１１を読みだして、抽出領域情報５１１を参照して、鍵切り替え情報５１４を復号部５０３に出力する。
すなわち、共通鍵で暗号化されたデータ領域については共通鍵の適用命令を復号部５０３に出力し、個別鍵で暗号化されたデータ領域については個別鍵の適用命令を復号部５０３に出力する。
【０１８２】
復号部５０３は、記憶部５０１から読みだした暗号化コンテンツ（ｍａｉｎ＋ｓｕｂ＿ｃｌｉｐ＿ｅｎ）５１２に対する復号処理を、記憶部５０１から読みだした暗号鍵（共通鍵、個別鍵）５１３を適用して適宜、鍵の切り替えを実行して復号処理を実行する。
【０１８３】
復号結果は、デコードおよび再生処理部５０４に提供される。デコードおよび再生処理部５０４は、所定のデコード処理、例えばＭＰＥＧデコードを実行して再生処理を実行し、再生データ５２０を出力する。
【０１８４】
［７．サーバにおけるコンテンツ生成、提供処理シーケンスについて］
次に、図２２、図２３に示すフローチャートを参照してサービスプロバイダ等のサーバにおいて実行するコンテンツ生成と提供処理シーケンスについて説明する。
【０１８５】
（７−１．サーバにおけるコンテンツ生成処理シーケンス）
まず、図２２に示すフローチャートを参照してサービスプロバイダ等のサーバにおいて実行するコンテンツ生成処理シーケンスについて説明する。
【０１８６】
図２２に示すフローに従った処理は、サーバのデータ処理部において実行される。
まず、ステップＳ１０１において、
オリジナルコンテンツ、例えば映画等のオリジナルコンテンツを取得する。
次に、ステップＳ１０２において、オリジナルコンテンツのコピーを、ｍ個作成し、各コピーコンテンツに対して、異なる情報（例えば電子透かし情報）を記録する。
さらに、ステップＳ１０３において、各コピーコンテンツをエンコードし、ｍ個のビデオストリームを作成する。さらに必要に応じて音声、字幕等のデータとの多重化を実行する。
【０１８７】
これらの処理は、先に図７を参照して説明した処理に対応する。
すなわち、図７を参照して説明したように、電子透かしの記録処理の後、所定の符号化処理（例えばＭＰＥＧ圧縮等）、すなわちエンコード処理を実行する。
この結果として、図７に示すｍ個の異なる電子透かしを記録したエンコードが施された電子透かし記録コンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］が生成される。すなわち、
（Ｂ１）＝（ｖ＿１）：各セグメントに電子透かしデータ（１）を記録した第１電子透かし（Ｗａｔｅｒｍａｒｋ１）記録コンテンツ
（Ｂ２）＝（ｖ＿２）：各セグメントに電子透かしデータ（２）を記録した第２電子透かし（Ｗａｔｅｒｍａｒｋ２）記録コンテンツ
：
（Ｂｍ）＝（ｖ＿ｍ）：各セグメントに電子透かしデータ（ｍ）を記録した第ｍ電子透かし（Ｗａｔｅｒｍａｒｋｍ）記録コンテンツ
これらのｍ個の異なるエンコード電子透かし記録コンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］を生成する。
【０１８８】
次に、ステップＳ１０４において、各ビデオストリームの各セグメントにデータ抽出領域を設定してデータ抽出領域のデータを抽出し、ｍ組の部分ストリーム（ｓｖ＿１〜ｓｖ＿ｍ）を生成する。
【０１８９】
この処理は、先に図８を参照して説明した処理に対応する。
すなわち、図８を参照して説明したように、ｍ個の異なるエンコード電子透かし記録コンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］の各セグメントから部分データ（サブコンテンツ）を抽出する処理である。
サーバは、まず、図８（Ｓ２）に示すように、複数のＷＭ入りコンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］の各セグメントから抽出するサブコンテンツ領域を決定する。
サーバは、各ビデオストリームの中のセグメント毎に所定の部分を抜き出す。抽出位置は任意であるが、例えば、ビデオ内容がユーザにとって魅力的であるシーン等を選択し、かつエンコード処理単位としてのＧＯＰ単位で抽出することが好ましい。
【０１９０】
ｍ個の異なる電子透かし記録コンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］のセグメント単位で抽出した抽出コンテンツ（部分ストリーム）として、図８（Ｓ３）に示すように、複数のＷＭ入りコンテンツ［（ｖ＿１）〜（ｖ＿ｍ）］に対応するｍ個の部分ストリーム（サブコンテンツ）を生成する。
図８（Ｓ３）に示す（Ｃ１）〜（Ｃｍ）の各データである。
【０１９１】
次に、ステップＳ１０５において、各ビデオストリームの各セグメントのデータ抽出領域をダミーデータ（オール０など）に置き換える処理を実行する。
この処理は、先に図９を参照して説明した処理に対応する。
すなわち、図９を参照して説明したように、ｍ個のエンコード電子透かし記録コンテンツ（Ｂ１）〜（Ｂｍ）［（ｖ＿１）〜（ｖ＿ｍ）］の各セグメント内に設定された部分データ（サブコンテンツ）抽出位置のデータをダミーデータ、例えばオール０などのデータに置き換える。すなわち、抽出領域内の元のコンテンツデータは削除する。
【０１９２】
次に、ステップＳ１０６において、ダミーデータで置き換えたｍ個の各ビデオストリームを同じ暗号鍵で暗号化する。
この処理も、図９を参照して説明した処理に対応する。
サーバは、ダミーデータへの置換処理後のデータ（ｍｖ＿１）〜（ｍｖ＿ｍ）に対して、１つの暗号鍵（共通鍵）を適用して暗号化処理を実行する。
この暗号化後のデータが図９に示す（Ｂ１）〜（Ｂｍ）てある。
ダミーデータ置換と暗号化処理後のｍ個のエンコード電子透かし記録コンテンツ（Ｂ１）〜（Ｂｍ）［（ｍｖ＿１＿ｅｎ）〜（ｍｖ＿ｍ＿ｅｎ）］を生成する。
【０１９３】
（７−２．サーバにおけるコンテンツ提供処理シーケンス）
次に、図２３に示すフローチャートを参照してサービスプロバイダ等のサーバにおいて実行するコンテンツ提供処理シーケンスについて説明する。
【０１９４】
図２３に示すフローに従った処理は、クライアントに対するコンテンツ配信処理毎に、逐次サーバのデータ処理部において実行される。
まず、ステップＳ１５１において、
クライアントからのコンテンツダウンロードリクエストを受信する。
次に、ステップＳ１５２において、
セグメント分割されたｍ個の電子透かし記録コンテンツから、ユニークな組み合わせのセグメント列を決定して暗号化メインコンテンツ（ｍａｉｎ  ｃｌｉｐ＿ｅｎ）を生成する。併せてセグメント列情報を生成する。
【０１９５】
この処理は、先に図１０（Ｓ５）を参照して説明した処理に対応する。
図１０に示す（Ｂ１）〜（Ｂｍ）の暗号化とエンコードがなされた電子透かし記録コンテンツ（ｍｖ＿１＿ｅｎ）〜（ｍｖ＿ｍ＿ｅｎ）の各セグメントから１つずつデータを選択してメインコンテンツを生成する処理である。
セグメント列は、クライアント固有のセグメント列とする。
【０１９６】
次に、ステップＳ１５３において、
ｍ組の部分ストリーム（ｓｖ＿１〜ｓｖ＿ｍ）から、メインコンテンツのセグメント列と同じセグメント列としてデータ選択を行い、サブコンテンツ（ｓｕｂ＿ｃｌｉｐ）を生成する。
【０１９７】
この処理は、先に図１０（Ｓ６）を参照して説明した処理に対応する。
図１０に示す（Ｃ１）〜（Ｃｍ）のデータから各セグメント単位で１つの部分データ（サブコンテンツ）を選択する処理である。このサブコンテンツの選択処理は、メインコンテンツ（Ｂ１）〜（Ｂｍ）におけるセグメント選択態様（セグメント列）と同じ態様とする。
【０１９８】
次に、ステップＳ１５４において、
個別鍵によるサブコンテンツ（ｓｕｂ＿ｃｌｉｐ）の暗号化を実行して暗号化サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）を生成する。
【０１９９】
この処理は、先に図１１（Ｓ８）を参照して説明した処理に対応する。
メインコンテンツと同様のセグメント単位の選択態様（セグメント列）で選択したサブコンテンツに対して個別鍵を適用した暗号化により特定クライアントに提供する暗号化サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）を生成する処理である。
【０２００】
次に、ステップＳ１５５において、
暗号化メインコンテンツと暗号化サブコンテンツの位置情報を記録した抽出領域情報を作成する。
これは、クライアント対応のセグメント列に含まれるセグメントのみの抽出領域情報であり、図１８に示すセグメント列対応抽出領域情報３５５である。
【０２０１】
先に、図１８を参照して説明したように、セグメント列選択部Ａ３５１は、クライアント固有のセグメント列に含まれる抽出領域情報（セグメント列対応抽出領域情報３５５）を作成する。この抽出領域情報は、そのセグメント列からなるコンテンツの配信先クライアントにコンテンツに併せて提供される。クライアントは、この抽出領域情報を共通鍵と個別鍵の鍵切り替え位置情報として利用して各データ領域に対応する正しい鍵を選択適用して復号、再生を行うことができる。
【０２０２】
次に、ステップＳ１５６において、サーバは、
暗号化メインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）と、
暗号化サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）と、
暗号化メインコンテンツの復号に適用する暗号鍵（共通鍵）と、
暗号化サブコンテンツの復号に適用する暗号鍵（個別鍵）と、
抽出領域情報を
クライアントに対して配信する。
【０２０３】
なお、このフローでは暗号化メインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）と暗号化サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）の合成処理をサーバにおいて実行しない場合の処理例である。
【０２０４】
合成処理を実行する場合は、さきに図１８を参照して説明したように、暗号化メインコンテンツ（ｍａｉｎ＿ｃｌｉｐ＿ｅｎ）と暗号化サブコンテンツ（ｓｕｂ＿ｃｌｉｐ＿ｅｎ）の合成により、合成結果としてのコンテンツ（ｍａｉｎ＋ｓｕｂ＿ｃｌｉｐ＿ｅｎ）を生成して、このコンテンツをクライアントに提供することになる。
【０２０５】
さらに、ステップＳ１５７において、
コンテンツ提供クライアント情報とセグメント列情報と暗号鍵情報との対応データを含む管理情報を作成して記憶部に格納する。
【０２０６】
ステップＳ１５７における管理情報は、例えば、図１６を参照して説明した管理情報である。
各クライアントに提供したコンテンツ単位で、クライアント識別情報となる固有ＩＤと、配信先情報や配信ユーザ情報等のクライアント情報が対応付けて記録された管理情報である。
【０２０７】
［８．クライアントにおけるコンテンツ再生シーケンスについて］
次に、図２４に示すフローチャートを参照してクライアントにおけるコンテンツ再生処理シーケンスについて説明する。この処理は、クライアント装置において再生処理を実行するデータ処理部の処理として実行される。
【０２０８】
コンテンツ再生処理を実行するクライアント装置は、まず、ステップＳ３０１において、サーバから受信した抽出領域情報を取得する。
先に図２１を参照して説明したように、抽出領域情報（＝セグメント列対応抽出領域情報）は、クライアントに提供されたセグメント列を構成する各セグメントの暗号化データ構成を示す情報である。すなわち、
共通鍵で暗号化されたメインコンテンツ領域と、
個別鍵で暗号化されたサブコンテンツ領域、
これらの領域を確認することができる情報である。
【０２０９】
次に、ステップＳ３０２において、
抽出領域情報に基づいて暗号化メインコンテンツと、暗号化サブコンテンツの切り替え位置情報を取得する。
次に、ステップＳ３０３において、
取得した切り替え位置情報に応じて共通鍵と個別鍵を切り替えて各暗号化コンテンツを順次、復号する。
すなわち、共通鍵で暗号化されたデータ領域については共通鍵を適用した復号処理、個別鍵で暗号化されたデータ領域については個別鍵を適用した復号処理を実行する。
【０２１０】
次に、ステップＳ３０４において、
復号コンテンツをデコード、例えばＭＰＥＧデコード処理を実行して再生処理を行う。
【０２１１】
［９．サーバにおける不正流通コンテンツに基づく出所判定処理シーケンスについて］
次に、不正な流通コンテンツが発見された場合に実行する出所判定処理シーケンスについて図２５に示すフローチャートを参照して説明する。
【０２１２】
図２５に示すフローに従った処理は、例えばコンテンツ配信を実行したサービスプロバイダのサーバのデータ処理部において実行される処理である。
【０２１３】
まず、ステップＳ５０１において、
不正流通コンテンツの画像信号を取得する。
なお、不正流通コンテンツとは、例えばネットワーク上の誰でもアクセス可能なサイトから自由にダウンロード可能な設定とされたコンテンツや、不正に流通しているディスクに記録されたコピーコンテンツなどである。
【０２１４】
次に、ステップＳ５０２において、
不正流通コンテンツのビデオストリーム（画像信号）の解析により画像に含まれるセグメント列を示す識別情報（固有ＩＤ）を取得する。すなわち、電子透かし解析処理を実行する。
なお、この電子透かし解析処理に際しては、先に図１４、図１５を参照して説明したようにエラー訂正コード、改ざん検証値等が記録されている場合、これらのデータを利用したエラー訂正処理や、改ざん検証処理を実行した上で固有ＩＤである識別情報の読み取りを実行する。
【０２１５】
次に、ステップＳ５０３では、
不正流通コンテンツから取得した識別情報と、管理情報に記録された識別情報（固有ＩＤ）を照合し、不正流通コンテンツの流通元、すなわち、コンテンツを配信したクライアントを判定する。
なお、管理情報とは、先に説明した図１６に示す管理情報である。
【０２１６】
なお、図２５に示すフローでは、電子透かしデータの解析処理例のみを説明したが、クライアントに提供するサブコンテンツに対応する暗号鍵はクライアント固有の個別鍵であり、個別鍵が、不正に流通している場合、その不正流通している個別鍵と、図１６に示す管理情報の登録情報との照合を行うことで、不正流通鍵の出所を明らかにすることが可能となる。
【０２１７】
［１０．各装置のハードウェア構成例について］
最後に、図２６、図２７を参照して、上述した処理を実行する各装置のハードウェア構成例について説明する。
まず、図２６を参照して、コンテンツ提供処理を実行するサーバのハードウェア構成例について説明する。
【０２１８】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）６０１は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）６０２、または記憶部６０８に記憶されているプログラムに従って各種の処理を実行するデータ処理部として機能する。
【０２１９】
例えば、上述の各実施例において説明した識別情報（固有ＩＤ）としての電子透かしを記録したコンテンツの生成処理や、コンテンツ提供処理、管理情報の作成記録処理等を実行する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）６０３には、ＣＰＵ６０１が実行するプログラムやデータなどが適宜記憶される。これらのＣＰＵ６０１、ＲＯＭ６０２、およびＲＡＭ６０３は、バス６０４により相互に接続されている。
【０２２０】
ＣＰＵ６０１はバス６０４を介して入出力インタフェース６０５に接続され、入出力インタフェース６０５には、各種スイッチ、キーボード、マウス、マイクロホンなどよりなる入力部６０６、ディスプレイ、スピーカなどよりなる出力部６０７が接続されている。ＣＰＵ６０１は、入力部６０６から入力される指令に対応して各種の処理を実行し、処理結果を例えば出力部６０７に出力する。
【０２２１】
入出力インタフェース６０５に接続されている記憶部６０８は、例えばハードディスク等からなり、ＣＰＵ６０１が実行するプログラムや各種のデータを記憶する。例えば図６を参照して説明した管理情報等も記録される。
通信部６０９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【０２２２】
次に、図２７を参照して、コンテンツの受信、再生処理等を実行するクライアント装置のハードウェア構成例について説明する。
【０２２３】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）７０１は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）７０２、または記憶部７０８に記憶されているプログラムに従って各種の処理を実行するデータ処理部として機能する。
【０２２４】
例えば、上述の各実施例において説明したサーバとの通信処理やサーバからの受信データの記憶部７０８（ハードディスク等）に対する記録処理、記憶部７０８（ハードディスク等）からのデータ再生処理等を実行する。
【０２２５】
ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）７０３には、ＣＰＵ７０１が実行するプログラムやデータなどが適宜記憶される。これらのＣＰＵ７０１、ＲＯＭ７０２、およびＲＡＭ７０３は、バス７０４により相互に接続されている。
【０２２６】
ＣＰＵ７０１はバス７０４を介して入出力インタフェース７０５に接続され、入出力インタフェース７０５には、各種スイッチ、キーボード、マウス、マイクロホンなどよりなる入力部７０６、ディスプレイ、スピーカなどよりなる出力部７０７が接続されている。ＣＰＵ７０１は、入力部７０６から入力される指令に対応して各種の処理を実行し、処理結果を例えば出力部７０７に出力する。
【０２２７】
入出力インタフェース７０５に接続されている記憶部７０８は、例えばハードディスク等からなり、ＣＰＵ７０１が実行するプログラムや各種のデータを記憶する。通信部７０９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【０２２８】
入出力インタフェース７０５に接続されているドライブ７１０は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア７１１を駆動し、記録されているコンテンツ、プログラム等の各種データを取得する。
【０２２９】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【０２３０】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０２３１】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０２３２】
以上、説明したように、本発明の一実施例の構成によれば、不正流通コンテンツからその出所を検証可能とする構成が提供される。本発明の一実施例構成では、コンテンツに異なる付加情報を記録した複数の付加情報記録コンテンツからセグメント単位でデータ選択を行ってクライアント提供コンテンツを生成する。クライアント単位で異なるセグメント列を選択し、クライアント情報とセグメント列情報を対応付けた管理情報を生成し、不正流通コンテンツのセグメント列に基づいてコンテンツ流通元のクライアントを特定する。また、セグメント単位でデータ抽出領域を設定し、該データ抽出領域のデータをダミーデータで置き換え、共通鍵で暗号化した暗号化メインコンテンツと、データ抽出領域のデータをコンテンツ配信先のクライアント固有の個別鍵で暗号化した暗号化サブコンテンツを生成してクライアントに提供する。
本構成により、両出したコンテンツのセグメント列や個別鍵に基づいて、その流出元であるクライアントを特定することが可能となる。
【符号の説明】
【０２３３】
１０  コンテンツ配信サーバ
１１  暗号化コンテンツ
１２，１４〜１６  暗号鍵
２１，２２，２４〜２６  クライアント
２３，２９  不正ユーザ
２８  不正クライアント
３１  公開された暗号鍵
３２  暗号化コンテンツのコピー
３３  不正公開コンテンツ
１００  サーバ
１２０  クライアント
１３１〜１３３  クライアント
１４１  ディスク
３００  データベース
３０１  識別情報挿入部
３０２  符号化部
３０３  データ抽出部
３０４  ダミーデータ設定部
３０５  暗号化部Ａ
３１１  セグメント列選択部Ａ
３１２  セグメント列選択部Ｂ
３１３  暗号化部Ｂ
３１４  合成処理部
３５０  オリジナルコンテンツ
３５１  抽出領域情報
３５２  共通鍵
３５３  暗号化／エンコード済みＷＭ記録コンテンツ
３５４  エンコード済みＷＭ記録コンテンツから抽出した部分コンテンツ
３５５  セグメント列対応抽出領域情報
３５６  クライアントＡａのメインコンテンツ
３５７  セグメント列情報
３５８  個別鍵
３５９  クライアントＡ用のサブコンテンツ
３６０  クライアントＡ用のコンテンツ
４００  配信サーバ
４０１，４０２  キャッシュサーバ
４１１〜４１３  クライアント
５０１  記憶部
５０２  制御部
５０３  復号部
５０４  デコードおよび再生処理部
５２０  再生データ
６０１  ＣＰＵ
６０２  ＲＯＭ
６０３  ＲＡＭ
６０４  バス
６０５  入出力インタフェース
６０６  入力部
６０７  出力部
６０８  記憶部
６０９  通信部
７０１  ＣＰＵ
７０２  ＲＯＭ
７０３  ＲＡＭ
７０４  バス
７０５  入出力インタフェース
７０６  入力部
７０７  出力部
７０８  記憶部
７０９  通信部
７１０  ドライブ
７１１  リムーバブルメディア
【図５】
0005605146.tif 000002
【図６】
0005605146.tif 000003
【図７】
0005605146.tif 000004
【図８】
0005605146.tif 000005
【図９】
0005605146.tif 000006
【図１０】
0005605146.tif 000007
【図１１】
0005605146.tif 000008
【図１２】
0005605146.tif 000009
【図１４】
0005605146.tif 000010
【図１５】
0005605146.tif 000011
【図１６】
0005605146.tif 000012
【図１７】
0005605146.tif 000013
【図１８】
0005605146.tif 000014
【図１９】
0005605146.tif 000015
【図２０】
0005605146.tif 000016
【図２１】
0005605146.tif 000017
【図２２】
0005605146.tif 000018
【図２３】
0005605146.tif 000019
【図２４】
0005605146.tif 000020
【図２５】
0005605146.tif 000021
【図２６】
0005605146.tif 000022
【図２７】
0005605146.tif 000023
【図１】
0005605146.tif 000024
【図２】
0005605146.tif 000025
【図３】
0005605146.tif 000026
【図４】
0005605146.tif 000027
【図１３】
0005605146.tif 000028