Notice: Undefined variable: fterm_desc_sub in /mnt/www/biblio_conv.php on line 353
情報処理装置、情報記憶装置、情報処理システム、および情報処理方法、並びにプログラム
説明

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

【課題】コンテンツの不正利用を効果的に防止する装置、方法を提供する。
【解決手段】暗号化コンテンツの復号処理に際して、メディアに記録された暗号化コンテンツの復号に適用する暗号鍵の変換データである変換暗号鍵を読み出し、変換暗号鍵に対する演算処理を実行して暗号鍵の取得処理を実行する。変換暗号鍵は、暗号鍵と、暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名との演算によって生成された変換暗号鍵であり、再生装置は、メディアに記録された暗号化コンテンツ署名ファイルの構成データである電子署名を取得し、取得した電子署名を適用した演算処理を実行して暗号鍵の取得処理を実行する。電子署名は、暗号化コンテンツの構成データおよび暗号鍵を含むデータに対する電子署名として設定される。

【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、情報記憶装置、情報処理システム、および情報処理方法、並びにプログラムに関する。特に、コンテンツの不正利用を防止する情報処理装置、情報記憶装置、情報処理システム、および情報処理方法、並びにプログラムに関する。
【背景技術】
【0002】
例えば映画や音楽などのコンテンツは、DVD(Digital Versatile Disc)や、Blu−ray Disc(登録商標)、あるいはフラッシュメモリなど、様々なメディア、あるいはインターネット等のネットワーク、あるいは放送波などを介してユーザに提供される。ユーザは、例えばPC、携帯端末、BDプレーヤ等の記録再生装置、テレビなど様々な情報処理装置を利用して、コンテンツの再生を行うことができる。
【0003】
しかし、これらユーザに提供される音楽データ、画像データ等の多くのコンテンツは、その作成者あるいは販売者に著作権、頒布権等が保有されている。従って、コンテンツ提供者は、ユーザにコンテンツを提供する場合、所定のコンテンツ利用制限が行う場合が多い。
【0004】
デジタル記録装置および記録媒体によれば、例えば画像や音声を劣化させることなく記録、再生を繰り返すことが可能であり、不正コピーコンテンツのインターネットを介した配信や、いわゆる海賊版ディスクの流通など不正コピーコンテンツの利用が蔓延しているといった問題が発生している。
このようなデータの不正なコピーを防ぐため、デジタル記録装置および記録媒体に違法なコピーを防止するための様々な技術が実用化されている。
【0005】
例えば、コンテンツ暗号化処理はその1つの態様である。暗号化データを復号するために用いる鍵が、コンテンツ利用権であるライセンスを受けた再生装置のみに与えられる。ライセンスは、例えば不正コピーを行わない等の所定の動作規定に従うように設計された再生装置に対して与えられる。一方、ライセンスを受けていない再生装置は、暗号化されたデータを復号するための鍵を有していないため、暗号化データの復号を行うことができない。
【0006】
しかしながら、このようなコンテンツの暗号化を実行しても、不正なコンテンツ利用が行われてしまうという現状がある。
具体的なコンテンツの不正利用の一例について説明する。
コンテンツサーバが、ユーザ機器、例えば記録再生機器や、PC、あるいは携帯端末等のユーザ機器に対して暗号化コンテンツを配信する構成を想定する。
【0007】
コンテンツサーバが、ユーザ機器に対して暗号化コンテンツを配信する場合、コンテンツサーバは、
(a)暗号化コンテンツ
(b)暗号化コンテンツの暗号化および復号に適用する暗号鍵
これらの各データを例えばネットワークを介してユーザ機器に配信する。
【0008】
例えば同じ映画等の同一コンテンツを多数のユーザ機器に提供する場合、コンテンツサーバの実行する処理態様としては、例えば以下の2つの処理態様がある。
(A)ユーザ機器各々に対して、個別の異なる暗号鍵を適用して異なる暗号化コンテンツを生成して提供する。
(B)複数のユーザ機器に対して、同一の暗号鍵で暗号化した同じ暗号化コンテンツを生成して提供する。
【0009】
コンテンツの不正利用を防止するための安全性を考慮した場合、上記(A)の処理は有効である。
しかし、上記(A)の処理を行うためには、多数のユーザ各々に対して、個別の暗号鍵を設定して個別の暗号化コンテンツを生成する処理が必要となり、暗号鍵の生成、管理、暗号化コンテンツの生成処理等、コンテンツを配信するユーザ数に応じてサーバの処理負荷が増大するという問題が発生する。
【0010】
従って、多くの場合上記(B)の処理、すなわち、同一コンテンツについては、同一の暗号鍵で暗号化した同じ暗号化コンテンツを生成して、複数のユーザに提供する処理が行われることが多い。
例えば、あるタイトルのコンテンツに対して、1つの暗号鍵(=タイトルキー)を設定し、この1つのタイトルキーを適用して同一の暗号化コンテンツを生成して、
(a)暗号化コンテンツ、
(b)タイトルキー
これらのデータセットを、多数のユーザに配信するものである。
このような処理を行うことで。コンテンツサーバの処理負荷は削減される。
【0011】
なお、以下、コンテンツのタイトル単位で設定される暗号鍵を「タイトルキー」として説明する。
なお、タイトルキーは、そのタイトルの暗号化コンテンツの暗号化と復号処理に適用される。
【0012】
しかし、このように、多数のユーザに同一のデータセット、すなわち、
(a)暗号化コンテンツ
(b)タイトルキー
これらの同一のデータの組み合わせを配信すると、一部の「不正ユーザ」によって以下のような処理が行われる可能性がある。
【0013】
(1)「不正ユーザ」が、サーバから受信したタイトルキーを読み出して、読み出したタイトルキーを不特定多数のユーザに対して公開する。
あるいは、
(2)「不正ユーザ」が、ある暗号化コンテンツAに対応するタイトルキーAを使用して、全く別のコンテンツBを暗号化して、
(X)タイトルキーA、
(Y)タイトルキーAで暗号化した暗号化コンテンツB、
これらの組み合わせデータを不特定多数のユーザに配信する。
このような不正が実行される可能性がある。
【0014】
例えば上記(1)の処理が行われると、不正公開されたタイトルキーを取得した多数のユーザによって、そのタイトルキーを利用して暗号化されたコンテンツが不正に利用される。
また、上記(2)の処理が行われると、上記の「不正ユーザ」の生成した不正なデータセット、すなわち、
(X)タイトルキーA、
(Y)タイトルキーAで暗号化した暗号化コンテンツB、
これらを「不正ユーザ」から取得することで、多数のユーザによって、暗号化コンテンツBが不正に利用されてしまうことになる。
結果として、本来の正規なデータセット、すなわち、
暗号化コンテンツB、
暗号化コンテンツBに対応するタイトルキーB、
これらのデータセットを正規に購入するユーザが減少し、著作権者や頒布権者の利益が著しく損なわれることになる。
【0015】
さらに、具体的な不正処理例について説明する。
コンテンツサーバが、以下の(1)〜(3)の暗号化コンテンツ(C)とタイトルキー(Kt)のデータセットを保持しているものとする。
(1) (Kt11,C11)
(2) (Kt12,C12)
(3) (Kt13,C13)
ただし、
Cnnは、コンテンツファイル
Ktnnは、コンテンツの暗号化に使用したタイトルキー
である。
(Kt11,C11)は、タイトルキー(Kt11)と、タイトルキー(Kt11)よって暗号化されたコンテンツ(C11)のデータセットである。
【0016】
例えば、ある「不正ユーザUx」が、上記の3つのデータセット
(1) (Kt11,C11)
(2) (Kt12,C12)
(3) (Kt13,C13)
これらを総て購入したとする。
この購入処理自体は、「不正ユーザUx」の持つユーザ機器、例えばPCとコンテンツサーバとの所定の正当な購入手続に従って行われたものとする。
「不正ユーザUx」は、ユーザ機器であるPCの例えばハードディスク等のメディアに上記の(1)〜(3)のデータセットを記録する。
【0017】
「不正ユーザUx」は、PC等のユーザ機器PCのハードディスク等のメディアから上記の(1)〜(3)のデータセットを読み出し、一旦、すべての暗号化コンテンツをそれぞれのタイトルキーで復号し、以下のデータを得る。
タイトルキー:Kt11,Kt12,Kt13
復号コンテンツ:C11,C12,C13
なお、正当な再生機器において、正規のコンテンツ再生プログラムを利用する場合にはタイトルキーを外部に読み出すことはできないが、PC等の装置に不正プログラムをインストールするなどの方法によって、タイトルキー自体が読み出されてしまう可能性があり、タイトルキーの読み出しを完全に防止することは困難であるというのが現状である。
【0018】
さらに、「不正ユーザUx」は、
復号コンテンツ:C11〜C13を連結したデータ、
C11||C12||C13
を生成し、
この連結データをタイトルキー:Kt11で暗号化する。
すなわち、以下のデータセット、
(Kt11,C11||C12||C13)
を生成し、このデータセットを、ネットワークを介して不正に流通、例えば安い価格で販売、あるいは無償で多くのユーザに提供するといったことを行う。
【0019】
このような処理が行われると、
多くの一般ユーザは、上記の「不正ユーザUx」から、上記の不正作成データセット、すなわち、
(Kt11,C11||C12||C13)
上記の不正データセットを取得することが可能となる。
このデータセットは、
(a)タイトルキーKt11で暗号化された暗号化コンテンツ
(b)タイトルキーKt11、
これらのデータセットによって構成されており、
正規のコンテンツ提供者からユーザに提供されるデータセットコンテンツと同一のデータ構成を有している。
【0020】
そのため、ライセンスを持つ正当なコンテンツ再生プログラムを持つ正当な再生機器は、タイトルキーKt11を利用して、何ら問題なく暗号化コンテンツ[C11||C12||C13]を復号、再生してしまうことができる。
結果として、正規なコンテンツ購入が行われることなく、不正利用が蔓延し、C11〜C13等のコンテンツを正規に購入するユーザが減少により、正当権利者の利益が損なわれることになる。
【0021】
さらに具体化して説明する。例えば、あるドラマなど、1話〜12話の12タイトルからなるシリーズコンテンツにおいて、
1話=(Kt01,C01)
2話=(Kt02,C02)
3話=(Kt03,C03)
: :
12話=(Kt12,C12)
上記のように各話単位で、コンテンツの購入単位を設定としているとする。
【0022】
このような場合に、ある1人の「不正ユーザ」が1話〜12話の12タイトルのシリーズ全てを購入して、1話〜12話のコンテンツ:C01〜C12を連結して、1話対応のタイトルキー:Kt01で再暗号化したデータセット、すなわち、
(Kt01,C01||C02||C03・・・||C12)
を生成して、ネットワーク上で公開してしまう。あるいは不正に販売するといった処理を行う。
【0023】
このような場合、多数のユーザ機器において、「不正ユーザ」の生成した不正データセット、
(Kt01,C01||C02||C03・・・||C12)
を取得して再生、利用してしまうといったことが可能となる。
例えば、上記の12話の各々の1話単位の正規価格が¥2,000であるとする。
この場合、12話全話を購入すると、
12×¥2,000=¥24,000
である。
【0024】
上記の「不正ユーザ」は、上記の不正データセット、
(Kt01,C01||C02||C03・・・||C12)
を、例えば¥6,000で販売する。この場合、多くのユーザがこの安いコンテンツを購入してしまい、結果として、正規なコンテンツ販売が阻害され、本来の著作権者や販売権者の利益、権利が侵害されることになる。
【0025】
上記の例の他、ある1つのコンテンツC11に対応して設定されたタイトルキーKt11を、その他の無関係の様々なコンテンツCxxの暗号化に利用して、
(Kt11,Cxx)
コンテンツ、Cxxを様々なコンテンツとすることが可能であり、無制限にすべてのコンテンツを1つのタイトルキーで復号、再生することが可能となるという問題が発生する。
すなわち、平文コンテンツの再生を禁止した再生機器を作成したとしても、上記の不正なデータセットの利用により、正規購入コンテンツと同様の復号、再生が可能になってしまう。
【0026】
さらに「不正ユーザ」は、タイトルキーのすげかえ、再暗号化をサービスとして立ち上げることも可能となり、あたかもオーソライズされたサーバかのごとく振舞える。
【0027】
このように、コンテンツの暗号化処理という対策のみでは、コンテンツの不正利用を防止することが困難になっている。
【0028】
暗号化処理と異なるコンテンツ不正利用排除手法として、再生装置にコンテンツの改ざん検証を実行させる手法がある。この手法を適用することで、例えば不正コンテンツの流通過程において、コンテンツに何等かの変更(改ざん)が行われた場合にその改ざんコンテンツの利用を停止させることができる。
【0029】
具体的には、コンテンツ再生を実行するユーザ装置において、コンテンツの改ざんの有無検証処理を実行させて、コンテンツに改ざんがないことが確認された場合にのみコンテンツ再生を許容し、改ざんがあることが判明した場合には、コンテンツの再生を実行しない構成とする制御構成である。
【0030】
例えば、特許文献1(特開2002−358011号公報)には、再生予定のコンテンツファイルからハッシュ値を計算し、予め容易された照合用ハッシュ値、すなわち正当なコンテンツデータに基づいて予め計算済みの照合用ハッシュ値との比較を実行し、新たに算出したハッシュ値が照合用ハッシュ値と一致した場合には、コンテンツの改ざんは無いと判定して、コンテンツの再生処理に移行する制御構成を開示している。
【0031】
しかし、このようにハッシュ値をコンテンツに基づいて算出する処理を実行する場合、ハッシュ値算出の元データとしてのコンテンツデータの容量が大きい場合、計算に要する処理負荷、処理時間が多大なものとなる。昨今では動画像データの高品質化が進み、1コンテンツあたり、数GB〜数十GBのデータ量を持つ場合が多くなっている。このような大容量データに基づくコンテンツのハッシュ値算出処理を、コンテンツ再生を実行するユーザ機器に行わせることは、ユーザ機器に求められるデータ処理能力が過大になるという問題、さらに、コンテンツの検証に要する時間が長くなり、コンテンツ再生処理が効率的に行われないという問題が発生する。
【0032】
また、特許文献2(特許第4576936号)には、情報記録媒体の格納コンテンツの細分化データとして設定されたハッシュユニット各々についてのハッシュ値をコンテンツハッシュテーブルに記録してコンテンツとともに情報記録媒体に格納した構成を開示している。
【0033】
この開示構成によれば、コンテンツ再生を実行する情報処理装置は、ランダムに選択した1つ以上のハッシュユニットに基づいてハッシュ値照合処理を実行する。本構成によりコンテンツのデータ量にかかわらず、少ないデータ量のハッシュユニットに基づくハッシュ値の算出、照合処理が可能となり、コンテンツ再生を実行するユーザ機器における効率的なコンテンツ検証が可能となる。
【0034】
しかし、特許文献2に記載の構成は、情報記録媒体の格納コンテンツに対する処理を前提としている。この開示構成は、例えば情報記録媒体の製造時にコンテンツとともにハッシュ値も併せて記録できる場合には利用可能であるが、例えばサーバからのダウンロードコンテンツに対して適用することは困難であるという問題がある。
【0035】
また、上記の特許文献1、特許文献2は、いずれもコンテンツの改ざん検証に重点をおいており、改ざんのない不正コピーコンテンツの流通に対しては、何ら制御することができないという問題がある。
このように、従来技術としてのコンテンツの暗号化や、改ざん検証処理は、不正コピーコンテンツの流通や、コンテンツ暗号鍵の漏えいに対して、十分な防止効果を奏していないというのが現状である。
【先行技術文献】
【特許文献】
【0036】
【特許文献1】特開2002−358011号公報
【特許文献2】特許第4576936号
【発明の概要】
【発明が解決しようとする課題】
【0037】
本開示は、例えば上記問題点に鑑みてなされたものであり、コンテンツの不正利用の効果的な防止を実現する情報処理装置、情報記憶装置、情報処理システム、および情報処理方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【0038】
本開示の第1の側面は、
暗号化コンテンツおよび暗号化コンテンツの復号に適用する暗号鍵を格納する記憶部を有し、
前記記憶部は、前記暗号鍵を前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名との演算によって生成された変換暗号鍵を格納し、
前記電子署名は、前記暗号化コンテンツの構成データおよび前記暗号鍵を含むデータに対する電子署名であり、
前記記憶部から前記暗号化コンテンツを読み出して復号処理を実行する再生装置に、前記変換暗号鍵に対する電子署名の適用演算による暗号鍵取得を行わせることを可能とした情報記憶装置にある。
【0039】
さらに、本開示の情報記憶装置の一実施態様において、前記変換暗号鍵は、前記暗号化コンテンツに対応して設定される利用制御情報と、前記電子署名との連結データに対するハッシュ値と、前記暗号鍵との排他的論理和演算結果である。
【0040】
さらに、本開示の情報記憶装置の一実施態様において、前記記憶部は、アクセス制限の設定された保護領域を有し、前記変換暗号鍵を、前記保護領域に格納した構成である。
【0041】
さらに、本開示の情報記憶装置の一実施態様において、前記情報記憶装置は、前記保護領域に対するアクセス要求装置から受領した証明書に基づいて、前記保護領域に対するアクセス可否を判定するデータ処理部を有する。
【0042】
さらに、本開示の情報記憶装置の一実施態様において、前記記憶部は、アクセス制限の設定された保護領域と、アクセス制限のない汎用領域を有し、前記変換暗号鍵を、前記保護領域に格納し、前記暗号化コンテンツと、前記暗号化コンテンツ署名ファイルを、前記汎用領域に格納した構成である。
【0043】
さらに、本開示の情報記憶装置の一実施態様において、前記電子署名は、前記暗号化コンテンツの構成データおよび前記暗号鍵、さらに、前記暗号化コンテンツ署名ファイルの構成データを含むデータに対する電子署名である。
【0044】
さらに、本開示の情報記憶装置の一実施態様において、前記電子署名は、前記暗号化コンテンツ署名ファイルの構成データである前記暗号化コンテンツ署名ファイルの発行日時情報を含むデータに対する電子署名である。
【0045】
さらに、本開示の第2の側面は、
メディアに記録された暗号化コンテンツの復号および再生処理を実行するデータ処理部を有し、
前記データ処理部は、
前記暗号化コンテンツの復号処理に際して、前記メディアに記録された前記暗号化コンテンツの復号に適用する暗号鍵の変換データである変換暗号鍵を読み出し、該変換暗号鍵に対する演算処理を実行して暗号鍵の取得処理を実行し、
前記変換暗号鍵は、
前記暗号鍵を前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名との演算によって生成された変換暗号鍵であり、
前記データ処理部は、
前記メディアに記録された暗号化コンテンツ署名ファイルの構成データである電子署名を取得し、取得した電子署名を適用した演算処理を実行して暗号鍵の取得処理を実行する情報処理装置にある。
【0046】
さらに、本開示の情報処理装置の一実施態様において、前記電子署名は、前記暗号化コンテンツの構成データおよび前記暗号鍵を含むデータに対する電子署名である。
【0047】
さらに、本開示の情報処理装置の一実施態様において、前記変換暗号鍵は、前記暗号化コンテンツに対応して設定される利用制御情報と、前記電子署名との連結データに対するハッシュ値と、前記暗号鍵との排他的論理和演算結果であり、前記データ処理部は、前記メディアに記録された暗号化コンテンツ署名ファイルの構成データである電子署名と、前記メディアに記録された利用制御情報を取得し、取得したデータを適用した演算処理を実行して暗号鍵の取得処理を実行する。
【0048】
さらに、本開示の情報処理装置の一実施態様において、前記データ処理部は、前記メディアに記録された暗号化コンテンツ署名ファイルの構成データである電子署名に対する署名検証処理を実行し、該署名検証処理に成功し、前記暗号化コンテンツ署名ファイルの正当性を確認したことを条件として、前記暗号鍵の取得処理を行う。
【0049】
さらに、本開示の第3の側面は、
メディアに記録する暗号化コンテンツと、該暗号化コンテンツの復号に適用する暗号鍵の変換データである変換暗号鍵を出力するデータ処理部を有し、
前記データ処理部は、
前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名であり、前記暗号化コンテンツの構成データおよび前記暗号鍵を含むデータに対する電子署名と、前記暗号鍵の演算処理により、前記変換暗号鍵を生成する情報処理装置にある。
【0050】
さらに、本開示の情報処理装置の一実施態様において、前記データ処理部は、前記暗号化コンテンツに対応して設定される利用制御情報と、前記電子署名との連結データに対するハッシュ値と、前記暗号鍵との排他的論理和演算を実行して前記変換暗号鍵を生成する。
【0051】
さらに、本開示の第4の側面は、
情報処理装置において実行する情報処理方法であり、
データ処理部が、メディアに記録された暗号化コンテンツの復号処理に際して、復号に適用する暗号鍵の変換データである変換暗号鍵を読み出し、該変換暗号鍵に対する演算処理を実行して暗号鍵の取得処理を行うデータ処理ステップを実行し、
前記変換暗号鍵は、
前記暗号鍵を前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名との演算によって生成された変換暗号鍵であり、
前記データ処理部は、前記データ処理部ステップにおいて、
前記メディアに記録された暗号化コンテンツ署名ファイルから前記電子署名を取得し、取得した電子署名を適用した演算処理を実行して暗号鍵の取得処理を実行する情報処理方法にある。
【0052】
さらに、本開示の第5の側面は、
情報処理装置において実行する情報処理方法であり、
データ処理部が、メディアに記録する暗号化コンテンツと、該暗号化コンテンツの復号に適用する暗号鍵の変換データである変換暗号鍵を出力するデータ処理ステップを実行し、
前記データ処理ステップにおいて、
前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名であり、前記暗号化コンテンツの構成データおよび前記暗号鍵を含むデータに対する電子署名と、前記暗号鍵の演算処理により、前記変換暗号鍵を生成する情報処理方法にある。
【0053】
さらに、本開示の第6の側面は、
情報処理装置において情報処理を実行させるプログラムであり、
データ処理部に、メディアに記録された暗号化コンテンツの復号処理に際して、復号に適用する暗号鍵の変換データである変換暗号鍵の読み出し処理と、該変換暗号鍵に対する演算処理による暗号鍵の取得処理を行うデータ処理ステップを実行させ、
前記変換暗号鍵は、
前記暗号鍵を前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名との演算によって生成された変換暗号鍵であり、
前記データ処理部ステップにおいて、
前記メディアに記録された暗号化コンテンツ署名ファイルから前記電子署名の取得処理と、取得した電子署名を適用した演算処理による暗号鍵の取得処理を実行させるプログラムにある。
【0054】
さらに、本開示の第7の側面は、
情報処理装置において情報処理を実行させるプログラムであり、
データ処理部に、メディアに記録する暗号化コンテンツと、該暗号化コンテンツの復号に適用する暗号鍵の変換データである変換暗号鍵を出力するデータ処理ステップを実行させ、
前記データ処理ステップにおいて、
前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名であり、前記暗号化コンテンツの構成データおよび前記暗号鍵を含むデータに対する電子署名と、前記暗号鍵の演算処理により、前記変換暗号鍵を生成させるプログラムにある。
【0055】
なお、本開示のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
【0056】
本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【0057】
本開示の一実施例の構成によれば、コンテンツの不正利用を効果的に防止する装置、方法が実現される。
具体的には、暗号化コンテンツの復号処理に際して、メディアに記録された暗号化コンテンツの復号に適用する暗号鍵の変換データである変換暗号鍵を読み出し、変換暗号鍵に対する演算処理を実行して暗号鍵の取得処理を実行する。変換暗号鍵は、暗号鍵と、暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名との演算によって生成された変換暗号鍵であり、再生装置は、メディアに記録された暗号化コンテンツ署名ファイルの構成データである電子署名を取得し、取得した電子署名を適用した演算処理を実行して暗号鍵の取得処理を実行する。電子署名は、暗号化コンテンツの構成データおよび暗号鍵を含むデータに対する電子署名として設定される。
この暗号化コンテンツ署名ファイルの署名データを変換暗号鍵の構成データとすることで、鍵の掛け替え処理などによるコンテンツ不正利用を防止することが可能となる。
【図面の簡単な説明】
【0058】
【図1】コンテンツ提供処理および利用処理の概要について説明する図である。
【図2】メモリカードに記録されたコンテンツの利用形態について説明する図である。
【図3】メモリカードの記憶領域の具体的構成例について説明する図である。
【図4】ホスト証明書(Host Certificate)について説明する図である。
【図5】サーバ証明書(Server Certificate)について説明する図である。
【図6】メモリカードの記憶データの具体的構成例とアクセス制御処理の一例について説明する図である。
【図7】コンテンツの不正利用を防止するための本開示の情報処理システムの全体構成について説明する図である。
【図8】コンテンツの不正利用を防止するために適用するデータの各装置間の流れについて説明する図である。
【図9】暗号化コンテンツ署名ファイル(ECSファイル)の構成例について説明する図である。
【図10】暗号化コンテンツ署名ファイル(ECSファイル)の構成例について説明する図である。
【図11】暗号化コンテンツ署名ファイル(ECSファイル)に含まれるECS発行装置証明書の構成例について説明する図である。
【図12】ECS発行装置証明書リボケーションリストの構成例について説明する図である。
【図13】暗号化コンテンツ署名ファイル(ECSファイル)の生成処理とデータ構成の概要について説明する図である。
【図14】暗号化コンテンツ署名ファイル(ECSファイル)の生成とコンテンツ提供、利用処理シーケンスについて説明するシーケンス図である。
【図15】暗号化コンテンツ署名ファイル(ECSファイル)の生成とコンテンツ提供、利用処理シーケンスについて説明するシーケンス図である。
【図16】暗号化コンテンツ署名ファイル(ECSファイル)に記録された日時データを適用したコンテンツ提供可否判定処理のシーケンスについて説明するフローチャートを示す図である。
【図17】暗号化コンテンツ署名ファイル(ECSファイル)に記録された日時データを適用したコンテンツ提供可否判定処理のシーケンスについて説明するフローチャートを示す図である。
【図18】暗号化コンテンツ署名ファイル(ECSファイル)に記録された日時データを適用したコンテンツ再生可否判定処理のシーケンスについて説明するフローチャートを示す図である。
【図19】メモリカードに対するサーバのデータ記録処理の一例について説明する図である。
【図20】メモリカードの記録データに対するホストの読み取り処理の一例について説明する図である。
【図21】メモリカードに対する記録データの構成例について説明する図である。
【図22】メモリカードに対する記録データの構成例について説明する図である。
【図23】メモリカードの汎用領域に記録される利用制御情報の記録データの構成例について説明する図である。
【図24】すげ替え処理による不正なコンテンツ利用例について説明する図である。
【図25】すげ替え処理による不正なコンテンツの記録処理例について説明するフローチャートを示す図である。
【図26】すげ替え処理によって記録した不正コンテンツの再生が実行できないことを説明するフローチャートを示す図である。
【図27】すげ替え処理による不正なコンテンツ利用例について説明する図である。
【図28】すげ替え処理による不正なコンテンツの記録処理例について説明するフローチャートを示す図である。
【図29】すげ替え処理によって記録した不正コンテンツの再生が実行できないことを説明するフローチャートを示す図である。
【図30】暗号化コンテンツ署名ファイル(ECSファイル)に記録されたブロック識別子と利用制御情報ファイルに記録されたブロック識別子について説明する図である。
【図31】暗号化コンテンツ署名ファイル(ECSファイル)に記録されたブロック識別子と利用制御情報ファイルに記録されたブロック識別子を適用したコンテンツ提供可否判定シーケンスについて説明するフローチャートを示す図である。
【図32】ECS発行装置証明書からのブロック識別子読み出し処理シーケンスについて説明するフローチャートを示す図である。
【図33】暗号化コンテンツ署名ファイル(ECSファイル)に記録されたブロック識別子と利用制御情報ファイルに記録されたブロック識別子を適用したコンテンツ再生可否判定シーケンスについて説明するフローチャートを示す図である。
【図34】情報処理装置のハードウェア構成例について説明する図である。
【図35】メモリカードとしての情報処理装置のハードウェア構成例について説明する図である。
【発明を実施するための形態】
【0059】
以下、図面を参照しながら本開示の情報処理装置、情報記憶装置、情報処理システム、および情報処理方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行う。
1.コンテンツ提供処理および利用処理の概要について
2.メモリカードの構成例と利用例について
3.保護領域に対するアクセス許容情報を持つ証明書について
4.各装置の証明書を適用したメモリカードに対するアクセス処理例について
5.暗号化コンテンツ署名(ECS)発行装置を利用したコンテンツ提供システムについて
6.ECSファイルの構成例について
7.ECS発行装置証明書リボケーションリストの構成について
8.暗号化コンテンツ署名ファイル(ECSファイル)の生成処理について
9.ECSファイル、ECS発行装置証明書の日時情報を適用した処理について
10.暗号鍵とECS発行装置署名との関連づけ構成について
11.暗号化コンテンツ署名(ECS)ファイルに記録したブロック識別子の適用処理について
12.各装置のハードウェア構成例について
13.本開示の構成のまとめ
【0060】
[1.コンテンツ提供処理および利用処理の概要について]
以下、図面を参照しながら本開示の情報処理装置、および情報処理方法、並びにプログラムの詳細について説明する。
【0061】
まず、図1以下を参照して、コンテンツ提供処理および利用処理の概要について説明する。
図1には、左から、
(a)コンテンツ提供装置
(b)コンテンツ記録再生装置(ホスト)
(c)コンテンツ記録メディア
これらの例を示している。
【0062】
(c)コンテンツ記録メディアはユーザがコンテンツを記録して、コンテンツの再生処理に利用するメディアである。ここでは例えばフラッシュメモリ等の情報記憶装置であるメモリカード31を示している。
なお、以下の実施例では、コンテンツ提供装置が提供するコンテンツは暗号化コンテンツである例を代表例として説明するが、本開示の構成は、提供コンテンツが暗号化コンテンツである場合に限らず、暗号化されていない平文コンテンツである場合にも適用可能である。
【0063】
ユーザは、例えば音楽や映画などの様々なコンテンツをメモリカード31に記録して利用する。これらのコンテンツには例えば著作権の管理対象となるコンテンツ等、利用制御対象となるコンテンツが含まれる。
【0064】
利用制御対象となるコンテンツとは、例えば無秩序なコピーやコピーデータ配布等が禁止されたコンテンツや、利用期間が制限されたコンテンツ等である。なお、メモリカード31に対して、利用制御コンテンツを記録する場合、そのコンテンツに対応する利用制御情報(Usage Rule)が合わせて記録される。
利用制御情報(Usage Rule)には、例えば許容されるコンテンツ利用期間や許容されるコピー回数などのコンテンツ利用に関する情報が記録される。
コンテンツ提供装置は、コンテンツに併せてコンテンツ対応の利用御情報を提供する。
【0065】
(a)コンテンツ提供装置は、音楽や映画等のコンテンツの提供元である。図1には、一例として、放送局11と、コンテンツサーバ12をコンテンツ提供装置として示している。
放送局11は、例えばテレビ局であり、様々な放送コンテンツを地上波や衛星を介した衛星波に載せてユーザ装置[(b)コンテンツ記録再生装置(ホスト)]に提供する。
コンテンツサーバ12は、音楽や映画等のコンテンツをインターネット等のネットワークを介して提供するサーバである。
【0066】
ユーザは、例えば(c)コンテンツ記録メディアであるメモリカード31を(b)コンテンツ記録再生装置(ホスト)に装着し、(b)コンテンツ記録再生装置(ホスト)自体の受信部、あるいは、コンテンツ記録再生装置(ホスト)に接続された受信装置を介して、放送局11やコンテンツサーバ12の提供するコンテンツを受信してメモリカード31に記録することができる。
【0067】
(b)コンテンツ記録装置(ホスト)は、(c)コンテンツ記録メディアであるメモリカード31を装着して、(a)コンテンツ提供装置である放送局11やコンテンツサーバ12から受信したコンテンツをメモリカード31に記録する。
【0068】
(b)コンテンツ記録再生装置(ホスト)としては、例えばDVDプレーヤなど、ハードディスクやDVD,BD等のディスクを備えた記録再生専用器(CE機器:Consumer Electronics機器)21がある。さらに、PC22や、スマートフォン、携帯電話、携帯プレーヤ、タブレット端末などの携帯端末23などがある。これらはすべて(c)コンテンツ記録メディアであるメモリカード31を装着可能な装置である。
【0069】
ユーザは、記録再生専用器21、PC22、携帯端末23などを利用して、放送局11やコンテンツサーバ12から音楽や映画等のコンテンツを受信し、メモリカード31に記録する。
【0070】
メモリカード31に記録されたコンテンツの利用形態について図2を参照して説明する。
情報記憶装置であるメモリカード31は、例えばPC等のコンテンツ再生器に対して着脱可能な記録メディアであり、コンテンツ記録を実行した機器から自由に取り外して、その他のユーザ機器に装着することが可能である。
【0071】
すなわち、図2に示すように、
(1)記録処理
(2)再生処理
これらの処理を実行する。
なお、記録または再生の一方のみを実行する機器もある。
また、記録と再生各処理の実行機器は同一であることは必須ではなく、ユーザは自由に記録機器と再生機器を選択して利用することができる。
【0072】
なお、多くの場合、メモリカード31に記録された利用制御コンテンツは暗号化コンテンツとして記録されており、記録再生専用器21やPC22、携帯端末23等のコンテンツ再生装置は、所定のシーケンスに従った復号処理を実行した後、コンテンツ再生を行う。
また、コンテンツに対応して設定される利用制御情報(Usage Rule)に記録された利用許容態様で再生処理などを行う。
(b)コンテンツ記録再生装置(ホスト)には、利用制御情報(Usage Rule)に従ったコンテンツ利用やコンテンツの復号処理を実行するためのプログラム(ホストアプリケーション)が格納されており、コンテンツ再生はこのプログラム(ホストアプリケーション)に従って実行する。
【0073】
[2.メモリカードの構成例と利用例について]
次に、コンテンツの記録メディアとして利用されるフラッシュメモリ等のメモリカードの構成例と利用例について説明する。
メモリカード31の記憶領域の具体的構成例を図3に示す。
メモリカード31の記憶領域は、図3に示すように、
(a)保護領域(Protected Area)51、
(b)汎用領域(General Purpose Area)52、
これら2つの領域によって構成される。
【0074】
(b)汎用領域(General Purpose Area)52はユーザの利用する記録再生装置によって、自由にアクセス可能な領域であり、コンテンツやコンテンツ対応の利用制御情報(Usage Rule)、その他の一般のコンテンツ管理データ等が記録される。
この汎用領域(General Purpose Area)52は、例えばサーバやユーザの記録再生装置によって自由にデータの書き込みや読み取りを行うことか可能な領域である。
【0075】
一方、(a)保護領域(Protected Area)51は、自由なアクセスが許容されない領域である。
保護領域(Protected Area)51は複数の区分領域としてのブロック(#0,#1,#2・・・)に分割され、各ブロック単位でアクセス権が設定される。
【0076】
例えば、ユーザの利用する記録再生装置、あるいはネットワークを介して接続されるサーバ等によってデータの書き込みあるいは読み取りを行おうとする場合、メモリカード31のデータ処理部が、メモリカード31に予め格納されたプログラムに従って、各装置に応じてブロック単位で読み取り(Read)または書き込み(Write)の可否を決定する。
【0077】
メモリカード31は、予め格納されたプログラムを実行するためのデータ処理部や認証処理を実行する認証処理部を備えており、メモリカード31は、まず、メモリカード31に対してデータの書き込みまたは読み取りを実行しようとする装置との認証処理を行う。
【0078】
この認証処理の段階で、相手装置、すなわちアクセス要求装置から公開鍵証明書等の装置証明書を受信する。
たとえばアクセス要求装置がサーバである場合は、サーバの保有するサーバ証明書(Server Certificate)を受信し、その証明書に記載された情報を用いて、保護領域(Protected Area)51の各ブロック(区分領域)単位でアクセスが許容されるか否かを判定する。
【0079】
また、アクセス要求装置がホスト装置、例えばコンテンツ記録再生を実行するユーザ機器としての記録再生装置(ホスト)である場合は、記録再生装置(ホスト)の保有するホスト証明書(Host Certificate)を受信し、その証明書に記載された情報を用いて、保護領域(Protected Area)51の各ブロック(区分領域)のアクセスが許容されるか否かを判定する。
【0080】
このアクセス権判定処理は、図3に示す保護領域(Protected Area)51内のブロック(図に示す領域#0,#1,#2・・・)単位で行われる。メモリカード31は、ブロック単位で許可された処理(データの読み取り/書き込み等の処理)のみをサーバやホストに実行させる。
【0081】
メディアに対する読み取り/書き込み制限情報(PAD Read/PADWrite)は、例えば、アクセスしようとする装置、例えばコンテンツサーバ、あるいは記録再生装置(ホスト)単位で設定される。これらの情報は各装置対応のサーバ証明書(Server Certificate)や、ホスト証明書(Host Certificate)に記録される。
なお、以下において「Certificate」は、簡略化して「Cert」として記載する。
【0082】
このように、メモリカード31は、メモリカード31に予め格納された規定のプログラムに従って、サーバ証明書(Server Cert)や、ホスト証明書(Host Cert)の記録データを検証して、アクセス許可のなされた領域についてのみアクセスを許容する処理を行う。
【0083】
[3.保護領域に対するアクセス許容情報を持つ証明書について]
次に、サーバやユーザ装置であるホスト機器(=記録再生装置)が、上述したメモリカード31の保護領域(Protected Area)51に対するアクセスを行う場合に、メモリカードに提示が必要となる証明書の構成例について図4、図5を参照して説明する。
【0084】
上述したように、メモリカード31は、メモリカード31に対してデータの書き込みまたは読み取りを実行しようとする装置との認証処理を行う。この認証処理の段階で、相手装置、すなわちアクセス要求装置から公開鍵証明書等の装置証明書(たとえばサーバ証明書(Server Cert)やホスト証明書(Host Cert)を受信し、その証明書に記載された情報を用いて、保護領域(Protected Area)51の各区分領域のアクセスを許容するか否かを判定する。
【0085】
この認証処理に利用される装置証明書の一例として、図1に示す記録再生専用器21、PC22、携帯端末23等のユーザ機器(ホスト機器)に格納されるホスト証明書(Host Cert)の構成例について図4を参照して説明する。
【0086】
ホスト証明書(Host Cert)は、例えば、公開鍵証明書発行主体である認証局によって各ユーザ機器(ホスト機器)に提供される。例えば、ホスト証明書(Host Cert)は、認証局がコンテンツ利用処理を認めたユーザ機器(ホスト機器)に対して発行するユーザ機器の証明書であり、公開鍵等を格納した証明書である。ホスト証明書(Host Cert)は、認証局秘密鍵によって署名が設定され、改ざんの防止されたデータとして構成される。
【0087】
なお、装置証明書は、例えば、装置製造時に装置の種類などの装置確認に基づいて予め装置内のメモリに格納することが可能である。ユーザの購入後、取得する場合は、装置と認証局あるいはその他の管理局との所定のシーケンスに従った装置種類や利用可能なコンテンツの種類等の確認処理を行って、各装置に対して発行し装置内のメモリに格納する構成としてもよい。
【0088】
なお、メモリカード31の保護領域に対するアクセスを行うサーバは、ホスト証明書と同様の構成を持つサーバ公開鍵とメモリカードのアクセス許容情報が記録されたサーバ証明書(Sever Cert)を保持する。
【0089】
図4に認証局が各ホスト機器(ユーザ機器)に提供するホスト証明書(Host Cert)の具体例を示す。
ホスト証明書(Host Cert)には、図4に示すように、以下のデータが含まれる。
(1)タイプ情報
(2)ホストID(ユーザ機器ID)
(3)ホスト公開鍵(Host Public Key)
(4)保護領域アクセス権情報(メディアの保護領域に対する読み取り/書き込み制限情報(PAD Read/PAD Write))
(5)その他の情報
(6)署名(Signaure)
【0090】
以下、上記(1)〜(6)の各データについて説明する。
(1)タイプ情報
タイプ情報は、証明書のタイプやユーザ機器のタイプを示す情報であり、例えば本証明書がホスト証明書であることを示すデータや、機器の種類、例えばPCであるとか、音楽再生プレーヤであるといった機器の種類などを示す情報が記録される。
【0091】
(2)ホストID
ホストIDは機器識別情報としての機器IDを記録する領域である。
(3)ホスト公開鍵(Host Public Key)
ホスト公開鍵(Host Public Key)はホスト機器の公開鍵である。ホスト機器(ユーザ機器)に提供される秘密鍵とともに公開鍵暗号方式に従った鍵ペアを構成する。
【0092】
(4)保護領域アクセス権情報(メディアの保護領域に対する読み取り/書き込み制限情報(PAD Read/PAD Write))
保護領域アクセス権情報は、コンテンツを記録するメディア、例えば図3に示すメモリカード31の記憶領域中に設定される保護領域(PDA:Protected Area)51内のデータ読み取り(Read)や、書き込み(Write)が許容されたブロック(区分領域)単位の情報が記録される。
アクセス権は、保護領域内のブロック(区分領域)単位のアクセス権として記録される。
【0093】
(5)その他の情報、(6)署名(Signature)
ホスト証明書には、上記(1)〜(4)の他、様々な情報が記録され、(1)〜(5)の情報に対する署名データが記録される。
署名は、認証局の秘密鍵によって実行される。ホスト証明書に記録された情報、例えばホスト公開鍵を取り出して利用する場合には、まず認証局の公開鍵を適用した署名検証処理を実行して、ホスト証明書の改ざんがないことを確認し、その確認がなされたことを条件として、ホスト公開鍵等の証明書格納データの利用が行われることになる。
【0094】
図4は、メモリカードの保護領域に対するユーザ機器(ホスト機器)のアクセス許容情報を記録したホスト証明書であるが、例えばメモリカードにコンテンツを提供するコンテンツ提供サーバなど、保護領域に対するアクセスが必要となるサーバに対しては、図4に示すホスト証明書と同様、メモリカードの保護領域に対するアクセス許容情報を記録した証明書[サーバ証明書(例えばサーバ公開鍵を格納した公開鍵証明書)]が提供される。
【0095】
サーバに提供されるサーバ証明書(Server Cert)の構成例について図5を参照して説明する。なお、以下ではサーバは、図1に示すコンテンツ提供装置のすべて、すなわち放送局11やコンテンツサーバ12等、ユーザ装置に対してコンテンツを提供する装置を含むものとして説明する。
【0096】
サーバ証明書(Server Cert)は、例えば、公開鍵証明書発行主体である認証局によって例えば、コンテンツ提供を行うコンテンツサーバ等の装置に提供される。例えば、サーバ証明書(Server Cert)は、認証局がコンテンツ提供処理を認めたサーバに対して発行するサーバの証明書であり、サーバ公開鍵等を格納した証明書である。サーバ証明書(Server Cert)は、認証局秘密鍵によって署名が設定され、改ざんの防止されたデータとして構成される。
【0097】
図5に認証局が各コンテンツサーバに提供するサーバ証明書(Server Cert)の具体例を示す。
サーバ証明書(Server Certificate)には、図5に示すように、図4を参照して説明したホスト証明書と同様、以下のデータが含まれる。
(1)タイプ情報
(2)サーバID
(3)サーバ公開鍵(Server Public Key)
(4)メディアに対する読み取り/書き込み制限情報(PAD Read/PADWrite)
(5)その他の情報
(6)署名(Signaure)
【0098】
これらの各情報は、図4を参照して説明した情報と同様の情報であり、詳細な説明は省略する。
なお、「(4)メディアに対する読み取り/書き込み制限情報(PAD Read/PADWrite)」
は、各サーバ単位で、メモリカード31の保護領域51のブロック(区分領域)単位のアクセス権(データ読み取り(Read)/書き込み(Write)許容情報)が記録される。
【0099】
なお、サーバ証明書に記録された情報、例えばサーバ公開鍵を取り出して利用する場合には、まず認証局の公開鍵を適用した署名検証処理を実行して、サーバ証明書の改ざんがないことを確認し、その確認がなされたことを条件として、サーバ公開鍵等の証明書格納データの利用が行われることになる。
【0100】
[4.各装置の証明書を適用したメモリカードに対するアクセス処理例について]
図4、図5を参照して説明したように、サーバやホスト機器(記録再生器等のユーザ機器)がメモリカード31の保護領域(Protected Area)51のブロックに対してアクセスを行う場合には、図4や図5に示すような証明書をメモリカードに提示することが必要となる。
メモリカードは、図4や図5に示す証明書を確認して、図3に示すメモリカード31の保護領域(Protected Area)51の各ブロック単位のアクセス可否を判定する。
【0101】
ホスト機器は、例えば図4を参照して説明したホスト証明書(Host Certificate)を保持し、コンテンツの提供等を行うサーバは、図5を参照して説明したサーバ証明書(Server Certificate)を保持している。
【0102】
これらの各装置が、メモリカードの保護領域(Protected Area)に対するアクセスを行う場合には、各装置が保有している証明書をメモリカードに提供してメモリカード側の検証に基づくアクセス可否の判定を受けることが必要となる。
【0103】
図6を参照して、メモリカードに対するアクセス要求装置がサーバである場合と、記録再生装置等のホスト機器である場合のアクセス制限の設定例について説明する。
【0104】
図6には、左から、メモリカードに対するアクセス要求装置であるサーバA61、サーバB62、ホスト機器63、メモリカード70を示している。
サーバA61、サーバB62は、例えば、メモリカード70に対する記録コンテンツである暗号化コンテンツ(Con1,Con2,Con3・・・)を提供する。
これらのサーバは、さらに、暗号化コンテンツの復号用に鍵であるタイトルキー(Kt1,Kt2・・・)、コンテンツに対応する利用制御情報(Usage Rule:UR1,UR2・・・)を提供する。
【0105】
ホスト機器63は、メモリカード70に格納されたコンテンツの再生処理を行う装置である。
ホスト機器63は、メモリカード70の汎用領域(General Purpose Area)90に記録された暗号化コンテンツ(Con1,Con2,Con3・・・)と利用制御情報(Usage Rule:UR1,UR2・・・)を読み取る。さらに、保護領域(Protected Area)80のブロック(区分領域)81,82からコンテンツ復号処理に適用するタイトルキー(Kt1,Kt2・・・)を読み取って、タイトルキーによる復号処理を実行して利用制御情報(Usage Rule)に従ったコンテンツ利用を行う。
【0106】
メモリカード70は、保護領域(Protected Area)80と、汎用領域(General Purpose Area)90を有し、暗号化コンテンツ、利用制御情報(Usage Rule)等は汎用領域(General Purpose Area)90に記録される。
コンテンツ再生に際して必要とする鍵であるタイトルキーは保護領域(Protected Area)80に記録される。
【0107】
先に図3を参照して説明したように、保護領域(Protected Area)80は、複数のブロック(区分領域)に区分されている。
図6に示す例では、
ブロック#0(Protected Area#0)81、
ブロック#1(Protected Area#1)82、
これらの2つのブロックのみを示している。
保護領域(Protected Area)80には、この他にも多数のブロックが設定される。
【0108】
ブロックの設定態様としては様々な設定が可能である。
図6に示す例では、
ブロック#0(Protected Area#0)81は、サーバA61専用のブロック、すなわち、サーバA61の提供コンテンツの復号用のタイトルキーを格納する領域としている。
ブロック#1(Protected Area#1)82は、サーバB62専用のブロック、すなわち、サーバB62の提供コンテンツの復号用のタイトルキーを格納する領域としている。
【0109】
このような設定において、例えばコンテンツの提供サーバA61は、提供コンテンツの復号に必要となるタイトルキーを、ブロック#0(Protected Area#0)81に記録する。
この場合、サーバA61のサーバ証明書(Server Certificate)に記録される書き込み許容領域情報(PAD Write)は、ブロック#0(Protected Area#0)に対する書き込み(Write)許可が設定された証明書として構成される。
なお、図に示す例では、書き込み(Write)の許容されたブロックに対しては、読み取り(Read)についても許容された設定として示している。
【0110】
またサーバB62は、提供コンテンツの復号に必要となるタイトルキーを、ブロック#1(Protected Area#1)82に記録する。
この場合、サーバB62のサーバ証明書(Server Certificate)に記録される書き込み許容領域情報(PAD Write)は、ブロック#1(Protected Area#1)82に対する書き込み(Write)許可が設定された証明書として構成される。
【0111】
また、ブロック#0,#1に記録されたタイトルキーを読み取ってコンテンツ再生を実行する再生装置であるホスト機器63の保持するホスト証明書(Host Certificate)は、ブロック#0,#1に対する読み取り(Read)許可が設定された証明書として構成される。
【0112】
この例では、ホスト証明書(Host Certificate)には、ブロック#0,#1に対する書き込み(Write)許可は設定されない。
ただし、コンテンツ削除時に、削除コンテンツに対応するタイトルキーの削除が可能な設定とするため、削除処理については許可する設定としてもよい。
また、その他の処理において、ホスト機器63が保護領域に対するデータ書き込みが必要となる場合は、ホスト証明書(Host Certificate)に書き込み(Write)許可を設定してもよい。
【0113】
メモリカード70のデータ処理部は、コンテンツを提供するサーバや、コンテンツを利用するホストなどのアクセス要求装置から保護領域(Protected Area)80に対するアクセス要求を受信すると、各装置の装置証明書を参照して、各ブロック単位のアクセス許容情報を確認して各ブロックに対するアクセスを許可するか否かを判定する。
【0114】
メモリカード70は、アクセス要求装置からのデータ書き込みや読み取り要求の入力に応じて、書き込みあるいは読み取り要求データの種類を判別し、データ書き込み先あるいは読み取り先としてのブロック(#0,#1,#2・・・)を選別する。
【0115】
アクセス制御情報は、図4、図5を参照して説明したように、各アクセス要求装置の証明書(サーバ証明書、ホスト証明書など)に記録され、メモリカードは、アクセス要求装置から受領した証明書について、まず署名検証を行い、証明書の正当性を確認した後、証明書に記載されたアクセス制御情報、すなわち、以下の情報を読み取る。
読み取り許容領域情報(PAD Read)、
書き込み許容領域情報(PAD Write)、
これらの情報に基づいて、アクセス要求装置に対して認められた処理のみを許容して実行する。
【0116】
[5.暗号化コンテンツ署名(ECS)発行装置を利用したコンテンツ提供システムについて]
先に図1を参照して説明したように、ユーザ装置に提供されるコンテンツはコンテンツ提供装置から提供される。しかし、このコンテンツ提供装置自身が、不正なコピーコンテンツを配信する場合もある。以下では、このようなサーバの不正処理など、ユーザ装置以外の構成による不正についても防止可能とした構成について説明する。
【0117】
図7を参照して、コンテンツの不正利用を防止するための本開示の情報処理システムの全体構成について説明する。
図7には、情報処理システムの全体構成例を示している。図7には以下の4種類の装置を階層構成として示している。
(A)ライセンス発行装置(LA)101
(B)暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102−1〜n
(C)コンテンツ提供装置(Content Server)103−1〜m
(D)ユーザ装置(コンテンツ再生装置)104−1〜f
【0118】
図7に示す(C)コンテンツ提供装置(Content Server)103−1〜mは、図1に示す放送局11、コンテンツサーバ12等に対応する。
また、図7に示す(D)ユーザ装置(コンテンツ再生装置)104−1〜fは、図1に示す記録再生専用器21、PC22、携帯端末23等のユーザ装置に対応する。
【0119】
(C)コンテンツ提供装置(Content Server)103−1〜mは、コンテンツサーバや放送局、さらにはコンテンツを格納したディスク等のメディアを提供するメディア提供会社などコンテンツを送信する装置や、メディアに対するコンテンツ記録を実行する装置など、様々な情報処理装置を含む。これらは多数存在する。
【0120】
(D)ユーザ装置(コンテンツ再生装置)104−1〜fは、コンテンツ提供装置(Content Server)103−1〜mからコンテンツ、例えば映画、音楽、その他の様々なコンテンツをインターネットや放送波、あるいはディスク等のメディアを介して受信、または読み出して再生処理を実行する装置である。具体的にはPC、携帯端末、DVDプレーヤ、BDプレーヤ、テレビなどコンテンツ再生可能な様々な種類の情報処理装置が含まれる。
【0121】
(B)暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102−1〜nは、(C)コンテンツ提供装置(Content Server)103−1〜mの提供するコンテンツに対応する暗号化コンテンツ署名ファイル(ECSファイル:Encrypted Content Signature File)を生成する。
【0122】
(C)コンテンツ提供装置(Content Server)103−1〜mは、例えば、新たな映画コンテンツなどのコンテンツをユーザ装置104に提供する場合、そのコンテンツに対応する暗号化コンテンツ署名ファイル(ECSファイル)の生成依頼を、暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102に対して行う。
【0123】
(B)暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102−1〜nは、この依頼に応じて、暗号化コンテンツ署名ファイル(ECSファイル)を生成して、(C)コンテンツ提供装置(Content Server)103に提供する。
なお、この暗号化コンテンツ署名ファイル(ECSファイル)の具体的な構成と生成処理については後段で詳細に説明する。
【0124】
(C)コンテンツ提供装置(Content Server)103は、(B)暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102から暗号化コンテンツ署名ファイル(ECSファイル)を受領し、これを、暗号化コンテンツに併せて(D)ユーザ装置(コンテンツ再生装置)104に提供する。
【0125】
(D)ユーザ装置(コンテンツ再生装置)104は、コンテンツの再生を行う前に、暗号化コンテンツ署名ファイル(ECSファイル)の署名検証処理を行い、この署名検証処理の成立が確認された場合にのみ、コンテンツの復号、再生が許容される。
なお、ユーザ装置(コンテンツ再生装置)104には、暗号化コンテンツ署名ファイル(ECSファイル)の署名検証を条件としてコンテンツの復号、再生を実行するシーケンスに従った再生処理プログラムが格納されており、この再生処理プログラムに従って暗号化コンテンツ署名ファイル(ECSファイル)の署名検証等のコンテンツ再生可否判定処理と、コンテンツ再生が実行されることになる。
例えば、暗号化コンテンツ署名ファイル(ECSファイル)の署名検証が成功しなかった場合は、コンテンツの再生は禁止される。
【0126】
(A)ライセンス発行装置(LA)101は、(B)暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102−1〜nに対して、ECSファイルの発行許可証としてのライセンスを提供する。
【0127】
(A)ライセンス発行装置(LA)101は、予め既定したライセンス発行シーケンスにしたがって、(B)暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102−1〜nの正当性を確認し、正当であると確認された場合に、暗号化コンテンツ署名(ECS)発行装置に対して、ライセンスを発行する。
【0128】
なお、ライセンスは、具体的には、例えばライセンス発行装置(LA)101の秘密鍵による署名が付与された公開鍵証明書である。公開鍵証明書には、暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102の公開鍵が格納される。なお、この公開鍵証明書に格納される公開鍵に対応する秘密鍵も併せて(A)ライセンス発行装置(LA)101から、暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102に提供される。
【0129】
次に、図8を参照して、
(A)ライセンス発行装置(LA)101、
(B)暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102、
(C)コンテンツ提供装置(Content Server)103、
これらの3者間で実行される処理について説明する。
【0130】
図8には、
(A)ライセンス発行装置(LA)101、
(B)暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102、
(C)コンテンツ提供装置(Content Server)103、
これらの3つの装置と、各装置において実行する代表的な処理を示す図である。
【0131】
ライセンス発行装置(LA)101の実行する処理は、処理(A1)、(A2)
として示している。
ライセンス発行装置(LA)101は以下の処理を実行する。
処理(A1)暗号化コンテンツ署名(ECS)発行装置102に対して、使用期限(Expiration Date)付のECS発行装置証明書(ECS Issuer Certificate)を提供する。
処理(A2)コンテンツ提供装置103に対して、ECS発行装置証明書リボケーションリスト(ECS Issuer Key Revocation List)を提供する。
【0132】
暗号化コンテンツ署名(ECS)発行装置102の実行する処理は、処理(B1)、(B2)
として示している。
暗号化コンテンツ署名(ECS)発行装置102は以下の処理を実行する。
処理(B1)暗号化コンテンツ署名ファイル(ECSファイル:Encrypted Content Signature File)を生成、
処理(B2)コンテンツ提供装置103に対して、暗号化コンテンツ署名ファイル(ECSファイル:Encrypted Content Signature File)を提供、
【0133】
コンテンツ提供装置103の実行する処理は、処理(C1)、(C2)
として示している。
コンテンツ提供装置103は以下の処理を実行する。
処理(C1)暗号化コンテンツ署名(ECS)発行装置102に対して、ECSファィル生成用データを提供する。例えば、コンテンツハッシュリスト集合、タイトルキーのハッシュ値、ブロック識別子等を提供する。
処理(C2)ECSファイルを利用したコンテンツ提供可否判定処理、
【0134】
[6.ECSファイルの構成例について]
次に、暗号化コンテンツ署名(ECS)発行装置102の生成するECSファイルの構成例について説明する。
図9にECSファイルと、ECSファイルの構成データとしても設定されるECS発行装置証明書のデータ構成例を示す。
ECSファィルは、暗号化コンテンツ署名(ECS)発行装置102において生成するファイルであり、コンテンツ提供装置103から受領するコンテンツハッシュリスト集合、タイトルキーのハッシュ値、ブロック識別子等を構成データとして格納したファイルである。
【0135】
図9(A)に示すように、ECSファイルは、
(1)コンテンツハッシュリスト集合(Hash List Collections)
(2)ECS発行日時(ECS Issue Date)
(3)ブロック識別子(PAD Block Number)
(4)ECS発行装置署名(Signature by ECS Issuer)
(5)ECS発行装置証明書(ECS Issuer Certificate)
(6)コンテンツブロックテーブル(Stored Content Block Table)
これらのデータを含むファイルである。
【0136】
(1)コンテンツハッシュリスト集合(Hash List Collections)は、コンテンツ提供装置(Content Server)103が生成して、暗号化コンテンツ署名(ECS)発行装置102が受領するデータである。ユーザ装置に提供するコンテンツ、具体的にはユーザ装置において再生される例えば映画等のコンテンツに基づいて生成されるコンテンツの構成データに基づいて生成されるハッシュ値とその属性情報(ハッシュ値生成元のコンテンツブロックの位置等を示すオフセット、レングスなどの情報)を含むデータである。
【0137】
(2)ECS発行日時(ECS Issue Date)は、暗号化コンテンツ署名(ECS)発行装置102においてECSファイルを生成した日時情報である。
この日時情報は、例えば、(4)ECS発行装置署名(ECS Signature)の生成日時に対応する。
【0138】
(3)ブロック識別子(PAD Block Number)は、コンテンツ提供装置(Content Server)103から、暗号化コンテンツ署名(ECS)発行装置102に通知されるデータであり、コンテンツ提供装置103がユーザ装置104に対して提供したコンテンツに対応する暗号鍵であるタイトルキーを格納したメディアの保護領域のブロックの識別子である。これは、コンテンツ提供装置103が利用可能なメディアの保護領域におけるブロックの識別子である。
先に、図3、図6等を参照して説明したように、コンテンツ提供装置の利用可能なメディアの保護領域のブロックは予め設定されており、これらのアクセス許容ブロック情報が記録される。
【0139】
(4)ECS発行装置署名(ECS Signature)
ECS発行装置署名(ECS Signature)は、ECS発行装置の電子署名である。
署名対象データは、コンテンツハッシュリスト集合、ECS発行日時、ブロック識別子、さらに、タイトルキー(ハッシュ値)等の構成データとなる。
【0140】
(5)ECS発行装置証明書(ECS Issuer Certificate)
ECS発行装置証明書(ECS Issuer Certificate)は、ECS発行装置102に対応する公開鍵証明書であり、図9(B)に示すように、ECS発行装置102の公開鍵等が格納されている。この構成については後述する。
【0141】
(6)コンテンツブロックテーブル(Stored Content Block Table)
コンテンツブロックテーブル(Stored Content Block Table)は、上記のコンテンツハッシュリスト集合(Hash List Collections)に、複数のコンテンツに対応するハッシュリストが記録されている場合に、各ハッシュリストとコンテンツの対応情報を記録したフィールドとして設定される。
【0142】
次に、図9(B)に示すECS発行装置証明書(ECS Issuer Certificate)のデータ構成について説明する。
ECS発行装置証明書(ECS Issuer Certificate)は、ライセンス発行装置(LA)101が生成し、ECS発行装置102に提供される。ECS発行装置102は、ECS発行装置証明書(ECS Issuer Certificate)の生成に必要となるデータをライセンス発行装置(LA)101に提供して、ECS発行装置証明書(ECS Issuer Certificate)の生成を依頼する。
【0143】
ライセンス発行装置(LA)101は、この依頼に応じてECS発行装置証明書(ECS Issuer Certificate)を生成する。
図9(B)に示すように、ECS発行装置証明書は、
(1)ECS証明書識別子(ECS Certificate ID)
(2)ブロック識別子開始番号(Start PAD Block Number)
(3)ブロック識別子範囲(PAD Block Number Counter)
(4)発行装置証明書使用期限(Expiration Date)
(5)ECS発行装置公開鍵(ECS Issuer Public Key)
(6)LA署名(Signature by LA)
これらのデータを含むファイルである。
【0144】
(1)ECS証明書識別子(ECS Certificate ID)は。このECS証明書の識別子である。
(2)ブロック識別子開始番号(Start PAD Block Number)は、ECS発行装置102が、コンテンツ提供装置103に対して許容可能なメディアの保護領域のアクセス許容ブロックの開始番号である。
(3)ブロック識別子範囲(PAD Block Number Counter)は、ECS発行装置102が、コンテンツ提供装置103に対して許容可能なメディアの保護領域のアクセス許容ブロックの開始番号からの範囲を示す情報である。
【0145】
(4)発行装置証明書使用期限(Expiration Date)は、この発行装置証明書の使用期限情報である。
(5)ECS発行装置公開鍵(ECS Issuer Public Key)は、ECS発行装置の公開鍵である。
(6)LA署名(Signature by LA)は、図7、図8に示すライセンス発行装置(LA)の電子署名である。ECS発行装置証明書の上記構成データ(1)〜(5)に基づいて生成される電子署名である。
【0146】
図10は、ECSファイルのシンタックス、
図11は、ECS発行装置証明書のシンタックス、
を示す図である。
なお、ECS発行装置証明書に記録される、
(2)ブロック識別子開始番号(Start PAD Block Number)
(3)ブロック識別子範囲(PAD Block Number Counter)
これらの2つのデータは、前述したように、ECS発行装置102が、コンテンツ提供装置103に対して許容可能なメディアの保護領域のアクセス許容ブロックを示す情報である。
具体的には、例えば、
ブロック識別子開始番号≦N≦ブロック識別子開始番号+ブロック識別子範囲
を満たす、すべてをブロック識別子として設定したのと同等である。
【0147】
また、
ブロック識別子開始番号=0xFFFFFFFF
と設定されていた場合は、
メディアの保護領域の全ブロックがアクセス許容ブロックであることを示す。
【0148】
なお、図9〜図11を参照して説明した例は、ECSファイルがECS発行装置証明書を含む構成として説明したが、ECSファイルにECS発行装置証明書を含めず、ECSファイルと、ECS発行装置証明書を個別のファイルとして構成してもよい。
【0149】
[7.ECS発行装置証明書リボケーションリストの構成について]
次に、図12を参照して、ECS発行装置証明書リボケーションリストの構成について説明する。
【0150】
ECS発行装置証明書リボケーションリスト(ECS Issuer Key Revocation List)は、先に図8を参照して説明したように、ライセンス発行装置(LA)101が発行するリストである。このリストは、例えばコンテンツ提供装置103において利用される。
【0151】
ライセンス発行装置(LA)101は、不正であると判定されたECS発行装置の公開鍵を格納したECS発行装置証明書(図9(B)参照)を無効化し、無効化したECS発行装置(具体的には、ECS発行装置証明書)の識別子(ID)を登録したリストとして、ECS発行装置証明書リボケーションリストを生成する。
図12に示すように、ECS発行装置証明書リボケーションリストは、以下のデータを格納している。
(1)バージョン(Version)
(2)エントリ数(Number of entries)
(3)リボーク(無効化)されたECS発行装置証明書のID
(4)リボーク(無効化)されたECS発行装置証明書のリボーク日時
(5)ライセンス発行装置(LA)101の電子署名
これらのデータを格納している。
【0152】
(5)ライセンス発行装置(LA)101の電子署名は(1)〜(4)のデータに対する署名である。
なお、ECS発行装置証明書リボケーションリストは、不正なECS発行装置が新たに発見された場合には、そのECS発行装置のIDを追加して更新した新しいバージョンのリストが逐次、発行され、コンテンツ提供装置103に提供される。
【0153】
[8.暗号化コンテンツ署名ファイル(ECSファイル)の生成処理について]
次に、図13を参照して暗号化コンテンツ署名ファイル(ECSファイル)の生成処理について説明する。
【0154】
暗号化コンテンツ署名ファイル(ECSファイル)は、コンテンツ提供装置(Content Server)103からの生成依頼に基づいて、暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102が生成する。
【0155】
コンテンツ提供装置(Content Server)103が、例えば、新たな映画コンテンツなどのコンテンツをユーザ装置104に提供する場合、そのコンテンツに対応する暗号化コンテンツ署名ファイル(ECSファイル)の生成依頼を、暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102に対して行う。
【0156】
暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102は、この依頼に応じて、暗号化コンテンツ署名ファイル(ECSファイル)を生成して、コンテンツ提供装置(Content Server)103に提供する。
【0157】
図13は、この暗号化コンテンツ署名ファイル(ECSファイル)の生成処理において、コンテンツ提供装置(Content Server)103と暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102の実行する処理を説明する図である。
【0158】
コンテンツ提供装置(Content Server)103は、新たな暗号化コンテンツ署名ファイル(ECSファイル)の生成依頼を行う場合、図13に示すように、
コンテンツ181の構成データ(コンテンツブロック)に基づいて生成したハッシュ値を含むコンテンツハッシュリスト集合(Hash List Collections)183を生成する。
【0159】
なお、コンテンツハッシュリスト集合(Hash List Collections)183は、ユーザ装置104に提供する暗号化コンテンツの構成データ(コンテンツブロック)に基づいて生成したハッシュ値を格納したコンテンツハッシュリスト集合として生成される。
【0160】
コンテンツ提供装置(Content Server)103は、生成したコンテンツハッシュリスト集合(Hash List Collections)183を暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102に提供する。
【0161】
さらに、コンテンツ181の暗号化に適用する暗号鍵であるタイトルキー182、またはタイトルキーのハッシュ値も暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102に提供する。
【0162】
コンテンツハッシュリスト集合(Hash List Collections)183は、ユーザ装置に提供するコンテンツ、具体的にはユーザ装置において再生される例えば映画等のコンテンツに基づいて生成されるコンテンツの構成データに基づいて生成されるハッシュ値とその属性情報を含むデータである。
なお、属性情報には、例えばハッシュ値を算出したコンテンツブロックの位置情報等の属性情報などが含まれる。
【0163】
暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102は、図13に示すステップS11において、コンテンツ提供装置(Content Server)103から受信したデータと、ECSファイルの構成データ、具体的には、例えば、
コンテンツハッシュリスト集合、
ECS発行日時、
ブロック識別子、
タイトルキー(ハッシュ)、
これらのデータに対する署名を生成する。
【0164】
署名データの生成は、暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102の保持する秘密鍵を適用して署名を生成する。例えばECDSAアルゴリズムに従った署名生成を行う。
【0165】
生成した署名は、図13に示すように、暗号化コンテンツ署名ファイル(ECSファイル)の構成データとして設定される。
先に図9を参照して説明したように、暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102の生成する暗号化コンテンツ署名ファイル(ECSファイル)200は、以下のデータを構成データとして有する。
(1)コンテンツハッシュリスト集合(Hash List Collections)
(2)ECS発行日時(ECS Issue Date)
(3)ブロック識別子(PAD Block Number)
(4)ECS発行装置署名(Signature by ECS Issuer)
(5)ECS発行装置証明書(ECS Issuer Certificate)
(6)コンテンツブロックテーブル(Stored Content Block Table)
これらのデータを含むファイルである。
【0166】
[9.ECSファイル、ECS発行装置証明書の日時情報を適用した処理について]
次に、ECSファイル、ECS発行装置証明書の日時情報を適用した処理について説明する。
(1)ECS発行装置102が生成し、コンテンツ提供装置に提供されるECSファイル、
(2)ライセンス発行装置(LA)101が生成し、ECS発行装置10に提供されるECS発行装置証明書、
これらには、図9を参照して説明したように、様々な日時情報が記録される。
【0167】
例えば、ECSファイルには、
ECS発行日時(ECS Issue Date)
が記録される。
また、ECS発行装置証明書には、
発行装置証明書使用期限(Expiration Date)
が記録される。
【0168】
コンテンツ提供装置103は、これらのECSファイルとECS発行装置証明書に記録された日時情報や、先に図12を参照して説明したECS発行装置証明書リボケーションリストを適用して、ユーザ装置104に対するコンテンツ提供処理の可否判定処理を実行する。
【0169】
また、コンテンツ提供装置103からコンテンツを受領するユーザ装置においても、ECSファイルとECS発行装置証明書に記録された日時情報や、先に図12を参照して説明したECS発行装置証明書リボケーションリストを適用して、ユーザ装置104におけるコンテンツ再生の可否判定処理を実行する。
以下、これらの処理について説明する。
【0170】
まず、図14、図15に示すシーケンス図を参照して、暗号化コンテンツ署名ファイル(ECSファイル)の生成とコンテンツ提供、利用処理シーケンスについて説明する。
図14には、左から、
ライセンス発行装置101、
暗号化コンテンツ署名(ECS)発行装置102、
コンテンツ提供装置103、
これらの各装置を示し、ステップS111、S121〜S128の各処理を時系列処理として示している。
これらの各処理ステップについて説明する。
【0171】
ステップS111
ステップS111は、ライセンス発行装置101が、暗号化コンテンツ署名(ECS)発行装置102に対してライセンス(ECS発行装置証明書)を発行する処理である。
【0172】
先に図8他を参照して説明したように、ライセンス発行装置101は、暗号化コンテンツ署名(ECS)発行装置102に対して、ECSファイルの発行許可証としてのライセンス、すなわちECS発行装置証明書を提供する。
ライセンス発行装置(LA)101は、予め既定したライセンス発行シーケンスにしたがって、暗号化コンテンツ署名(ECS)発行装置102の正当性を確認し、正当であると確認された場合に、暗号化コンテンツ署名(ECS)発行装置に対して、ECS発行装置証明書を発行する。
【0173】
ECS発行装置証明書は、図9(B)を参照して説明したデータ構成を有する公開鍵証明書である。ECS発行装置証明書には、暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102の公開鍵が格納される。なお、このECS発行装置証明書に格納される公開鍵に対応する秘密鍵も併せて(A)ライセンス発行装置(LA)101から、暗号化コンテンツ署名(ECS)発行装置(Encrypted Content Signature Issuer)102に提供される。
【0174】
ステップS121〜S124は、図13を参照して説明した暗号化コンテンツ署名ファイル(ECSファイル)の生成処理のシーケンスである。
この処理は、コンテンツ提供装置103が、例えば新たなコンテンツをユーザ装置に提供する場合に、その新たなコンテンツに対応する暗号化コンテンツ署名ファイル(ECSファイル)を取得するために、各提供コンテンツに応じて逐次実行される。
この処理は、暗号化コンテンツ署名(ECS)発行装置102と、コンテンツ提供装置103との間で実行される。
【0175】
まず、ステップS121において、コンテンツ提供装置103は、暗号化コンテンツ署名ファイル(ECSファイル)作成に必要となるデータを生成する。
具体的には、図13を参照して説明した、
コンテンツハッシュリスト集合(Hash List Collections)183の生成処理などを実行する。
【0176】
前述したように、コンテンツハッシュリスト集合(Hash List Collections)は、ユーザ装置に提供するコンテンツ、具体的にはユーザ装置において再生される例えば映画等のコンテンツに基づいて生成されるコンテンツの構成データに基づいて生成されるハッシュ値とその属性情報を含むデータである。
属性情報には、例えばハッシュ値を算出したコンテンツブロックの位置情報等の属性情報などが含まれる。
【0177】
なお、コンテンツ提供装置103は、コンテンツの暗号化および復号処理に適用するタイトルキー、あるいはタイトルキーのハッシュ値も、暗号化コンテンツ署名(ECS)発行装置102への提供データとして生成する。
【0178】
次に、コンテンツ提供装置103は、ステップS122において、生成データを暗号化コンテンツ署名(ECS)発行装置102に送信して、暗号化コンテンツ署名ファイル(ECSファイル)の生成および送信要求を行う。
【0179】
次に、ステップS123において、暗号化コンテンツ署名(ECS)発行装置102は、コンテンツ提供装置103から受信したデータに対する署名生成処理を行う。
すなわち、図13を参照して説明したステップS11の署名生成処理を実行する。
【0180】
さらに、先に図9(A)を説明したデータ構成を持つ暗号化コンテンツ署名ファイル(ECSファイル)を生成し、ステップS124において、生成した暗号化コンテンツ署名ファイル(ECSファイル)をコンテンツ提供装置103に送信する。
【0181】
先に図9(A)を参照して説明したように、暗号化コンテンツ署名ファイル(ECSファイル)には、
ECSファイルは、
(1)コンテンツハッシュリスト集合(Hash List Collections)
(2)ECS発行日時(ECS Issue Date)
(3)ブロック識別子(PAD Block Number)
(4)ECS発行装置署名(Signature by ECS Issuer)
(5)ECS発行装置証明書(ECS Issuer Certificate)
(6)コンテンツブロックテーブル(Stored Content Block Table)
これらのデータが含まれる。
【0182】
暗号化コンテンツ署名ファイル(ECSファイル)を受信したコンテンツ提供装置103は、ステップS125において、暗号化コンテンツ署名ファイル(ECSファイル)を適用したコンテンツ提供が許容されるか否かのコンテンツ提供可否判定処理を実行する。
ステップS126において、コンテンツ提供が許容されると判定した場合は、ステップS127においてユーザ装置に対するコンテンツ提供処理を実行する。
ステップS126において、コンテンツ提供が許容されないと判定した場合は、ステップS128に進み、コンテンツ提供処理を中止する。
なお、ステップS125〜S128の処理については、図16以下を参照して、後段でさらに詳細に説明する。
【0183】
次に、図15を参照して、コンテンツ提供装置103からユーザ装置104に対するコンテンツの提供と、ユーザ装置104におけるコンテンツ再生シーケンスについて説明する。
図15には、左から、
コンテンツ提供装置103、
ユーザ装置104、
これらを示している。
【0184】
まず、コンテンツ提供装置103は、ステップS131において、ユーザ装置に、
(1)暗号化コンテンツ
(2)暗号化コンテンツ署名ファイル(ECSファイル)
(3)タイトルキー
これらのデータを送信する。
【0185】
なお、ステップS131の処理の前処理として、例えばユーザ装置104からコンテンツ提供装置103に対するコンテンツ送信要求が実行されているものとする。コンテンツ提供装置103は、ユーザ装置からのリクエストに応じたコンテンツを提供する。
【0186】
なお、ステップS131においてコンテンツ提供装置103の送信する、
(1)暗号化コンテンツ
は、コンテンツに対応して設定される上記の「(3)タイトルキー」で暗号化されたコンテンツである。
また、
(2)暗号化コンテンツ署名ファイル(ECSファイル)
は、上記の(1)暗号化コンテンツに対応して生成されたファイルであり、先に図9を参照して説明した暗号化コンテンツ署名ファイル(ECSファイル)の構成データを格納している。
【0187】
ユーザ装置104は、これらのデータを受信し、例えばハードディスク等のメディアに格納する。
その後、コンテンツの再生処理を実行する際に、図15に示すステップS132以下の処理を実行する。
【0188】
ユーザ装置104は、ステップS132において、再生対象コンテンツに対応する暗号化コンテンツ署名ファイル(ECSファイル)を読み出して、暗号化コンテンツ署名ファイル(ECSファイル)を適用してコンテンツ再生が許容されるか否かのコンテンツ再生可否判定処理を実行する。
ステップS133において、コンテンツ再生が許容されると判定した場合は、ステップS134においてコンテンツ再生処理を実行する。
ステップS133において、コンテンツ再生が許容されないと判定した場合は、ステップS135に進み、コンテンツ再生処理を中止する。
なお、ステップS132〜S135の処理については、図18を参照して、後段でさらに詳細に説明する。
【0189】
次に、図14を参照して説明したコンテンツ提供装置におけるステップS125|S128の処理、すなわち、暗号化コンテンツ署名ファイル(ECSファイル)を適用したコンテンツ提供可否判定処理の詳細シーケンスについて図16、図17に示すフローチャートを参照して説明する。
【0190】
図16に示すフローチャートのステップS151の前処理として、コンテンツ提供装置は、暗号化コンテンツ署名ファイル(ECSファイル)発行装置から受信した暗号化コンテンツ署名ファイル(ECSファイル)に設定されたECS発行装置署名を適用した署名検証を実行する。
この署名検証が成立し、暗号化コンテンツ署名ファイル(ECSファイル)の正当性が確認され場合は、さらに、暗号化コンテンツ署名ファイル(ECSファイル)に格納されたECS発行装置証明書の署名検証を実行する。これらの2つの署名検証が成立したことを条件としてステップS151以下の処理を行う。
【0191】
上記2つの署名検証の少なくともいずれかが成立しなかった場合は、暗号化コンテンツ署名ファイル(ECSファイル)またはECS発行装置証明書の正当性が確認されないので、ステップS151以下の処理は実行されない。この場合はコンテンツ提供処理も実行しないことになる。
【0192】
暗号化コンテンツ署名ファイル(ECSファイル)と、ECS発行装置証明書の2つの署名検証が成立し、暗号化コンテンツ署名ファイル(ECSファイル)とECS発行装置証明書の正当性が確認された場合、コンテンツ提供装置は、ステップS151の処理を実行する。
【0193】
コンテンツ提供装置は、
暗号化コンテンツ署名ファイル(ECSファイル)の記録データであるECS発行日時(ECS Issue Date)を読み出す。さらに、
ECS発行装置証明書の記録データであるECS発行装置証明書使用期限(Expiration Date)を読み出す。
さらに、これらの日時情報を比較し、
ECS発行装置証明書使用期限(Expiration Date)がECS発行日時(ECS Issue Date)より前であるか否かを判定する。
前である場合(Yes)は、ステップS155に進み、リボケーションリストを適用した処理を行う。この処理については後述する。
【0194】
前でない場合(No)は、ステップS152に進み、ステップS153以下において暗号化コンテンツ署名ファイル(ECSファイル)とECS発行装置証明書に記録された日時情報(タイムスタンプ)を適用したコンテンツ提供可否判定処理を開始する。
【0195】
ステップS153では、ECS発行装置証明書使用期限(Expiration Date)と、コンテンツ提供装置の持つ時間クロックあるいは信頼できる時間情報提供サーバから取得した実時間とを比較する。
ECS発行装置証明書使用期限(Expiration Date)が、実時間より1日以上前であれば、ステップS156に進み、コンテンツ提供処理を中止する。
【0196】
一方、ECS発行装置証明書使用期限(Expiration Date)が、実時間より1日以上前でなければ、ステップS154に進む。
ステップS154では、ECS発行日時(ECS Issue Date)と、コンテンツ提供装置の持つ時間クロックあるいは信頼できる時間情報提供サーバから取得した実時間とを比較する。
ECS発行日時(ECS Issue Date)が、実時間より1日以上前であれば、ステップS156に進み、コンテンツ提供処理を中止する。
【0197】
一方、ECS発行日時(ECS Issue Date)が、実時間より1日以上前でなければ、ステップS155に進む。
【0198】
次に、ステップS155以下において実行するリボケーションリストを適用したコンテンツ提供可否判定処理について、図17に示すフローチャートを参照して説明する。
なお、コンテンツ提供装置は、予め図12を参照して説明したECS発行装置公開鍵リボケーションリストを取得しているものとする。例えばライセンス発行装置(LA)101から取得可能である。
【0199】
コンテンツ提供装置は、ステップS161において、ECS発行装置証明書からECS証明書識別子を取得し、この識別子(ID)がECS発行装置公開鍵リボケーションリストに登録されているか否かを判定する。
登録されていない場合(No)は、ECS発行装置証明書は無効化(リボーク)されておらず有効であることが確認され、この場合は、ステップS164に進み、コンテンツ提供処理を実行する。
【0200】
一方、ステップS161において、ECS証明書識別子(ID)がECS発行装置公開鍵リボケーションリストに登録されていると判定した場合(Yes)、この場合は、ステップS162に進む。
【0201】
ステップS162では、ECS発行装置公開鍵リボケーションリストに登録されているそのECS発行装置証明書が無効化(リボーク)された日時、すなわち、
リボーク日時と、
暗号化コンテンツ署名ファイル(ECSファイル)の記録データであるECS発行日時(ECS Issue Date)と、
これらの2つの日時データを比較する。
【0202】
暗号化コンテンツ署名ファイル(ECSファイル)の記録データであるECS発行日時(ECS Issue Date)がリボーク日時より前である場合(Yes)は、ステップS164に進み、コンテンツの提供処理を実行する。
これは、リボーク以前の正当なECS発行装置証明書に基づく処理であると判断できるためである。
【0203】
一方、ステップS162において、暗号化コンテンツ署名ファイル(ECSファイル)の記録データであるECS発行日時(ECS Issue Date)がリボーク日時より前でない場合(No)は、ステップS163に進み、コンテンツの提供処理を停止する。
これは、リボーク後の不当なECS発行装置証明書に基づく処理であると判断できるためである。
【0204】
次に、図18に示すフローチャートを参照して、先に図14のステップS132〜S135を参照して説明したユーザ装置104における暗号化コンテンツ署名ファイル(ECSファイル)を適用したコンテンツ再生許容判定処理の詳細について説明する。
【0205】
なお、ユーザ装置は、図18に示すステップS171以前に、コンテンツ提供装置から受信した暗号化コンテンツ署名ファイル(ECSファイル)に設定されたECS発行装置署名を適用した署名検証を実行する。
この署名検証が成立し、暗号化コンテンツ署名ファイル(ECSファイル)の正当性が確認され場合は、さらに、暗号化コンテンツ署名ファイル(ECSファイル)に格納されたECS発行装置証明書の署名検証を実行する。これらの2つの署名検証が成立したことを条件としてステップS171以下の処理を行う。
【0206】
上記2つの署名検証の少なくともいずれかが成立しなかった場合は、暗号化コンテンツ署名ファイル(ECSファイル)またはECS発行装置証明書の正当性が確認されないので、ステップS171以下の処理は実行されない。この場合はコンテンツ再生処理も実行しないことになる。
【0207】
暗号化コンテンツ署名ファイル(ECSファイル)と、ECS発行装置証明書の2つの署名検証が成立し、暗号化コンテンツ署名ファイル(ECSファイル)とECS発行装置証明書の正当性が確認された場合、ユーザ装置は、ステップS171の処理を実行する。
【0208】
ステップS171において、ユーザ装置は、
暗号化コンテンツ署名ファイル(ECSファイル)の記録データであるECS発行日時(ECS Issue Date)を読み出す。さらに、
ECS発行装置証明書の記録データであるECS発行装置証明書使用期限(Expiration Date)を読み出す。
さらに、これらの日時情報を比較し、
ECS発行装置証明書使用期限(Expiration Date)がECS発行日時(ECS Issue Date)より前であるか否かを判定する。
前である場合(Yes)は、ステップS175に進み、コンテンツの復号、再生処理を実行しない。
これは、すでに有効期限の切れたECS発行装置証明書であることが確認されたからである。
【0209】
一方、ステップS171において、ECS発行装置証明書使用期限(Expiration Date)がECS発行日時(ECS Issue Date)より前でない場合(No)は、ステップS172に進み、ステップS173以下においてリボケーションリストを適用したコンテンツ提供可否判定処理を実効する。
【0210】
なお、ユーザ装置は、予め図12を参照して説明したECS発行装置公開鍵リボケーションリストを取得しているものとする。例えばライセンス発行装置(LA)101から取得可能である。
【0211】
ユーザ装置は、ステップS173において、ECS発行装置証明書からECS証明書識別子を取得し、この識別子(ID)がECS発行装置公開鍵リボケーションリストに登録されているか否かを判定する。
登録されていない場合(No)は、ECS発行装置証明書は無効化(リボーク)されておらず有効であることが確認され、この場合は、ステップS176に進み、コンテンツ再生処理を実行する。
【0212】
なお、コンテンツ再生処理の開始前に、さらに、暗号化コンテンツの復号に適用するタイトルキーの取得や生成処理、さらに、暗号化コンテンツ署名ファイルに含まれるコンテンツハッシュリストを適用したハッシュ値照合処理を実行する。ハッシュ値照合において照合が成立し、コンテンツの改ざんのないことが確認された場合にコンテンツの再生が許容されることになる。
【0213】
一方、ステップS173において、ECS証明書識別子(ID)がECS発行装置公開鍵リボケーションリストに登録されていると判定した場合(Yes)、この場合は、ステップS174に進む。
【0214】
ステップS174では、ECS発行装置公開鍵リボケーションリストに登録されているそのECS発行装置証明書が無効化(リボーク)された日時、すなわち、
リボーク日時と、
暗号化コンテンツ署名ファイル(ECSファイル)の記録データであるECS発行日時(ECS Issue Date)と、
これらの2つの日時データを比較する。
【0215】
暗号化コンテンツ署名ファイル(ECSファイル)の記録データであるECS発行日時(ECS Issue Date)がリボーク日時より前である場合(Yes)は、ステップS176に進み、コンテンツの再生処理を実行する。
これは、リボーク以前の正当なECS発行装置証明書に基づく処理であると判断できるためである。
【0216】
一方、ステップS173において、暗号化コンテンツ署名ファイル(ECSファイル)の記録データであるECS発行日時(ECS Issue Date)がリボーク日時より前でない場合(No)は、ステップS175に進み、コンテンツの再生処理を停止する。
これは、リボーク後の不当なECS発行装置証明書に基づく処理であると判断できるためである。
【0217】
[10.暗号鍵とECS発行装置署名との関連づけ構成について]
次に、暗号鍵とECS発行装置署名との関連づけ構成について説明する。
先に、図3、図6を参照して説明したように、ユーザ装置104では、例えばフラッシュメモリから構成されるメモリカード等にコンテンツ等を記録して利用する。
【0218】
図3を参照して説明したように、メモリカード31の記憶領域は、
(a)保護領域(Protected Area)51、
(b)汎用領域(General Purpose Area)52、
これら2つの領域によって構成される。
【0219】
(b)汎用領域(General Purpose Area)52はユーザの利用する記録再生装置によって、自由にアクセス可能な領域であり、コンテンツやコンテンツ対応の利用制御情報(Usage Rule)、その他の一般のコンテンツ管理データ等が記録される。
この汎用領域(General Purpose Area)52は、例えばサーバやユーザの記録再生装置によって自由にデータの書き込みや読み取りを行うことか可能な領域である。
【0220】
一方、(a)保護領域(Protected Area)51は、自由なアクセスが許容されない領域である。
保護領域(Protected Area)51は複数の区分領域としてのブロック(#0,#1,#2・・・)に分割され、各ブロック単位でアクセス権が設定される。
【0221】
例えば、ユーザの利用する記録再生装置、あるいはネットワークを介して接続されるサーバ等によってデータの書き込みあるいは読み取りを行おうとする場合、メモリカード31のデータ処理部が、メモリカード31に予め格納されたプログラムに従って、各装置に応じてブロック単位で読み取り(Read)または書き込み(Write)の可否を決定する。
【0222】
メモリカード31は、予め格納されたプログラムを実行するためのデータ処理部や認証処理を実行する認証処理部を備えており、メモリカード31は、まず、メモリカード31に対してデータの書き込みまたは読み取りを実行しようとする装置との認証処理を行う。
【0223】
この認証処理の段階で、相手装置、すなわちアクセス要求装置から公開鍵証明書等の装置証明書を受信する。
たとえばアクセス要求装置がサーバである場合は、図5を参照して説明したサーバの保有するサーバ証明書(Server Certificate)を受信し、その証明書に記載された情報を用いて、保護領域(Protected Area)51の各ブロック(区分領域)単位でアクセスが許容されるか否かを判定する。
【0224】
また、アクセス要求装置がホスト装置、例えばコンテンツ記録再生を実行するユーザ装置としての記録再生装置(ホスト)である場合は、図4を参照して説明した記録再生装置(ホスト)の保有するホスト証明書(Host Certificate)を受信し、その証明書に記載された情報を用いて、保護領域(Protected Area)51の各ブロック(区分領域)のアクセスが許容されるか否かを判定する。
【0225】
このアクセス権判定処理は、図3に示す保護領域(Protected Area)51内のブロック(図に示す領域#0,#1,#2・・・)単位で行われる。メモリカード31は、ブロック単位で許可された処理(データの読み取り/書き込み等の処理)のみをサーバやホストに実行させる。
【0226】
ユーザ装置104がメディアを装着してコンテンツ提供装置103から受信するコンテンツを記録する場合のデータ記録構成例について、図19を参照して説明する。
図19には、コンテンツ提供装置としてのサーバA201がユーザ装置としてのホスト202に装着されたメモリカード210に、暗号化コンテンツを提供して記録する処理例を示している。
メモリカード210は、
保護領域(Protected Area)211、
汎用領域(General Purpose Area)212、
これらを有している。
【0227】
コンテンツ提供装置としてのサーバA201は、暗号化コンテンツ提供処理に際して、提供コンテンツの暗号化および復号に適用するタイトルキーを保護領域(Protected Area)の所定ブロックに記録する。
【0228】
サーバA201は、先に図5を参照したサーバ証明書(Server Certificate)を保有している。
まず、サーバA201は、メモリカード210との相互認証処理を実行する。その際にメモリカード210に対してサーバ証明書を出力する。
メモリカード210は、サーバA201から受信したサーバ証明書に記録された保護領域アクセス権情報を確認する。
この確認処理において、サーバA201がブロック#0のアクセス権(書き込みの権利)を有していることが判定された場合にのみ、サーバA201はメモリカード210に設定された保護領域211のブロック#0に対するデータ書き込みが可能となる。
【0229】
図に示すように、サーバA201は、提供コンテンツの復号に適用するタイトルキーを保護領域(Protected Area)211のブロック#0,221に格納する。
なお、保護領域には、タイトルキー自体をそのまま格納せず、
(a)利用制御情報(UR:Usage Rule)と、
(b)図9を参照して説明したECSファイルの構成データであるECS発行装置署名(Signature by ECS Issuer)
これら(a)、(b)の連結データのハッシュ値と、
タイトルキーKtとの排他的論理和演算結果を格納する。
【0230】
例えばコンテンツ(a1)に対するタイトルキー:Kt(a1)は、以下のタイトルキー変換データとして保護領域に格納する。
Kt(a1)(+)(UR(a1)||ECSSig(a1))hash
ただし、
UR(a1):コンテンツa1に対応する利用制御情報
ECSSig(a1):コンテンツa1に対応するECSファイルの構成データであるECS発行装置署名(Signature by ECS Issuer)
また、演算子としての記号、
(+):排他的論理和演算
||:データの連結を意味し、a||bはデータaとデータbの連結データを意味する。
hash:ハッシュ値を意味し、(a||b)hashは、データaとデータbの連結データのハッシュ値を意味する。
【0231】
図19に示す例では、サーバAは、メモリカードの汎用領域(General Purpose Area)212に、以下のコンテンツと利用制御情報とECSファイルを記録する。
コンテンツ:Con(a1)、Con(a2)、Con(a3)、
上記コンテンツに対応する利用制御情報(Usage Rule):UR(a1)、UR(a2)、UR(a3)、
上記コンテンツに対応するECSファイル(ECS File):ECS(a1)、ECS(a2)、ECS(a3)、
これらのコンテンツと利用制御情報とECSファィルのセットを記録する。
【0232】
さらに、サーバAは、メモリカードの保護領域(Protected Area)211のブロック#0,221に以下のデータを記録する。
コンテンツ対応のタイトルキーと、
コンテンツ対応の利用制御情報(Usage Rule)とECS発行装置署名(ECSSig)の連結データのハッシュ値との排他的論理和(XOR)演算結果
Kt(a1)(+)(UR(a1)||ECSSig(a1))hash
Kt(a2)(+)(UR(a2)||ECSSig(a2))hash
Kt(a3)(+)(UR(a3)||ECSSig(a3))hash
【0233】
なお、図19には、サーバA201の処理例を示しているが、例えば異なるサーバBは、サーバBの提供コンテンツ(bx)に対応するタイトルキーの格納領域として許容された保護領域(Protected Area)の所定ブロック、例えば、ブロック#1にサーバBの提供コンテンツに同様のタイトルキー変換データ、例えば、
Kt(bx)(+)(UR(bx)||ECSSig(bx))hash
上記データを格納する。
【0234】
図20には、コンテンツを利用するユーザ装置(ホスト)202とコンテンツ等を格納したメモリカード210を示している。
【0235】
ユーザ装置(ホスト)202は、先に図4を参照したホスト証明書(Host Certificate)を保有している。
まず、ユーザ装置(ホスト)202は、メモリカード210との相互認証処理を実行する。その際にメモリカード210に対してホスト証明書を出力する。
メモリカード210は、ユーザ装置(ホスト)202から受信したホスト証明書に記録された保護領域アクセス権情報を確認する。
この確認処理において、ユーザ装置(ホスト)202がブロック#0のアクセス権(読み取りの権利)を有していることが判定された場合にのみ、ユーザ装置(ホスト)202はメモリカード210に設定された保護領域211のブロック#0からのデータ読み取りが可能となる。
【0236】
これらの相互認証およびアクセス権が確認された後、ユーザ装置(ホスト)202は、コンテンツの利用に際して以下の処理を実行する。
まず、メモリカードの汎用領域(General Purpose Area)212から利用対象コンテンツ:Con(xy)と、対応する利用制御情報:UR(xy)、ECSファイル:ECS(xy)取得する。
【0237】
次に、利用制御情報:UR(xy)を参照して、利用対象コンテンツ:Con(xy)のタイトルキーの格納された保護領域のブロックがいずれのブロックであるかを確認する。
利用制御情報:UR(xy)には、利用対象コンテンツ:Con(xy)のタイトルキーの格納されたブロックの識別子が記録されている。
【0238】
保護領域211のタイトルキー格納ブロックが特定されると、そのブロックの記録データの読み出し処理を行う。
例えば、選択ブロックから、以下のデータを読み出す。
Kt(xy)(+)(UR(xy)||ECSSig(xy))hash
【0239】
次に、汎用領域212から読み出した
利用制御情報:UR(xy)と、
ECSファイル:ECS(xy)に格納されたECS発行装置署名(ECSSig(xy))
これらの連結処理とハッシュ値算出処理を行う。
すなわち、
(UR(xy)||ECSSig(xy))hash
上記を算出する。
この算出結果を、
P(xy)とする。
【0240】
その後、以下の計算を行うことでタイトルキーKt(xy)を得る。
[ブロックからの読み出しデータ(タイトルキー変換データ)](+)P(xy)
=(Kt(xy)(+)(UR(xy)||ECSSig(xy))hash)(+)P(xy)
=(Kt(xy)(+)(UR(xy)||ECSSig(xy))hash)(+)(UR(xy)||ECSSig(xy))hash)
=Kt(xy)
このような計算処理によってタイトルキーKt(xy)を取得し、取得したタイトルキーによって暗号化コンテンツを復号して利用する。
【0241】
メモリカードの記録データの例について図21を参照して説明する。
図21には、2つの異なるサーバ、サーバAとサーバBがメモリカードに対して書き込むデータの例を示している。
サーバAは、メモリカードの保護領域のブロック#0に対するアクセス権を有している。
サーバBは、メモリカードの保護領域のブロック#1に対するアクセス権を有している。
【0242】
各サーバはユーザ装置としてのホスト機器に装着されたメモリカードに対してコンテンツ他のデータを記録する。
サーバAの提供コンテンツを、Con(a1)、Con(a2)、Con(a3)とする。
サーバBの提供コンテンツを、Con(b1)、Con(b2)とする。
【0243】
図21に示すように、
サーバAは、メモリカードの汎用領域(General Purpose Area)に、以下のデータを記録する。
コンテンツ:Con(a1)、Con(a2)、Con(a3)
上記コンテンツに対応する利用制御情報(Usage Rule):UR(a1)、UR(a2)、UR(a3)、
上記コンテンツに対応するECSファイル(ECS File):ECS(a1)、ECS(a2)、ECS(a3)、
【0244】
さらに、サーバAは、メモリカードの保護領域(Protected Area)のブロック#0に以下のデータを記録する。
上記コンテンツの復号に適用するタイトルキー:Kt(a1)、Kt(a2)、Kt(a3)の変換データ、
Kt(a1)(+)(UR(a1)||ECSSig(a1))hash
Kt(a2)(+)(UR(a2)||ECSSig(a2))hash
Kt(a3)(+)(UR(a3)||ECSSig(a3))hash
これらのデータを記録する。
【0245】
一方、サーバBは、メモリカードの汎用領域(General Purpose Area)に、以下のデータを記録する。
コンテンツ:Con(b1)、Con(b2)
上記コンテンツに対応する利用制御情報(Usage Rule):UR(b1)、UR(b2)、
上記コンテンツに対応するECSファイル(ECS File):ECS(b1)、ECS(b2)、
【0246】
さらに、サーバBは、メモリカードの保護領域(Protected Area)のブロック#1に以下のデータを記録する。
上記コンテンツの復号に適用するタイトルキー:Kt(b1)、Kt(b2)の変換データ、
Kt(b1)(+)(UR(b1)||ECSSig(b1))hash
Kt(b2)(+)(UR(b2)||ECSSig(b2))hash
これらのデータを記録する。
【0247】
各サーバが、メモリカードの保護領域(Protected Area)のブロック内にデータを記録する場合には、メモリカードは、前述したサーバ証明書の記録に基づくアクセス権確認を実行し、プロックに対する書き込み権の確認を行い、アクセス権が確認された場合にのみ、データ書き込みが実行される。
【0248】
図22には、
サーバAとサーバBが、メモリカードの保護領域のブロック#0に対するアクセス権を有し、
サーバCとサーバDが、メモリカードの保護領域のブロック#1に対するアクセス権を有する場合におけるデータ記録例を示している。
【0249】
サーバAは、メモリカードの汎用領域(General Purpose Area)に、以下のデータを記録する。
コンテンツ:Con(a1)、Con(a2)、Con(a3)
上記コンテンツに対応する利用制御情報(Usage Rule):UR(a1)、UR(a2)、UR(a3)、
上記コンテンツに対応するECSファイル(ECS File):ECS(a1)、ECS(a2)、ECS(a3)、
さらに、サーバAは、メモリカードの保護領域(Protected Area)のブロック#0に以下のデータを記録する。
上記コンテンツの復号に適用するタイトルキー:Kt(a1)、Kt(a2)、Kt(a3)の変換データ、
Kt(a1)(+)(UR(a1)||ECSSig(a1))hash
Kt(a2)(+)(UR(a2)||ECSSig(a2))hash
Kt(a3)(+)(UR(a3)||ECSSig(a3))hash
これらのデータを記録する。
【0250】
サーバBは、メモリカードの汎用領域(General Purpose Area)に、以下のデータを記録する。
コンテンツ:Con(b1)、Con(b2)
上記コンテンツに対応する利用制御情報(Usage Rule):UR(b1)、UR(b2)、
上記コンテンツに対応するECSファイル(ECS File):ECS(b1)、ECS(b2)、
【0251】
さらに、サーバBは、メモリカードの保護領域(Protected Area)のブロック#0に以下のデータを記録する。
上記コンテンツの復号に適用するタイトルキー:Kt(b1)、Kt(b2)の変換データ、
Kt(b1)(+)(UR(b1)||ECSSig(b1))hash
Kt(b2)(+)(UR(b2)||ECSSig(b2))hash
これらのデータを記録する。
【0252】
サーバCは、メモリカードの汎用領域(General Purpose Area)に、以下のデータを記録する。
コンテンツ:Con(c1)
上記コンテンツに対応する利用制御情報(Usage Rule):UR(c1)、
上記コンテンツに対応するECSファイル(ECS File):ECS(c1)、
【0253】
さらに、サーバCは、メモリカードの保護領域(Protected Area)のブロック#1に以下のデータを記録する。
上記コンテンツの復号に適用するタイトルキー:Kt(c1)の変換データ、
Kt(c1)(+)(UR(c1)||ECSSig(c1))hash
これらのデータを記録する。
【0254】
サーバDは、メモリカードの汎用領域(General Purpose Area)に、以下のデータを記録する。
コンテンツ:Con(d1)、Con(d2)
上記コンテンツに対応する利用制御情報(Usage Rule):UR(d1)、UR(d2)、
上記コンテンツに対応するECSファイル(ECS File):ECS(d1)、ECS(d2)、
【0255】
さらに、サーバDは、メモリカードの保護領域(Protected Area)のブロック#1に以下のデータを記録する。
上記コンテンツの復号に適用するタイトルキー:Kt(d1)、Kt(d2)の変換データ、
Kt(d1)(+)(UR(d1)||ECSSig(d1))hash
Kt(d2)(+)(UR(d2)||ECSSig(d2))hash
これらのデータを記録する。
【0256】
なお、コンテンツ再生を実行するユーザ装置(ホスト)は、再生対象コンテンツを汎用領域から選択した場合、そのタイトルキーの格納されている保護領域のブロックを特定するこが必要となる。
このブロック特定情報は、各コンテンツに対応する利用制御情報(UR)から取得する。
【0257】
図23を参照して利用制御情報の利用例について説明する。図23(a)に、メモリカードの汎用領域(General Purpose Area)に記録されたコンテンツa1に対応する利用制御情報(Usage Rule)a1の具体例を示す。
【0258】
利用制御情報(Usage Rule)には、
(1)ブロック識別子(#0)
(2)タイトルキー識別子(a1)
(3)ECSファイル識別子(a1)
これらのデータが記録される。
【0259】
(1)ブロック識別子は、
この利用制御情報(Usage Rule)UR−(a1)の対応コンテンツ:Con(a1)に対するタイトルキーKt(a1)の格納ブロックを示す情報である。
本例ではブロック識別子=#0であり、
コンテンツ再生を実行するユーザ装置(ホスト機器)は、ブロック#0を選択可能となる。
【0260】
(2)タイトルキー識別子は、
ブロック#0に格納された多数のタイトルキーのどのタイトルキーが、この利用制御情報(Usage Rule)UR(a1)の対応コンテンツ:Con(a1)に対するタイトルキーであるかを示す情報である。
本例では、タイトルキー識別子=a1であり、
タイトルキーKt(a1)が選択可能となる。
【0261】
(3)ECSファイル識別子(a1)は、
コンテンツ(a1)に対応するECSファイルを識別するための情報である。
【0262】
ユーザ装置(ホスト)は、利用制御情報:UR(a1)を参照して、利用対象コンテンツ:Con(a1)のタイトルキーの格納された保護領域のブロックがいずれのブロックであるかを確認し、そのブロックから、以下のデータを読み出す。
Kt(a1)(+)(UR(a1)||ECSSig(a1))hash
【0263】
次に、汎用領域から読み出した
利用制御情報:UR(a1)と、
ECSファイル:ECS(a1)に格納されたECS発行装置署名(ECSSig(xy))
これらの連結処理とハッシュ値算出処理を行う。
すなわち、
P(a1)=(UR(a1)||ECSSig(a1))hash
上記を算出する。
その後、以下の計算を行うことでタイトルキーKt(xy)を得る。
[ブロックからの読み出しデータ(タイトルキー変換データ)](+)P(xy)
=(Kt(a1)(+)(UR(a1)||ECSSig(a1))hash)(+)P(a1)
=(Kt(a1)(+)(UR(a1)||ECSSig(a1))hash)(+)(UR(a1)||ECSSig(a1))hash)
=Kt(a1)
このような計算処理によってタイトルキーKt(a1)を取得し、取得したタイトルキーによって暗号化コンテンツを復号して利用する。
【0264】
このように、メモリカードの保護領域に記録するタイトルキーは、
利用制御情報(UR)とECS発行装置署名(ECSSig)との連結データのハッシュ値との排他的論理和(XOR)演算結果として格納される。
このような処理を行うことで、ECS発行装置署名(ECSSig)に適用するECS発行装置の署名鍵(秘密鍵)の漏えいが発生した場合にもコンテンツの不正利用を防止することが可能となる。
【0265】
例えば、コンテンツ提供サーバやユーザ装置が、漏えいしたECS発行装置の署名鍵(秘密鍵)を適用した不正処理、具体的には、暗号化コンテンツのすげ替え処理などによるコンテンツ不正利用を防止可能となる。
【0266】
なお、すげ替えとは、例えば、あるコンテンツ(C1)に対応するタイトルキー(Kt1)を利用して他のコンテンツ(C2)、(C3)、(C4)・・・の暗号化を施してユーザに提供する処理などである。
このような処理を行うと、タイトルキー(Kt1)を有するユーザ装置では、その他のコンテンツ(C2)、(C3)、(C4)・・・を正規購入することなく、復号、再生することが可能となる。
【0267】
メモリカードの保護領域に記録するタイトルキーを、利用制御情報(UR)とECS発行装置署名(ECSSig)との連結データのハッシュ値との排他的論理和(XOR)演算結果として格納することで、上記のようなすげ替えを防止することができる。
【0268】
このすげ替え防止効果について図24以下を参照して説明する。
図24は、
(a)コンテンツ(C1)に対応する正当なデータ格納構成
(b)コンテンツ(C1)に対応するタイトルキー(Kt1)を利用してコンテンツ(C2)を暗号化したすげ替えデータのデータ格納構成を示している。
【0269】
図24(a)に示す正当データ格納構成では、
メモリカードの汎用領域に、
(a1)コンテンツ(C1)に対する正当なタイトルキー(Kt1)で暗号化された暗号化コンテンツ(C1(Kt1))
(a2)コンテンツ(C1)に対する正当な利用制御情報(UR1)
(a3)コンテンツ(C1)に対する正当な暗号化コンテンツ署名ファイル(ECSファイル:ECS1(C1,Kt1))
【0270】
なお、ECSファイルには、ECS発行装置署名(ECSSig)が格納されており、このECS発行装置署名(ECSSig)は、先に、図13を参照して説明したように、コンテンツ(C1)のハッシュリスト集合と、タイトルキー(Kt1)のハッシュ値を含むデータに基づいて生成された電子署名を含む。この署名データの生成元データを明示するため、ECSファイルは、ECS1(C1,Kt1)として記載している。
【0271】
また、図24(a)に示す正当データ格納構成では、
メモリカードの保護領域のブロックNに、タイトルキー(Kt1)の変換データ、すなわち、以下のデータが記録される。
Kt1(+)(UR1||ECS1Sig)hash
ただし、
UR1:コンテンツ1に対応する利用制御情報
ECS1Sig:コンテンツ1に対応するECSファイルの構成データであるECS発行装置署名(Signature by ECS Issuer)
また、演算子としての記号、
(+):排他的論理和演算
||:データの連結を意味し、a||bはデータaとデータbの連結データを意味する。
hash:ハッシュ値を意味し、(a||b)hashは、データaとデータbの連結データのハッシュ値を意味する。
【0272】
例えば、悪意のあるコンテンツ提供サーバは、このコンテンツ(C1)のタイトルキー(Kt1)を他のコンテンツ(C2)に対する暗号鍵として利用して、ユーザに提供する。
この不正コンテンツ配信の結果、メモリカードには、図24(b)に示す「すげ替えデータ」が格納される。
【0273】
図24(b)に示す「すげ替えデータ」格納構成では、
メモリカードの汎用領域に、
(b1)コンテンツ(C2)に対する不正なタイトルキー(Kt1)で暗号化された不正暗号化コンテンツ(C2(Kt1))
(b2)コンテンツ(C2)に不正に対応付けた利用制御情報(UR1)[=コンテン(C1)対応の利用制御情報(UR1)]
(b3)コンテンツ(C2)に対応させて不正に生成した暗号化コンテンツ署名ファイル(ECS2[=ECS2(C2,Kt1)]
【0274】
なお、不正なECSファイル:ECS2に格納されるECS発行装置署名(ECSSig)は、コンテンツ(C2)のハッシュリスト集合と、コンテンツ(C1)対応のタイトルキー(Kt1)のハッシュ値を含むデータに基づいて、漏えいしたECS発行装置の署名鍵(秘密鍵)によって生成した電子署名を含む。この署名データの生成元データを明示するため、ECSファイルは、ECS2(C2,Kt1)として記載している。
【0275】
また、図24(b)に示す「すげ替えデータ」格納構成では、
メモリカードの保護領域のブロックNに、タイトルキー(Kt1)の変換データ、すなわち、以下のデータが記録される。
Kt1(+)(UR1||ECS1Sig)hash
【0276】
この図24(b)に示す「すげ替えデータ」の記録処理シーケンスについて図25に示すフローチャートを参照して説明する。
なお、この図25に示す処理は、既に、図24(a)に示すコンテンツ(C1)に対応する正当なデータセットを格納したメモリカードを利用して実行され、メモリカードの保護領域のブロックNに対するアクセス権としてデータ読み取り処理の権利を有する装置、例えばコンテンツ提供サーバやユーザ装置によって実行される処理である。
【0277】
まず、ステップS201において、新たなコンテンツC2を用意する。
次に、ステップS202において、メモリカードの汎用領域に記録されたコンテンツ(C1)の利用制御情報(UR1)から、「ブロック識別子」及び「タイトルキー識別子」を取得し、これらの取得情報に基づいて、保護領域の所定ブロック、すなわちタイトルキー格納ブロックから、正当なコンテンツ(C1)に対応する以下のタイトルキー変換データを読み出す。
Kt1(+)(UR1||ECS1Sig)hash
なお、ECS1Sig=Sign(ECS署名鍵,M)
M=コンテンツC1のコンテンツハッシュリスト集合||Kt1ハッシュ値
である。
【0278】
次に、ステップS203において、汎用領域から読み出した正当なコンテンツ(C1)に対応する利用制御情報(UR1)とECSファイル(ECS1(C1,Kt1))の連結データのハッシュ値を算出し、算出結果と、保護領域から読み出した上記のタイトルキー変換データとの排他的論理和演算(XOR)を実行してコンテンツ(C1)に対応する正当なタイトルキー(Kt1)を取得する。
すなわち、
Kt1=(保護領域からの読み出しデータ)(+)(汎用領域からの読み出しデータ)
=Kt1(+)(UR1||ECS1Sig)hash(+)(UR1||ECS1Sig)hash
上記式に従ってタイトルキー(Kt1)を取得する。
なお、(+)は排他的論理和演算(XOR)を意味する。
【0279】
次に、ステップS204において、ステップS203で取得したタイトルキー(Kt1)を適用して新たなコンテンツC2の暗号化を実行する。
暗号化コンテンツC2(Kt1)を生成する。
【0280】
次に、ステップS205において、暗号化コンテンツC2(Kt1)をメモリカードの汎用領域に記録する。
【0281】
次に、ステップS206において、コンテンツC2から生成したコンテンツハッシュリスト集合及びKt1ハッシュ値に対する暗号化コンテンツ署名ECS2Sigを生成する。以下の署名データである。
ECS2Sig=Sign(ECS署名鍵,M)
ただし、
M=コンテンツC2のコンテンツハッシュリスト集合||Kt1ハッシュ値
である。
なお、署名生成には漏えいした暗号化コンテンツ署名発行装置の署名鍵(秘密鍵)を適用する。
【0282】
最後にステップS207において、ステップS206で不正に生成したECS署名(ECS2Sig(C2,Kt1))を含むECSファイルを生成してメモリカードの汎用領域に記録する。
【0283】
この図25に示す一連の処理によって図24(b)に示す「すげ替えデータ」の記録処理が終了する。
このようなすげ替え処理によって、コンテンツC2を、異なるコンテンツ(C1)のタイトルキー(Kt1)を適用して暗号化されたコンテンツC2(Kt1)が生成される。
なお、本例では、不正記録コンテンツC2(Kt1)に対応する利用制御情報として、コンテンツC1の利用制御情報(UR1)をそのまま利用するものとする。
【0284】
次に、図24(b)に示す「すげ替えデータ」を利用してコンテンツC2を再生するユーザ装置の処理について、図26に示すフローチャートを参照して説明する。
まず、ステップS221において、ユーザ装置は、メモリカードの汎用領域から再生予定の暗号化コンテンツC2(Kt1)と、このコンテンツに対して生成されたECSファイル(ECS2(C2,Kt1))を読み出す。
【0285】
次にステップS222において、メモリカードの汎用領域からコンテンツC2に対応付けて記録されている利用制御情報(UR1)からタイトルキーの格納ブロックを示すブロック識別子を読み取る。
前述したように、本例では、不正記録コンテンツC2(Kt1)に対応する利用制御情報として、コンテンツC1の利用制御情報(UR1)をそのまま利用する。
【0286】
先に図23を参照して説明したように、利用制御情報(UR)には、タイトルキーを格納したブロック識別子、タイトルキー識別子等が記録されている。
ステップS222では、コンテンツC1の利用制御情報(UR1)からブロック識別子、タイトルキー識別子を読み取る。
このブロック識別子、タイトルキー識別子は、コンテンツC1に対する正当なタイトルキーKt1の格納されたブロックと、そのブロックに格納されたタイトルキーに対応する識別子である。
したがって、読み取りデータは、コンテンツC1に対するタイトルキー変換データ、すなわち、
Kt1(+)(UR1||ECS1Sig)hash
となる。
【0287】
次に、ステップS223において、汎用領域から読み出した利用制御情報(UR1)とコンテンツC2に対応して不正に生成したECSファイル(ECS2(C2,Kt1))の連結データのハッシュ値を算出し、算出結果と、保護領域から読み出した上記のタイトルキー変換データとの排他的論理和演算(XOR)を実行してコンテンツC2に対応する復号用のタイトルキーKt2の取得を試みる。
ここでは、Kt2=Kt1となるタイトルキーKt2が得られればタイトルキーの取得に成功したことになる。
【0288】
すなわち、以下の式に従ってタイトルキー算出処理を試みる。
Kt2=(保護領域からの読み出しデータ)(+)(汎用領域からの読み出しデータ)
=Kt1(+)(UR1||ECS2Sig)hash(+)(UR1||ECS1Sig)hash
上記タイトルキー算出式に従ってタイトルキー(Kt2)の取得を試みる。
なお、(+)は排他的論理和演算(XOR)を意味する。
【0289】
しかし、上記タイトルキー算出式において、
ECS2Sig≠ECS1Sig
であるため、
上記算出式によってえられる値:Kt2は、Kt1とは異なる値、すなわち、
Kt2≠Kt1
となる。
【0290】
この結果、ユーザ装置は、コンテンツC2の暗号化に適用したタイトルキーKt1を取得することはできず、コンテンツC2の復号、再生は失敗する。ステップS224の処理である。
【0291】
また、ステップS225において、ユーザ装置は、予め規定された再生シーケンスに従って、汎用領域から読み出したECSファイルに含まれるECS発行装置署名(ECSSig)の検証処理を実行する。
以下の式に従って署名検証処理を行う。
Verify(ECS発行装置公開鍵,ECS2Sig,M)
ただし、
Verify(k,S,M)は、データMに対する電子署名Sを検証鍵kを用いて検証する処理を示す。
M=コンテンツC2のコンテンツハッシュリスト集合||Kt2ハッシュである。
Kt2は、ステップS223で算出した値を利用することになる。
【0292】
ECSファイルに格納したECS2Sigは、図25に示すフローのステップS206において生成した不正な署名であり、以下のデータである。
ECS2Sig=Sign(ECS署名鍵,M)
ただし、
M=コンテンツC2のコンテンツハッシュリスト集合||Kt1ハッシュ値
である。
【0293】
このように、
署名検証に適用するデータMは、Kt2ハッシュ値を含むデータであるのに対して、
ECSファイルに格納された署名データECS2Sigは、Kt1ハッシュを含むMに対して生成されている。
従って、このステップS225における署名検証は失敗する。図26のステップS226に記載の通りである。
【0294】
このように、ユーザ装置は、図24(b)に示す「すげ替えデータ」を適用してコンテンツC2の復号、再生を行おうとしても、
コンテンツC2の復号に失敗、
ECSファイルの署名検証に失敗、
これらの結果となり、結果としてコンテンツC2を利用することはできない。
【0295】
図24〜図26を参照して説明した処理例は、コンテンツC1のタイトルキーKt1を適用して、新たなコンテンツC2の暗号化と復号を試みた処理例であった。
次に、図27以下を参照して、コンテンツC1に対応する正しい利用制御情報(UR1)を不正に改ざんして、新たな利用制御情報(UR2)を生成した不正処理を行う場合の例について説明する。
利用制御情報には、例えば、コンテンツの利用期間情報やコピー制限情報などが記録されており、この利用制御情報の書き換えによって、利用可能期限を延長するといった不正が行われる可能性がある。
【0296】
図27は、先に説明した図24と同様、
(a)コンテンツ(C1)に対応する正当なデータ格納構成
(b)コンテンツ(C1)に対応するタイトルキー(Kt1)を利用してコンテンツ(C2)を暗号化したすげ替えデータのデータ格納構成を示している。
【0297】
図24(a)に示す正当データ格納構成では、
メモリカードの汎用領域に、
(a1)コンテンツ(C1)に対する正当なタイトルキー(Kt1)で暗号化された暗号化コンテンツ(C1(Kt1))
(a2)コンテンツ(C1)に対する正当な利用制御情報(UR1)
(a3)コンテンツ(C1)に対する正当な暗号化コンテンツ署名ファイル(ECSファイル:ECS1(C1,Kt1))
【0298】
なお、ECSファイルには、ECS発行装置署名(ECSSig)が格納されており、このECS発行装置署名(ECSSig)は、先に、図13を参照して説明したように、コンテンツ(C1)のハッシュリスト集合と、タイトルキー(Kt1)のハッシュ値を含むデータに基づいて生成された電子署名を含む。この署名データの生成元データを明示するため、ECSファイルは、ECS1(C1,Kt1)として記載している。
【0299】
また、図27(a)に示す正当データ格納構成では、
メモリカードの保護領域のブロックNに、タイトルキー(Kt1)の変換データ、すなわち、以下のデータが記録される。
Kt1(+)(UR1||ECS1Sig)hash
ただし、
UR1:コンテンツ1に対応する利用制御情報
ECS1Sig:コンテンツ1に対応するECSファイルの構成データであるECS発行装置署名(Signature by ECS Issuer)
また、演算子としての記号、
(+):排他的論理和演算
||:データの連結を意味し、a||bはデータaとデータbの連結データを意味する。
hash:ハッシュ値を意味し、(a||b)hashは、データaとデータbの連結データのハッシュ値を意味する。
【0300】
例えば、悪意のあるコンテンツ提供サーバやユーザ装置は、このコンテンツ(C1)の利用制御情報(UR1)の書き換えを行う。
この不正処理の結果、メモリカードには、図27(b)に示す「すげ替えデータ」が格納される。
【0301】
図27(b)に示す「すげ替えデータ」格納構成では、
メモリカードの汎用領域に、
(b1)コンテンツ(C1)に対する不正生成したタイトルキー(Kt2)で暗号化された不正暗号化コンテンツ(C1(Kt2))
(b2)コンテンツ(C1)に対応させて不正に生成した利用制御情報(UR2)
(b3)コンテンツ(C1)に対応させて不正に生成した暗号化コンテンツ署名ファイル(ECS2[=ECS2(C1,Kt2)]
【0302】
なお、不正なECSファイル:ECS2に格納されるECS発行装置署名(ECSSig)は、コンテンツ(C1)のハッシュリスト集合と、不正生成したタイトルキー(Kt2)のハッシュ値を含むデータに基づいて、漏えいしたECS発行装置の署名鍵(秘密鍵)によって生成した電子署名を含む。この署名データの生成元データを明示するため、ECSファイルは、ECS2(C1,Kt2)として記載している。
【0303】
また、図27(b)に示す「すげ替えデータ」格納構成では、
メモリカードの保護領域のブロックNに、タイトルキー(Kt1)の変換データ、すなわち、以下のデータが記録される。
Kt1(+)(UR1||ECS1Sig)hash
【0304】
この図27(b)に示す「すげ替えデータ」の記録処理シーケンスについて図28に示すフローチャートを参照して説明する。
なお、この図28に示す処理は、既に、図27(a)に示すコンテンツ(C1)に対応する正当なデータセットを格納したメモリカードを利用して実行され、メモリカードの保護領域のブロックNに対するアクセス権としてデータ記録処理の権利を有する装置、例えばコンテンツ提供サーバやユーザ装置によって実行される処理である。
【0305】
まず、ステップS241において、コンテンツC1対応の利用制御情報UR1を汎用領域から読み出して、例えば利用期限情報などの書き換え等の改ざんを行い不正な利用制御情報(UR2)を生成する。
【0306】
次に、ステップS242において、メモリカードの汎用領域に記録されたコンテンツ(C1)の利用制御情報(UR1)から、「ブロック識別子」及び「タイトルキー識別子」を取得し、これらの取得情報に基づいて、保護領域の所定ブロック、すなわちタイトルキー格納ブロックから、正当なコンテンツ(C1)に対応する以下のタイトルキー変換データを読み出す。
Kt1(+)(UR1||ECS1Sig)hash
なお、ECS1Sig=Sign(ECS署名鍵,M)
M=コンテンツC1のコンテンツハッシュリスト集合||Kt1ハッシュ値
である。
【0307】
次に、ステップS243において、汎用領域から読み出した正当なコンテンツ(C1)に対応する利用制御情報(UR1)とECSファイル(ECS1(C1,Kt1))の連結データのハッシュ値を算出し、算出結果と、保護領域から読み出した上記のタイトルキー変換データとの排他的論理和演算(XOR)を実行してコンテンツ(C1)に対応する正当なタイトルキー(Kt1)を取得する。
すなわち、
Kt1=(汎用領域からの読み出しデータ)(+)(保護領域からの読み出しデータ)
=(UR1||ECS1Sig)hash(+)Kt1(+)(UR1||ECS1Sig)hash
上記式に従ってタイトルキー(Kt1)を取得する。
なお、(+)は排他的論理和演算(XOR)を意味する。
【0308】
さらに、コンテンツC2の暗号化と復号に適用するタイトルキーK2を以下の式に従って算出する。
Kt2=(Kt1(+)(UR1||ECS1Sig)hash(+)(UR2||ECS1Sig)hash
【0309】
次に、ステップS244において、ステップS243で生成したタイトルキーKt1を適用してコンテンツC1(Kt1)を復号し、さらに、ステップS243で生成した新たなタイトルキーKt2を適用してコンテンツC1暗号化してアンゴウカコンテンツC1(Kt2)を生成する。
【0310】
次に、ステップS245において、暗号化コンテンツC2(Kt2)をメモリカードの汎用領域に記録する。
【0311】
次に、ステップS246において、コンテンツC1から生成したコンテンツハッシュリスト集合及びKt2ハッシュ値に対する暗号化コンテンツ署名ECS2Sigを生成する。以下の署名データである。
ECS2Sig=Sign(ECS署名鍵,M)
ただし、
M=コンテンツC1のコンテンツハッシュリスト集合||Kt2ハッシュ値
である。
なお、署名生成には漏えいした暗号化コンテンツ署名発行装置の署名鍵(秘密鍵)を適用する。
【0312】
次に、ステップS247において、ステップS246で不正に生成したECS署名(ECS2Sig(C1,Kt1))を含むECSファイルを生成してメモリカードの汎用領域に記録する。
最後に、ステップS248において、ステップS241で生成した利用制御情報UR2を汎用領域に記録する。
この図28に示す一連の処理によって図27(b)に示す「すげ替えデータ」の記録処理が終了する。
このようなすげ替え処理によって、コンテンツC1に対して不正に生成した利用制御情報(UR2)が対応づけられる。なお、コンテンツC1は新たなタイトルキーKt2によって暗号化されて記録される。
【0313】
次に、図27(b)に示す「すげ替えデータ」を利用してコンテンツC1を再生するユーザ装置の処理について、図29に示すフローチャートを参照して説明する。
まず、ステップS261において、ユーザ装置は、メモリカードの汎用領域から再生予定の暗号化コンテンツC1(Kt2)と、このコンテンツに対して生成されたECSファイル(ECS2(C1,Kt2))を読み出す。
【0314】
次にステップS262において、メモリカードの汎用領域からコンテンツC1に対応付けて不正に生成した新たな利用制御情報(UR2)からタイトルキーの格納ブロックを示すブロック識別子、タイトルキー識別子を読み取る。
このブロック識別子、タイトルキー識別子は、改ざん前の正当な利用制御情報(UR1)のままに設定されている。
すなわち、このブロック識別子、タイトルキー識別子は、コンテンツC1に対する正当なタイトルキーKt1の格納されたブロックと、そのブロックに格納されたタイトルキーに対応する識別子である。
したがって、読み取りデータは、コンテンツC1に対するタイトルキー変換データ、すなわち、
Kt1(+)(UR1||ECS1Sig)hash
となる。
【0315】
次に、ステップS263において、汎用領域から読み出した不正に生成した利用制御情報(UR2)と不正に生成したECSファイル(ECS2(C1,Kt2))の連結データのハッシュ値を算出し、算出結果と、保護領域から読み出した上記のタイトルキー変換データとの排他的論理和演算(XOR)を実行してコンテンツC1に対応する復号用のタイトルキーKt3の取得を試みる。
ここでは、Kt3=Kt2となるタイトルキーKt3が得られればタイトルキーの取得に成功したことになる。
【0316】
ステップS263では、以下の式に従ってタイトルキー算出処理を試みる。
Kt3=(保護領域からの読み出しデータ)(+)(汎用領域からの読み出しデータ)
=Kt1(+)(UR1||ECS1Sig)hash(+)(UR2||ECS2Sig)hash
上記タイトルキー算出式に従ってタイトルキー(Kt3)を生成する。
なお、(+)は排他的論理和演算(XOR)を意味する。
【0317】
しかし、上記タイトルキー算出式において、
Kt2は得られない。
上記算出式によってえられる値:Kt3は、Kt1ともKt2とも異なる値、すなわち、
Kt3≠Kt2
Kt3≠Kt1
となる。
【0318】
この結果、ユーザ装置は、コンテンツC1の再暗号化に適用したタイトルキーKt2を取得することはできず、コンテンツC1の復号、再生は失敗する。ステップS264の処理である。
【0319】
また、ステップS265において、ユーザ装置は、予め規定された再生シーケンスに従って、汎用領域から読み出したECSファイルに含まれるECS発行装置署名(ECSSig)の検証処理を実行する。
以下の式に従って署名検証処理を行う。
Verify(ECS発行装置公開鍵,ECS2Sig,M)
ただし、
Verify(k,S,M)は、データMに対する電子署名Sを検証鍵kを用いて検証する処理を示す。
M=コンテンツC1のコンテンツハッシュリスト集合||Kt3ハッシュである。
Kt3は、ステップS263で算出した値を利用することになる。
【0320】
ECSファイルに格納したECS2Sigは、図28に示すフローのステップS246において生成した不正な署名であり、以下のデータである。
ECS2Sig=Sign(ECS署名鍵,M)
ただし、
M=コンテンツC1のコンテンツハッシュリスト集合||Kt2ハッシュ値
である。
【0321】
このように、
署名検証に適用するデータMは、Kt3ハッシュ値を含むデータであるのに対して、
ECSファイルに格納された署名データECS2Sigは、Kt2ハッシュを含むMに対して生成されている。
従って、このステップS265における署名検証は失敗する。図29のステップS266に記載の通りである。
【0322】
このように、ユーザ装置は、図27(b)に示す「すげ替えデータ」を適用してコンテンツC1の復号、再生を行おうとしても、
コンテンツC1の復号に失敗、
ECSファイルの署名検証に失敗、
これらの結果となり、結果としてコンテンツC1を利用することはできない。
【0323】
このように、メモリカードの保護領域に記録するタイトルキーを、
利用制御情報(UR)とECS発行装置署名(ECSSig)との連結データのハッシュ値との排他的論理和(XOR)演算結果として格納することで、ECS発行装置署名(ECSSig)に適用するECS発行装置の署名鍵(秘密鍵)の漏えいが発生した場合にもコンテンツの不正利用を防止することが可能となる。
【0324】
例えば、コンテンツ提供サーバやユーザ装置が、漏えいしたECS発行装置の署名鍵(秘密鍵)を適用した不正処理、具体的には、暗号化コンテンツの暗号鍵のすげ替え処理や、利用制御情報の改ざんなどによるコンテンツ不正利用を防止可能となる。
【0325】
[11.暗号化コンテンツ署名(ECS)ファイルに記録したブロック識別子の適用処理について]
次に、暗号化コンテンツ署名(ECS)ファイルに記録したブロック識別子(PAD Block Number)の適用処理について説明する。
【0326】
先に、図9を参照して説明したように、暗号化コンテンツ署名(ECS)ファイルには、ブロック識別子(PAD Block Number)が記録される。
ブロック識別子(PAD Block Number)は、図13を参照して説明したように、コンテンツ提供装置(Content Server)103から、暗号化コンテンツ署名(ECS)発行装置102に通知されるデータであり、コンテンツ提供装置103がユーザ装置104に対して提供したコンテンツに対応する暗号鍵であるタイトルキーを格納したメディアの保護領域のブロックの識別子である。これは、コンテンツ提供装置103が利用可能なメディアの保護領域におけるブロックの識別子である。
先に、図3、図6等を参照して説明したように、コンテンツ提供装置の利用可能なメディアの保護領域のブロックは予め設定されており、これらのアクセス許容ブロック情報が記録される。
【0327】
また、このブロック識別子(PAD Block Number)に対応する情報は、図9を参照して説明したようにECS発行装置証明書にも記録される。
先に、図9を参照して説明したように、
(a)ブロック識別子開始番号(Start PAD Block Number)
(b)ブロック識別子範囲(PAD Block Number Counter)
である。
【0328】
(a)ブロック識別子開始番号(Start PAD Block Number)は、ECS発行装置102が、コンテンツ提供装置103に対して許容可能なメディアの保護領域のアクセス許容ブロックの開始番号である。
(b)ブロック識別子範囲(PAD Block Number Counter)は、ECS発行装置102が、コンテンツ提供装置103に対して許容可能なメディアの保護領域のアクセス許容ブロックの開始番号からの範囲を示す情報である。
【0329】
さらに、先に図23を参照して説明したように、ブロック識別子は、コンテンツ対応の利用制御情報(UR)にも記録される。利用制御情報(UR)に記録されるブロック識別子は、コンテンツに対応するタイトルキーを格納したブロックを示すブロック識別子である。
【0330】
図30に、
暗号化コンテンツ署名(ECS)ファイル、
利用制御情報(UR)、
これらに記録されたブロック識別子と保護領域のタイトルキー格納ブロック(図に示す例ではブロックk)との対応関係を示す。
【0331】
図30に示すように、メモリカードの汎用領域にはコンテンツに対応する、
暗号化コンテンツ署名(ECS)ファイル、
利用制御情報(UR)、
これらのデータが格納される。
また、保護領域のブロックkには、
コンテンツに対応するタイトルキーの変換データ、すなわち、
Kt(+)UR||ECSSig)hash
が格納される。
【0332】
ユーザ装置に対して、コンテンツを提供するコンテンツ提供装置は、自己の有するホスト証明書(図5参照)に記録された保護領域アクセス権情報としてのブロック識別子と、ECS発行装置証明書中のブロック識別子としての書き込み許容ブロック領域情報とを比較する。
この比較結果に応じて、コンテンツ提供の可否を判定する。
【0333】
また、コンテンツ再生を行うユーザ装置は、利用制御情報中のブロック識別子とECSファイル中のブロック識別子とを比較する。
この比較結果に応じて、コンテンツ再生の可否を判定する。
【0334】
まず、コンテンツ提供サーバにおけるブロック識別子を利用したコンテンツ提供の可否判定シーケンスについて図31に示すフローチャートを参照して説明する。
【0335】
なお、図31に示すフローチャートのステップS401の前処理として、コンテンツ提供装置は、暗号化コンテンツ署名ファイル(ECSファイル)発行装置から受信した暗号化コンテンツ署名ファイル(ECSファイル)に設定されたECS発行装置署名を適用した署名検証を実行する。
この署名検証が成立し、暗号化コンテンツ署名ファイル(ECSファイル)の正当性が確認され場合は、さらに、暗号化コンテンツ署名ファイル(ECSファイル)に格納されたECS発行装置証明書の署名検証を実行する。これらの2つの署名検証が成立したことを条件としてステップS401以下の処理を行う。
【0336】
上記2つの署名検証の少なくともいずれかが成立しなかった場合は、暗号化コンテンツ署名ファイル(ECSファイル)またはECS発行装置証明書の正当性が確認されないので、ステップS401以下の処理は実行されない。この場合はコンテンツ提供処理も実行しないことになる。
なお、暗号化コンテンツ署名ファイル(ECSファイル)に格納されるコンテンツハッシュリスト集合の元データであるコンテンツハッシュは、暗号化コンテンツのハッシュまたは暗号化前のコンテンツのハッシュ、いずれの設定としてもよい。
【0337】
暗号化コンテンツ署名ファイル(ECSファイル)と、ECS発行装置証明書の2つの署名検証が成立し、暗号化コンテンツ署名ファイル(ECSファイル)とECS発行装置証明書の正当性が確認された場合、コンテンツ提供装置は、ステップS401の処理を実行する。
コンテンツ提供装置は、まず、ステップS401において、ECSファイル内のECS発行装置証明書を読み出して、ECS発行装置証明書に記録されたブロック識別子情報を読み出す。
【0338】
このステップS401の処理の詳細について、図32に示すフローを参照して説明する。
ステップS421において、ECS発行装置証明書内のブロック識別子開始番号(Start PAD Block Number )を読みだす。
ブロック識別子開始番号(Start PAD Block Number)は、ECS発行装置102が、コンテンツ提供装置103に対して許容したメディアの保護領域のアクセス許容ブロックの開始番号である。
【0339】
次に、ステップS422において、ECS発行装置証明書内のブロック識別子開始番号(Start PAD Block Number)が0xFFFFFFFFであるか否かを判定する。
なお、ブロック識別子開始番号(Start PAD Block Number)が0xFFFFFFFFである場合は全ブロックに対するアクセス許容が設定された状態に対応する。
【0340】
ステップS422において、ブロック識別子開始番号(Start PAD Block Number)が0xFFFFFFFFであると判定した場合は、ステップS423に進み、メディアの保護領域に設定された前ブロックをアクセス許容ブロックとみなす。
【0341】
一方、ステップS422において、ブロック識別子開始番号(Start PAD Block Number)が0xFFFFFFFFでないと判定した場合は、ステップS424に進む。
ステップS424では、ECS発行装置証明書内のブロック識別子範囲情報(PAD Block Number Counter)を読みだす。
ブロック識別子範囲(PAD Block Number Counter)は、ECS発行装置102が、コンテンツ提供装置103に対して許容可能なメディアの保護領域のアクセス許容ブロックの開始番号からの範囲を示す情報である。
【0342】
次のステップS425〜S428の処理は、ブロック識別子を示す変数Iを0から順次、1,2,3・・とインクリメントして実行する繰り返しルーチンである。
まずステップS425において
変数:I=1とする。
【0343】
次に、ステップS426において、ブロック識別子開始番号(Start PAD Block Number)+Iをブロック識別子リスト(PAD Block Number List)に追加する。
【0344】
次に、ステップS427において、
I=I+1
とする。
【0345】
次に、ステップS428において、Iがブロック識別子範囲情報(PAD Block Number Counter)と等しいか否かを判定する。
等しければ、処理を終了する。等しくなければ、ステップS426に戻り、処理を繰り返す。
この処理に従って、図31に示すフローのステップS401の処理が行われる。
【0346】
ステップS401では、ECS発行装置証明書内のブロック識別子開始番号(Start PAD Block Number)と、ブロック識別子範囲情報(PAD Block Number Counter)を適用して、ECS発行装置証明書において規定されたアクセス許容範囲を算出しこれをアクセス許容ブロック識別子リストとして設定する。
【0347】
次に、ステップS402において、ステップS401で生成したアクセス許容ブロック識別子リストに、暗号化コンテンツ署名(ECS)ファイルの記録データとして記載されたブロック識別子(PAD Block Number)が含まれるか否かを判定する。
【0348】
含まれていなければ、ステップS405に進み、ユーザ装置に対するコンテンツ提供処理は実行しない。
一方、含まれている場合は、ステップS403に進む。
【0349】
ステップS403では、暗号化コンテンツ署名(ECS)ファイルの記録データとして記載されたブロック識別子(PAD Block Number)が、利用制御情報(UR)に記録されたブロック識別子と一致するか否かを判定する。
一致しなければ、ステップS405に進み、ユーザ装置に対するコンテンツ提供処理は実行しない。
一方、一致した場合は、ステップS404に進み、ユーザ装置に対するコンテンツ提供を実行する。
【0350】
このように、コンテンツ提供装置は、
(a)暗号化コンテンツ署名(ECS)ファイルに記録されたブロック識別子(PAD Block Number)が、ECS発行装置証明書に記録されたアクセス許容ブロックの範囲内であること、
(b)暗号化コンテンツ署名(ECS)ファイルに記録されたブロック識別子(PAD Block Number)が、利用制御情報(UR)に記録されたブロック識別子に一致すること、
これら(a)、(b)の条件を満足するか否かを判定し、満足する場合にのみ、ユーザ装置に対するコンテンツ提供を実行する。
【0351】
次に、図33に示すフローチャートを参照して、コンテンツ再生処理を実行するユーザ装置におけるブロック識別子の適用処理について説明する。
【0352】
なお、ユーザ装置は、図33に示すステップS451以前に、コンテンツ提供装置から受信した暗号化コンテンツ署名ファイル(ECSファイル)に設定されたECS発行装置署名を適用した署名検証を実行する。
この署名検証が成立し、暗号化コンテンツ署名ファイル(ECSファイル)の正当性が確認され場合は、さらに、暗号化コンテンツ署名ファイル(ECSファイル)に格納されたECS発行装置証明書の署名検証を実行する。これらの2つの署名検証が成立したことを条件としてステップS451以下の処理を行う。
【0353】
上記2つの署名検証の少なくともいずれかが成立しなかった場合は、暗号化コンテンツ署名ファイル(ECSファイル)またはECS発行装置証明書の正当性が確認されないので、ステップS451以下の処理は実行されない。この場合はコンテンツ再生処理も実行しないことになる。
【0354】
暗号化コンテンツ署名ファイル(ECSファイル)と、ECS発行装置証明書の2つの署名検証が成立し、暗号化コンテンツ署名ファイル(ECSファイル)とECS発行装置証明書の正当性が確認された場合、ユーザ装置は、ステップS451の処理を実行する。
【0355】
ステップS451は、先にサーバ提供装置の処理として説明した図31に示すフローのステップS401の処理と同様の処理である。すなわち、図32に示すフローを参照して詳細を説明したように、ECS発行装置証明書内のブロック識別子開始番号(Start PAD Block Number)と、ブロック識別子範囲情報(PAD Block Number Counter)を適用して、ECS発行装置証明書において規定されたアクセス許容範囲を算出しこれをアクセス許容ブロック識別子リストとして設定する。
【0356】
次に、ステップS452において、ステップS451で生成したアクセス許容ブロック識別子リストに、暗号化コンテンツ署名(ECS)ファイルの記録データとして記載されたブロック識別子(PAD Block Number)が含まれるか否かを判定する。
【0357】
含まれていなければ、ステップS455に進み、コンテンツ再生処理は実行しない。
一方、含まれている場合は、ステップS453に進む。
【0358】
ステップS453では、暗号化コンテンツ署名(ECS)ファイルの記録データとして記載されたブロック識別子(PAD Block Number)が、利用制御情報(UR)に記録されたブロック識別子と一致するか否かを判定する。
一致しなければ、ステップS455に進み、コンテンツ再生処理は実行しない。
一方、一致した場合は、ステップS454に進み、コンテンツ再生を実行する。
【0359】
なお、コンテンツ再生処理の開始前に、さらに、暗号化コンテンツの復号に適用するタイトルキーの取得や生成処理、さらに、暗号化コンテンツ署名ファイルに含まれるコンテンツハッシュリストを適用したハッシュ値照合処理を実行する。ハッシュ値照合において照合が成立し、コンテンツの改ざんのないことが確認された場合にコンテンツの再生が許容されることになる。
【0360】
このように、コンテンツ再生を実行するユーザ装置は、
(a)暗号化コンテンツ署名(ECS)ファイルに記録されたブロック識別子(PAD Block Number)が、ECS発行装置証明書に記録されたアクセス許容ブロックの範囲内であること、
(b)暗号化コンテンツ署名(ECS)ファイルに記録されたブロック識別子(PAD Block Number)が、利用制御情報(UR)に記録されたブロック識別子に一致すること、
これら(a)、(b)の条件を満足するか否かを判定し、満足する場合にのみ、コンテンツ再生を実行する。
【0361】
[12.各装置のハードウェア構成例について]
最後に、図34を参照して、上述した処理を実行する各装置のハードウェア構成例について説明する。
図34は、図7、図8に示すユーザ装置104、コンテンツ提供装置103、暗号化コンテンツ署名発行装置102、ライセンス発行装置101のいずれにも適用可能な情報処理装置のハードウェア構成例を示している。
【0362】
CPU(Central Processing Unit)701は、ROM(Read Only Memory)702、または記憶部708に記憶されているプログラムに従って各種の処理を実行するデータ処理部として機能する。例えば、上述した各フローチャートに従った処理を実行する。RAM(Random Access Memory)703には、CPU701が実行するプログラムやデータなどが適宜記憶される。これらのCPU701、ROM702、およびRAM703は、バス704により相互に接続されている。
【0363】
CPU701はバス704を介して入出力インタフェース705に接続され、入出力インタフェース705には、各種スイッチ、キーボード、マウス、マイクロホンなどよりなる入力部706、ディスプレイ、スピーカなどよりなる出力部707が接続されている。CPU701は、入力部706から入力される指令に対応して各種の処理を実行し、処理結果を例えば出力部707に出力する。
【0364】
入出力インタフェース705に接続されている記憶部708は、例えばハードディスク等からなり、CPU701が実行するプログラムや各種のデータを記憶する。通信部709は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【0365】
入出力インタフェース705に接続されているドライブ710は、磁気ディスク、光ディスク、光磁気ディスク、あるいはメモリカード等の半導体メモリなどのリムーバブルメディア711を駆動し、記録されているコンテンツや鍵情報等の各種データを取得する。例えば、取得されたコンテンツや鍵データを用いて、CPUによって実行する再生プログラムに従ってコンテンツの復号、再生処理などが行われる。
【0366】
図35は、情報記憶装置であるメモリカードのハードウェア構成例を示している。
CPU(Central Processing Unit)801は、ROM(Read Only Memory)802、または記憶部807に記憶されているプログラムに従って各種の処理を実行するデータ処理部として機能する。例えば、上述の各実施例において説明したサーバやホスト機器との通信処理やデータの記憶部807に対する書き込み、読み取り等の処理、記憶部807の保護領域811の区分領域単位のアクセス可否判定処理等を実行する。RAM(Random Access Memory)803には、CPU801が実行するプログラムやデータなどが適宜記憶される。これらのCPU801、ROM802、およびRAM803は、バス804により相互に接続されている。
【0367】
CPU801はバス804を介して入出力インタフェース805に接続され、入出力インタフェース805には、通信部806、記憶部807が接続されている。
【0368】
入出力インタフェース805に接続されている通信部804は、例えばサーバやホストとの通信を実行する。記憶部807は、データの記憶領域であり、先に説明したようにアクセス制限のある保護領域(Protected Area)811、自由にデータ記録読み取りができる汎用領域(General Purpose Area)812を有する。
【0369】
なお、上述した実施例では、コンテンツ提供装置が提供するコンテンツは暗号化コンテンツである例を代表例として説明したが、本開示の構成は、提供コンテンツが暗号化コンテンツである場合に限らず、暗号化されていない平文コンテンツである場合にも適用可能である。なお、コンテンツが平文コンテンツである場合、上述の実施例で説明したタイトルキーは既知のデータ列、例えばオール0の値からなるキーデータであるものとして、上述した暗号化コンテンツの提供処理と同様の処理を行うことができる。
【0370】
[13.本開示の構成のまとめ]
以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【0371】
なお、本明細書において開示した技術は、以下のような構成をとることができる。
(1) 暗号化コンテンツおよび暗号化コンテンツの復号に適用する暗号鍵を格納する記憶部を有し、
前記記憶部は、前記暗号鍵を前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名との演算によって生成された変換暗号鍵を格納し、
前記電子署名は、前記暗号化コンテンツの構成データおよび前記暗号鍵を含むデータに対する電子署名であり、
前記記憶部から前記暗号化コンテンツを読み出して復号処理を実行する再生装置に、前記変換暗号鍵に対する電子署名の適用演算による暗号鍵取得を行わせることを可能とした情報記憶装置。
【0372】
(2)前記変換暗号鍵は、前記暗号化コンテンツに対応して設定される利用制御情報と、前記電子署名との連結データに対するハッシュ値と、前記暗号鍵との排他的論理和演算結果である前記(1)に記載の情報記憶装置。
(3)前記記憶部は、アクセス制限の設定された保護領域を有し、前記変換暗号鍵を、前記保護領域に格納した構成である前記(1)または(2)に記載の情報記憶装置。
(4)前記情報記憶装置は、前記保護領域に対するアクセス要求装置から受領した証明書に基づいて、前記保護領域に対するアクセス可否を判定するデータ処理部を有する前記(3)に記載の情報記憶装置。
【0373】
(5)前記記憶部は、アクセス制限の設定された保護領域と、アクセス制限のない汎用領域を有し、前記変換暗号鍵を、前記保護領域に格納し、前記暗号化コンテンツと、前記暗号化コンテンツ署名ファイルを、前記汎用領域に格納した構成である前記(1)〜(4)いずれかに記載の情報記憶装置。
(6)前記電子署名は、前記暗号化コンテンツの構成データおよび前記暗号鍵、さらに、前記暗号化コンテンツ署名ファイルの構成データを含むデータに対する電子署名である前記(1)〜(5)いずれかに記載の情報記憶装置。
(7)前記電子署名は、前記暗号化コンテンツ署名ファイルの構成データである前記暗号化コンテンツ署名ファイルの発行日時情報を含むデータに対する電子署名である前記(6)に記載の情報記憶装置。
【0374】
(8) メディアに記録された暗号化コンテンツの復号および再生処理を実行するデータ処理部を有し、
前記データ処理部は、
前記暗号化コンテンツの復号処理に際して、前記メディアに記録された前記暗号化コンテンツの復号に適用する暗号鍵の変換データである変換暗号鍵を読み出し、該変換暗号鍵に対する演算処理を実行して暗号鍵の取得処理を実行し、
前記変換暗号鍵は、
前記暗号鍵を前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名との演算によって生成された変換暗号鍵であり、
前記データ処理部は、
前記メディアに記録された暗号化コンテンツ署名ファイルの構成データである電子署名を取得し、取得した電子署名を適用した演算処理を実行して暗号鍵の取得処理を実行する情報処理装置。
【0375】
(9)前記電子署名は、前記暗号化コンテンツの構成データおよび前記暗号鍵を含むデータに対する電子署名である前記(8)に記載の情報処理装置。
(10)前記変換暗号鍵は、前記暗号化コンテンツに対応して設定される利用制御情報と、前記電子署名との連結データに対するハッシュ値と、前記暗号鍵との排他的論理和演算結果であり、前記データ処理部は、前記メディアに記録された暗号化コンテンツ署名ファイルの構成データである電子署名と、前記メディアに記録された利用制御情報を取得し、取得したデータを適用した演算処理を実行して暗号鍵の取得処理を実行する前記(8)または(9)に記載の情報処理装置。
(11)前記データ処理部は、前記メディアに記録された暗号化コンテンツ署名ファイルの構成データである電子署名に対する署名検証処理を実行し、該署名検証処理に成功し、前記暗号化コンテンツ署名ファイルの正当性を確認したことを条件として、前記暗号鍵の取得処理を行う前記(8)〜(10)いずれかに記載の情報処理装置。
【0376】
(12) メディアに記録する暗号化コンテンツと、該暗号化コンテンツの復号に適用する暗号鍵の変換データである変換暗号鍵を出力するデータ処理部を有し、
前記データ処理部は、
前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名であり、前記暗号化コンテンツの構成データおよび前記暗号鍵を含むデータに対する電子署名と、前記暗号鍵の演算処理により、前記変換暗号鍵を生成する情報処理装置。
(13)前記データ処理部は、前記暗号化コンテンツに対応して設定される利用制御情報と、前記電子署名との連結データに対するハッシュ値と、前記暗号鍵との排他的論理和演算を実行して前記変換暗号鍵を生成する前記(12)に記載の情報処理装置。
【0377】
さらに、上記した装置およびシステムにおいて実行する処理の方法や、処理を実行させるプログラムも本開示の構成に含まれる。
【0378】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LAN(Local Area Network)、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【0379】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【0380】
以上、説明したように、本開示の一実施例の構成によれば、コンテンツの不正利用を効果的に防止する装置、方法が実現される。
具体的には、暗号化コンテンツの復号処理に際して、メディアに記録された暗号化コンテンツの復号に適用する暗号鍵の変換データである変換暗号鍵を読み出し、変換暗号鍵に対する演算処理を実行して暗号鍵の取得処理を実行する。変換暗号鍵は、暗号鍵と、暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名との演算によって生成された変換暗号鍵であり、再生装置は、メディアに記録された暗号化コンテンツ署名ファイルの構成データである電子署名を取得し、取得した電子署名を適用した演算処理を実行して暗号鍵の取得処理を実行する。電子署名は、暗号化コンテンツの構成データおよび暗号鍵を含むデータに対する電子署名として設定される。
この暗号化コンテンツ署名ファイルの署名データを変換暗号鍵の構成データとすることで、鍵の掛け替え処理などによるコンテンツ不正利用を防止することが可能となる。
【符号の説明】
【0381】
11 放送局
12 コンテンツサーバ
21 記録再生専用器
22 PC
23 携帯端末
31 メモリカード
51 保護領域(Protected Area)
52 汎用領域(General Purpose Area)
61 サーバA
62 サーバB
63 ホスト
64 サーバC
65 サーバD
70 メモリカード
80 保護領域(Protected Area)
81 ブロック#0
82 ブロック#1
90 汎用領域(General Purpose Area)
101 ライセンス発行装置
102 暗号化コンテンツ署名(ECS)発行装置
103 コンテンツ提供装置
104 ユーザ装置
181 コンテンツ
182 タイトルキー
183 コンテンツハッシュリスト集合
201 コンテンツ提供装置(サーバ)
202 ユーザ装置(ホスト)
210 メモリカード
211 保護領域(Protected Area)
212 汎用領域(General Purpose Area)
221 ブロック#0
701 CPU
702 ROM
703 RAM
704 バス
705 入出力インタフェース
706 入力部
707 出力部
708 記憶部
709 通信部
710 ドライブ
711 リムーバブルメディア
801 CPU
802 ROM
803 RAM
804 バス
805 入出力インタフェース
806 通信部
807 記憶部
811 保護領域(Protected Area)
812 汎用領域(General Purpose Area)

【特許請求の範囲】
【請求項1】
暗号化コンテンツおよび暗号化コンテンツの復号に適用する暗号鍵を格納する記憶部を有し、
前記記憶部は、前記暗号鍵を前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名との演算によって生成された変換暗号鍵を格納し、
前記電子署名は、前記暗号化コンテンツの構成データおよび前記暗号鍵を含むデータに対する電子署名であり、
前記記憶部から前記暗号化コンテンツを読み出して復号処理を実行する再生装置に、前記変換暗号鍵に対する電子署名の適用演算による暗号鍵取得を行わせることを可能とした情報記憶装置。
【請求項2】
前記変換暗号鍵は、
前記暗号化コンテンツに対応して設定される利用制御情報と、前記電子署名との連結データに対するハッシュ値と、前記暗号鍵との排他的論理和演算結果である請求項1に記載の情報記憶装置。
【請求項3】
前記記憶部は、アクセス制限の設定された保護領域を有し、
前記変換暗号鍵を、前記保護領域に格納した構成である請求項1に記載の情報記憶装置。
【請求項4】
前記情報記憶装置は、
前記保護領域に対するアクセス要求装置から受領した証明書に基づいて、前記保護領域に対するアクセス可否を判定するデータ処理部を有する請求項3に記載の情報記憶装置。
【請求項5】
前記記憶部は、アクセス制限の設定された保護領域と、アクセス制限のない汎用領域を有し、
前記変換暗号鍵を、前記保護領域に格納し、
前記暗号化コンテンツと、前記暗号化コンテンツ署名ファイルを、前記汎用領域に格納した構成である請求項1に記載の情報記憶装置。
【請求項6】
前記電子署名は、前記暗号化コンテンツの構成データおよび前記暗号鍵、さらに、前記暗号化コンテンツ署名ファイルの構成データを含むデータに対する電子署名である請求項1に記載の情報記憶装置。
【請求項7】
前記電子署名は、前記暗号化コンテンツ署名ファイルの構成データである前記暗号化コンテンツ署名ファイルの発行日時情報を含むデータに対する電子署名である請求項6に記載の情報記憶装置。
【請求項8】
メディアに記録された暗号化コンテンツの復号および再生処理を実行するデータ処理部を有し、
前記データ処理部は、
前記暗号化コンテンツの復号処理に際して、前記メディアに記録された前記暗号化コンテンツの復号に適用する暗号鍵の変換データである変換暗号鍵を読み出し、該変換暗号鍵に対する演算処理を実行して暗号鍵の取得処理を実行し、
前記変換暗号鍵は、
前記暗号鍵を前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名との演算によって生成された変換暗号鍵であり、
前記データ処理部は、
前記メディアに記録された暗号化コンテンツ署名ファイルの構成データである電子署名を取得し、取得した電子署名を適用した演算処理を実行して暗号鍵の取得処理を実行する情報処理装置。
【請求項9】
前記電子署名は、前記暗号化コンテンツの構成データおよび前記暗号鍵を含むデータに対する電子署名である請求項8に記載の情報処理装置。
【請求項10】
前記変換暗号鍵は、
前記暗号化コンテンツに対応して設定される利用制御情報と、前記電子署名との連結データに対するハッシュ値と、前記暗号鍵との排他的論理和演算結果であり、
前記データ処理部は、
前記メディアに記録された暗号化コンテンツ署名ファイルの構成データである電子署名と、
前記メディアに記録された利用制御情報を取得し、取得したデータを適用した演算処理を実行して暗号鍵の取得処理を実行する請求項8に記載の情報処理装置。
【請求項11】
前記データ処理部は、
前記メディアに記録された暗号化コンテンツ署名ファイルの構成データである電子署名に対する署名検証処理を実行し、
該署名検証処理に成功し、前記暗号化コンテンツ署名ファイルの正当性を確認したことを条件として、前記暗号鍵の取得処理を行う請求項8に記載の情報処理装置。
【請求項12】
メディアに記録する暗号化コンテンツと、該暗号化コンテンツの復号に適用する暗号鍵の変換データである変換暗号鍵を出力するデータ処理部を有し、
前記データ処理部は、
前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名であり、前記暗号化コンテンツの構成データおよび前記暗号鍵を含むデータに対する電子署名と、前記暗号鍵の演算処理により、前記変換暗号鍵を生成する情報処理装置。
【請求項13】
前記データ処理部は、
前記暗号化コンテンツに対応して設定される利用制御情報と、前記電子署名との連結データに対するハッシュ値と、前記暗号鍵との排他的論理和演算を実行して前記変換暗号鍵を生成する請求項12に記載の情報処理装置。
【請求項14】
情報処理装置において実行する情報処理方法であり、
データ処理部が、メディアに記録された暗号化コンテンツの復号処理に際して、復号に適用する暗号鍵の変換データである変換暗号鍵を読み出し、該変換暗号鍵に対する演算処理を実行して暗号鍵の取得処理を行うデータ処理ステップを実行し、
前記変換暗号鍵は、
前記暗号鍵を前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名との演算によって生成された変換暗号鍵であり、
前記データ処理部は、前記データ処理部ステップにおいて、
前記メディアに記録された暗号化コンテンツ署名ファイルから前記電子署名を取得し、取得した電子署名を適用した演算処理を実行して暗号鍵の取得処理を実行する情報処理方法。
【請求項15】
情報処理装置において実行する情報処理方法であり、
データ処理部が、メディアに記録する暗号化コンテンツと、該暗号化コンテンツの復号に適用する暗号鍵の変換データである変換暗号鍵を出力するデータ処理ステップを実行し、
前記データ処理ステップにおいて、
前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名であり、前記暗号化コンテンツの構成データおよび前記暗号鍵を含むデータに対する電子署名と、前記暗号鍵の演算処理により、前記変換暗号鍵を生成する情報処理方法。
【請求項16】
情報処理装置において情報処理を実行させるプログラムであり、
データ処理部に、メディアに記録された暗号化コンテンツの復号処理に際して、復号に適用する暗号鍵の変換データである変換暗号鍵の読み出し処理と、該変換暗号鍵に対する演算処理による暗号鍵の取得処理を行うデータ処理ステップを実行させ、
前記変換暗号鍵は、
前記暗号鍵を前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名との演算によって生成された変換暗号鍵であり、
前記データ処理部ステップにおいて、
前記メディアに記録された暗号化コンテンツ署名ファイルから前記電子署名の取得処理と、取得した電子署名を適用した演算処理による暗号鍵の取得処理を実行させるプログラム。
【請求項17】
情報処理装置において情報処理を実行させるプログラムであり、
データ処理部に、メディアに記録する暗号化コンテンツと、該暗号化コンテンツの復号に適用する暗号鍵の変換データである変換暗号鍵を出力するデータ処理ステップを実行させ、
前記データ処理ステップにおいて、
前記暗号化コンテンツに対応して設定された暗号化コンテンツ署名ファイルの構成データである電子署名であり、前記暗号化コンテンツの構成データおよび前記暗号鍵を含むデータに対する電子署名と、前記暗号鍵の演算処理により、前記変換暗号鍵を生成させるプログラム。

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図1】
image rotate

【図2】
image rotate