(57)【特許請求の範囲】
【請求項１】
暗号化コンテンツの復号および再生処理を実行するデータ処理部を有し、
前記データ処理部は、
前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルを適用したコンテンツ再生可否判定処理を実行し、
前記暗号化コンテンツ署名ファイルは、
前記暗号化コンテンツ、または前記暗号化コンテンツの暗号化前の平文コンテンツのデータ種類別の一部区間データであるコンテンツブロックに基づいて生成された照合用ハッシュ値と、前記コンテンツブロックの位置情報からなるコンテンツハッシュリストを複数含むコンテンツハッシュリスト集合と、
前記暗号化コンテンツの暗号鍵と前記コンテンツハッシュリスト集合から生成されたデータに対する署名データを含み、
前記データ処理部は、前記コンテンツ再生可否判定処理において、
前記暗号化コンテンツ、または暗号化前の平文データの構成データに基づいて算出した算出ハッシュ値と、前記コンテンツハッシュリスト集合に含まれる照合用ハッシュ値とのハッシュ値照合処理と、
前記署名データを適用した署名検証処理を実行し、
前記ハッシュ値照合処理、および前記署名検証処理のいずれも成功したことを条件として前記暗号化コンテンツの復号、再生処理を行う情報処理装置。
【請求項２】
前記コンテンツハッシュリスト集合に格納された照合用ハッシュ値は、暗号化の施されていない平文コンテンツの構成データに基づいて生成された照合用ハッシュ値である請求項１に記載の情報処理装置。
【請求項３】
前記コンテンツハッシュリスト集合に格納された照合用ハッシュ値は、コンテンツを構成するデータ種類別のコンテンツブロック単位の照合用ハッシュ値である請求項１に記載の情報処理装置。
【請求項４】
前記コンテンツハッシュリスト集合に格納された照合用ハッシュ値は、コンテンツを構成する音声、画像、字幕の各データ別のコンテンツブロック単位のハッシュ値である請求項１に記載の情報処理装置。
【請求項５】
前記コンテンツハッシュリスト集合を構成するコンテンツハッシュリストの各々は、
コンテンツを構成する音声、画像、字幕の各データ別のコンテンツブロック単位の照合用ハッシュ値と、
前記コンテンツブロックの位置情報を示す属性情報を含むデータである請求項１に記載の情報処理装置。
【請求項６】
前記コンテンツハッシュリスト集合を構成するコンテンツハッシュリストは、
複数の異なるバリエーションデータに対応する複数のコンテンツブロックに対応する複数の照合用ハッシュ値を含むデータである請求項１に記載の情報処理装置。
【請求項７】
前記複数の異なるバリエーションデータは、マルチアングルコンテンツにおける異なる複数のアングルから撮影された複数の画像データである請求項６に記載の情報処理装置。
【請求項８】
前記データ処理部は、前記コンテンツ再生可否判定処理において、
前記コンテンツハッシュリスト集合に含まれる照合用ハッシュ値を、前記暗号化コンテンツの構成データから算出したハッシュ値に置き換えるハッシュ値置換処理を実行し、
前記署名検証処理を、
前記ハッシュ値置換処理を実行したコンテンツハッシュリスト集合と、コンテンツの暗号鍵のハッシュ値の連結データを適用して実行する請求項１に記載の情報処理装置。
【請求項９】
暗号化コンテンツの復号および再生処理を実行するユーザ装置と、
前記ユーザ装置に対する暗号化コンテンツの提供処理を実行するコンテンツ提供装置と、
前記コンテンツ提供装置に対する暗号化コンテンツ署名ファイルの提供処理を実行する暗号化コンテンツ署名発行装置を有する情報処理システムであり、
前記コンテンツ提供装置は、
前記暗号化コンテンツ、または前記暗号化コンテンツの暗号化前の平文コンテンツのデータ種類別の一部区間データであるコンテンツブロックに基づいて生成された照合用ハッシュ値と、前記コンテンツブロックの位置情報からなるデータセットを複数含むコンテンツハッシュリスト集合と、前記暗号化コンテンツの暗号鍵または暗号鍵のハッシュ値を前記暗号化コンテンツ署名発行装置に送信し、
前記暗号化コンテンツ署名発行装置は、
前記コンテンツハッシュリスト集合と、前記暗号化コンテンツの暗号鍵のハッシュ値を署名対象とした署名データを生成し、
生成した署名データと、前記コンテンツハッシュリスト集合を含む暗号化コンテンツ署名ファイルを生成して前記コンテンツ提供装置に送信し、
前記コンテンツ提供装置は、
前記暗号化コンテンツ、および前記暗号化コンテンツ署名ファイルをユーザ装置に提供し、
前記ユーザ装置は、
前記暗号化コンテンツ、または暗号化前の平文データの構成データに基づいて算出した算出ハッシュ値と、暗号化コンテンツ署名ファイル内のコンテンツハッシュリスト集合に含まれる照合用ハッシュ値とのハッシュ値照合処理と、
前記暗号化コンテンツ署名ファイル内の署名データを適用した署名検証処理を実行し、
前記ハッシュ値照合処理、および前記署名検証処理のいずれも成功したことを条件として前記暗号化コンテンツの復号、再生処理を行う情報処理システム。
【請求項１０】
暗号化コンテンツの再生可否判定処理に適用する暗号化コンテンツ署名ファイルの構成データを生成するデータ処理部を有し、
前記データ処理部は、
前記暗号化コンテンツ、または前記暗号化コンテンツの暗号化前の平文コンテンツのデータ種類別の一部区間データであるコンテンツブロックに基づいて生成した照合用ハッシュ値と、前記コンテンツブロックの位置情報を含む属性情報を有するハッシュリストを生成し、
前記ハッシュリストを複数集めたコンテンツハッシュリスト集合を生成し、
生成したコンテンツハッシュリスト集合と、前記暗号化コンテンツの暗号鍵または該暗号鍵のハッシュ値を外部の署名発行装置に送信し、
前記署名発行装置から、
前記コンテンツハッシュリスト集合と、
前記暗号化コンテンツの暗号鍵と前記コンテンツハッシュリスト集合とに基づく生成データに対する署名データと、
を含む暗号化コンテンツ署名ファイルを取得し、
取得した暗号化コンテンツ署名ファイルと暗号化コンテンツをユーザ装置に提供する情報処理装置。
【請求項１１】
前記コンテンツハッシュリスト集合に格納された照合用ハッシュ値は、暗号化の施されていない平文コンテンツの構成データに基づいて生成した照合用ハッシュ値である請求項１０に記載の情報処理装置。
【請求項１２】
前記コンテンツハッシュリスト集合に格納された照合用ハッシュ値は、前記暗号化コンテンツを構成するデータ種類別のコンテンツブロック単位の照合用ハッシュ値である請求項１０に記載の情報処理装置。
【請求項１３】
前記コンテンツハッシュリスト集合に格納された照合用ハッシュ値は、前記暗号化コンテンツを構成する音声、画像、字幕の各データ別のコンテンツブロック単位の照合用ハッシュ値である請求項１０に記載の情報処理装置。
【請求項１４】
前記コンテンツハッシュリスト集合を構成するコンテンツハッシュリストの各々は、
前記暗号化コンテンツを構成する音声、画像、字幕の各データ別のコンテンツブロック単位の照合用ハッシュ値と、
前記コンテンツブロックの位置情報を示す属性情報を含むデータである請求項１０に記載の情報処理装置。
【請求項１５】
前記コンテンツハッシュリスト集合を構成するコンテンツハッシュリストは、
複数の異なるバリエーションデータに対応する複数のコンテンツブロックに対応する複数の照合用ハッシュ値を含むデータである請求項１０に記載の情報処理装置。
【請求項１６】
暗号化コンテンツの復号および再生処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置のデータ処理部において、
前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルを適用したコンテンツ再生可否判定処理を実行し、
前記暗号化コンテンツ署名ファイルは、
前記暗号化コンテンツ、または前記暗号化コンテンツの暗号化前の平文コンテンツのデータ種類別の一部区間データであるコンテンツブロックに基づいて生成された照合用ハッシュ値と、前記コンテンツブロックの位置情報からなるコンテンツハッシュリストを複数含むコンテンツハッシュリスト集合と、
前記暗号化コンテンツの暗号鍵と前記コンテンツハッシュリスト集合から生成されたデータに対する署名データを含み、
前記データ処理部は、前記コンテンツ再生可否判定処理において、
前記暗号化コンテンツ、または暗号化前の平文データの構成データに基づいて算出した算出ハッシュ値と、前記コンテンツハッシュリスト集合に含まれる照合用ハッシュ値とのハッシュ値照合処理と、
前記署名データを適用した署名検証処理を実行し、
前記ハッシュ値照合処理、および前記署名検証処理のいずれも成功したことを条件として前記暗号化コンテンツの復号、再生処理を行う情報処理方法。
【請求項１７】
ユーザ装置に対する暗号化コンテンツ提供処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、前記ユーザ装置における暗号化コンテンツの再生可否判定処理に適用する暗号化コンテンツ署名ファイルの構成データを生成するデータ処理部を有し、
前記データ処理部は、
前記暗号化コンテンツ、または前記暗号化コンテンツの暗号化前の平文コンテンツのデータ種類別の一部区間データであるコンテンツブロックに基づいて生成した照合用ハッシュ値と、前記コンテンツブロックの位置情報を含む属性情報を有するハッシュリストを生成し、
前記ハッシュリストを複数集めたコンテンツハッシュリスト集合を生成し、
生成したコンテンツハッシュリスト集合と、前記暗号化コンテンツの暗号鍵または該暗号鍵のハッシュ値を外部の署名発行装置に送信し、
前記署名発行装置から、
前記コンテンツハッシュリスト集合と、
前記暗号化コンテンツの暗号鍵と前記コンテンツハッシュリスト集合とに基づく生成データに対する署名データと、
を含む暗号化コンテンツ署名ファイルを取得し、
取得した暗号化コンテンツ署名ファイルと暗号化コンテンツを前記ユーザ装置に提供する情報処理方法。
【請求項１８】
暗号化コンテンツの復号および再生処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置のデータ処理部に、
前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルを適用したコンテンツ再生可否判定処理ステップを実行させ、
前記暗号化コンテンツ署名ファイルは、
前記暗号化コンテンツ、または前記暗号化コンテンツの暗号化前の平文コンテンツのデータ種類別の一部区間データであるコンテンツブロックに基づいて生成された照合用ハッシュ値と、前記コンテンツブロックの位置情報からなるコンテンツハッシュリストを複数含むコンテンツハッシュリスト集合と、
前記暗号化コンテンツの暗号鍵と前記コンテンツハッシュリスト集合から生成されたデータに対する署名データを含み、
前記コンテンツ再生可否判定処理ステップにおいて、
前記暗号化コンテンツ、または暗号化前の平文データの構成データに基づいて算出した算出ハッシュ値と、前記コンテンツハッシュリスト集合に含まれる照合用ハッシュ値とのハッシュ値照合処理と、
前記署名データを適用した署名検証処理を実行させ、
前記ハッシュ値照合処理、および前記署名検証処理のいずれも成功したことを条件として前記暗号化コンテンツの復号、再生処理を行わせるプログラム。
【請求項１９】
ユーザ装置に対する暗号化コンテンツ提供処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、前記ユーザ装置における暗号化コンテンツ再生可否判定処理に適用する暗号化コンテンツ署名ファイルの構成データを生成するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記暗号化コンテンツ、または前記暗号化コンテンツの暗号化前の平文コンテンツのデータ種類別の一部区間データであるコンテンツブロックに基づいて生成した照合用ハッシュ値と、前記コンテンツブロックの位置情報を含む属性情報を有するハッシュリストを生成する処理、
前記ハッシュリストを複数集めたコンテンツハッシュリスト集合を生成する処理、
生成したコンテンツハッシュリスト集合と、前記暗号化コンテンツの暗号鍵または該暗号鍵のハッシュ値を外部の署名発行装置に送信する処理、
前記署名発行装置から、
前記コンテンツハッシュリスト集合と、
前記暗号化コンテンツの暗号鍵と前記コンテンツハッシュリスト集合とに基づく生成データに対する署名データと、
を含む暗号化コンテンツ署名ファイルを取得する処理、
取得した暗号化コンテンツ署名ファイルと暗号化コンテンツを前記ユーザ装置に提供する処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理システム、および情報処理方法、並びにプログラムに関する。特に、コンテンツの不正利用を防止する情報処理装置、情報処理システム、および情報処理方法、並びにプログラムに関する。
【背景技術】
【０００２】
例えば映画や音楽などのコンテンツは、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）や、Ｂｌｕ−ｒａｙ  Ｄｉｓｃ（登録商標）、あるいはフラッシュメモリなど、様々なメディア、あるいはインターネット等のネットワーク、あるいは放送波などを介してユーザに提供される。ユーザは、例えばＰＣ、携帯端末、ＢＤプレーヤ等の記録再生装置、テレビなど様々な情報処理装置を利用して、コンテンツの再生を行うことができる。
【０００３】
しかし、これらユーザに提供される音楽データ、画像データ等の多くのコンテンツは、その作成者あるいは販売者に著作権、頒布権等が保有されている。従って、コンテンツ提供者は、ユーザにコンテンツを提供する場合、所定のコンテンツ利用制限が行う場合が多い。
【０００４】
デジタル記録装置および記録媒体によれば、例えば画像や音声を劣化させることなく記録、再生を繰り返すことが可能であり、不正コピーコンテンツのインターネットを介した配信や、いわゆる海賊版ディスクの流通など不正コピーコンテンツの利用が蔓延しているといった問題が発生している。
このようなデータの不正なコピーを防ぐため、デジタル記録装置および記録媒体に違法なコピーを防止するための様々な技術が実用化されている。
【０００５】
例えば、コンテンツ暗号化処理はその１つの態様である。暗号化データを復号するために用いる鍵が、コンテンツ利用権であるライセンスを受けた再生装置のみに与えられる。ライセンスは、例えば不正コピーを行わない等の所定の動作規定に従うように設計された再生装置に対して与えられる。一方、ライセンスを受けていない再生装置は、暗号化されたデータを復号するための鍵を有していないため、暗号化データの復号を行うことができない。
【０００６】
しかしながら、このようなコンテンツの暗号化を実行しても、不正なコンテンツ利用が行われてしまうという現状がある。
具体的なコンテンツの不正利用の一例について説明する。
コンテンツサーバが、ユーザ機器、例えば記録再生機器や、ＰＣ、あるいは携帯端末等のユーザ機器に対して暗号化コンテンツを配信する構成を想定する。
【０００７】
コンテンツサーバが、ユーザ機器に対して暗号化コンテンツを配信する場合、コンテンツサーバは、
（ａ）暗号化コンテンツ
（ｂ）暗号化コンテンツの暗号化および復号に適用する暗号鍵
これらの各データを例えばネットワークを介してユーザ機器に配信する。
【０００８】
例えば同じ映画等の同一コンテンツを多数のユーザ機器に提供する場合、コンテンツサーバの実行する処理態様としては、例えば以下の２つの処理態様がある。
（Ａ）ユーザ機器各々に対して、個別の異なる暗号鍵を適用して異なる暗号化コンテンツを生成して提供する。
（Ｂ）複数のユーザ機器に対して、同一の暗号鍵で暗号化した同じ暗号化コンテンツを生成して提供する。
【０００９】
コンテンツの不正利用を防止するための安全性を考慮した場合、上記（Ａ）の処理は有効である。
しかし、上記（Ａ）の処理を行うためには、多数のユーザ各々に対して、個別の暗号鍵を設定して個別の暗号化コンテンツを生成する処理が必要となり、暗号鍵の生成、管理、暗号化コンテンツの生成処理等、コンテンツを配信するユーザ数に応じてサーバの処理負荷が増大するという問題が発生する。
【００１０】
従って、多くの場合上記（Ｂ）の処理、すなわち、同一コンテンツについては、同一の暗号鍵で暗号化した同じ暗号化コンテンツを生成して、複数のユーザに提供する処理が行われることが多い。
例えば、あるタイトルのコンテンツに対して、１つの暗号鍵（＝タイトル鍵）を設定し、この１つのタイトル鍵を適用して同一の暗号化コンテンツを生成して、
（ａ）暗号化コンテンツ、
（ｂ）タイトル鍵
これらのデータセットを、多数のユーザに配信するものである。
このような処理を行うことで。コンテンツサーバの処理負荷は削減される。
【００１１】
なお、以下、コンテンツのタイトル単位で設定される暗号鍵を「タイトル鍵」として説明する。
なお、タイトル鍵は、そのタイトルの暗号化コンテンツの暗号化と復号処理に適用される。
【００１２】
しかし、このように、多数のユーザに同一のデータセット、すなわち、
（ａ）暗号化コンテンツ
（ｂ）タイトル鍵
これらの同一のデータの組み合わせを配信すると、一部の「不正ユーザ」によって以下のような処理が行われる可能性がある。
【００１３】
（１）「不正ユーザ」が、サーバから受信したタイトル鍵を読み出して、読み出したタイトル鍵を不特定多数のユーザに対して公開する。
あるいは、
（２）「不正ユーザ」が、ある暗号化コンテンツＡに対応するタイトル鍵Ａを使用して、全く別のコンテンツＢを暗号化して、
（Ｘ）タイトル鍵Ａ、
（Ｙ）タイトル鍵Ａで暗号化した暗号化コンテンツＢ、
これらの組み合わせデータを不特定多数のユーザに配信する。
このような不正が実行される可能性がある。
【００１４】
例えば上記（１）の処理が行われると、不正公開されたタイトル鍵を取得した多数のユーザによって、そのタイトル鍵を利用して暗号化されたコンテンツが不正に利用される。
また、上記（２）の処理が行われると、上記の「不正ユーザ」の生成した不正なデータセット、すなわち、
（Ｘ）タイトル鍵Ａ、
（Ｙ）タイトル鍵Ａで暗号化した暗号化コンテンツＢ、
これらを「不正ユーザ」から取得することで、多数のユーザによって、暗号化コンテンツＢが不正に利用されてしまうことになる。
結果として、本来の正規なデータセット、すなわち、
暗号化コンテンツＢ、
暗号化コンテンツＢに対応するタイトル鍵Ｂ、
これらのデータセットを正規に購入するユーザが減少し、著作権者や頒布権者の利益が著しく損なわれることになる。
【００１５】
さらに、具体的な不正処理例について説明する。
コンテンツサーバが、以下の（１）〜（３）の暗号化コンテンツ（Ｃ）とタイトル鍵（Ｋｔ）のデータセットを保持しているものとする。
（１）  （Ｋｔ１１，Ｃ１１）
（２）  （Ｋｔ１２，Ｃ１２）
（３）  （Ｋｔ１３，Ｃ１３）
ただし、
Ｃｎｎは、コンテンツファイル
Ｋｔｎｎは、コンテンツの暗号化に使用したタイトル鍵
である。
（Ｋｔ１１，Ｃ１１）は、タイトル鍵（Ｋｔ１１）と、タイトル鍵（Ｋｔ１１）よって暗号化されたコンテンツ（Ｃ１１）のデータセットである。
【００１６】
例えば、ある「不正ユーザＵｘ」が、上記の３つのデータセット
（１）  （Ｋｔ１１，Ｃ１１）
（２）  （Ｋｔ１２，Ｃ１２）
（３）  （Ｋｔ１３，Ｃ１３）
これらを総て購入したとする。
この購入処理自体は、「不正ユーザＵｘ」の持つユーザ機器、例えばＰＣとコンテンツサーバとの所定の正当な購入手続に従って行われたものとする。
「不正ユーザＵｘ」は、ユーザ機器であるＰＣの例えばハードディスク等のメディアに上記の（１）〜（３）のデータセットを記録する。
【００１７】
「不正ユーザＵｘ」は、ＰＣ等のユーザ機器ＰＣのハードディスク等のメディアから上記の（１）〜（３）のデータセットを読み出し、一旦、すべての暗号化コンテンツをそれぞれのタイトル鍵で復号し、以下のデータを得る。
タイトル鍵：Ｋｔ１１，Ｋｔ１２，Ｋｔ１３
復号コンテンツ：Ｃ１１，Ｃ１２，Ｃ１３
なお、正当な再生機器において、正規のコンテンツ再生プログラムを利用する場合にはタイトル鍵を外部に読み出すことはできないが、ＰＣ等の装置に不正プログラムをインストールするなどの方法によって、タイトル鍵自体が読み出されてしまう可能性があり、タイトル鍵の読み出しを完全に防止することは困難であるというのが現状である。
【００１８】
さらに、「不正ユーザＵｘ」は、
復号コンテンツ：Ｃ１１〜Ｃ１３を連結したデータ、
Ｃ１１｜｜Ｃ１２｜｜Ｃ１３
を生成し、
この連結データをタイトル鍵：Ｋｔ１１で暗号化する。
すなわち、以下のデータセット、
（Ｋｔ１１，Ｃ１１｜｜Ｃ１２｜｜Ｃ１３）
を生成し、このデータセットを、ネットワークを介して不正に流通、例えば安い価格で販売、あるいは無償で多くのユーザに提供するといったことを行う。
【００１９】
このような処理が行われると、
多くの一般ユーザは、上記の「不正ユーザＵｘ」から、上記の不正作成データセット、すなわち、
（Ｋｔ１１，Ｃ１１｜｜Ｃ１２｜｜Ｃ１３）
上記の不正データセットを取得することが可能となる。
このデータセットは、
（ａ）タイトル鍵Ｋｔ１１で暗号化された暗号化コンテンツ
（ｂ）タイトル鍵Ｋｔ１１、
これらのデータセットによって構成されており、
正規のコンテンツ提供者からユーザに提供されるデータセットコンテンツと同一のデータ構成を有している。
【００２０】
そのため、ライセンスを持つ正当なコンテンツ再生プログラムを持つ正当な再生機器は、タイトル鍵Ｋｔ１１を利用して、何ら問題なく暗号化コンテンツ［Ｃ１１｜｜Ｃ１２｜｜Ｃ１３］を復号、再生してしまうことができる。
結果として、正規なコンテンツ購入が行われることなく、不正利用が蔓延し、Ｃ１１〜Ｃ１３等のコンテンツを正規に購入するユーザが減少により、正当権利者の利益が損なわれることになる。
【００２１】
さらに具体化して説明する。例えば、あるドラマなど、１話〜１２話の１２タイトルからなるシリーズコンテンツにおいて、
１話＝（Ｋｔ０１，Ｃ０１）
２話＝（Ｋｔ０２，Ｃ０２）
３話＝（Ｋｔ０３，Ｃ０３）
：            ：
１２話＝（Ｋｔ１２，Ｃ１２）
上記のように各話単位で、コンテンツの購入単位を設定としているとする。
【００２２】
このような場合に、ある１人の「不正ユーザ」が１話〜１２話の１２タイトルのシリーズ全てを購入して、１話〜１２話のコンテンツ：Ｃ０１〜Ｃ１２を連結して、１話対応のタイトル鍵：Ｋｔ０１で再暗号化したデータセット、すなわち、
（Ｋｔ０１，Ｃ０１｜｜Ｃ０２｜｜Ｃ０３・・・｜｜Ｃ１２）
を生成して、ネットワーク上で公開してしまう。あるいは不正に販売するといった処理を行う。
【００２３】
このような場合、多数のユーザ機器において、「不正ユーザ」の生成した不正データセット、
（Ｋｔ０１，Ｃ０１｜｜Ｃ０２｜｜Ｃ０３・・・｜｜Ｃ１２）
を取得して再生、利用してしまうといったことが可能となる。
例えば、上記の１２話の各々の１話単位の正規価格が￥２，０００であるとする。
この場合、１２話全話を購入すると、
１２×￥２，０００＝￥２４，０００
である。
【００２４】
上記の「不正ユーザ」は、上記の不正データセット、
（Ｋｔ０１，Ｃ０１｜｜Ｃ０２｜｜Ｃ０３・・・｜｜Ｃ１２）
を、例えば￥６，０００で販売する。この場合、多くのユーザがこの安いコンテンツを購入してしまい、結果として、正規なコンテンツ販売が阻害され、本来の著作権者や販売権者の利益、権利が侵害されることになる。
【００２５】
上記の例の他、ある１つのコンテンツＣ１１に対応して設定されたタイトル鍵Ｋｔ１１を、その他の無関係の様々なコンテンツＣｘｘの暗号化に利用して、
（Ｋｔ１１，Ｃｘｘ）
コンテンツ、Ｃｘｘを様々なコンテンツとすることが可能であり、無制限にすべてのコンテンツを１つのタイトル鍵で復号、再生することが可能となるという問題が発生する。
すなわち、平文コンテンツの再生を禁止した再生機器を作成したとしても、上記の不正なデータセットの利用により、正規購入コンテンツと同様の復号、再生が可能になってしまう。
【００２６】
さらに「不正ユーザ」は、タイトル鍵のすげかえ、再暗号化をサービスとして立ち上げることも可能となり、あたかもオーソライズされたサーバかのごとく振舞える。
【００２７】
このように、コンテンツの暗号化処理という対策のみでは、コンテンツの不正利用を防止することが困難になっている。
【００２８】
暗号化処理と異なるコンテンツ不正利用排除手法として、再生装置にコンテンツの改ざん検証を実行させる手法がある。この手法を適用することで、例えば不正コンテンツの流通過程において、コンテンツに何等かの変更（改ざん）が行われた場合にその改ざんコンテンツの利用を停止させることができる。
【００２９】
具体的には、コンテンツ再生を実行するユーザ装置において、コンテンツの改ざんの有無検証処理を実行させて、コンテンツに改ざんがないことが確認された場合にのみコンテンツ再生を許容し、改ざんがあることが判明した場合には、コンテンツの再生を実行しない構成とする制御構成である。
【００３０】
例えば、特許文献１（特開２００２−３５８０１１号公報）には、再生予定のコンテンツファイルからハッシュ値を計算し、予め用意された照合用ハッシュ値、すなわち正当なコンテンツデータに基づいて予め計算済みの照合用ハッシュ値との比較を実行し、新たに算出したハッシュ値が照合用ハッシュ値と一致した場合には、コンテンツの改ざんは無いと判定して、コンテンツの再生処理に移行する制御構成を開示している。
【００３１】
しかし、このようにハッシュ値をコンテンツに基づいて算出する処理を実行する場合、ハッシュ値算出の元データとしてのコンテンツデータの容量が大きい場合、計算に要する処理負荷、処理時間が多大なものとなる。昨今では動画像データの高品質化が進み、１コンテンツあたり、数ＧＢ〜数十ＧＢのデータ量を持つ場合が多くなっている。このような大容量データに基づくコンテンツのハッシュ値算出処理を、コンテンツ再生を実行するユーザ機器に行わせることは、ユーザ機器に求められるデータ処理能力が過大になるという問題、さらに、コンテンツの検証に要する時間が長くなり、コンテンツ再生処理が効率的に行われないという問題が発生する。
【００３２】
また、特許文献２（特許第４５７６９３６号）には、情報記録媒体の格納コンテンツの細分化データとして設定されたハッシュユニット各々についてのハッシュ値をコンテンツハッシュテーブルに記録してコンテンツとともに情報記録媒体に格納した構成を開示している。
【００３３】
この開示構成によれば、コンテンツ再生を実行する情報処理装置は、ランダムに選択した１つ以上のハッシュユニットに基づいてハッシュ値照合処理を実行する。本構成によりコンテンツのデータ量にかかわらず、少ないデータ量のハッシュユニットに基づくハッシュ値の算出、照合処理が可能となり、コンテンツ再生を実行するユーザ機器における効率的なコンテンツ検証が可能となる。
【００３４】
しかし、特許文献２に記載の構成は、情報記録媒体の格納コンテンツに対する処理を前提としている。この開示構成は、例えば情報記録媒体の製造時にコンテンツとともにハッシュ値も併せて記録できる場合には利用可能であるが、例えばサーバからのダウンロードコンテンツに対して適用することは困難であるという問題がある。
【００３５】
また、上記の特許文献１、特許文献２は、いずれもコンテンツの改ざん検証に重点をおいており、改ざんのない不正コピーコンテンツの流通に対しては、何ら制御することができないという問題がある。
このように、従来技術としてのコンテンツの暗号化や、改ざん検証処理は、不正コピーコンテンツの流通や、コンテンツ暗号鍵の漏えいに対して、十分な防止効果を奏していないというのが現状である。
【先行技術文献】
【特許文献】
【００３６】
【特許文献１】特開２００２−３５８０１１号公報
【特許文献２】特許第４５７６９３６号
【発明の概要】
【発明が解決しようとする課題】
【００３７】
本開示は、例えば上記問題点に鑑みてなされたものであり、コンテンツの不正利用の効果的な防止を実現する情報処理装置、情報処理システム、および情報処理方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【００３８】
本開示の第１の側面は、
暗号化コンテンツの復号および再生処理を実行するデータ処理部を有し、
前記データ処理部は、
再生コンテンツに対応して設定された暗号化コンテンツ署名ファイルを適用したコンテンツ再生可否判定処理を実行し、
前記暗号化コンテンツ署名ファイルは、
コンテンツの構成データに基づくハッシュ値を含むコンテンツハッシュリスト集合と、
コンテンツの暗号鍵と前記コンテンツハッシュリスト集合から生成されたデータに対する署名データを含み、
前記データ処理部は、前記コンテンツ再生可否判定処理において、
再生対象コンテンツの構成データから算出したハッシュ値と、前記コンテンツハッシュリスト集合に含まれる照合用ハッシュ値とのハッシュ値照合処理と、
前記署名データを適用した署名検証処理を実行し、
前記ハッシュ値照合処理、および前記署名検証処理のいずれも成功したことを条件として前記暗号化コンテンツの復号、再生処理を行う情報処理装置にある。
【００３９】
さらに、本発明の情報処理装置の一実施態様において、前記コンテンツハッシュリスト集合に格納されたハッシュ値は、暗号化の施されていない平文コンテンツの構成データに基づいて生成されたハッシュ値である。
【００４０】
さらに、本発明の情報処理装置の一実施態様において、前記コンテンツハッシュリスト集合に格納されたハッシュ値は、コンテンツを構成するデータ種類別のコンテンツブロック単位のハッシュ値である。
【００４１】
さらに、本発明の情報処理装置の一実施態様において、前記コンテンツハッシュリスト集合に格納されたハッシュ値は、コンテンツを構成する音声、画像、字幕の各データ別のコンテンツブロック単位のハッシュ値である。
【００４２】
さらに、本発明の情報処理装置の一実施態様において、前記コンテンツハッシュリスト集合を構成するコンテンツハッシュリストの各々は、コンテンツを構成する音声、画像、字幕の各データ別のコンテンツブロック単位のハッシュ値と、前記コンテンツブロックの位置情報を示す属性情報を含むデータである。
【００４３】
さらに、本発明の情報処理装置の一実施態様において、前記コンテンツハッシュリスト集合を構成するコンテンツハッシュリストは、複数の異なるバリエーションデータに対応する複数のコンテンツブロックに対応する複数のハッシュ値を含むデータである。
【００４４】
さらに、本発明の情報処理装置の一実施態様において、前記複数の異なるバリエーションデータは、マルチアングルコンテンツにおける異なる複数のアングルから撮影された複数の画像データである。
【００４５】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記コンテンツ再生可否判定処理において、前記コンテンツハッシュリスト集合に含まれる照合用ハッシュ値を、再生対象コンテンツの構成データから算出したハッシュ値に置き換えるハッシュ値置換処理を実行し、前記署名検証処理を、前記ハッシュ値置換処理を実行したコンテンツハッシュリスト集合と、コンテンツの暗号鍵のハッシュ値の連結データを適用して実行する。
【００４６】
さらに、本発明の第２の側面は、
コンテンツ再生処理を実行するユーザ装置と、
前記ユーザ装置に対するコンテンツの提供処理を実行するコンテンツ提供装置と、
前記コンテンツ提供装置に対する暗号化コンテンツ署名ファイルの提供処理を実行する暗号化コンテンツ署名発行装置を有する情報処理システムであり、
前記コンテンツ提供装置は、
コンテンツの構成データに基づくハッシュ値を含むコンテンツハッシュリスト集合と、コンテンツの暗号鍵または暗号鍵のハッシュ値を前記暗号化コンテンツ署名発行装置に送信し、
前記暗号化コンテンツ署名発行装置は、
前記コンテンツハッシュリスト集合と、コンテンツの暗号鍵のハッシュ値を署名対象とした署名データを生成し、
生成した署名データと、前記コンテンツハッシュリスト集合を含む暗号化コンテンツ署名ファイルを生成して前記コンテンツ提供装置に送信し、
前記コンテンツ提供装置は、
暗号化コンテンツ、および前記暗号化コンテンツ署名ファイルをユーザ装置に提供し、
前記ユーザ装置は、
再生対象コンテンツの構成データから算出したハッシュ値と、暗号化コンテンツ署名ファイル内のコンテンツハッシュリスト集合に含まれる照合用ハッシュ値とのハッシュ値照合処理と、
前記暗号化コンテンツ署名ファイル内の署名データを適用した署名検証処理を実行し、
前記ハッシュ値照合処理、および前記署名検証処理のいずれも成功したことを条件として前記暗号化コンテンツの復号、再生処理を行う情報処理システムにある。
【００４７】
さらに、本発明の第３の側面は、
コンテンツの再生可否判定処理に適用する暗号化コンテンツ署名ファイルの構成データを生成するデータ処理部を有し、
前記データ処理部は、
コンテンツを構成するデータ種類別のコンテンツブロック単位のハッシュ値を算出し、
前記算出ハッシュ値と、ハッシュ値算出対象のコンテンツブロックの位置情報を含む属性情報を有するハッシュリストを生成し、
前記ハッシュリストを複数集めたコンテンツハッシュリスト集合を生成し、
生成したコンテンツハッシュリスト集合と、コンテンツの暗号鍵または該暗号鍵のハッシュ値を外部の署名発行装置に送信し、
前記署名発行装置から、
前記コンテンツハッシュリスト集合と、
コンテンツの暗号鍵と前記コンテンツハッシュリスト集合とに基づく生成データに対する署名データと、
を含む暗号化コンテンツ署名ファイルを取得し、
取得した暗号化コンテンツ署名ファイルと暗号化コンテンツをユーザ装置に提供する情報処理装置にある。
【００４８】
さらに、本発明の情報処理装置の一実施態様において、前記コンテンツハッシュリスト集合に格納されたハッシュ値は、暗号化の施されていない平文コンテンツの構成データに基づいて生成したハッシュ値である。
【００４９】
さらに、本発明の情報処理装置の一実施態様において、前記コンテンツハッシュリスト集合に格納されたハッシュ値は、コンテンツを構成するデータ種類別のコンテンツブロック単位のハッシュ値である。
【００５０】
さらに、本発明の情報処理装置の一実施態様において、前記コンテンツハッシュリスト集合に格納されたハッシュ値は、コンテンツを構成する音声、画像、字幕の各データ別のコンテンツブロック単位のハッシュ値である。
【００５１】
さらに、本発明の情報処理装置の一実施態様において、前記コンテンツハッシュリスト集合を構成するコンテンツハッシュリストの各々は、コンテンツを構成する音声、画像、字幕の各データ別のコンテンツブロック単位のハッシュ値と、前記コンテンツブロックの位置情報を示す属性情報を含むデータである。
【００５２】
さらに、本発明の情報処理装置の一実施態様において、前記コンテンツハッシュリスト集合を構成するコンテンツハッシュリストは、複数の異なるバリエーションデータに対応する複数のコンテンツブロックに対応する複数のハッシュ値を含むデータである。
【００５３】
さらに、本発明の第４の側面は、
暗号化コンテンツの復号および再生処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置のデータ処理部において、
再生コンテンツに対応して設定された暗号化コンテンツ署名ファイルを適用したコンテンツ再生可否判定処理を実行し、
前記暗号化コンテンツ署名ファイルは、
コンテンツの構成データに基づくハッシュ値を含むコンテンツハッシュリスト集合と、
コンテンツの暗号鍵と前記コンテンツハッシュリスト集合から生成されたデータに対する署名データを含み、
前記データ処理部は、前記コンテンツ再生可否判定処理において、
再生対象コンテンツの構成データから算出したハッシュ値と、前記コンテンツハッシュリスト集合に含まれる照合用ハッシュ値とのハッシュ値照合処理と、
前記署名データを適用した署名検証処理を実行し、
前記ハッシュ値照合処理、および前記署名検証処理のいずれも成功したことを条件として前記暗号化コンテンツの復号、再生処理を行う情報処理方法にある。
【００５４】
さらに、本発明の第５の側面は、
ユーザ装置に対するコンテンツ提供処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、前記ユーザ装置におけるコンテンツ再生可否判定処理に適用する暗号化コンテンツ署名ファイルの構成データを生成するデータ処理部を有し、
前記データ処理部は、
コンテンツを構成するデータ種類別のコンテンツブロック単位のハッシュ値を算出し、
前記算出ハッシュ値と、ハッシュ値算出対象のコンテンツブロックの位置情報を含む属性情報を有するハッシュリストを生成し、
前記ハッシュリストを複数集めたコンテンツハッシュリスト集合を生成し、
生成したコンテンツハッシュリスト集合と、コンテンツの暗号鍵または該暗号鍵のハッシュ値を外部の署名発行装置に送信し、
前記署名発行装置から、
前記コンテンツハッシュリスト集合と、
コンテンツの暗号鍵と前記コンテンツハッシュリスト集合とに基づく生成データに対する署名データと、
を含む暗号化コンテンツ署名ファイルを取得し、
取得した暗号化コンテンツ署名ファイルと暗号化コンテンツを前記ユーザ装置に提供する情報処理方法にある。
【００５５】
さらに、本発明の第６の側面は、
暗号化コンテンツの復号および再生処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置のデータ処理部に、
再生コンテンツに対応して設定された暗号化コンテンツ署名ファイルを適用したコンテンツ再生可否判定処理ステップを実行させ、
前記暗号化コンテンツ署名ファイルは、
コンテンツの構成データに基づくハッシュ値を含むコンテンツハッシュリスト集合と、
コンテンツの暗号鍵と前記コンテンツハッシュリスト集合から生成されたデータに対する署名データを含み、
前記コンテンツ再生可否判定処理ステップにおいて、
再生対象コンテンツの構成データから算出したハッシュ値と、前記コンテンツハッシュリスト集合に含まれる照合用ハッシュ値とのハッシュ値照合処理と、
前記署名データを適用した署名検証処理を実行させ、
前記ハッシュ値照合処理、および前記署名検証処理のいずれも成功したことを条件として前記暗号化コンテンツの復号、再生処理を行わせるプログラムにある。
【００５６】
さらに、本発明の第７の側面は、
ユーザ装置に対するコンテンツ提供処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、前記ユーザ装置におけるコンテンツ再生可否判定処理に適用する暗号化コンテンツ署名ファイルの構成データを生成するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
コンテンツを構成するデータ種類別のコンテンツブロック単位のハッシュ値を算出する処理、
前記算出ハッシュ値と、ハッシュ値算出対象のコンテンツブロックの位置情報を含む属性情報を有するハッシュリストを生成する処理、
前記ハッシュリストを複数集めたコンテンツハッシュリスト集合を生成する処理、
生成したコンテンツハッシュリスト集合と、コンテンツの暗号鍵または該暗号鍵のハッシュ値を外部の署名発行装置に送信する処理、
前記署名発行装置から、
前記コンテンツハッシュリスト集合と、
コンテンツの暗号鍵と前記コンテンツハッシュリスト集合とに基づく生成データに対する署名データと、
を含む暗号化コンテンツ署名ファイルを取得する処理、
取得した暗号化コンテンツ署名ファイルと暗号化コンテンツを前記ユーザ装置に提供する処理を実行させるプログラムにある。
【００５７】
なお、本開示のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
【００５８】
本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００５９】
本開示の一実施例の構成によれば、コンテンツの不正利用を効果的に防止する装置、方法が実現される。
具体的には、コンテンツの再生可否判定処理に適用するための暗号化コンテンツ署名ファイルを設定する。暗号化コンテンツ署名ファイルは、音声、画像等のデータ種類別のコンテンツブロックに基づくハッシュ値を含むコンテンツハッシュリスト集合と、コンテンツの暗号鍵とコンテンツハッシュリスト集合から生成されたデータに対する署名データを含む。ユーザ装置は、再生対象コンテンツの構成データから算出したハッシュ値と、コンテンツハッシュリスト集合に含まれる照合用ハッシュ値とのハッシュ値照合処理と、署名データを適用した署名検証処理を実行し、ハッシュ値照合処理、および署名検証処理のいずれも成功したことを条件として暗号化コンテンツの復号、再生処理を行う。
【００６０】
本開示の構成では、例えば、（１）コンテンツと、（２）コンテンツの暗号化、復号処理に適用する暗号鍵（タイトル鍵）、これらのデータに基づいて生成された署名検証が実行されることになり、この検証処理によって、コンテンツとタイトル鍵、これら２つのデータの組み合わせが正しい組み合わせであることが確認された場合にのみ、ユーザ装置においてコンテンツの再生、利用が許容される。
従って、本来のコンテンツとタイトル鍵の組み合わせと異なる不正なコンテンツとタイトル鍵との組み合わせデータである場合には、署名検証は不成立となり、このような不正コンテンツの利用は防止される。
【図面の簡単な説明】
【００６１】
【図１】コンテンツの不正利用を防止するための本開示の情報処理システムの全体構成について説明する図である。
【図２】暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成処理とデータ構成の概要について説明する図である。
【図３】暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成とコンテンツ提供、利用処理シーケンスについて説明するシーケンス図である。
【図４】暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成とコンテンツ提供、利用処理シーケンスについて説明するシーケンス図である。
【図５】暗号化コンテンツ署名ファイル（ＥＣＳファイル）を取得するために実行する処理の詳細を説明するフローチャートを示す図である。
【図６】暗号化コンテンツ署名ファイル（ＥＣＳファイル）を取得するために実行する処理の詳細を説明するフローチャートを示す図である。
【図７】コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）の詳細構成について説明する図である。
【図８】コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）の詳細構成について説明する図である。
【図９】コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）の詳細構成について説明する図である。
【図１０】コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）の詳細構成について説明する図である。
【図１１】暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成処理とデータ構成の概要について説明する図である。
【図１２】署名データの生成処理例について説明する図である。
【図１３】ユーザ装置におけるコンテンツ再生処理シーケンスについて説明するフローチャートを示す図である。
【図１４】ユーザ装置におけるコンテンツ再生処理シーケンスについて説明するフローチャートを示す図である。
【図１５】暗号化コンテンツ署名ファイルのコンテンツハッシュリスト集合のハッシュ値の置換処理について説明する図である。
【図１６】暗号化コンテンツ署名ファイル（ＥＣＳファイル）のフォーマットの詳細について説明する図である。
【図１７】暗号化コンテンツ署名ファイル（ＥＣＳファイル）のフォーマットの詳細について説明する図である。
【図１８】暗号化コンテンツ署名ファイル（ＥＣＳファイル）のフォーマットの詳細について説明する図である。
【図１９】暗号化コンテンツ署名ファイル（ＥＣＳファイル）のフォーマットの詳細について説明する図である。
【図２０】暗号化コンテンツ署名ファイル（ＥＣＳファイル）のフォーマットの詳細について説明する図である。
【図２１】暗号化コンテンツ署名ファイル（ＥＣＳファイル）のフォーマットの詳細について説明する図である。
【図２２】暗号化コンテンツ署名ファイル（ＥＣＳファイル）のフォーマットの詳細について説明する図である。
【図２３】暗号化コンテンツ署名ファイル（ＥＣＳファイル）のコンテンツブロックテーブルの具体例について説明する図である。
【図２４】情報処理装置のハードウェア構成例について説明する図である。
【発明を実施するための形態】
【００６２】
以下、図面を参照しながら本開示の情報処理装置、情報処理システム、および情報処理方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行う。
１．情報処理システムの全体構成例について
２．暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成処理とデータ構成の概要について
３．暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成とコンテンツ提供、利用処理シーケンスについて
４．暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成処理およびＥＣＳファイルの詳細構成について
５．署名データの生成処理例について
６．ユーザ装置におけるコンテンツ再生処理について
７．暗号化コンテンツ署名ファイル（ＥＣＳファイル）のフォーマットの詳細
７−１．暗号化コンテンツ署名ファイル（ＥＣＳファイル）の全体構成について
７−２．ＥＣＳ発行装置証明書（ＥＣＳ  Ｉｓｓｕｅｒ  Ｃｅｒｔｉｆｉｃａｔｅ）の詳細について
７−３．コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）の詳細について
７−４．コンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）の詳細について
８．各装置のハードウェア構成例について
９．本開示の構成のまとめ
【００６３】
［１．情報処理システムの全体構成例について］
まず、図１を参照して、コンテンツの不正利用を防止するための本開示の情報処理システムの全体構成について説明する。
【００６４】
図１には、情報処理システムの全体構成例を示している。図１には以下の４種類の装置を階層構成として示している。
（Ａ）ライセンス発行装置（ＬＡ）１０１
（Ｂ）暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２−１〜ｎ
（Ｃ）コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３−１〜ｍ
（Ｄ）ユーザ装置（コンテンツ再生装置）１０４−１〜ｆ
【００６５】
（Ｃ）コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３−１〜ｍは、コンテンツサーバや放送局、さらにはコンテンツを格納したディスク等のメディアを提供するメディア提供会社などコンテンツを送信する装置や、メディアに対するコンテンツ記録を実行する装置など、様々な情報処理装置を含む。これらは多数存在する。
【００６６】
（Ｄ）ユーザ装置（コンテンツ再生装置）１０４−１〜ｆは、コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３−１〜ｍからコンテンツ、例えば映画、音楽、その他の様々なコンテンツをインターネットや放送波、あるいはディスク等のメディアを介して受信、または読み出して再生処理を実行する装置である。具体的にはＰＣ、携帯端末、ＤＶＤプレーヤ、ＢＤプレーヤ、テレビなどコンテンツ再生可能な様々な種類の情報処理装置が含まれる。
【００６７】
（Ｂ）暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２−１〜ｎは、（Ｃ）コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３−１〜ｍの提供するコンテンツに対応する暗号化コンテンツ署名ファイル（ＥＣＳファイル）を生成する。
【００６８】
（Ｃ）コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３−１〜ｍは、例えば、新たな映画コンテンツなどのコンテンツをユーザ装置１０４に提供する場合、そのコンテンツに対応する暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成依頼を、暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２に対して行う。
【００６９】
（Ｂ）暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２−１〜ｎは、この依頼に応じて、暗号化コンテンツ署名ファイル（ＥＣＳファイル）を生成して、（Ｃ）コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３に提供する。
なお、この暗号化コンテンツ署名ファイル（ＥＣＳファイル）の具体的な構成と生成処理については後段で詳細に説明する。
【００７０】
（Ｃ）コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３は、（Ｂ）暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２から暗号化コンテンツ署名ファイル（ＥＣＳファイル）を受領し、これを、暗号化コンテンツに併せて（Ｄ）ユーザ装置（コンテンツ再生装置）１０４に提供する。
【００７１】
（Ｄ）ユーザ装置（コンテンツ再生装置）１０４は、コンテンツの再生を行う前に、暗号化コンテンツ署名ファイル（ＥＣＳファイル）の署名検証処理を行い、この署名検証処理の成立が確認された場合にのみ、コンテンツの復号、再生が許容される。
なお、ユーザ装置（コンテンツ再生装置）１０４には、暗号化コンテンツ署名ファイル（ＥＣＳファイル）の署名検証を条件としてコンテンツの復号、再生を実行するシーケンスに従った再生処理プログラムが格納されており、この再生処理プログラムに従って暗号化コンテンツ署名ファイル（ＥＣＳファイル）の署名検証とコンテンツ再生が実行されることになる。
暗号化コンテンツ署名ファイル（ＥＣＳファイル）の署名検証が成功しなかった場合は、コンテンツの再生は禁止される。
【００７２】
（Ａ）ライセンス発行装置（ＬＡ）１０１は、（Ｂ）暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２−１〜ｎに対して、ＥＣＳファイルの発行許可証としてのライセンスを提供する。
【００７３】
（Ａ）ライセンス発行装置（ＬＡ）１０１は、予め既定したライセンス発行シーケンスにしたがって、（Ｂ）暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２−１〜ｎの正当性を確認し、正当であると確認された場合に、暗号化コンテンツ署名（ＥＣＳ）発行装置に対して、ライセンスを発行する。
【００７４】
なお、ライセンスは、具体的には、例えばライセンス発行装置（ＬＡ）１０１の秘密鍵による署名が付与された公開鍵証明書である。公開鍵証明書には、暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２の公開鍵が格納される。なお、この公開鍵証明書に格納される公開鍵に対応する秘密鍵も併せて（Ａ）ライセンス発行装置（ＬＡ）１０１から、暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２に提供される。
【００７５】
［２．暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成処理とデータ構成の概要について］
次に、図２を参照して暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成処理とデータ構成の概要について説明する。
【００７６】
図１を参照して説明したように、暗号化コンテンツ署名ファイル（ＥＣＳファイル）は、コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３からの生成依頼に基づいて、暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２が生成する。
【００７７】
コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３が、例えば、新たな映画コンテンツなどのコンテンツをユーザ装置１０４に提供する場合、そのコンテンツに対応する暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成依頼を、暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２に対して行う。
【００７８】
暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２は、この依頼に応じて、暗号化コンテンツ署名ファイル（ＥＣＳファイル）を生成して、コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３に提供する。
【００７９】
図２は、この暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成処理において、コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３と暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２の実行する処理を説明する図である。
【００８０】
コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３は、新たな暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成依頼を行う場合、図２に示すように、
コンテンツ１８１の構成データ（コンテンツブロック）に基づいて生成したハッシュ値を含むコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３を生成する。
【００８１】
なお、コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３は、以下の２つの異なるいずれかの設定で生成される。
（設定例１）
暗号化コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合、
（設定例２）
平文（非暗号化）コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合、
コンテンツハッシュリスト集合１８３は、以上の２つの異なるいずれかの設定で生成される。
【００８２】
いずれの場合も、コンテンツ１８１の構成データである多数のコンテンツブロックに基づいて生成した多数のハッシュ値を含むコンテンツハッシュを生成し、これらのハッシュ値を含むコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３を生成する。
【００８３】
コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３は、生成したコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３を暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２に提供する。
【００８４】
さらに、平文コンテンツに基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３を生成した場合は、コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３は、コンテンツ１８１に対する暗号鍵であるタイトル鍵１８２、またはタイトル鍵のハッシュ値も暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２に提供する。
【００８５】
コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３は、ユーザ装置に提供するコンテンツ、具体的にはユーザ装置において再生される例えば映画等のコンテンツに基づいて生成されるコンテンツの構成データに基づいて生成されるハッシュ値とその属性情報を含むデータである。
なお、属性情報には、例えばハッシュ値を算出したコンテンツブロックの位置情報等の属性情報などが含まれる。
【００８６】
暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２は、図２に示すステップＳ１１ａ、またはステップ１１ｂにおいて、コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３から受信したデータに対する署名を生成する。
【００８７】
署名データの生成は、上述した２つのコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３の設定態様に応じて異なる署名データとして生成する。
（設定例１）
暗号化コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合が生成されている場合は、図２に示すステップＳ１１ａの処理を実行する。
すなわち、コンテンツハッシュリスト集合のみを署名対象データとして署名処理を行う。
暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２の保持する秘密鍵を適用して署名を生成する。例えばＥＣＤＳＡアルゴリズムに従った署名生成を行う。
【００８８】
（設定例２）
平文（非暗号化）コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合が生成されている場合は、図２に示すステップＳ１１ｂの処理を実行する。
すなわち、コンテンツハッシュリスト集合とタイトル鍵（ハッシュ）を署名対象データとして署名処理を行う。
暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２の保持する秘密鍵を適用して署名を生成する。例えばＥＣＤＳＡアルゴリズムに従った署名生成を行う。
【００８９】
生成した署名は、図２に示すように、暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の構成データとして設定される。
図２に示すように、暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２の生成する暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００は、以下のデータを含む。
（１）ＥＣＳタイプ２０１
（２）コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２
（３）ＥＣＳ発行装置署名（ＥＣＳ  Ｓｉｇｎａｔｕｒｅ）２０３
（４）ＥＣＳ発行装置証明書（ＥＣＳ  Ｉｓｓｕｅｒ  Ｃｅｒｔｉｆｉｃａｔｅ）２０４
（５）コンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）２０５
【００９０】
暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００には、上記の各データが含まれる。なお、上記の（１）〜（５）のデータは、暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００に含まれる主要データを示すものであり、暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００には、これらの（１）〜（５）のデータ以外にも様々なデータが含まれる。暗号化コンテンツ署名ファイル（ＥＣＳファイル）の具体的なフォーマットについてはさらに後段で説明する。
【００９１】
上記の（１）〜（５）のデータについて説明する。
（１）ＥＣＳタイプ２０１
ＥＣＳタイプ２０１は、暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００のタイプを示す情報である。
具体的には、例えば、ＥＣＳファイルに格納されたコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２が、
暗号化コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合である場合は［０］、
平文コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合である場合は［１］、
これらの各値が格納される。
【００９２】
（２）コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２
コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２は、コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３の生成したデータ（＝図２に示すコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３）であり、前述したように、ユーザ装置に提供するコンテンツ、具体的にはユーザ装置において再生される例えば映画等のコンテンツに基づいて生成されるコンテンツの構成データに基づいて生成されるハッシュ値とその属性情報（ハッシュ値生成元のコンテンツブロックの位置等を示すオフセット、レングスなどの情報）を含むデータである。
【００９３】
（３）ＥＣＳ発行装置署名（ＥＣＳ  Ｓｉｇｎａｔｕｒｅ）２０３
ＥＣＳ発行装置署名（ＥＣＳ  Ｓｉｇｎａｔｕｒｅ）２０３は、図２に示すステップＳ１１において生成した署名データである。
【００９４】
この署名データは、上記のＥＣＳタイプの値に応じて異なる署名データとなる。すなわち、以下の設定となる。
（ＥＣＳタイプ＝０）
コンテンツハッシュリスト集合２０２が、暗号化コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合である場合であり、コンテンツハッシュリスト集合のみを署名対象データとして生成した署名データが格納される。
（ＥＣＳタイプ＝１）
コンテンツハッシュリスト集合２０２が、平文コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合である場合でありコンテンツハッシュリスト集合とタイトル鍵（ハッシュ）を署名対象データとして生成した署名データが格納される。
【００９５】
ＥＣＳタイプに応じて、上記いずれかの署名データが格納される。
なお、署名データは、暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２の保持する秘密鍵を適用して生成した署名データである。
【００９６】
（４）ＥＣＳ発行装置証明書（ＥＣＳ  Ｉｓｓｕｅｒ  Ｃｅｒｔｉｆｉｃａｔｅ）２０４
ＥＣＳ発行装置証明書（ＥＣＳ  Ｉｓｓｕｅｒ  Ｃｅｒｔｉｆｉｃａｔｅ）２０４
は、ＥＣＳ発行装置１０２に対応する公開鍵証明書である。ＥＣＳ発行装置１０２の公開鍵が格納されている。
【００９７】
（５）コンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）２０５
コンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）２０５は、上記のコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２に、複数のコンテンツに対応するハッシュリストが記録されている場合に、各ハッシュリストとコンテンツの対応情報を記録したフィールドとして設定される。
【００９８】
なお、前述したように、暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００には、これらの（１）〜（５）のデータ以外にも様々なデータが含まれる。暗号化コンテンツ署名ファイル（ＥＣＳファイル）の具体的なフォーマット（シンタックス）についてはさらに後段で説明する。
【００９９】
［３．暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成とコンテンツ提供、利用処理シーケンスについて］
前述したように、図１に示すコンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３は、例えば、新たな映画コンテンツなどのコンテンツをユーザ装置１０４に提供する場合、そのコンテンツに対応する暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成要求を、暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２に出力する。
【０１００】
暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２は、この依頼に応じて、暗号化コンテンツ署名ファイル（ＥＣＳファイル）を生成して、（Ｃ）コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３に提供する。コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３は、これを、暗号化コンテンツに併せてユーザ装置（コンテンツ再生装置）１０４に提供する。
【０１０１】
ユーザ装置（コンテンツ再生装置）１０４は、コンテンツの再生を行う前に、暗号化コンテンツ署名ファイル（ＥＣＳファイル）に格納されたハッシュ値を利用したハッシュ値照合処理を実行し、さらに暗号化コンテンツ署名ファイル（ＥＣＳファイル）に格納された署名に対する署名検証処理を行う。
これらのハッシュ値照合処理によって照合成立が確認され、さらに、署名検証処理によって、署名検証が成立した場合にのみ、コンテンツの復号、再生が実行できる。
上記のハッシュ照合、または署名検証のいずれかが成功しなかった場合は、コンテンツの再生は禁止される。
【０１０２】
以下、図３、図４に示すシーケンス図を参照して、暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成とコンテンツ提供、利用処理シーケンスについて説明する。
図３には、左から、
ライセンス発行装置１０１、
暗号化コンテンツ署名（ＥＣＳ）発行装置１０２、
コンテンツ提供装置１０３、
これらの各装置を示し、ステップＳ１１１、Ｓ１２１〜Ｓ１２４の各処理を時系列処理として示している。
これらの各処理ステップについて説明する。
【０１０３】
ステップＳ１１１
ステップＳ１１１は、ライセンス発行装置１０１が、暗号化コンテンツ署名（ＥＣＳ）発行装置１０２に対してライセンス（ＥＣＳ発行装置証明書）を発行する処理である。
【０１０４】
先に図１を参照して説明したように、ライセンス発行装置１０１は、暗号化コンテンツ署名（ＥＣＳ）発行装置１０２に対して、ＥＣＳファイルの発行許可証としてのライセンスを提供する。
ライセンス発行装置（ＬＡ）１０１は、予め既定したライセンス発行シーケンスにしたがって、暗号化コンテンツ署名（ＥＣＳ）発行装置１０２の正当性を確認し、正当であると確認された場合に、暗号化コンテンツ署名（ＥＣＳ）発行装置に対して、ライセンスを発行する。
【０１０５】
なお、ライセンスは、具体的には、例えばライセンス発行装置（ＬＡ）１０１の秘密鍵による署名が付与された公開鍵証明書である。公開鍵証明書には、暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２の公開鍵が格納される。なお、この公開鍵証明書に格納される公開鍵に対応する秘密鍵も併せて（Ａ）ライセンス発行装置（ＬＡ）１０１から、暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２に提供される。
【０１０６】
ステップＳ１２１〜Ｓ１２４は、図２に示す暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の生成処理のシーケンスである。
この処理は、コンテンツ提供装置１０３が、例えば新たなコンテンツをユーザ装置に提供する場合に、その新たなコンテンツに対応する暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００を取得するために、各提供コンテンツに応じて逐次実行される。
この処理は、図２を参照して説明した処理に対応する処理であり、暗号化コンテンツ署名（ＥＣＳ）発行装置１０２と、コンテンツ提供装置１０３との間で実行される。
【０１０７】
まず、ステップＳ１２１において、コンテンツ提供装置１０３は、暗号化コンテンツ署名ファイル（ＥＣＳファイル）作成に必要となるデータを生成する。
具体的には、図２を参照して説明した、
コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３の生成処理などを実行する。
【０１０８】
前述したように、図２に示すコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３は、ユーザ装置に提供するコンテンツ、具体的にはユーザ装置において再生される例えば映画等のコンテンツに基づいて生成されるコンテンツの構成データに基づいて生成されるハッシュ値とその属性情報を含むデータである。
属性情報には、例えばハッシュ値を算出したコンテンツブロックの位置情報等の属性情報などが含まれる。
【０１０９】
なお、コンテンツ提供装置１０３は、ステップＳ１２１において、平文コンテンツに基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）を生成した場合は、コンテンツの暗号化および復号処理に適用するタイトル鍵、あるいはタイトル鍵のハッシュ値も、暗号化コンテンツ署名（ＥＣＳ）発行装置１０２への提供データとして生成する。
【０１１０】
次に、コンテンツ提供装置１０３は、ステップＳ１２２において、生成データを暗号化コンテンツ署名（ＥＣＳ）発行装置１０２に送信して、暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成および送信要求を行う。
【０１１１】
次に、ステップＳ１２３において、暗号化コンテンツ署名（ＥＣＳ）発行装置１０２は、コンテンツ提供装置１０３から受信したデータに対する署名生成処理を行う。
すなわち、図２を参照して説明したステップＳ１１ａまたはステップＳ１１ｂの署名生成処理を実行する。
【０１１２】
コンテンツ提供装置１０３の生成したコンテンツハッシュリスト集合が、暗号化コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合である場合は、コンテンツハッシュリスト集合のみを署名対象データとして署名処理を行う。
また、コンテンツ提供装置１０３の生成したコンテンツハッシュリスト集合が、平文（非暗号化）コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合である場合は、コンテンツハッシュリスト集合とタイトル鍵（ハッシュ）を署名対象データとして署名処理を行う。
暗号化コンテンツ署名（ＥＣＳ）発行装置（Ｅｎｃｒｙｐｔｅｄ  Ｃｏｎｔｅｎｔ  Ｓｉｇｎａｔｕｒｅ  Ｉｓｓｕｅｒ）１０２の保持する秘密鍵を適用して署名を生成する。例えばＥＣＤＳＡアルゴリズムに従った署名生成を行う。
【０１１３】
さらに、図２を参照して説明した暗号化コンテンツ署名ファイル（ＥＣＳファイル）を生成し、ステップＳ１２４において、生成した暗号化コンテンツ署名ファイル（ＥＣＳファイル）をコンテンツ提供装置１０３に送信する。
【０１１４】
次に、図４を参照して、コンテンツ提供装置１０３からユーザ装置１０４に対するコンテンツの提供と、ユーザ装置１０４におけるコンテンツ再生シーケンスについて説明する。
図４には、左から、
コンテンツ提供装置１０３、
ユーザ装置１０４、
これらを示している。
【０１１５】
まず、コンテンツ提供装置１０３は、ステップＳ１３１において、ユーザ装置に、
（１）暗号化コンテンツ
（２）暗号化コンテンツ署名ファイル（ＥＣＳファイル）
（３）タイトル鍵
これらのデータを送信する。
【０１１６】
なお、ステップＳ１３１の処理の前処理として、例えばユーザ装置１０４からコンテンツ提供装置１０３に対するコンテンツ送信要求が実行されているものとする。コンテンツ提供装置１０３は、ユーザ装置からのリクエストに応じたコンテンツを提供する。
【０１１７】
なお、ステップＳ１３１においてコンテンツ提供装置１０３の送信する、
（１）暗号化コンテンツ
は、コンテンツに対応して設定される上記の「（３）タイトル鍵」で暗号化されたコンテンツである。
また、
（２）暗号化コンテンツ署名ファイル（ＥＣＳファイル）
は、上記の（１）暗号化コンテンツに対応して生成されたファイルであり、図２に示す暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の構成データを格納している。
すなわち、（１）暗号化コンテンツの構成データに基づいて生成されるハッシュ値等のデータを含むファイルである。
【０１１８】
ユーザ装置１０４は、これらのデータを受信し、例えばハードディスク等のメディアに格納する。
その後、コンテンツの再生処理を実行する際に、図４に示すステップＳ１３２以下の処理を実行する。
【０１１９】
ユーザ装置１０４は、ステップＳ１３２において、再生対象コンテンツに対応する暗号化コンテンツ署名ファイル（ＥＣＳファイル）を読み出して、ハッシュ値照合処理と署名検証処理を行う。
【０１２０】
ハッシュ値照合処理は、図２に示す暗号化コンテンツ署名ファイル（ＥＣＳファイル）の構成データであるコンテンツハッシュリスト集合から、規定数（ｋ個）以上の複数のハッシュ値を選択取得し、受信コンテンツに基づいて算出したハッシュ値との照合処理を実行する。
【０１２１】
署名検証処理は、図２に示す暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の構成データであるＥＣＳ発行装置署名２０３の署名検証を行う処理である。
なお、この署名は、ＥＣＳ発行装置１０２の秘密鍵を用いて生成された署名であり、この署名検証処理には、ＥＣＳ発行装置の公開鍵が適用される。
ＥＣＳ発行装置の公開鍵は、暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の構成データであるＥＣＳ発行装置証明書（公開鍵証明書）２０４から取得することができる。
【０１２２】
ステップＳ１３３において、ハッシュ値照合と署名検証の双方が成功したと判定した場合は、ステップＳ１３４に進み、暗号化コンテンツに対してタイトル鍵を適用した復号処理を実行して、復号コンテンツの再生処理、利用処理を実行する。
【０１２３】
一方、ステップＳ１３３において、ハッシュ値照合と署名検証のいずれか一方でも失敗したと判定された場合は、ステップＳ１３３の判定がＮｏとなり、ステップＳ１３５に進み、暗号化コンテンツの再生、利用処理は中止される。
【０１２４】
なお、前述したように、コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３に格納されたハッシュ値が平文コンテンツである場合は、暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の構成データであるＥＣＳ発行装置署名２０３は、コンテンツの構成データに基づくハッシュ値とタイトル鍵を含むデータに基づいて生成された署名である。従って、ステップＳ１３３において署名検証成功と判定された場合は、コンテンツとタイトル鍵の双方に改ざんがないことの確認が可能となり、コンテンツとタイトル鍵の組み合わせも正規な組み合わせであることが確認される。
【０１２５】
一方、ステップＳ１３３において、署名検証が不成立の場合は、署名データの生成元データ、すなわち、図２を参照して説明したコンテンツの構成データとタイトル鍵の少なくともいずれかに対する改ざんが行われている可能性があると判定する。
この場合には、ステップＳ１３３の判定がＮｏとなり、ステップＳ１３５に進み、暗号化コンテンツの再生、利用処理は中止される。
【０１２６】
なお、ユーザ装置（コンテンツ再生装置）１０４には、暗号化コンテンツ署名ファイル（ＥＣＳファイル）の署名検証を条件としてコンテンツの復号、再生を実行するシーケンスに従った再生処理プログラムが格納されており、この再生処理プログラムに従って暗号化コンテンツ署名ファイル（ＥＣＳファイル）の署名検証とコンテンツ再生が実行されることになる。
暗号化コンテンツ署名ファイル（ＥＣＳファイル）の署名検証が成功しなかった場合は、コンテンツの再生は禁止される。
【０１２７】
このように、本開示の構成では、
（１）コンテンツ、
（２）コンテンツの暗号化、復号処理に適用する暗号鍵であるタイトル鍵、
これらのデータに基づいて生成された署名の検証を実行する。
この検証処理によって、コンテンツとタイトル鍵、これら２つのデータの組み合わせが正しい組み合わせであることが確認された場合にのみ、ユーザ装置においてコンテンツの再生、利用が許容される。
従って、本来のコンテンツとタイトル鍵の組み合わせと異なる不正なコンテンツとタイトル鍵との組み合わせデータである場合には、署名検証は不成立となり、このような不正コンテンツの利用は防止される。
【０１２８】
なお、図４のシーケンス図では、コンテンツ提供装置１０３が、例えばネットワークを介した通信処理によってユーザ装置１０４にコンテンツ等のデータを提供する処理例として説明したが、コンテンツ提供形態は、このようなネットワークを介した提供処理に限定されるものではない。
例えば、ＤＶＤ，ＢＤ、フラッシュメモリ等のメディアを介した提供処理や、放送による提供構成も適用可能である。
【０１２９】
［４．暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成処理およびＥＣＳファイルの詳細構成について］
次に、図５以下を参照して、暗号化コンテンツ署名ファイル（ＥＣＳファイル）の生成処理およびＥＣＳファイルの詳細構成について説明する。
【０１３０】
図５、図６は、図３に示すシーケンス図におけるステップＳ１２１の処理の詳細シーケンスを説明するフローチャートである。
すなわち、コンテンツ提供装置１０３が、例えば新たなコンテンツをユーザ装置に提供する場合に、その新たなコンテンツに対応する図２に示す暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００を、暗号化コンテンツ署名（ＥＣＳ）発行装置１０２から取得するために実行する処理の詳細を説明するフローチャートである。
この処理は、コンテンツ提供装置１０３において、例えば各提供コンテンツに対応して逐次実行される。
具体的には、図２を参照して説明したコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３の生成処理などが含まれる。
【０１３１】
以下では、図５、図６に示すフローチャートとともに、図７以下の各図を参照して、コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）の詳細構成について説明する。
【０１３２】
以下、図５のフローチャートの各ステップの処理を順次説明する。
コンテンツ提供装置１０３は、まず、ステップＳ２０１において、生成する暗号化コンテンツ署名ファイル（ＥＣＳファイル）のタイプ（ＥＣＳタイプ）を決定する。すなわち、図２に示す暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の構成データとして設定するコンテンツハッシュリスト集合２０２に格納するハッシュ値を暗号化コンテンツの構成データに基づいて生成するか、平文コンテンツの構成データに基づいて生成するかに応じてＥＣＳタイプを決定する。
【０１３３】
具体的には、以下の設定にしたがって、ＥＣＳタイプを決定する。
ＥＣＳタイプ＝０：コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２フィールドに、暗号化されたコンテンツから計算したハッシュ値を格納する。
ＥＣＳタイプ＝１：コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２フィールドに、暗号化される前の平文コンテンツから計算したハッシュ値を格納する。
なお、ＥＣＳタイプと同様のタイプ情報としてハッシュタイプも規定されており、このタイプもＥＣＳタイプに準じて決定する。
【０１３４】
ＥＣＳタイプ＝１の場合は、ステップＳ２０２に進み、平文コンテンツからデータ種類別にコンテンツブロックを切り出す処理を実行する。
ＥＣＳタイプ＝０の場合は、ステップＳ２０３に進み、タイトル鍵で暗号化された暗号化コンテンツからデータ種類別にコンテンツブロックを切り出す処理を実行する。
【０１３５】
コンテンツ提供装置１０３は、新たにユーザ装置に提供するコンテンツ、例えば映画等の新たなコンテンツからデータ種類別にコンテンツブロックを切り出す処理を実行する。
データ種類とは、例えば、図７に示すように、コンテンツに含まれる以下の各データである。
（Ａ）音声データ
（Ｓ）字幕データ
（Ｖ）画像データ
これらの３種類のデータである。なお、データ種類はこれらの３つに限らず、さらにその他の種類区分を行ってもよい。例えば音声や字幕については、言語別の区分設定としてもよい。
【０１３６】
図７に示すように、例えば映画等のコンテンツファイルには、
（Ａ）音声データ
（Ｓ）字幕データ
（Ｖ）画像データ
これらの３種類のデータが含まれる。
なお、図７に示すコンテンツファイルは、
ＥＣＳタイプ＝１の場合は、平文コンテンツ、
ＥＣＳタイプ＝０の場合は、タイトル鍵で暗号化された暗号化コンテンツ、
である。
【０１３７】
ステップＳ２０２、ステップＳ２０３では、図７のコンテンツファイルから、コンテンツには、ハッシュ値の生成単位データであるコンテンツブロックを切り出す。この際に、コンテンツブロックを、データの種類別に設定する。すなわち、
（Ａ）音声データ
（Ｓ）字幕データ
（Ｖ）画像データ
これらのデータ種類別にコンテンツブロックを設定する。
【０１３８】
音声データのコンテンツブロックをＡ０，Ａ１，Ａ２・・・、
字幕データのコンテンツブロックをＳ０，Ｓ１，Ｓ２・・・、
画像データのコンテンツブロックをＶ０，Ｖ１，Ｖ２・・・、
とする。
【０１３９】
次に、ステップＳ２０４において、各コンテンツブロックに対応するハッシュ値、すなわち、コンテンツブロックハッシュ（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ）を算出する。
すなわち、
音声データのコンテンツブロック：Ａ０，Ａ１，Ａ２・・・に対応する音声対応のコンテンツブロックハッシュ（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ）、
字幕データのコンテンツブロック：Ｓ０，Ｓ１，Ｓ２・・・に対応する字幕対応のコンテンツブロックハッシュ（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ）、
画像データのコンテンツブロック：Ｖ０，Ｖ１，Ｖ２・・・に対応する画像対応のコンテンツブロックハッシュ（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ）、
これらのデータ種類別のハッシュ値を算出する。
【０１４０】
なお、図７に示すようにハッシュ値の生成対象となるコンテンツブロックは、コンテンツファイルの一部データであり、ハッシュ値生成対象とならないデータ部分も含まれる。これらのハッシュ値生成対象とならないデータ部については、例えばコメントの追記等、コンテンツファイル完成後にも追加編集可能な領域として設定することができる。
【０１４１】
次に、ステップＳ２０５において、ステップＳ２０４で算出したコンテンツブロックハッシュのハッシュ値と、コンテンツブロック位置情報等を登録したコンテンツブロックハッシュリストを生成する。
【０１４２】
図８を参照して、コンテンツブロックハッシュリストの生成処理例について説明する。
図８に示すコンテンツファイルは図７に示すと同様のコンテンツファイルであり、
音声データのコンテンツブロック：Ａ０，Ａ１，Ａ２・・・、
字幕データのコンテンツブロック：Ｓ０，Ｓ１，Ｓ２・・・、
画像データのコンテンツブロック：Ｖ０，Ｖ１，Ｖ２・・・、
これらの各データブロックが設定されたコンテンツである。
【０１４３】
ステップＳ２０４では、これらのコンテンツブロック各々についてハッシュ値を算出する。
ステップＳ２０５では、さらに、これらのハッシュ値に対応する属性情報、具体的にはハッシュ値を算出したコンテンツブロックの位置情報としてのオフセットとレングスを取得して、ハッシュ値とオフセットとレングスを含むハッシュリストを生成する。
オフセットは、ハッシュ値を算出したコンテンツブロックのコンテンツ先頭からの距離、
レングスは、コンテンツブロックの長さに対応する。
これらの情報をハッシュ値に対応する属性情報としてハッシュ値に対応付けて登録したデータをハッシュリストと呼ぶ。
ハッシュリストは各コンテンツブロック対応のデータとして設定される。
【０１４４】
図８に示すように、
字幕ブロックＳ０に対応するハッシュリスト
字幕ブロックＳ１に対応するハッシュリスト
音声ブロックＡ０に対応するハッシュリスト
音声ブロックＡ１に対応するハッシュリスト
画像ブロックＶ０に対応するハッシュリスト
画像ブロックＶ１に対応するハッシュリスト
このように、各データ種類別のコンテンツブロック各々に対応するハッシュリストを生成する。
各ハッシュリストには、
（１）コンテンツブロックのハッシュ値、
（２）コンテンツブロックのオフセット、
（３）コンテンツブロックのレングス、
これらのデータが含まれる。
【０１４５】
なお、ステップＳ２０５におけるハッシュリストの生成処理に際して、コンテンツブロックバリエーションは１つのハッシュリストに格納する。
この処理の具体例について、図９を参照して説明する。
図９（Ａ）には、バリエーションのあるコンテンツ構成を示している。
例えば、図９（Ａ）に示す３つのコンテンツ、
（１）コンテンツバリエーション１
（２）コンテンツバリエーション２
（３）コンテンツバリエーション３
これらのコンテンツは、具体的には、例えば、基本的に同じコンテンツであるが、画像の一部が、異なる方向から撮影された画像によって構成されている。いわゆるマルチアングルコンテンツである。
【０１４６】
図９に示す画像のコンテンツブロック（Ｖ１１，Ｖ１２，Ｖ１３）の３つの画像データが、それぞれ異なる方向から撮影された画像データに対応する。その他のデータ部分（Ａ０，Ｓ０，Ｖ０，Ａ１，Ｓ１・・・）は、全て同じデータである。
コンテンツブロック（Ｖ１１，Ｖ１２，Ｖ１３）の３つの画像データは、例えばユーザの好みに応じて切り替え再生可能な画像データである。
【０１４７】
このように複数の再生可能データが含まれるコンテンツを、バリエーションを有するコンテンツと呼び、このようなコンテンツブロックバリエーションは１つのハッシュリストに格納する。
図９（Ｂ）に示すように、
コンテンツブロックＶ１１のハッシュ、
コンテンツブロックＶ１２のハッシュ、
コンテンツブロックＶ１３のハッシュ、
これらのブロック単位のハッシュ値は個別に算出するが、
これらは、１つのハッシュリストとして設定される。
図９（Ｂ）に示すハッシュリストの再下段に示す［Ｖ１に対応するハッシュリスト］として設定される。
この［Ｖ１に対応するハッシュリスト］には、
Ｖ１１のハッシュ値、Ｖ１２のハッシュ値、Ｖ１３のハッシュ値、およびオフセットとレングス情報が格納される。
【０１４８】
次に、ステップＳ２０６において、同一カテゴリ［（音声（Ａ）／字幕（Ｓ）／画像（Ｖ）］のハッシュリストを集めたデータ種類別ハッシュリスト（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）を生成する。
【０１４９】
図８、図９に示すように、ハッシュリストは、データ種類別、かつコンテンツブロック別に生成される。
これらのハッシュリストをデータ種類別に集めて、データ種類別ハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）を生成する。この処理により、図８、図９に示すように、
（１）字幕データのハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）
（２）音声データのハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）
（３）画像データのハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）
これらのデータ種類別のハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）を生成する。
【０１５０】
さらに、ステップＳ２０７において、データ種類別ハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）を集めたコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）を生成する。
【０１５１】
図１０を参照してコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）の生成処理例について説明する。
図１０には、
（Ａ）データ種類別のコンテンツブロック単位のハッシュ値であるコンテンツブロックハッシュ
（Ｂ）ハッシュ値とオフセットとレングスを含むコンテンツブロック単位のハッシュリスト
（Ｃ）データ種類別のハッシュリスト集合
（Ｄ）コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３
これらを示している。
【０１５２】
（Ｄ）コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３は、図２を参照して説明したコンテンツハッシュリスト集合１８３に対応し、図２に示すように、コンテンツ１８１を利用して生成されたハッシュ値を含むデータである。
【０１５３】
なお、
（Ａ）データ種類別のコンテンツブロック単位のハッシュ値であるコンテンツブロックハッシュは、図９を参照して説明したバリエーションを持つコンテンツに対応する例を示している。
【０１５４】
図５に示すフローのステップＳ２０４において、
図１０に示す（Ａ）データ種類別のコンテンツブロック単位のハッシュ値であるコンテンツブロックハッシュを算出する。
ステップＳ２０５において、
図１０に示す（Ｂ）ハッシュ値とオフセットとレングスを含むコンテンツブロック単位のハッシュリストを生成する。
ステップＳ２０６において、
図１０に示す（Ｃ）データ種類別のハッシュリスト集合を生成する。
ステップＳ２０７において、
図１０に示す（Ｄ）コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３を生成する。
すなわち、図１０に示す（Ｄ）コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３は、図１０（Ｃ）に示すデータ種類別のハッシュリスト集合を集めたデータである。
【０１５５】
次に、図５に示すフローチャートに続く図６に示すフローについて説明する。
図６に示すステップ２０８において、生成予定の暗号化コンテンツ署名ファイル（ＥＣＳファイル）のＥＣＳタイプ（＝ハッシュタイプ）を判定する。
平文コンテンツ対応のハッシュ値算出処理を行うＥＣＳタイプ＝１の場合は、ステップＳ２０９に進む。
暗号化コンテンツ対応のハッシュ値算出処理を行うＥＣＳタイプ＝０の場合は、ステップＳ２１１に進む。
【０１５６】
平文コンテンツ対応のハッシュ値を格納したＥＣＳファイルを生成するＥＣＳタイプ＝１の場合は、ステップＳ２０９に進み、コンテンツの暗号化と復号処理に適用する暗号鍵であるタイトル鍵のハッシュ値を算出する。
さらに、ステップＳ２１０において、
ステップＳ２０７において生成したコンテンツハッシュリスト集合と、
ステップＳ２０９において生成したタイトル鍵ハッシュ値を暗号化コンテンツ署名（ＥＣＳ）発行装置に送信する。
【０１５７】
一方、暗号化コンテンツ対応のハッシュ値を格納したＥＣＳファイルを生成するＥＣＳタイプ＝０の場合は、ステップＳ２１１に進み、
ステップＳ２０７において生成したコンテンツハッシュリスト集合を暗号化コンテンツ署名（ＥＣＳ）発行装置に送信する。
【０１５８】
なお、ステップＳ２１０において送信するタイトル鍵については、コンテンツ提供装置が、ハッシュ値を生成して暗号化コンテンツ署名（ＥＣＳ）発行装置に送信する構成としてもよいし、タイトル鍵自体をコンテンツ提供装置から暗号化コンテンツ署名（ＥＣＳ）発行装置に送信し、暗号化コンテンツ署名（ＥＣＳ）発行装置においてタイトル鍵ハッシュ値を生成する構成としてもよい。ただし、タイトル鍵自身の送信を行う場合は漏えいのない設定としたデータ提供処理、例えばセキュアな通信路を設定して送信する等の処理を行うことが必要である。
【０１５９】
図１１に示すように、暗号化コンテンツ署名（ＥＣＳ）発行装置１０２による署名データの生成は、コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）の設定態様に応じて異なる署名データとなる。
（ＥＣＳタイプ＝０）
暗号化コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合を生成し、図１１に示すステップＳ１１ａに示すように、コンテンツハッシュリスト集合のみを署名対象データとして署名処理を行う。
（ＥＣＳタイプ＝１）
平文（非暗号化）コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合を生成し、図１１に示すステップＳ１１ｂに示すように、コンテンツハッシュリスト集合とタイトル鍵（ハッシュ）を署名対象データとして署名処理を行う。
【０１６０】
暗号化コンテンツ署名（ＥＣＳ）発行装置１０２は、コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）１８３と、生成した署名（ＥＣＳ発行装置署名）を暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の構成データとして格納する。
【０１６１】
暗号化コンテンツ署名（ＥＣＳ）発行装置１０２は、さらに、図１１に示すように、その他のデータを暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の構成データとして設定し、最終的に、少なくとも以下のデータを含む暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００を生成して、コンテンツ提供装置１０３に送信する。
（１）ＥＣＳタイプ２０１、
（２）コンテンツハッシュリスト集合２０２、
（３）ＥＣＳ発行装置署名２０３、
（４）ＥＣＳ発行装置証明書２０４、
（５）コンテンツブロックテーブル２０５、
【０１６２】
［５．署名データの生成処理例について］
図１１を参照して説明したように、暗号化コンテンツ署名（ＥＣＳ）発行装置１０２は、コンテンツ提供装置１０３から、
（ＥＣＳタイプ＝０）コンテンツハッシュリスト集合（Ｈａｓｈ  ｌｉｓｔ  Ｃｏｌｌｏｅｃｔｉｏｎ）１８３、
（ＥＣＳタイプ＝１）コンテンツハッシュリスト集合（Ｈａｓｈ  ｌｉｓｔ  Ｃｏｌｌｏｅｃｔｉｏｎ）１８３とタイトル鍵（ハッシュ）、
を受信すると、この受信データに対する署名データを生成する。
【０１６３】
この署名データの生成処理例について、図１２を参照して説明する。
図１２に示すコンテンツハッシュリスト集合（Ｈａｓｈ  ｌｉｓｔ  Ｃｏｌｌｏｅｃｔｉｏｎ）１８３はコンテンツ提供装置１０３から受信するデータである。
データ種類（音声／字幕／画像）別のコンテンツブロック対応のハッシュ値と属性情報（オフセット、レングス）
これらのデータを含むデータである。
【０１６４】
暗号化コンテンツ署名（ＥＣＳ）発行装置１０２は、
ＥＣＳタイプ＝０の場合は、
暗号化コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合１８３のみを署名対象データとして署名処理を行う。
ＥＣＳタイプ＝１の場合は、平文（非暗号化）コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合１８３と、タイトル鍵（ハッシュ）１８２を署名対象データとして署名処理を行う。
【０１６５】
暗号化コンテンツ署名（ＥＣＳ）発行装置１０２は、署名対象データを所定データ単位に分割した分割データ２２１を生成する。
例えばハッシュ生成アルゴリズムであるＳＨＡ−１アルゴリズムを適用可能なビット数単位のデータＤ１，Ｄ２，Ｄ３，・・・Ｄｎに分割する。
さらに、図１２に示すように、これらの分割データ２２１に対して、ＳＨＡ−１実行部２４０−１〜ｎを、順次、適用してハッシュ値を算出する。
【０１６６】
なお、初期値２３１は、例えばライセンス発行装置（ＬＡ）１０１から提供された値を適用する。
まず、初期値２３１と、データＤ１を適用してＳＨＡ−１アルゴリズムを実行して中間ハッシュ値を算出する。この算出値を次のデータＤ２を入力するＳＨＡ−１実行手段に対する初期値として入力してＳＨＡ−１アルゴリズムを実行して中間ハッシュ値を算出する。これを順次、繰り返して、最終ハッシュ値２５０を算出する。
【０１６７】
最終ハッシュ値２５０に対して、暗号化コンテンツ署名（ＥＣＳ）発行装置１０２の秘密鍵２５１を適用して署名データ２７０を生成する。
この署名データ２７０が、図１１に示す暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の構成データであるＥＣＳ発行装置署名２０３として格納される。
【０１６８】
なお、図１２に示すように、ＳＨＡ−１によるハッシュ値生成処理は、コンテンツハッシュリスト集合、またはコンテンツハッシュリスト集合とタイトル鍵（ハッシュ）からなるデータを分割したデータ：Ｄ１〜Ｄｎを順次、入力して行われる。
従って、コンテンツに変更がない場合は、コンテンツハッシュリスト集合にも変更がなく、これらの分割データに基づいて生成される中間ハッシュ値は同じ値となる。
【０１６９】
従って、例えばタイトル鍵のみを変更する場合に、コンテンツハッシュリスト集合に基づいて算出した中間ハッシュ値をメモリに保持しておけば、この中間データと変更したタイトル鍵のみを用いたハッシュ値算出処理によって最終ハッシュ値を算出することができる。このような処理により、署名データの生成負荷の軽減を図ることができる。
【０１７０】
［６．ユーザ装置におけるコンテンツ再生処理について］
次に、ユーザ装置におけるコンテンツ再生処理シーケンスについて、図１３、図１４に示すフローチャートを参照して説明する。
【０１７１】
図１３、図１４に示すフローチャートは、先に図４を参照して説明したシーケンス図のユーザ装置１０４において実行する処理ステップＳ１３２〜Ｓ１３５の処理の詳細を説明するフローチャートである。
ユーザ装置は、コンテンツ提供装置１０３から、
（１）暗号化コンテンツ
（２）暗号化コンテンツの復号に適用する暗号鍵であるタイトル鍵、
（３）暗号化コンテンツ署名ファイル（ＥＣＳファイル）
これらのデータを受領しているものとする。
これらの受領データは、例えばユーザ装置のハードディスクやフラッシュメモリ等のメディアに記録されているものとする。
【０１７２】
なお、コンテンツ提供装置が上記の各データを例えばＤＶＤやＢＤ等のメディアに格納してユーザ装置に提供している場合は、このメディアからすべてのデータ読み出しが行われる。
【０１７３】
まず、ユーザ装置は、図１３に示すフローのステップＳ３０１において、
暗号化コンテンツ署名ファイル（ＥＣＳファイル）を例えばハードディスクやフラッシュメモリ、あるいはＤＶＤ，ＢＤ等のメディアから読み出す。
【０１７４】
次に、ステップＳ３０２において、暗号化コンテンツ署名ファイル（ＥＣＳファイル）に記録されたコンテンツハッシュリスト集合から、コンテンツブロックハッシュを予め既定された数（ｋ：例えばｋ＝７）以上、ランダムに選択する。
【０１７５】
さらに、ステップＳ３０３において、選択したコンテンツブロックに対応するコンテンツ中のコンテンツブロックを取得してハッシュ値を算出する。
なお、コンテンツブロックの位置は、ハッシュリスト中の属性情報（オフセット／レングス）に基づいても求めることができる。
また、ＥＣＳタイプ＝１の場合、ハッシュ値算出の前にコンテンツブロックに対する復号を実行してハッシュ値算出を行う。この場合、ハッシュ値照合処理のために選択されたコンテンツブロックに対する復号のみが許容される。
【０１７６】
次に、ステップＳ３０４において、ステップＳ３０３で算出した算出ハッシュ値と、ステップＳ３０２で暗号化コンテンツ署名ファイル（ＥＣＳファイル）のコンテンツハッシュリスト集合から選択したハッシュ値との照合処理を実行する。
【０１７７】
ステップＳ３０５において、ハッシュ値照合結果を判定する。
ステップＳ３０２で選択したｋ個以上のハッシュ値の照合が全て成立（算出ハッシュ値＝コンテンツハッシュリスト集合から取得したハッシュ値）した場合は、ステップＳ３０５の判定が、照合成立（＝Ｙｅｓ）となり、ステップＳ３０６に進む。
一方、ステップＳ３０２で選択したｋ個以上のハッシュ値の照合が１つでも不成立（算出ハッシュ値≠コンテンツハッシュリスト集合から取得したハッシュ値）である場合は、ステップＳ３０５の判定が、照合不成立（＝Ｎｏ）となり、処理は終了する。
この場合、コンテンツの再生処理は実行されない。
【０１７８】
ステップＳ３０２で選択したｋ個以上のハッシュ値の照合が全て成立（算出ハッシュ値＝コンテンツハッシュリスト集合から取得したハッシュ値）した場合は、ステップＳ３０６に進み、暗号化コンテンツ署名ファイル（ＥＣＳファイル）に記録されたコンテンツハッシュリスト集合のハッシュ値を置換する処理を行う。
【０１７９】
すなわち、ハッシュ値照合処理に際して、ステップＳ３０２において、コンテンツから取得したコンテンツブロックに基づいて算出したｋ個のハッシュ値を暗号化コンテンツ署名ファイルのコンテンツハッシュリスト集合の対応するコンテンツブロックのハッシュ値として書き換える処理を実行する。
【０１８０】
このステップＳ３０６の処理の具体例について、図１５を参照して説明する。
図１５に示す、
「コンテンツブロックＡ１のハッシュ」２８１は、
暗号化コンテンツ署名ファイル２００のコンテンツハッシュリスト集合２０２から選択されたハッシュ値照合処理を実行したハッシュ値である。
【０１８１】
この「コンテンツブロックＡ１のハッシュ」２８１を、
「コンテンツブロックＡ１のハッシュ」２８１と照合処理を実行した算出ハッシュ値、すなわち、コンテンツのコンテンツブロックに基づいて算出したハッシュ値２８２に置き換える処理を行う。
なお、ステップＳ３０２で選択した照合処理を実行したｋ個以上のハッシュ値を、算出ハッシュ値に置き換える処理を行う。
【０１８２】
次に、ステップＳ３０７において、暗号化コンテンツ署名ファイル（ＥＣＳファイル）に記録されたＥＣＳ発行装置証明書を読みだして、ＥＣＳ発行装置証明書に格納された署名の検証処理を実行する。この署名はライセンス発行装置１０１の秘密鍵によって生成された署名であり、ライセンス発行装置１０１の公開鍵を適用して署名検証を実行する。
【０１８３】
ステップＳ３０８において、署名検証が成功したと判定されるとステップＳ３０９進む。
署名検証が失敗したと判定されると処理は終了する。この場合、コンテンツ再生は行われない。
【０１８４】
ステップＳ３０８において、署名検証が成功したと判定されるとステップＳ３０９進み、暗号化コンテンツ署名ファイル（ＥＣＳファイル）に記録されたＥＣＳ発行装置証明書に記録されたＥＣＳ発行装置の公開鍵を取得する。
前述したように、ＥＣＳ発行装置証明書はＥＣＳ発行装置の公開鍵を格納した公開鍵証明書であり、ユーザ装置は、ここからＥＣＳ発行装置の公開鍵を取得する。
【０１８５】
次に、ステップＳ３１０において、暗号化コンテンツ署名ファイル（ＥＣＳファイル）に記録されたＥＣＳ発行装置署名を取得する。
ＥＣＳ発行装置署名は、先に図１１を参照して説明したように、ＥＣＳタイプの値に応じて異なる署名データとなる。すなわち、以下の設定となる。
（ＥＣＳタイプ＝０）
コンテンツハッシュリスト集合が、暗号化コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合である場合であり、コンテンツハッシュリスト集合のみを署名対象データとして生成した署名データが格納される。
（ＥＣＳタイプ＝１）
コンテンツハッシュリスト集合が、平文コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合である場合でありコンテンツハッシュリスト集合とタイトル鍵（ハッシュ）を署名対象データとして生成した署名データが格納される。
【０１８６】
なお、コンテンツハッシュリスト集合には、データ種類（音声／字幕／画像）別のコンテンツブロック対応のハッシュ値と属性情報（オフセット、レングス）が記録されている。
【０１８７】
次に、ステップＳ３１１において、暗号化コンテンツ署名ファイル（ＥＣＳファイル）から読み出したＥＣＳ発行装置署名に対して、ステップＳ３０９で取得したＥＣＳ発行装置の公開鍵を適用した署名検証処理を実行する。
【０１８８】
署名検証処理は、ＥＣＳタイプに応じて、例えば以下の処理に従って行われる。
（ＥＣＳタイプ＝０）
コンテンツハッシュリスト集合が、暗号化コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合である場合。
この場合は、
ステップＳ３０６においてハッシュ値置換処理を実行したコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）に対して、ステップＳ３０９で取得したＥＣＳ発行装置の公開鍵（ＥＣＳ  Ｉｓｓｕｅｒ  Ｐｕｂｌｉｃ  Ｋｅｙ）を適用した演算結果と、暗号化コンテンツ署名ファイル（ＥＣＳファイル）から読み出したＥＣＳ発行装置署名（ＥＣＳ  Ｓｉｇｎａｔｕｒｅ）との照合を実行する。
検証処理を式で示すと以下の通りとなる。
ＥＣＤＳＡ＿Ｖｅｒｉｆｙ（ＥＣＳ  Ｉｓｓｕｅｒ  Ｐｕｂｌｉｃ  Ｋｅｙ，ＥＣＳ  Ｓｉｇｎａｔｕｒｅ，Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）
【０１８９】
（ＥＣＳタイプ＝１）
コンテンツハッシュリスト集合が、平文コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合である場合。
この場合は、
ステップＳ３０６においてハッシュ値置換処理を実行したコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）とタイトル鍵のハッシュ値（ＳＨＡ（Ｔｉｔｌｅ  Ｋｅｙ））の連結データに対して、ステップＳ３０９で取得したＥＣＳ発行装置の公開鍵（ＥＣＳ  Ｉｓｓｕｅｒ  Ｐｕｂｌｉｃ  Ｋｅｙ）を適用した演算結果と、暗号化コンテンツ署名ファイル（ＥＣＳファイル）から読み出したＥＣＳ発行装置署名（ＥＣＳ  Ｓｉｇｎａｔｕｒｅ）との照合を実行する。
検証処理を式で示すと以下の通りとなる。
ＥＣＤＳＡ＿Ｖｅｒｉｆｙ（ＥＣＳ  Ｉｓｓｕｅｒ  Ｐｕｂｌｉｃ  Ｋｅｙ，ＥＣＳ  Ｓｉｇｎａｔｕｒｅ，Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ｜｜  ＳＨＡ（Ｔｉｔｌｅ  Ｋｅｙ））
【０１９０】
ステップＳ３１２において、署名検証が成立したと判定した場合は、署名データの生成元データに改ざんがないと判定し、ステップＳ３１３に進み、暗号化コンテンツに対してタイトル鍵を適用した復号処理を実行して、復号コンテンツの再生処理、利用処理が実行される。
【０１９１】
一方、ステップＳ３１２において、署名検証が不成立の場合は、ステップＳ３１２の判定がＮｏとなり、処理終了となる。この場合、暗号化コンテンツの再生、利用処理は実行されない。
【０１９２】
なお、ユーザ装置（コンテンツ再生装置）１０４には、ハッシュ値照合や暗号化コンテンツ署名ファイル（ＥＣＳファイル）の署名検証を条件としてコンテンツの復号、再生を実行する図１３、図１４に示すシーケンスに従った再生処理プログラムが格納されており、この再生処理プログラムに従ってハッシュ値照合処理、暗号化コンテンツ署名ファイル（ＥＣＳファイル）の署名検証、コンテンツ再生等の各処理が実行される。
【０１９３】
このように、本開示の構成では、
（１）コンテンツ、
（２）コンテンツの暗号化、復号処理に適用する暗号鍵であるタイトル鍵、
これらのデータに基づいて生成された署名の検証を実行する。
この検証処理によって、コンテンツとタイトル鍵、これら２つのデータの組み合わせが正しい組み合わせであることが確認された場合にのみ、ユーザ装置においてコンテンツの再生、利用が許容される。
従って、本来のコンテンツとタイトル鍵の組み合わせと異なる不正なコンテンツとタイトル鍵との組み合わせデータである場合には、署名検証は不成立となり、このような不正コンテンツの利用は防止される。
【０１９４】
［７．暗号化コンテンツ署名ファイル（ＥＣＳファイル）のフォーマットの詳細］
次に、図１６以下を参照して暗号化コンテンツ署名ファイル（ＥＣＳファイル）のフォーマットの詳細について説明する。
【０１９５】
（７−１．暗号化コンテンツ署名ファイル（ＥＣＳファイル）の全体構成について）
図２や、図１１を参照して説明したように、暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００は、以下のデータを含むファイルである。
（１）ＥＣＳタイプ２０１
（２）コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２
（３）ＥＣＳ発行装置署名（ＥＣＳ  Ｓｉｇｎａｔｕｒｅ）２０３
（４）ＥＣＳ発行装置証明書（ＥＣＳ  Ｉｓｓｕｅｒ  Ｃｅｒｔｉｆｉｃａｔｅ）２０４
（５）コンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）２０５
【０１９６】
暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００に含まれるこれらのデータの詳細、さらにその他のデータについて図１６以下を参照して説明する。説明する。
【０１９７】
図１６は、暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００のフォーマットの一例を示すフォーマット図である。
図１６に示す暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００は、図２、図１１を参照して説明したと同様の構成データ、すなわち、以下のデータを含む。
（１）ＥＣＳタイプ２０１
（２）コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２
（３）ＥＣＳ発行装置署名（ＥＣＳ  Ｓｉｇｎａｔｕｒｅ）２０３
（４）ＥＣＳ発行装置証明書（ＥＣＳ  Ｉｓｓｕｅｒ  Ｃｅｒｔｉｆｉｃａｔｅ）２０４
（５）コンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）２０５
なお、図１６以下のフォーマット図において、リザーブ（ｒｅｓｅｒｖｅｄ）フィールドはすべてのビットを０で埋めたフィールドである。
【０１９８】
図１６に示すフォーマットの各データについて説明する。
バージョン（Ｖｅｒｓｉｏｎ）
暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００のバージョンを記述したフィールドである。
【０１９９】
ＥＣＳ  Ｔｙｐｅ
これは、図２、図１１を参照して説明したＥＣＳタイプ２０１であり、署名対象データの種類を示すフラグを記述する。具体的には以下の２つのタイプのいずれかが記録される。
ＥＣＳタイプ＝０：後に続くコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２フィールドに、暗号化されたコンテンツから計算されたハッシュ値が格納されている。
ＥＣＳタイプ＝１：後に続くコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２フィールドに、暗号化される前の平文コンテンツから計算されたハッシュ値が格納されている。
なお、コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２には、前述したようにコンテンツを構成するデータ種類別に設定されたコンテンツブロックを単位として生成されたハッシュ値が記録される。
【０２００】
ＥＣＳ署名オフセット（Ｏｆｆｓｅｔ  ｔｏ  ＥＣＳ  Ｓｉｇｎａｔｕｒｅ）
本フィールドには、ファイルの先頭からのＥＣＳ発行装置署名（ＥＣＳ  Ｓｉｇｎａｔｕｒｅ）２０３フィールドまでのバイト数（オフセット）が記録される。
【０２０１】
コンテンツブロックテーブルオフセット（Ｏｆｆｓｅｔ  ｔｏ  Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）
本フィールドには、ファイルの先頭からのコンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）までのバイト数（オフセット）が記録される。
【０２０２】
コンテンツハッシュリスト集合の数（Ｎｕｍｂｅｒ  ｏｆ  Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）
本フィールドには、本ファイルに記録されたコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２に含まれるコンテンツハッシュリスト集合の総数を記述する。
【０２０３】
コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２
コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２は、前述したように、コンテンツ提供装置（Ｃｏｎｔｅｎｔ  Ｓｅｒｖｅｒ）１０３の生成したデータ（＝図２、図１１に示すコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）１８３）であり、前述したように、ユーザ装置に提供するコンテンツ、具体的にはユーザ装置において再生される例えば映画等のコンテンツに基づいて生成されるコンテンツの構成データに基づいて生成されるハッシュ値とその属性情報を含むデータである。
【０２０４】
ＥＣＳ発行装置署名（ＥＣＳ  Ｓｉｇｎａｔｕｒｅ）２０３
ＥＣＳ発行装置署名（ＥＣＳ  Ｓｉｇｎａｔｕｒｅ）２０３は、ＥＣＳタイプの値に応じて異なる署名データとなる。すなわち、以下の設定となる。
（ＥＣＳタイプ＝０）
コンテンツハッシュリスト集合２０２が、暗号化コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合である場合であり、コンテンツハッシュリスト集合のみを署名対象データとして生成した署名データが格納される。
（ＥＣＳタイプ＝１）
コンテンツハッシュリスト集合２０２が、平文コンテンツの構成データ（コンテンツブロック）に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合である場合でありコンテンツハッシュリスト集合とタイトル鍵（ハッシュ）を署名対象データとして生成した署名データが格納される。
例えば、ＥＣＤＳＡ電子署名を記述する。
【０２０５】
ＥＣＳ発行装置証明書（ＥＣＳ  Ｉｓｓｕｅｒ  Ｃｅｒｔｉｆｉｃａｔｅ）２０４
ＥＣＳ発行装置証明書（ＥＣＳ  Ｉｓｓｕｅｒ  Ｃｅｒｔｉｆｉｃａｔｅ）２０４
は、ＥＣＳ発行装置１０２に対応する公開鍵証明書である。ＥＣＳ発行装置１０２の公開鍵が格納されている。
【０２０６】
コンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）２０５
コンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）２０５は、上記のコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２に、複数のコンテンツに対応するハッシュリストが記録されている場合に、各ハッシュリストとコンテンツの対応情報を記録したフィールドとして設定される。
【０２０７】
次に、図１６に示す暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の構成データ単位で、さらにその詳細について説明する。
【０２０８】
（７−２．ＥＣＳ発行装置証明書（ＥＣＳ  Ｉｓｓｕｅｒ  Ｃｅｒｔｉｆｉｃａｔｅ）の詳細について）
図１７を参照して暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の１つの構成データであるＥＣＳ発行装置証明書（ＥＣＳ  Ｉｓｓｕｅｒ  Ｃｅｒｔｉｆｉｃａｔｅ）２０４の詳細について説明する。
【０２０９】
ＥＣＳ発行装置公開鍵（ＥＣＳ  Ｉｓｓｕｅｒ  Ｐｕｂｌｉｃ  Ｋｅｙ）
本フィールドには、ＥＣＳ発行装置（ＥＣＳ  Ｉｓｓｕｅｒ）の公開鍵が記録される。
ライセンス発行装置（ＬＡ）署名（Ｓｉｇｎａｔｕｒｅ  ｂｙ  ＬＡ）
本フィールドには、ＥＣＳ発行装置（ＥＣＳ  Ｉｓｓｕｅｒ）の公開鍵に対して、ライセンス発行装置（ＬＡ）の秘密鍵を適用して生成された署名データが格納される。
【０２１０】
ユーザ装置が、ＥＣＳ発行装置証明書（ＥＣＳ  Ｉｓｓｕｅｒ  Ｃｅｒｔｉｆｉｃａｔｅ）２０４から、ＥＣＳ発行装置公開鍵（ＥＣＳ  Ｉｓｓｕｅｒ  Ｐｕｂｌｉｃ  Ｋｅｙ）を取り出して利用する場合は、まず、ライセンス発行装置（ＬＡ）署名（Ｓｉｇｎａｔｕｒｅ  ｂｙ  ＬＡ）の署名検証を行い、署名検証の成立によって、ＥＣＳ発行装置証明書（ＥＣＳ  Ｉｓｓｕｅｒ  Ｃｅｒｔｉｆｉｃａｔｅ）２０４が改ざんのない正当な証明書であることの確認が行われる。この確認の後に、ＥＣＳ発行装置公開鍵（ＥＣＳ  Ｉｓｓｕｅｒ  Ｐｕｂｌｉｃ  Ｋｅｙ）を取り出して利用する。
【０２１１】
（７−３．コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）の詳細について）
次に、図１８を参照して、暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の１つの構成データであるコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２の詳細について説明する。
【０２１２】
図１８に示すように、コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２には、
複数のハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）が記録される。これらの各々は、図１０に示す、
（Ｃ）データ種類別ハッシュリスト集合
に対応する。
すなわち、音声データ、字幕データ、画像データ等のデータ種類別に設定されたコンテンツブロックのハッシュ値と属性情報（オフセット，レングス）からなるデータである。
【０２１３】
図１８に示すコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２に含まれる複数のハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）の１つのハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）の詳細フォーマットを図１９に示す。
図１９に示す１つのハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）の構成データについて説明する。
【０２１４】
ハッシュリスト集合タグ（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ  Ｔａｇ）
本フィールドには、ハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）を構成するデータの識別子を記述する。
識別子としては、例えば、コンテンツが、ｍｐ４ファイルなら［ｔｒａｃｋ  ＩＤ］等を記述する。
【０２１５】
ハッシュリスト数（Ｎｕｍｂｅｒ  Ｏｆ  Ｈａｓｈ  Ｌｉｓｔｓ）
本フィールドには、次に続くハッシュリスト（Ｈａｓｈ  Ｌｉｓｔ）の総数を記述する。
【０２１６】
ハッシュリスト（Ｈａｓｈ  Ｌｉｓｔ）
本フィールドには、前述したデータ種類（音声／字幕／画像）別のコンテンツブロック単位のハッシュ値と属性情報等からなるハッシュリストを記述する。
ハッシュ値を生成したコンテンツブロックの数に応じた数のハッシュリストフィールドが設定される。
【０２１７】
さらに、図２０を参照して、１つのハッシュリスト（Ｈａｓｈ  Ｌｉｓｔ）フィールドの詳細構成を説明する。
図２０には、以下のハッシュリストの例を示している。
（１）バリエーションなしのコンテンツの場合のハッシュリスト（Ｈａｓｈ  Ｌｉｓｔ）
（２）バリエーションありのコンテンツの場合のハッシュリスト（Ｈａｓｈ  Ｌｉｓｔ）
【０２１８】
バリエーションのあるコンテンツとは、先に図９を参照して説明したように、たとえばマルチアングルコンテンツ等のように、１つのコンテンツの一部にユーザが選択可能な複数の画像などが設定されたコンテンツである。
バリエーションのあるコンテンツの場合は、各バリエーションデータ、具体的には、図９に示す画像のコンテンツブロックＶ１１，Ｖ１２，Ｖ１３の各々に対応するハッシュ値が、ハッシュリスト中に格納される。
【０２１９】
図２０に示す
（１）バリエーションなしのコンテンツの場合のハッシュリスト（Ｈａｓｈ  Ｌｉｓｔ）
（２）バリエーションありのコンテンツの場合のハッシュリスト（Ｈａｓｈ  Ｌｉｓｔ）
これらにの両者に共通するデータとして以下のデータが格納される。
【０２２０】
ハッシュタイプ（Ｈａｓｈ  Ｔｙｐｅ）
本フィールドには、ハッシュ計算の方式を示すフラグが記述される。例えば、以下のフラグが格納される。
ハッシュタイプ＝０：後に続くコンテンツブロックハッシュ（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ）フィールドは、暗号化されたコンテンツから計算されたハッシュ値が格納されている。
ハッシュタイプ＝１：後に続くコンテンツブロックハッシュ（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ）フィールドは、暗号化される前の平文コンテンツから計算されたハッシュ値が格納されている。
なお、先に図２を参照して説明した暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００のＥＣＳタイプ２０１の設定が［１］の場合は、ハッシュタイプ（Ｈａｓｈ  Ｔｙｐｅ）は必ず［１］が設定される。
【０２２１】
コンテンツブロックオフセット（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｏｆｆｓｅｔ）
本フィールドには、ハッシュ値算出がなされたコンテンツの構成データであるコンテンツブロック（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ）のコンテンツファイル先頭からのオフセット位置をバイト単位で記述する。
【０２２２】
コンテンツブロックレングス（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｌｅｎｇｔｈ）
本フィールドには、ハッシュ値算出がなされたコンテンツの構成データであるコンテンツブロック（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ）のデータ長をバイト単位で記述する。
【０２２３】
コンテンツブロックハッシュ数（Ｎｕｍｂｅｒ  ｏｆ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈｅｓ）
本フィールドには、次に続くコンテンツブロックハッシュ（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ）に記録されたハッシュの総数を記述する。
【０２２４】
コンテンツブロックハッシュ（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ）
本フィールドには、各コンテンツブロック（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ）から計算されたハッシュ値を記述する。
【０２２５】
なお、コンテンツブロックハッシュ（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ）の算出は、例えば、以下の式に従って実行される。
Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ＝［ＳＨＡ（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ）］ｌｓｂ＿６４
【０２２６】
なお、前述したように、ＥＣＳタイプ（ＥＣＳ  Ｔｙｐｅ）、またはハッシュタイプ（Ｈａｓｈ  Ｔｙｐｅ）が０の場合、ハッシュ値算出用のコンテンツブロック（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ）はタイトル鍵で暗号化されたコンテンツから抽出される。
一方、ＥＣＳタイプ（ＥＣＳ  Ｔｙｐｅ）、またはハッシュタイプ（Ｈａｓｈ  Ｔｙｐｅ）が１の場合、ハッシュ値算出用のコンテンツブロック（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ）は暗号化される前の平文コンテンツから抽出される。
【０２２７】
図２０に示すように、
（１）バリエーションなしのコンテンツの場合のハッシュリスト（Ｈａｓｈ  Ｌｉｓｔ）
の場合は、１つのコンテンツプロックに対応する１つのハッシュ値が記録される。
一方、
（２）バリエーションありのコンテンツの場合のハッシュリスト（Ｈａｓｈ  Ｌｉｓｔ）
の場合は、バリエーション数に応じた複数のコンテンツプロックに対応する複数のハッシュ値が記録される。
【０２２８】
（７−４．コンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）の詳細について）
次に、図２１を参照して暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の１つの構成データであるコンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）２０５の詳細について説明する。
【０２２９】
コンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）２０５は、前述したように、暗号化コンテンツ署名ファイル（ＥＣＳファイル）２００の１つの構成データであるコンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）２０２に、複数のコンテンツに対応するハッシュリストが記録されている場合に、例えば実際にユーザ装置に提供されたコンテンツに対応するハッシュリストを特定するための対応情報（インデックス）を記録したフィールドとして設定される。
すなわち、ユーザの利用可能なコンテンツに対応するハッシュリストがいずれであるかを識別可能とするための情報が記録される。
具体的なデータ構成を図２１に示す。
【０２３０】
コンテンツブロックインデックス数（Ｎｕｍｂｅｒ  ｏｆ  Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｉｎｄｅｘ）
本フィールドには、次に続くコンテンツブロックインデックス（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｉｎｄｅｘ）の総数を記述する。
ただし、コンテンツブロックバリエーション（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｖａｒｉａｔｉｏｎ）が存在しない場合は、０を設定する。
【０２３１】
コンテンツブロックインデックス（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｉｎｄｅｘ）
本フィールドには、各ハッシュリストとコンテンツの対応情報（インデックス）を記録する。
具体的には、ハッシュリスト（Ｈａｓｈ  Ｌｉｓｔ）に登録された複数のコンテンツブロックハッシュ（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ）と、コンテンツ（Ｃｏｎｔｅｎｔ）との対応関係を示すインデックス情報を格納するためのフィールドである。
【０２３２】
１つのコンテンツブロックインデックス（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｉｎｄｅｘ）の詳細フォーマットを図２２に示す。
【０２３３】
図２２に示すコンテンツブロックインデックス（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｉｎｄｅｘ）の詳細フォーマットの各構成データについて説明する。
ハッシュリスト集合インデックス（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ  Ｉｎｄｅｘ）
本フィールドには、ハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ）のインデックス（識別子）を記述する。
【０２３４】
ハッシュリストインデックス（Ｈａｓｈ  Ｌｉｓｔ  Ｉｎｄｅｘ）
本フィールドにはハッシュリスト（Ｈａｓｈ  Ｌｉｓｔ）のインデックス（識別子）を記述する。
【０２３５】
コンテンツブロックハッシュインデックス（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ  Ｉｎｄｅｘ）
本フィールドにはコンテンツブロックハッシュ（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ）のインデックス（識別子）を記述する。
【０２３６】
コンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）２０５の具体例について、図２３を参照して説明する。
【０２３７】
図２３に示す例は、先に、図９を参照して説明した３つのバリエーションからなる画像ブロックＶ１１，Ｖ１２，Ｖ１３を持つバリエーションありコンテンツに対応するコンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）２０５の具体例を示している。
【０２３８】
この例では、暗号化コンテンツ署名ファイル（ＥＣＳファイル）に格納されたコンテンツハシュリスト集合２０２には、３つのバリエーションＶ１１，Ｖ１２，Ｖ１３に対応するハッシュが記録されている。
しかし、実際にユーザの利用可能なコンテンツはバリエーションＶ１３に対応するコンテンツであるとする。
【０２３９】
この場合のコンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）２０５には、図２３に示すように以下のデータが記録される。
コンテンツブロックインデックス数（Ｎｕｍｂｅｒ  ｏｆ  Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｉｎｄｅｘ）＝１
コンテンツブロックインデックス（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｉｎｄｅｘ）（０）
ハッシュリスト集合インデックス（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ  Ｉｎｄｅｘ）＝２
ハッシュリストインデックス（Ｈａｓｈ  Ｌｉｓｔ  Ｉｎｄｅｘ）＝１
コンテンツブロックハッシュインデックス（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ  Ｉｎｄｅｘ）＝２
これらのデータが記録される。
【０２４０】
例えば、最後の、
コンテンツブロックハッシュインデックス（Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｈａｓｈ  Ｉｎｄｅｘ）＝２
このデータは、ユーザの利用可能なバリエーションデータのコンテンツブロックハッシュを示しており、この場合は、図２３の（Ａ）コンテンツブロックハッシュの一番下のコンテンツブロックＶ１３のハッシュ（２）が利用可能であることを示している。
【０２４１】
また、
ハッシュリストインデックス（Ｈａｓｈ  Ｌｉｓｔ  Ｉｎｄｅｘ）＝１
このデータは、ユーザの利用可能なバリエーションデータのコンテンツブロックハッシュの格納されたコンテンツブロック単位のハッシュリストを示しており、この場合は、図２３の（Ｂ）コンテンツブロック単位のハッシュリストの一番下のハッシュリスト（１）が利用可能であることを示している。
【０２４２】
また、
ハッシュリスト集合インデックス（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎ  Ｉｎｄｅｘ）＝２
このデータは、ユーザの利用可能なバリエーションデータのコンテンツブロックハッシュの格納されたデータ種類別のハッシュリスト集合を示しており、この場合は、図２３の（Ａ）データ種類別のハッシュリスト集合の一番下のハッシュリスト集合（２）が利用可能であることを示している。
【０２４３】
これらのデータから、複数のバリエーションに対応するコンテンツブロックに対応する複数のハッシュ値が暗号化コンテンツ署名ファイル（ＥＣＳファイル）に格納されている場合であっても、ユーザの利用するバリエーションに応じたコンテンツブロックに対応するハッシュ値を選択することが可能となる。
【０２４４】
なお、複数のバリエーションに対応するコンテンツブロックに対応する複数のハッシュ値が暗号化コンテンツ署名ファイル（ＥＣＳファイル）に格納されている場合のハッシュリストは、例えば図２０（２）を参照して説明したハッシュリストである。
【０２４５】
［８．各装置のハードウェア構成例について］
最後に、図２４を参照して、上述した処理を実行する各装置のハードウェア構成例について説明する。
図２４は、図１に示すユーザ装置１０４、コンテンツ提供装置１０３、暗号化コンテンツ署名発行装置１０２、ライセンス発行装置１０１のいずれにも適用可能な情報処理装置のハードウェア構成例を示している。
【０２４６】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）７０１は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）７０２、または記憶部７０８に記憶されているプログラムに従って各種の処理を実行するデータ処理部として機能する。例えば、上述した各フローチャートに従った処理を実行する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）７０３には、ＣＰＵ７０１が実行するプログラムやデータなどが適宜記憶される。これらのＣＰＵ７０１、ＲＯＭ７０２、およびＲＡＭ７０３は、バス７０４により相互に接続されている。
【０２４７】
ＣＰＵ７０１はバス７０４を介して入出力インタフェース７０５に接続され、入出力インタフェース７０５には、各種スイッチ、キーボード、マウス、マイクロホンなどよりなる入力部７０６、ディスプレイ、スピーカなどよりなる出力部７０７が接続されている。ＣＰＵ７０１は、入力部７０６から入力される指令に対応して各種の処理を実行し、処理結果を例えば出力部７０７に出力する。
【０２４８】
入出力インタフェース７０５に接続されている記憶部７０８は、例えばハードディスク等からなり、ＣＰＵ７０１が実行するプログラムや各種のデータを記憶する。通信部７０９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【０２４９】
入出力インタフェース７０５に接続されているドライブ７１０は、磁気ディスク、光ディスク、光磁気ディスク、あるいはメモリカード等の半導体メモリなどのリムーバブルメディア７１１を駆動し、記録されているコンテンツや鍵情報等の各種データを取得する。例えば、取得されたコンテンツや鍵データを用いて、ＣＰＵによって実行する再生プログラムに従ってコンテンツの復号、再生処理などが行われる。
【０２５０】
［９．本開示の構成のまとめ］
以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【０２５１】
なお、本明細書において開示した技術は、以下のような構成をとることができる。
（１）  暗号化コンテンツの復号および再生処理を実行するデータ処理部を有し、
前記データ処理部は、
再生コンテンツに対応して設定された暗号化コンテンツ署名ファイルを適用したコンテンツ再生可否判定処理を実行し、
前記暗号化コンテンツ署名ファイルは、
コンテンツの構成データに基づくハッシュ値を含むコンテンツハッシュリスト集合と、
コンテンツの暗号鍵と前記コンテンツハッシュリスト集合から生成されたデータに対する署名データを含み、
前記データ処理部は、前記コンテンツ再生可否判定処理において、
再生対象コンテンツの構成データから算出したハッシュ値と、前記コンテンツハッシュリスト集合に含まれる照合用ハッシュ値とのハッシュ値照合処理と、
前記署名データを適用した署名検証処理を実行し、
前記ハッシュ値照合処理、および前記署名検証処理のいずれも成功したことを条件として前記暗号化コンテンツの復号、再生処理を行う情報処理装置。
【０２５２】
（２）  コンテンツ再生処理を実行するユーザ装置と、
前記ユーザ装置に対するコンテンツの提供処理を実行するコンテンツ提供装置と、
前記コンテンツ提供装置に対する暗号化コンテンツ署名ファイルの提供処理を実行する暗号化コンテンツ署名発行装置を有する情報処理システムであり、
前記コンテンツ提供装置は、
コンテンツの構成データに基づくハッシュ値を含むコンテンツハッシュリスト集合と、コンテンツの暗号鍵または暗号鍵のハッシュ値を前記暗号化コンテンツ署名発行装置に送信し、
前記暗号化コンテンツ署名発行装置は、
前記コンテンツハッシュリスト集合と、コンテンツの暗号鍵のハッシュ値を署名対象とした署名データを生成し、
生成した署名データと、前記コンテンツハッシュリスト集合を含む暗号化コンテンツ署名ファイルを生成して前記コンテンツ提供装置に送信し、
前記コンテンツ提供装置は、
暗号化コンテンツ、および前記暗号化コンテンツ署名ファイルをユーザ装置に提供し、
前記ユーザ装置は、
再生対象コンテンツの構成データから算出したハッシュ値と、暗号化コンテンツ署名ファイル内のコンテンツハッシュリスト集合に含まれる照合用ハッシュ値とのハッシュ値照合処理と、
前記暗号化コンテンツ署名ファイル内の署名データを適用した署名検証処理を実行し、
前記ハッシュ値照合処理、および前記署名検証処理のいずれも成功したことを条件として前記暗号化コンテンツの復号、再生処理を行う情報処理システム。
【０２５３】
（３）  コンテンツの再生可否判定処理に適用する暗号化コンテンツ署名ファイルの構成データを生成するデータ処理部を有し、
前記データ処理部は、
コンテンツを構成するデータ種類別のコンテンツブロック単位のハッシュ値を算出し、
前記算出ハッシュ値と、ハッシュ値算出対象のコンテンツブロックの位置情報を含む属性情報を有するハッシュリストを生成し、
前記ハッシュリストを複数集めたコンテンツハッシュリスト集合を生成し、
生成したコンテンツハッシュリスト集合と、コンテンツの暗号鍵または該暗号鍵のハッシュ値を外部の署名発行装置に送信し、
前記署名発行装置から、
前記コンテンツハッシュリスト集合と、
コンテンツの暗号鍵と前記コンテンツハッシュリスト集合とに基づく生成データに対する署名データと、
を含む暗号化コンテンツ署名ファイルを取得し、
取得した暗号化コンテンツ署名ファイルと暗号化コンテンツをユーザ装置に提供する情報処理装置。
【０２５４】
（４）前記コンテンツハッシュリスト集合に格納されたハッシュ値は、暗号化の施されていない平文コンテンツの構成データに基づいて生成されたハッシュ値である前記（１）〜（３）いずれかに記載の情報処理装置または情報処理システム。
（５）前記コンテンツハッシュリスト集合に格納されたハッシュ値は、コンテンツを構成するデータ種類別のコンテンツブロック単位のハッシュ値である前記（１）〜（４）いずれかに記載の情報処理装置または情報処理システム。
【０２５５】
（６）前記コンテンツハッシュリスト集合に格納されたハッシュ値は、コンテンツを構成する音声、画像、字幕の各データ別のコンテンツブロック単位のハッシュ値である前記（１）〜（５）いずれかに記載の情報処理装置または情報処理システム。
（７）前記コンテンツハッシュリスト集合を構成するコンテンツハッシュリストの各々は、コンテンツを構成する音声、画像、字幕の各データ別のコンテンツブロック単位のハッシュ値と、前記コンテンツブロックの位置情報を示す属性情報を含むデータである前記（１）〜（６）いずれかに記載の情報処理装置または情報処理システム。
【０２５６】
（８）前記コンテンツハッシュリスト集合を構成するコンテンツハッシュリストは、複数の異なるバリエーションデータに対応する複数のコンテンツブロックに対応する複数のハッシュ値を含むデータである前記（１）〜（７）いずれかに記載の情報処理装置または情報処理システム。
（９）前記複数の異なるバリエーションデータは、マルチアングルコンテンツにおける異なる複数のアングルから撮影された複数の画像データである前記（８）に記載の情報処理装置。
【０２５７】
（１０）前記データ処理部は、前記コンテンツ再生可否判定処理において、前記コンテンツハッシュリスト集合に含まれる照合用ハッシュ値を、再生対象コンテンツの構成データから算出したハッシュ値に置き換えるハッシュ値置換処理を実行し、前記署名検証処理を、前記ハッシュ値置換処理を実行したコンテンツハッシュリスト集合と、コンテンツの暗号鍵のハッシュ値の連結データを適用して実行する前記（１）〜（９）いずれかに記載の情報処理装置または情報処理システム。
【０２５８】
さらに、上記した装置およびシステムにおいて実行する処理の方法や、処理を実行させるプログラムも本開示の構成に含まれる。
【０２５９】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０２６０】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０２６１】
以上、説明したように、本開示の一実施例の構成によれば、コンテンツの不正利用を効果的に防止する装置、方法が実現される。
具体的には、コンテンツの再生可否判定処理に適用するための暗号化コンテンツ署名ファイルを設定する。暗号化コンテンツ署名ファイルは、音声、画像等のデータ種類別のコンテンツブロックに基づくハッシュ値を含むコンテンツハッシュリスト集合と、コンテンツの暗号鍵とコンテンツハッシュリスト集合から生成されたデータに対する署名データを含む。ユーザ装置は、再生対象コンテンツの構成データから算出したハッシュ値と、コンテンツハッシュリスト集合に含まれる照合用ハッシュ値とのハッシュ値照合処理と、署名データを適用した署名検証処理を実行し、ハッシュ値照合処理、および署名検証処理のいずれも成功したことを条件として暗号化コンテンツの復号、再生処理を行う。
【０２６２】
本開示の構成では、例えば、（１）コンテンツと、（２）コンテンツの暗号化、復号処理に適用する暗号鍵（タイトル鍵）、これらのデータに基づいて生成された署名検証が実行されることになり、この検証処理によって、コンテンツとタイトル鍵、これら２つのデータの組み合わせが正しい組み合わせであることが確認された場合にのみ、ユーザ装置においてコンテンツの再生、利用が許容される。
従って、本来のコンテンツとタイトル鍵の組み合わせと異なる不正なコンテンツとタイトル鍵との組み合わせデータである場合には、署名検証は不成立となり、このような不正コンテンツの利用は防止される。
【符号の説明】
【０２６３】
１０１  ライセンス発行装置
１０２  暗号化コンテンツ署名（ＥＣＳ）発行装置
１０３  コンテンツ提供装置
１０４  ユーザ装置
１８１  コンテンツ
１８２  タイトル鍵
１８３  コンテンツハッシュリスト集合
２００  暗号化コンテンツ署名ファイル（ＥＣＳファイル）
２０１  ＥＣＳタイプ
２０２  コンテンツハッシュリスト集合（Ｈａｓｈ  Ｌｉｓｔ  Ｃｏｌｌｅｃｔｉｏｎｓ）
２０３  ＥＣＳ発行装置署名（ＥＣＳ  Ｓｉｇｎａｔｕｒｅ）
２０４  ＥＣＳ発行装置証明書（ＥＣＳ  Ｉｓｓｕｅｒ  Ｃｅｒｔｉｆｉｃａｔｅ）
２０５  コンテンツブロックテーブル（Ｓｔｏｒｅｄ  Ｃｏｎｔｅｎｔ  Ｂｌｏｃｋ  Ｔａｂｌｅ）
２２１  分割データ
２４０  ＳＨＡ−１実行部
２６１  秘密鍵
２７０  署名データ
７０１  ＣＰＵ
７０２  ＲＯＭ
７０３  ＲＡＭ
７０４  バス
７０５  入出力インタフェース
７０６  入力部
７０７  出力部
７０８  記憶部
７０９  通信部
７１０  ドライブ
７１１  リムーバブルメディア
【図１】
0005853507.tif 000002
【図２】
0005853507.tif 000003
【図３】
0005853507.tif 000004
【図４】
0005853507.tif 000005
【図５】
0005853507.tif 000006
【図６】
0005853507.tif 000007
【図１１】
0005853507.tif 000008
【図１２】
0005853507.tif 000009
【図１３】
0005853507.tif 000010
【図１４】
0005853507.tif 000011
【図１６】
0005853507.tif 000012
【図１７】
0005853507.tif 000013
【図１８】
0005853507.tif 000014
【図１９】
0005853507.tif 000015
【図２０】
0005853507.tif 000016
【図２１】
0005853507.tif 000017
【図２２】
0005853507.tif 000018
【図２４】
0005853507.tif 000019
【図７】
0005853507.tif 000020
【図８】
0005853507.tif 000021
【図９】
0005853507.tif 000022
【図１０】
0005853507.tif 000023
【図１５】
0005853507.tif 000024
【図２３】
0005853507.tif 000025