説明

情報処理装置、および情報処理方法、並びにプログラム

【課題】メディアに記録されたコンテンツの不正利用を防止する再生制御を実現する。
【解決手段】メディアの記録コンテンツに対応する管理データであるトークンをメディアから取得し、取得したトークンに記録されたサーバIDと、管理データの取得元であるサーバから取得したサーバ証明書に記録されたサーバIDとを比較し、両サーバIDが一致しない場合は、コンテンツ再生を中止させる。両IDの一致が確認された場合には、再生予定のコンテンツIDがコンテンツリボケーションリストに記録されているか否かを検証し、記録されている場合には、コンテンツ再生を中止する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、および情報処理方法、並びにプログラムに関する。特に、例えばメモリカード等の記録メディアに記録したコンテンツの利用制御等を実行する情報処理装置、および情報処理方法、並びにプログラムに関する。
【背景技術】
【0002】
昨今、情報記録媒体として、DVD(Digital Versatile Disc)や、Blu−ray Disc(登録商標)、あるいはフラッシュメモリなど、様々なメディアが利用されている。特に、昨今は、大容量のフラッシュメモリを搭載したUSBメモリなどのメモリカードの利用が盛んになっている。ユーザは、このような様々な情報記録媒体(メディア)に音楽や映画などのコンテンツを記録して再生装置(プレーヤ)に装着してコンテンツの再生を行うことができる。
【0003】
しかし、音楽データ、画像データ等の多くのコンテンツは、その作成者あるいは販売者に著作権、頒布権等が保有されている。従って、ユーザにコンテンツを提供する場合には、一定の利用制限、すなわち正規な利用権を持つユーザのみにコンテンツの利用を許諾し、許可のないコピー等の無秩序な利用が行われないような制御を行うのが一般的となっている。
【0004】
例えば、コンテンツの利用制御に関する規格としてAACS(Advanced Access Content System)が知られている。AACSの規格は、例えばBlu−ray Disc(登録商標)の記録コンテンツに対する利用制御構成を定義している。具体的には例えばBlu−ray Disc(登録商標)に記録するコンテンツを暗号化コンテンツとして、その暗号鍵を取得できるユーザを正規ユザにのみ限定することを可能とするアルゴリズムなどを規定している。
【0005】
しかし、現行のAACS規定には、Blu−ray Disc(登録商標)等のディスク記録コンテンツに対する利用制御構成についての規定は存在するが、例えばメモリカードなどのフラッシュメモリに記録されるコンテンツ等については、十分な規定がない。従って、このようなメモリカードの記録コンテンツについては、著作権の保護が不十分になる恐れがあり、これらメモリカード等のメディアを利用したコンテンツ利用に対する利用制御構成を構築することが要請されている。
【0006】
例えばAACS規定では、Blu−ray Disc(登録商標)等のディスク記録コンテンツに対する利用制御構成として以下のような規定がある。
(a)既にコンテンツの記録されたメディア(例えばROMディスク)からBlu−ray Disc(登録商標)等のディスクにコピーされたコンテンツに対する利用規定、
(b)サーバからダウンロードしてBlu−ray Disc(登録商標)等のディスクに記録されたコンテンツの利用規定、
例えば、このようなコンテンツの利用制御について規定している。
【0007】
AACSでは、例えば上記(a)のメディア間のコンテンツコピーを実行する場合、管理サーバからコピー許可情報を取得することを条件としたマネージドコピー(MC:Managed Copy)について規定している。
【0008】
また、上記の(b)のサーバからのコンテンツのダウンロード処理として、AACSでは、
PC等のユーザ装置を利用したEST(Electric Sell Through)や、
コンビニ等に設置された共用端末を利用したMoD(Manufacturing on Demand)、
これらの各種のダウンロード形態を規定して、これらの各ダウンロード処理によりディスクにコンテンツを記録して利用する場合についても、所定のルールに従った処理を行うことを義務付けている。
なお、これらの処理については、例えば特許文献1(特開2008−98765号公報)に記載されている。
【0009】
しかし、前述したように、AACSの規定は、Blu−ray Disc(登録商標)等のディスク記録コンテンツを利用制御対象として想定しているものであり、USBルモリなどを含むフラッシュメモリタイプ等のメモリカードに記録されるコンテンツについては十分な利用制御に関する規定がないという問題がある。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開2008−98765号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
本発明は、例えば上記問題点に鑑みてなされたものであり、フラッシュメモリ等のディスク以外の情報記録媒体(メディア)にコンテンツを記録して利用する場合の利用制御構成を確立して不正なコンテンツ利用を防止する構成を実現する情報処理装置、および情報処理方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明の第1の側面は、
メディアに記録されたコンテンツの再生処理を実行するデータ処理部を有し、
前記データ処理部は、
前記メディアの記録コンテンツに対応する管理データであるトークンを前記メディアから取得し、取得したトークンに記録されたサーバIDと、前記管理データの取得元であるサーバから取得したサーバ証明書に記録されたサーバIDとを比較し、両サーバIDが一致しない場合は、コンテンツ再生を中止する処理を実行する情報処理装置にある。
【0013】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、無効化コンテンツの識別子(ID)を記録したコンテンツリボケーションリストを格納した記憶部を有し、前記データ処理部は、前記トークンに記録されたサーバIDと、前記サーバ証明書に記録されたサーバIDとが一致することを確認した場合に、再生予定のコンテンツIDが前記コンテンツリボケーションリストに記録されているか否かを検証し、記録されている場合には、コンテンツ再生を中止する処理を実行する。
【0014】
さらに、本発明の情報処理装置の一実施態様において、前記トークンに記録されたサーバIDは、トークンの記録情報として設定されたコンテンツIDの構成ビットに含まれ、前記データ処理部は、トークンに含まれるコンテンツIDからサーバIDの構成ビットを抽出して、前記サーバ証明書に記録されたサーバIDとの比較処理を実行する。
【0015】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記サーバ証明書に設定された署名の検証処理により、サーバ証明書の正当性を確認する処理を実行し、サーバ証明書の正当性が確認されたことを条件として、該サーバ証明書からサーバIDを取得する処理を行う。
【0016】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記サーバ証明書に設定された署名の検証処理により、サーバ証明書の正当性を確認する処理を実行し、サーバ証明書の正当性が確認されたことを条件として、該サーバ証明書からサーバ公開鍵を取得し、取得したサーバ公開鍵を適用して前記トークンに設定された署名の検証処理を実行して、トークンの正当性を確認する処理を実行し、トークンの正当性が確認されたことを条件として、該トークンからサーバIDを取得する処理を実行する。
【0017】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記コンテンツリボケーションリストに設定された署名の検証処理により、コンテンツリボケーションリストの正当性を確認する処理を実行し、コンテンツリボケーションリストの正当性が確認されたことを条件として、再生予定のコンテンツIDが前記コンテンツリボケーションリストに記録されているか否かを検証する処理を実行する。
【0018】
さらに、本発明の情報処理装置の一実施態様において、前記メディアはフラッシュメモリタイプのメモリカードであり、前記データ処理部は、再生対象コンテンツおよび前記管理データを前記メモリカードから読み出す処理を実行する。
【0019】
さらに、本発明の第2の側面は、
コンテンツ管理データを提供するサーバと、
前記サーバの提供データを受信してメディアに記録するホスト装置を有し、
前記サーバは、
前記コンテンツ管理データとして、サーバIDを記録したトークンと、
サーバIDを記録情報として含み、認証局署名を有する認証局発行のサーバ証明書を前記ホスト装置に提供し、
前記ホスト装置は、
前記トークンに記録されたサーバIDが、前記サーバ証明書に記録されたサーバIDと一致するか否かを判定し、一致の確認がなされたことを条件としてコンテンツ再生を行うコンテンツ利用制御システムにある。
【0020】
さらに、本発明のコンテンツ利用制御システムの一実施態様において、前記ホスト装置は、無効化コンテンツの識別子(ID)を記録したコンテンツリボケーションリストを格納した記憶部を有し、前記トークンに記録されたサーバIDと、前記サーバ証明書に記録されたサーバIDとが一致することを確認した場合に、再生予定のコンテンツIDが前記コンテンツリボケーションリストに記録されているか否かを検証し、記録されている場合には、コンテンツ再生を中止する処理を実行する。
【0021】
さらに、本発明の第3の側面は、
コンテンツおよびコンテンツの管理データを記録した情報記録媒体であり、
前記管理データには、該管理データを提供したサーバのサーバIDを記録データとして含むトークンと、
前記サーバに対応する証明書であり、サーバIDを記録情報として含み認証局の署名を有する認証局が発行したサーバ証明書を含み、
コンテンツ再生を実行する再生装置において、前記トークンに記録されたサーバIDが前記サーバ証明書に記録されたサーバIDと一致するか否かを判定させて、一致の確認がなされたことを条件としてコンテンツ再生を許容することを可能とした情報記録媒体にある。
【0022】
さらに、本発明の第4の側面は、
情報処理装置において実行する情報処理方法であり、
データ処理部が、メディアに記録されたコンテンツの管理データを取得するステップと、
前記データ処理部が、前記管理データに含まれるトークンに記録されたサーバIDと、前記管理データの取得元であるサーバから取得したサーバ証明書に記録されたサーバIDとを比較し、両サーバIDが一致しない場合は、コンテンツ再生を中止する処理を実行するステップと、
を実行する情報処理方法にある。
【0023】
さらに、本発明の第5の側面は、
情報処理装置において情報処理を実行させるプログラムであり、
データ処理部に、メディアに記録されたコンテンツの管理データを取得させるステップと、
前記データ処理部に、前記管理データに含まれるトークンに記録されたサーバIDと、前記管理データの取得元であるサーバから取得したサーバ証明書に記録されたサーバIDとを比較させて、両サーバIDが一致しない場合は、コンテンツ再生を中止させるステップと、
を実行させるプログラムにある。
【0024】
なお、本発明のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
【0025】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【0026】
本発明の一実施例の構成によれば、メディアに記録されたコンテンツの不正利用を防止する再生制御が実現される。メディアの記録コンテンツに対応する管理データであるトークンをメディアから取得し、取得したトークンに記録されたサーバIDと、管理データの取得元であるサーバから取得したサーバ証明書に記録されたサーバIDとを比較し、両サーバIDが一致しない場合は、コンテンツ再生を中止させる。両IDの一致が確認された場合には、再生予定のコンテンツIDがコンテンツリボケーションリストに記録されているか否かを検証し、記録されている場合には、コンテンツ再生を中止する。本処理により、メディア記録コンテンツの不正利用を防止した再生制御が実現される。
【図面の簡単な説明】
【0027】
【図1】コンテンツ提供処理および利用処理の概要について説明する図である。
【図2】メモリカードに記録されたコンテンツの利用形態について説明する図である。
【図3】サーバ管理構成とサーバからの提供データについて説明する図である。
【図4】サーバリボケーションリスト(SRL:Server Revocation List)と、コンテンツリボケーションリスト(CRL:Content Revocation List)について説明する図である。
【図5】サーバ証明書(Server Certificate)について説明する図である。
【図6】メモリカードの記憶領域の具体的構成例について説明する図である。
【図7】コンテンツサーバが生成して提供するトークンの具体的なデータ構成例について説明する図である。
【図8】サーバとメモリカード間の処理とメモリカードの格納データについて説明する図である。
【図9】メモリカード内に記録されるデータを示すディレクトリ構造と、コンテンツ再生処理を実行する再生装置内に記録されるデータの例について説明する図である。
【図10】コンテンツサーバからコンテンツをダウンロードしてメモリカードに記録する場合の処理シーケンスについて説明するフローチャートを示す図である。
【図11】図10に示すフロー中のステップS103の詳細シーケンスについて説明するフローチャートを示す図である。
【図12】コンテンツサーバからコンテンツをダウンロードしてメモリカードに記録する場合の処理シーケンスについて説明するフローチャートを示す図である。
【図13】コンテンツサーバからコンテンツをダウンロードしてメモリカードに記録する場合の処理シーケンスについて説明するフローチャートを示す図である。
【図14】サーバからダウンロードしてメディア(メモリカード)に記録したコンテンツと管理情報(ダウンロードコンテンツ対応の管理データ)を適用したコンテンツの再生処理シーケンスについて説明するフローチャートを示す図である。
【図15】図14に示すフロー中のステップS303の詳細シーケンスについて説明するフローチャートを示す図である。
【図16】サーバからダウンロードしてメディア(メモリカード)に記録したコンテンツと管理情報(ダウンロードコンテンツ対応の管理データ)を適用したコンテンツの再生処理シーケンスについて説明するフローチャートを示す図である。
【図17】サーバからダウンロードしてメディア(メモリカード)に記録したコンテンツと管理情報(ダウンロードコンテンツ対応の管理データ)を適用したコンテンツの再生処理シーケンスについて説明するフローチャートを示す図である。
【図18】記録再生装置(ホスト)の所有するホスト証明書の例について説明する図である。
【図19】メモリカードに対するアクセス要求装置がサーバである場合と、記録再生装置等のホスト機器である場合のアクセス制限の設定例について説明する図である。
【図20】メモリカードに対するアクセス要求装置がPCである場合と、CE機器である場合のアクセス制限の設定例について説明する図である。
【図21】メモリカードを装着してデータの記録や再生処理を行うホスト機器のハードウェア構成例について説明する図である。
【図22】メモリカードのハードウェア構成例について説明する図である。
【発明を実施するための形態】
【0028】
以下、図面を参照しながら本発明の情報処理装置、および情報処理方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行う。
1.コンテンツ提供処理および利用処理の概要について
2.サーバ管理構成とサーバからの提供データについて
3.サーバがコンテンツ管理情報として提供するトークンについて
4.サーバとメモリカード間の処理とメモリカードの格納データについて
5.サーバからのコンテンツダウンロード処理シーケンスについて
6.コンテンツ再生処理シーケンスについて
7.メモリカードの保護領域のアクセス制限構成と処理について
8.各装置のハードウェア構成例について
【0029】
[1.コンテンツ提供処理および利用処理の概要について]
【0030】
以下、図面を参照しながら本発明の情報処理装置、および情報処理方法、並びにプログラムの詳細について説明する。
【0031】
まず、図1以下を参照して、コンテンツ提供処理および利用処理の概要について説明する。
図1には、左から、
(a)コンテンツ提供元
(b)コンテンツ記録装置(ホスト)
(c)コンテンツ記録メディア
これらを示している。
【0032】
(c)コンテンツ記録メディアはユーザがコンテンツを記録して、コンテンツの再生処理に利用するメディアである。ここでは例えばフラッシュメモリ等の情報記録装置であるメモリカード31を示している。
【0033】
ユーザは、例えば音楽や映画などの様々なコンテンツをメモリカード31に記録して利用する。これらのコンテンツは例えば著作権管理コンテンツ等、利用制御対象となるコンテンツである。所定の利用条件下での利用のみが許容され、基本的に無秩序なコピー処理やコピーデータの無制限な配布等は禁止される。なお、後述するがメモリカード31に対して、コンテンツを記録する場合、そのコンテンツに対応する利用制御情報(Usage Rule)、具体的には、許容されるコピー回数などのコピー制限情報などを規定した利用制御情報(Usage Rule)も併せて記録される。
【0034】
(a)コンテンツ提供元は、利用制限のなされた音楽や映画等のコンテンツの提供元である。図1には、コンテンツサーバ11と、予めコンテンツの記録されたROMディスク等のコンテンツ記録ディスク12を示している。
コンテンツサーバ11は、音楽や映画等のコンテンツを提供するサーバである。コンテンツ記録ディスク12は予め音楽や映画等のコンテンツを記録したROMディスク等のディスクである。
【0035】
ユーザは、(c)コンテンツ記録メディアであるメモリカード31を(b)コンテンツ記録装置(ホスト)に装着し、(b)コンテンツ記録装置(ホスト)を介してコンテンツサーバ11に接続して、コンテンツを受信(ダウンロード)してメモリカード31に記録することができる。
【0036】
なお、コンテンツサーバ11は、このダウンロード処理に際して、所定のシーケンスに従った処理を行い、暗号化コンテンツの他、利用制御情報やトークン、さらに鍵情報(バインドキー)等のコンテンツ管理情報を提供する。これらの処理、および提供データについては、後段で詳細に説明する。
【0037】
あるいは、(c)コンテンツ記録メディアであるメモリカード31を装着した(b)コンテンツ記録装置(ホスト)に、予めコンテンツの記録されたROMディスク等のコンテンツ記録ディスク12を装着してコンテンツ記録ディスク12の記録コンテンツをメモリカード31にコピーすることができる。ただし、このコピー処理を実行する場合にも、コンテンツサーバ11に接続して所定のシーケンスに従った処理が必要となる。コンテンツサーバ11は、このディスクからのコンテンツコピー処理に際して、コピーコンテンツに対応する利用制御情報やトークン、さらに鍵情報(バインドキー)等のコンテンツ管理情報を提供する。
【0038】
(b)コンテンツ記録装置(ホスト)は、(c)コンテンツ記録メディアであるメモリカード31を装着して、(a)コンテンツ提供元であるコンテンツサーバ11からネットワークを介して受信(ダウンロード)したコンテンツ、あるいは、コンテンツ記録ディスク12から読み取ったコンテンツをメモリカード31に記録する。
【0039】
(b)コンテンツ記録装置(ホスト)としては、不特定多数のユーザが利用可能な公共スペース、例えば駅やコンビニ等に設置された共用端末21、ユーザ機器としての記録再生器(CE(Consumer Electronics)機器)22、PC23などがある。これらはすべて(c)コンテンツ記録メディアであるメモリカード31を装着可能な装置である。
また、これらの(b)コンテンツ記録装置(ホスト)は、コンテンツサーバ11からのダウンロード処理を実行する構成である場合は、ネットワークを介したデータ送受信処理を実行することが可能な構成である。
コンテンツ記録ディスク12を利用する構成の場合は、ディスクの再生可能な装置であることが必要である。
【0040】
図1に示すように、ユーザは、
(a)コンテンツ提供元であるコンテンツサーバ11からのダウンロードコンテンツ、あるいはROMディスク等のコンテンツ記録ディスク12に記録されたコンテンツを(b)コンテンツ記録装置(ホスト)を介して、(c)コンテンツ記録メディアとしてのメモリカード31に記録する。
【0041】
このメモリカード31に記録されたコンテンツの利用形態について図2を参照して説明する。
ユーザは、コンテンツを記録したメモリカード31を、例えば、図1(b)を参照して説明した(b)コンテンツ記録装置(ホスト)としてのユーザ機器である記録再生器(CE機器)22やPC23等に装着してメモリカード31に記録されたコンテンツを読み取り、再生する。
【0042】
なお、多くの場合、これらのコンテンツは暗号化コンテンツとして記録されており、記録再生器(CE機器)22やPC23等の再生装置は、所定のシーケンスに従った復号処理を実行した後、コンテンツ再生を行う。
なお、メモリカード31に記録されたコンテンツを再生する機器は、図1(b)を参照して説明した(b)コンテンツ記録装置(ホスト)に限られず、その他の再生装置(プレーヤ)であってもよい。ただし、例えば予め規定されたシーケンスに従った暗号化コンテンツの復号処理等を実行可能な機器、すなわち予め規定された再生処理シーケンスを実行するプログラムを格納した機器であることが必要となる。なお、コンテンツ再生シーケンスの詳細については、後段で説明する。
【0043】
[2.サーバ管理構成とサーバからの提供データについて]
次に、図3以下を参照して、サーバ管理構成とサーバからの提供データについて説明する。
図3には、コンテンツの記録先であるユーザのメモリカード400、
コンテンツ記録処理を実行するコンテンツ記録装置(ホスト)300、
コンテンツやコンテンツ管理データを提供するコンテンツサーバ200、
コンテンツサーバ200の管理局として設定される認証局(認証サーバ)100、
さらにコンテンツを記録したディスク250、
これらを示している。
【0044】
なお、図3に示すメモリカード400は、図1、図2に示すメモリカード31に相当し、図3に示すコンテンツ記録装置(ホスト)300は、図1に示す(b)コンテンツ記録装置(ホスト)に相当する装置である。
また、図3に示すコンテンツサーバ200は、図1に示すコンテンツサーバ11に相当し、図3に示すディスク250は、図1に示すディスク12に相当する。
【0045】
なお、コンテンツサーバ200は、図3にコンテンツサーバ#1〜コンテンツサーバ#nとして示すように、複数存在している。これらの様々なコンテンツサーバに対して、メモリカード400を装着したコンテンツ記録装置(ホスト)300が接続し、コンテンツやコンテンツ管理データを取得してメモリカード400に記録する。
【0046】
図3に示す認証局(認証サーバ)100は、コンテンツやコンテンツ管理データを提供する各コンテンツサーバ#1〜#nに対して、
(a)サーバ公開鍵を格納したサーバ証明書(Server Certificate)、
(b)サーバ秘密鍵、
(c)無効化したサーバのサーバIDを記録したリストであるサーバリボケーションリスト(SRL:Server Revocation List)、
(d)無効化したコンテンツのコンテンツIDを記録したリストであるコンテンツリボケーションリスト(CRL:Content Revocation List)、
たとえば、これらのデータを提供する。
【0047】
コンテンツサーバ#1〜#nの各々は、これらのデータを認証局100から受信し、サーバ内の記憶部に格納する。以下、コンテンツサーバ#1〜#nの処理は共通するので代表してコテンツサーバ#1の処理について説明する。以下コンテンツサーバ#1をコンテンツサーバ200として説明する。
【0048】
コンテンツサーバ200は、メモリカード400に対するコンテンツの提供処理を実行する際に、コンテンツ202を暗号化して暗号化コンテンツとして提供するとともに、コンテンツ管理情報として、トークン201や、サーバリボケーションリスト(SRL)203、コンテンツリボケーションリスト(CRL)204、さらに図には示していないが、コンテンツの復号に適用する暗号鍵(バインドキー)等をコンテンツ記録装置(ホスト)300に提供して、コンテンツと共にメモリカード400に記録させる。
【0049】
なお、ユーザが、コンテンツ記録装置(ホスト)300にディスク250を装着し、ディスク250に格納されたコンテンツをメモリカード400に記録する(コピー)場合には、コンテンツ記録装置(ホスト)300は、コピー許可をコンテンツサーバ200から得て、コンテンツのコピーを実行する。この処理のために、コンテンツ記録装置(ホスト)300は、例えばコピー予定のコンテンツの識別子であるコンテンツIDをディスク250から取得してコンテンツサーバ200に送信する。
【0050】
なお、ディスク250に格納されたコンテンツも暗号化コンテンツであり、その復号に適用する鍵の他、図3に示すコンテンツ管理データとしてのトークン201や、サーバリボケーションリスト(SRL)203、コンテンツリボケーションリスト(CRL)204などがコンテンツサーバ200からコンテンツ記録装置(ホスト)300に提供され、ディスク250から提供されたコンテンツに対応する管理データとしてコンテンツと共にメモリカード400に記録する処理が行われる。
【0051】
先に、説明したように、認証局100は、図3に示すように、
サーバリボケーションリスト(SRL)102、
コンテンツリボケーションリスト(CRL)103、
サーバ証明書(SErver Cert)101、
これらの各データを各コンテンツサーバに提供する。
図4以下を参照して、これらのデータの詳細構成例について説明する。
【0052】
まず、図4を参照して、
サーバリボケーションリスト(SRL:Server Revocation List)と、
コンテンツリボケーションリスト(CRL:Content Revocation List)、
これらの各リストについて説明する。
【0053】
図4には、
(a)サーバリボケーションリスト(SRL:Server Revocation List)
(b)コンテンツリボケーションリスト(CRL:Content Revocation List)、
これらのデータ構成例を示している。
【0054】
(a)サーバリボケーションリスト(SRL:Server Revocation List)は、無効化(リボーク)されたサーバ(コンテンツサーバ)の識別子(ID)を記録したリストであり、認証局100が発行するリストである。
サーバリボケーションリスト(SRL)は、例えば不正なコンテンツの配信など、不正処理が発覚したコンテンツサーバのサーバIDを記録したリストである。新たな不正サーバの発覚等により、逐次更新される。
【0055】
サーバリボケーションリスト(SRL)には、図4(a)に示すようにバージョン番号が設定される。例えば001→002→003等、新たなリスト発行処理ごとに、バージョン番号は増加する。すなわち、より新しいサーバリボケーションリスト(SRL)のバージョン番号は、古いサーバリボケーションリスト(SRL)のバージョン番号より大きな番号が設定される。
【0056】
サーバリボケーションリスト(SRL)は、バージョン番号と、無効化されたサーバのサーバIDが記録され、これらのデータに対して、認証局の秘密鍵に基づく署名(Signature)が生成されて記録される。この署名処理により、データ改ざんが防止される。
【0057】
サーバリボケーションリスト(SRL)を利用する場合は、署名検証を実行して、サーバリボケーションリスト(SRL)の正当性を確認した上で利用が行われる。なお、署名検証は、認証局の公開鍵を利用して実行される。
【0058】
コンテンツを記録するメモリカードや、コンテンツを再生する再生装置、例えば図2に示す記録再生器22やPC23等の再生装置の記憶部(メモリ)にもサーバリボケーションリスト(SRL)が記録される。
【0059】
再生装置は、コンテンツ再生時に再生コンテンツやコンテンツ管理データを受領したサーバのサーバIDを取得し、取得したサーバIDが、再生装置の記憶部に格納されたサーバリボケーションリスト(SRL)に無効サーバとして記録されているか否かを検証する。なお、サーバIDは、例えばコンテンツに関する管理データとしてサーバから受信するサーバ証明書(Server Certificate)などから取得できる。
【0060】
サーバリボケーションリスト(SRL)に再生予定のコンテンツやコンテンツ管理データを受領したサーバのサーバIDが記録されている場合は、そのコンテンツは不正なサーバの提供コンテンツである可能性があるため、再生が禁止される。
【0061】
なお、このような処理を実行するための再生処理プログラムは、予め再生装置に提供され、コンテンツの再生処理においては、再生処理プログラムに従った処理が実行される。すなわち、再生装置では、コンテンツ再生処理に先立って、再生装置が利用するサーバリボケーションリスト(SRL)のバージョン番号の確認や、サーバリボケーションリスト(SRL)に基づいて利用コンテンツやコンテンツ管理データを提供したサーパが無効化(リボーク)されていないことを確認する処理を実行する。なお、コンテンツ再生シーケンスについては後段でフローチャートを参照して説明する。
【0062】
(b)コンテンツリボケーションリスト(CRL:Content Revocation List)は、無効化(リボーク)されたコンテンツの識別子(ID)を記録したリストであり、認証局100が発行するリストである。コンテンツリボケーションリスト(CRL)は、例えば不正なコピーコンテンツの流通が発覚した場合など、その不正流通コンテンツのコンテンツIDを記録して生成されるリストであり、新たな不正コンテンツの発覚等により、逐次更新される。
【0063】
コンテンツリボケーションリスト(CRL)には、図4(b)に示すようにバージョン番号が設定される。例えば001→002→003等、新たな発行処理ごとに、バージョン番号は増加する。すなわち、より新しいコンテンツリボケーションリスト(CRL)のバージョン番号は、古いコンテンツリボケーションリスト(CRL)のバージョン番号より大きな番号が設定される。
【0064】
コンテンツリボケーションリスト(CRL)は、バージョン番号と、無効化コンテンツのコンテンツIDが記録され、これらのデータに対して、認証局の秘密鍵に基づく署名(Signature)が生成されて記録される。この署名処理により、データ改ざんが防止される。
【0065】
コンテンツリボケーションリスト(CRL)を利用する場合は、署名検証を実行して、コンテンツリボケーションリスト(CRL)の正当性を確認した上で利用が行われる。なお、署名検証は、認証局の公開鍵を利用して実行される。
【0066】
コンテンツを記録するメモリカードや、コンテンツを再生する再生装置、例えば図2に示す記録再生器22やPC23等の再生装置の記憶部(メモリ)にもコンテンツリボケーションリスト(CRL)が記録される。
【0067】
再生装置は、コンテンツ再生時に再生コンテンツのコンテンツIDを取得し、取得したコンテンツIDが、再生装置の記憶部に格納されたコンテンツリボケーションリスト(CRL)にリボーク(無効化)コンテンツとして記録されているか否かを検証する。なお、コンテンツIDは、例えばコンテンツに関する管理データとしてサーバから受信する(あるいはディスクから読み取る)コンテンツ証明書などから取得できる。
【0068】
コンテンツリボケーションリスト(CRL)に再生予定のコンテンツのコンテンツIDが記録されている場合は、そのコンテンツは無効化コンテンツであるため、再生が禁止される。
【0069】
なお、このような処理を実行するための再生処理プログラムは、予め再生装置に提供され、コンテンツの再生処理においては、再生処理プログラムに従った処理が実行される。すなわち、再生装置では、コンテンツ再生処理に先立って、再生装置が利用するコンテンツリボケーションリスト(CRL)のバージョン番号の確認や、コンテンツリボケーションリスト(CRL)に基づいて利用コンテンツが無効化されていないことを確認する処理が実行される。なお、コンテンツ再生シーケンスについては後段でフローチャートを参照して説明する。
【0070】
次に、図5を参照して認証局100が各コンテンツサーバに提供するサーバ証明書(Server Certificate)101について説明する。
認証局100が各コンテンツサーバに提供するサーバ証明書(Server Certificate)101は、認証局100がコンテンツ提供処理を認めたサーバに対して発行するサーバの証明書であり、サーバ公開鍵等を格納した証明書である。サーバ証明書(Server Certificate)101は、認証局100秘密鍵によって署名が設定され、改ざんの防止されたデータとして構成される。
【0071】
図5に認証局100が各コンテンツサーバに提供するサーバ証明書(Server Certificate)101の具体例を示す。
サーバ証明書(Server Certificate)には、図5に示すように、以下のデータが含まれる。
(1)タイプ情報
(2)サーバID
(3)サーバ公開鍵(Server Public Key)
(4)コンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)
(5)サーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)
(6)メディアに対する読み取り/書き込み制限情報(PAD Read/PADWrite)
(7)その他の情報
(8)署名(Signaure)
【0072】
以下、上記(1)〜(8)の各データについて説明する。
(1)タイプ情報
タイプ情報は、証明書のタイプやコンテンツサーバのタイプを示す情報であり、例えば本証明書がサーバ証明書であることを示すデータや、サーバの種類、例えば音楽コンテンツの提供サーバであるとか、映画コンテンツの提供サーバであるといったサーバの種類などを示す情報が記録される。
【0073】
(2)サーバID
サーバIDはサーバ識別情報としてのサーバIDを記録する領域である。
(3)サーバ公開鍵(Server Public Key)
サーバ公開鍵(Server Public Key)はサーバの公開鍵である。サーバに提供されるサーバ秘密鍵とともに公開鍵暗号方式に従った鍵ペアを構成する。
【0074】
(4)コンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)
コンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)は、先に図4(b)を参照して説明した無効化(リボーク)されたコンテンツを記録したリストであるコンテンツリボケーションリスト(CRL)に設定されたバージョン番号中、再生装置における利用が許容されるバージョン番号の最小値である。すなわち、再生装置において、コンテンツ再生の前処理として実行が義務付けられるコンテンツのリボーク検証の際に利用が許容される最小のバージョン番号を記録した領域である。
【0075】
前述したように、コンテンツリボケーションリスト(CRL)には、図4(b)に示すようにバージョン番号が設定され、例えば001→002→003等、新たな発行処理ごとに、バージョン番号は増加する。すなわち、より新しいコンテンツリボケーションリスト(CRL)のバージョン番号は、古いコンテンツリボケーションリスト(CRL)のバージョン番号より大きな番号が設定される。
【0076】
再生装置は、コンテンツ再生時に再生コンテンツのコンテンツIDを取得し、取得したコンテンツIDが、再生装置の記憶部に格納されたコンテンツリボケーションリスト(CRL)に無効コンテンツとして記録されているか否かを検証する。コンテンツリボケーションリスト(CRL)に再生予定のコンテンツのコンテンツIDが記録されている場合は、そのコンテンツは例えば不正にコピーされたコンテンツ等、不正コンテンツである可能性があるため、再生が禁止される。
【0077】
しかし、再生装置が古いバージョンのコンテンツリボケーションリスト(CRL)を参照してコンテンツ再生可否を判定してしまうと、その古いCRLの発行後に無効化されたコンテンツの再生がいつまでも許容されてしまう場合がある。
【0078】
このような事態を防止するため、再生装置の利用を許容するコンテンツリボケーションリスト(CRL)の最小のバージョン番号を設定する。このデータが、図5に示すサーバ証明書に記録されるコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)である。なお、このコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)は、後述するトークン(Token)にも記録される。
【0079】
再生装置は、コンテンツ再生処理に際して、コンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)より小さいバージョン番号の設定されたコンテンツリボケーションリスト(CRL)、すなわち古いコンテンツリボケーションリスト(CRL)を利用することは許容されない。なお、このような処理を実行する再生処理プログラムは、予め再生装置に提供され、コンテンツの再生処理においては、再生処理プログラムに従った処理が実行される。コンテンツ再生シーケンスについては後段でフローチャートを参照して説明する。
【0080】
(5)サーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)
サーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)は、先に図4(a)を参照して説明した無効化(リボーク)されたサーバ(コンテンツサーバ)を記録したリストであるサーバリボケーションリスト(SRL)に設定されたバージョン番号中、再生装置における利用が許容されるバージョン番号の最小値である。すなわち、再生装置において、コンテンツ再生の前処理として実行が義務付けられるサーバのリボーク検証の際に利用が許容される最小のバージョン番号を記録した領域である。
【0081】
前述したように、サーバリボケーションリスト(SRL)には、図4(a)に示すようにバージョン番号が設定される。例えば001→002→003等、新たな発行処理ごとに、バージョン番号は増加する。すなわち、より新しいサーバリボケーションリスト(SRL)のバージョン番号は、古いサーバリボケーションリスト(SRL)のバージョン番号より大きな番号が設定される。
【0082】
再生装置は、コンテンツ再生時に再生コンテンツやコンテンツ管理データを受領したサーバのサーバIDを取得し、取得したサーバIDが、再生装置の記憶部に格納されたサーバリボケーションリスト(SRL)に無効サーバとして記録されているか否かを検証する。サーバリボケーションリスト(SRL)に再生予定のコンテンツやコンテンツ管理データを受領したサーバのサーバIDが記録されている場合は、そのコンテンツは不正なサーバの提供コンテンツである可能性があるため、再生が禁止される。
【0083】
しかし、再生装置が古いバージョンのサーバリボケーションリスト(SRL)を参照してコンテンツ再生可否を判定してしまうと、その古いSRLの発行後に無効化されたサーバ(コンテンツサーバ)の提供コンテンツの再生がいつまでも許容されてしまう場合がある。
【0084】
このような事態を防止するため、再生装置の利用を許容するサーバリボケーションリスト(SRL)の最小のバージョン番号を設定している。このデータが、図5に示すサーバ証明書に記録されるサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)である。なお、このサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)は、後述するトークン(Token)にも記録される。
【0085】
再生装置は、コンテンツ再生処理に際して、サーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)より小さいバージョン番号の設定されたサーバリボケーションリスト(SRL)、すなわち古いサーバリボケーションリスト(SRL)を利用することは許容されない。なお、このような処理を実行するための再生処理プログラムは、予め再生装置に提供され、コンテンツの再生処理においては、再生処理プログラムに従った処理が実行される。コンテンツ再生シーケンスについては後段でフローチャートを参照して説明する。
【0086】
(6)メディアに対する読み取り/書き込み制限情報(PAD Read/PADWrite)
メディアに対する読み取り/書き込み制限情報(PAD Read/PADWrite)は、コンテンツを記録するメディア、例えば図1、図2に示すメモリカード31、あるいは図3に示すメモリカード400の記憶領域中に設定される保護領域(PDA:Protected Area)内のデータ読み取り(Read)や、書き込み(Write)が許容された区分領域についての情報が記録される。
【0087】
メモリカード400の記憶領域の具体的構成例を図6に示す。
メモリカード400の記憶領域は、図6に示すように、
(a)保護領域(Protected Area)401、
(b)非保護領域(User Area)402、
これら2つの領域によって構成される。
【0088】
(b)非保護領域(User Area)402はユーザの利用する記録再生装置によって、自由にアクセス可能な領域であり、コンテンツや一般のコンテンツ管理データ等が記録される。ユーザによって自由にデータの書き込みや読み取りを行うことか可能な領域である。
【0089】
一方、(a)保護領域(Protected Area)401は、自由なアクセスが許容されない領域である。
例えば、ユーザの利用する記録再生装置、再生装置、あるいはネットワークを介して接続されるサーバ等によってデータの書き込みあるいは読み取りを行おうとする場合、メモリカード400に予め格納されたプログラムに従って、各装置に応じて読み取り(Read)または書き込み(Write)の可否が決定される。
【0090】
メモリカード400は、予め格納されたプログラムを実行するためのデータ処理部や認証処理を実行する認証処理部を備えており、メモリカード400は、まず、メモリカード400に対してデータの書き込みまたは読み取りを実行しようとする装置との認証処理を行う。
【0091】
この認証処理の段階で、相手装置、すなわちアクセス要求装置から公開鍵証明書等の装置証明書(たとえばサーバ証明書(Server Cert))を受信し、その証明書に記載された情報を用いて、保護領域(Protected Area)401の各区分領域のアクセスが許容されるか否かを判定する。この判定処理は、図6に示す保護領域(Protected Area)401内の区分領域(図に示す領域#0,#1,#2・・・)単位で判定処理が行われ、許可された区分領域で許可された処理のみが実行される。
【0092】
このメディアに対する読み取り/書き込み制限情報(PAD Read/PADWrite)は、例えば、アクセスしようとする装置、例えばコンテンツサーバ、あるいは記録再生装置(ホスト)単位で設定される。これらの情報は各装置対応のサーバ証明書(Server Cert)や、ホスト証明書(Host Cert)に記録される。
【0093】
メモリカード400は、メモリカード400に予め格納された規定のプログラムに従って、サーバ証明書(Server Cert)や、ホスト証明書(Host Cert)の記録データを検証して、アクセス許可のなされた領域についてのみアクセスを許容する処理を行う。
【0094】
このサーバに対するアクセス許容情報が、図5に示す(6)メディアに対する読み取り/書き込み制限情報(PAD Read/PADWrite)に相当する。
図5に示す(6)メディアに対する読み取り/書き込み制限情報(PAD Read/PADWrite)には、例えば以下のような情報が記録される。
図6に示す保護領域(Protected Area)401中の、
領域(#1)については、データの読み取り(Read)のみを許容、
領域(#2)については、データの読み取り(Read)と書き込み(Write)を許容、
領域(#3)については、データの読み取り(Read)と書き込み(Write)のいずれも許容しない、
このような区分領域単位のアクセス許容情報が記録される。
【0095】
メモリカード400のデータ処理部は、この情報を用いて各区分領域に対するアクセスの可否を判定する。なお、このアクセス判定の前処理としてアクセス要求装置と、メモリカード400との間で相互認証処理が実行される。この相互認証が成立したことを条件としてアクセス要求装置から受領した証明書、例えばサーバ証明書(Server Cert)を検証してアクセス許容領域の判定が行われる。
【0096】
図5に示すように、サーバ証明書(Server Cert)には、上述したデータの他、[(7)その他の情報]が記録され、さらに、(1)〜(7)の各データに対して認証局の秘密鍵によって生成された(8)署名(Signature)が記録される。この署名により改ざんの防止構成が実現される。
サーバ証明書(Server Cert)を利用する場合は、署名検証を実行して、サーバ証明書(Server Cert)の正当性を確認した上で利用が行われる。なお、署名検証は、認証局の公開鍵を利用して実行される。
【0097】
[3.サーバがコンテンツ管理情報として提供するトークンについて]
先に図3を参照して説明したように、コンテンツサーバ200は、メモリカード400に対するコンテンツの提供処理を実行する際に、コンテンツ202を暗号化して提供するとともに、コンテンツ管理情報としてのトークン201や、サーバリボケーションリスト(SRL)203、コンテンツリボケーションリスト(CRL)204、さらに図には示していないが、コンテンツの復号に適用する暗号鍵(バインドキー)等をコンテンツ記録装置(ホスト)300に提供して、コンテンツと共にメモリカード400に記録させる。
【0098】
なお、コンテンツ記録装置(ホスト)300にディスク250を装着し、ディスク250に格納されたコンテンツをメモリカード400に記録する(コピー)場合には、コンテンツ記録装置(ホスト)300は、コピー許可をコンテンツサーバ200から得て、コンテンツのコピーを実行する。この処理のために、コンテンツ記録装置(ホスト)300はコピー予定のコンテンツの識別子であるコンテンツIDをディスク250から取得してコンテンツサーバ200に送信する。
【0099】
なお、ディスク250に格納されたコンテンツも暗号化コンテンツであり、その復号に適用する鍵の他、図3に示すコンテンツ管理情報としてのトークン201や、サーバリボケーションリスト(SRL)203、コンテンツリボケーションリスト(CRL)204などがコンテンツサーバ200からコンテンツ記録装置(ホスト)300に提供され、ディスク250から提供されたコンテンツに対応する管理データとしてコンテンツと共にメモリカード400に記録する処理が行われる。
【0100】
コンテンツサーバ200が生成して提供するトークン201の具体的なデータ構成例について図7を参照して説明する。
トークンは、図7に示すように、以下のデータを記録データとして有する。
(1)コンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)
(2)サーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)
(3)ボリュームID(PV Volume ID)
(4)コンテンツID(Content ID)
(5)コンテンツハッシュテーブルダイジェスト(Content Hash Table Digest(S))
(6)利用制御情報ハッシュ値(Usage Rule Hash)
(7)タイムスタンプ(Time stamp)
(8)その他の情報
(9)署名(Signature)
【0101】
以下、上記(1)〜(9)の各データについて説明する。
(1)コンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)
(2)サーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)
【0102】
これらのデータは、先に図5を参照して説明したサーバ証明書(Server Certificate)に格納されたデータと同じデータである。
すなわち、再生装置においてコンテンツ再生時の前処理として実行されるコンテンツおよびサーバの有効性確認処理において利用の許容されるコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)の最小のバージョン番号を記録した領域である。
【0103】
再生装置は、トークンを参照して、これらの値を取得し、再生装置内のメモリに格納されたコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)のバージョンがこのトークンに記録された最小値以上の値である場合にのみ、そのリボケーションリスト(CRL/SRL)を利用してコンテンツとサーバのリボーク(無効化)確認を行うことができる。再生装置がトークンに記録された最小値未満のバージョンの古いCRL/SRLのみしか保持していない場合には、コンテンツ再生処理は禁止されることになる。
なお、コンテンツ再生処理の詳細シーケンスについては後段でフローチャートを参照して説明する。
【0104】
(3)ボリュームID(PV Volume ID)
ボリュームID(PV Volume ID)は、所定単位(例えばタイトル単位)のコンテンツに対応する識別子(ID)である。このIDは、例えばコンテンツ再生時に利用可能性のあるJava(登録商標)アプリケーションであるBD−J/APIやBD+API等によって参照される場合があるデータである。
【0105】
(4)コンテンツID(Content ID)
コンテンツID(Content ID)はコンテンツを識別する識別子であるが、トークンに記録されるコンテンツIDは、コンテンツまたはコンテンツ管理データ(トークンを含む)を提供したサーバIDを含むデータとして設定される。すなわち、
コンテンツID=サーバID(Server ID)+コンテンツ固有ID(Unique Content ID)
上記のようにサーバIDを含むデータとしてコンテンツIDが記録される。
【0106】
サーバIDは、認証局が各コンテンツサーバに設定したIDである。先に図5を参照して説明したサーバ証明書(Server Cert)に記録されたサーバIDと同じIDである。
コンテンツ固有IDは、コンテンツサーバが独自に設定するコンテンツ対応の識別子(ID)である。
トークンに記録されるコンテンツIDは、このように認証局の設定したサーバIDとコンテンツサーバの設定したコンテンツ固有IDの組み合わせとして構成される。
【0107】
なお、コンテンツIDの構成ビット数や、サーバIDのビット数、コンテンツ固有IDのビット数は予め規定されており、コンテンツを再生する再生装置は、トークンに記録されたコンテンツIDから所定ビット数の上位ビットを取得してサーバIDを取得し、コンテンツIDから所定の下位ビットを取得することでコンテンツ固有IDを得ることが可能となる。
【0108】
(5)コンテンツハッシュテーブルダイジェスト(Content Hash Table Digest(S))
コンテンツハッシュテーブルダイジェスト(Content Hash Table Digest(S))は、メモリカードに格納されるコンテンツのハッシュ値を記録したデータである。このデータは、コンテンツが改ざん検証処理に利用される。
【0109】
コンテンツを再生する再生装置は、メモリカードに記録された再生予定のコンテンツのハッシュ値を計算し、トークンに記録されたコンテンツハッシュテーブルダイジェスト(Content Hash Table Digest(S))の記録値との比較を実行する。計算データと登録データとが一致としていればコンテンツの改ざんはないと判定されコンテンツ再生が可能となる。一致しない場合は、コンテンツは改ざんされている可能性があると判定され、再生は禁止される。
【0110】
(6)利用制御情報ハッシュ値(Usage Rule Hash)
利用制御情報ハッシュ値(Usage Rule Hash)はサーバがコンテンツの管理データとしてユーザに提供しメモリカードに記録させる利用制御情報のハッシュ値である。
利用制御情報は、例えばコンテンツのコピーを許容するか否か、コピーの許容回数、他機器への出力可否などのコンテンツの利用形態の許容情報などを記録したデータであり、コンテンツとともにメモリカードに記録される情報である。
利用制御情報ハッシュ値は、この利用制御情報の改ざん検証用のデータとして利用されるハッシュ値である。
【0111】
コンテンツを再生する再生装置は、メモリカードに記録された再生予定のコンテンツに対応する利用制御情報のハッシュ値を計算し、トークンに記録された利用制御情報ハッシュ値(Usage Rule Hash)の記録値との比較を実行する。計算データと登録データとが一致としていれば利用制御情報の改ざんはないと判定され、利用制御情報に従ったコンテンツ利用が可能となる。一致しない場合は、利用制御情報は改ざんされている可能性があると判定され、コンテンツの再生等の利用処理は禁止される。
【0112】
(7)タイムスタンプ(Time stamp)
タイムスタンプ(Time stamp)は、このトークンの作成日時、例えば図7の(9)に示す署名の作成日時情報である。
【0113】
トークン(Token)には、上述したデータの他、図7に示すように[(8)その他の情報]が記録され、さらに、(1)〜(8)の各データに対してサーバの秘密鍵によって生成された(9)署名(Signature)が記録される。この署名によりトークンの改ざん防止構成が実現される。
【0114】
トークン(Token)を利用する場合は、署名検証を実行して、トークン(Token)が改ざんのない正当なトークンであることを確認した上で利用が行われる。なお、署名検証は、サーバの公開鍵を利用して実行される。サーバの公開鍵は、先に図5を参照して説明したサーバ証明書(Server Certificate)から取得可能である。
【0115】
[4.サーバとメモリカード間の処理とメモリカードの格納データについて]
次に、図8以下を参照してサーバとメモリカード間の処理とメモリカードの格納データについて説明する。
【0116】
図8には、左から、
(A)コンテンツサーバ
(B)コンテンツ記録装置(ホスト)
(C)メモリカード
これらを示している。
(A)コンテンツサーバは、図3に示すコンテンツサーバ200に対応し、
(B)コンテンツ記録装置は、図3に示すコンテンツ記録装置(ホスト)300に対応し、
(C)メモリカードは図3に示すメモリカード400に対応する。
【0117】
図8には、コンテンツサーバがメモリカードに対して、コンテンツと、コンテンツ以外のコンテンツ管理情報を提供して記録させる場合の処理シーケンスを示している。
なお、コンテンツを図3に示すディスク250からコピーしてメモリカードに記録する場合は、コンテンツはディスクからメモリカードに記録されるが、その他のトークンを含む管理データについては、コンテンツサーバからメモリカードに送信されて記録される。
【0118】
なお、図8に示す(C)メモリカードは、(B)コンテンツ記録装置(ホスト)に装着し、(B)コンテンツ記録装置(ホスト)の通信部を介して(A)コンテンサーバとの通信を実行し、(A)コンテンツサーバから受信する各種のデータを(B)コンテンツ記録装置(ホスト)を介して受信してメモリカードに記録する。
【0119】
図8を参照して処理シーケンスについて説明する。
まず、ステップS21において、コンテンツサーバとメモリカード間で相互認証処理を実行する。例えば公開鍵暗号方式に従って、双方の公開鍵証明書の交換処理等を含む相互認証処理を行う。コンテンツサーバは先に説明したように、認証局の発行した公開鍵を格納したサーバ証明書(Server Certificate)と秘密鍵を保持している。メモリカードも予め認証局から公開鍵証明書と秘密鍵のペアを受信し自己の記憶部に格納している。
【0120】
なお、メモリカードは相互認証処理や、図6を参照して説明した保護領域(Protected Area)に対するアクセス可否判定を行うプログラムを格納し、これらのプログラムを実行するデータ処理部を有する。
【0121】
コンテンツサーバとメモリカード間の相互認証が成立し、双方の正当性が確認されると、サーバはメモリカードに対して様々なデータを提供する。相互認証が成立しない場合は、サーバからのデータ提供処理は行われない。
【0122】
相互認証の成立後、コンテンツサーバは、データベース211に記録されたボリュームID等のデータを取得して、トークン213を生成し、ステップS22においてトークンに対する署名を実行して、コンテンツ記録装置(ホスト)に対してメモリカードに対する書き込みデータとして送信する。
【0123】
トークン213は、先に図7を参照して説明したように、以下のデータを含む。
(1)コンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)
(2)サーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)
(3)ボリュームID(PV Volume ID)
(4)コンテンツID(Content ID)
(5)コンテンツハッシュテーブルダイジェスト(Content Hash Table Digest(S))
(6)利用制御情報ハッシュ値(Usage Rule Hash)
(7)タイムスタンプ(Time stamp)
(8)その他の情報
(9)署名(Signature)
【0124】
これらのデータを含むトークンが、(A)コンテンツサーバから(B)コンテンツ記録装置(ホスト)を介して(C)メモリカードに送信され、メモリカードに記録される。この記録データが図8の(C)メモリカード中に示すトークン(Token)415である。
【0125】
なお、メモリカードは、先に図6を参照して説明したように保護領域(potected Area)と非保護領域(User Area)に分割されている。
図8に示す(C)メモリカードには保護領域(potected Area)412を示している。保護領域(potected Area)412は、図に示すようにバインドキー(Binding Key(Kb))414が記録される。その他のデータは、非保護領域(User Area)に記録される。
【0126】
なお、バインドキー(Binding Key(Kb))414は暗号化コンテンツの復号に適用するタイトルキー(CPSユニットキーとも呼ばれる)の暗号化処理に利用される鍵であり、コンテンツサーバにおいて乱数生成処理等によって生成される。
【0127】
図8(A)コンテンツサーバのステップS23の処理として示すように、バインドキー(Binding Key(Kb))は、コンテンツサーバにおいて生成される。この鍵は、コンテンツのメモリカードに対する提供処理、あるいはディスクからのヒンテンツのコピー処理が実行される毎に、サーバが、逐次、乱数生成等を実行して生成してメモリカードに提供する。従って、コンテンツの提供あるいはコピー処理ごとに異なるバインドキーが生成されることになる。
【0128】
サーバの生成したバインドキー(Binding Key(Kb))は、メモリカードの保護領域(Protected Area)に書き込まれる。
なお、先に図6を参照して説明したように、メモリカードの保護領域(Protected Area)に対するデータの書き込み(Write)、あるいは保護領域(Protected Area)からのデータ読み込み(Read)処理は制限された処理である。アクセス要求装置(サーバや、記録再生装置(ホスト))単位、および各区分領域(#1,#2・・・)単位で書き込み(Write)、読み取り(Read)の可否が設定されている。この設定情報はサーバであればサーバ証明書(Server Cert)、記録再生装置(ホスト)であればホスト証明書(Host Cert)に記録されている。
【0129】
メモリカードは、アクセス要求装置から受領した証明書、本例ではサーバ証明書(Server Cert)を参照して、書き込みの許容された保護領域内の区分領域にバインドキー(Binding Key(Kb))を記録する。図8に示すバインドキー(Binding Key(Kb))414である。なお、図8では、保護領域(Protected Area)412の内部を詳細に示していないが、この保護領域(Protected Area)は図6を参照して説明したように複数の区分領域(#0,#1,#2・・・)に区分されており、サーバ証明書に書き込み許容領域として記録された区分領域にバインドキー(Binding Key(Kb))414が記録される。
【0130】
なお、サーバ証明書(Server Cert)はステップS21の認証処理に際して、メモリカードがコンテンツサーバから受領した証明書を参照することができる。なお、サーバ証明書(Server Cert)には認証局の署名が設定され、メモリカードは認証局の公開鍵を適用して署名検証を実行し、サーバ証明書(Server Cert)の正当性を確認していることが前提となる。
【0131】
なお、コンテンツサーバからメモリカードへのバインドキーの送信は、セッションキーで暗号化したデータとして送信が行われる。
セッションキーは、サーバとメモリカード間の相互認証処理(ステップS21)時に生成され、双方で共有する鍵である。メモリカードは、暗号化されたバインドキーをセッションキーで復号してメモリカードの保護領域(Protected Area)の所定の区分領域に記録する。
【0132】
図8に示す(A)コンテンツサーバは、次に、生成したバインドキー(Kb)と、(C)メモリカードから受領したメディアIDを利用して、ステップS24において、鍵生成処理(AES−G)を行う。ここで生成する鍵はボリュームユニークキーと呼ばれる。
なお、メディアIDは、メモリカードの識別情報としてメモリカード内のメモリに予め記録されたIDである。
【0133】
次に、コンテンツサーバは、ステップS25において、コンテンツの暗号化キーであるタイトルキー(CPSユニットキー)215をボリュームユニークキーで暗号化して暗号化タイトルキーを生成する。
【0134】
(A)コンテンツサーバは生成した暗号化タイトルキーを(B)コンテンツ記録装置(ホスト)を介して(C)メモリカードに送信する。メモリカードは、受信した暗号化タイトルキーをメモリカードに記録する。この記録データが図8の(C)メモリカード中に示す暗号化タイトルキー416である。なお、タイトルキーはCPSユニットキーとも呼ばれる。
【0135】
さらに、コンテンツサーバは、コンテンツに対応する利用制御情報216を生成して、ステップS27でコンテンツサーバの秘密鍵で署名処理を実行してメモリカードに提供する。
また、コンテンツサーバは、ステップS28において、コンテンツ218をタイトルキー215で暗号化してメモリカードに提供する。
【0136】
メモリカードは、これらのサーバからの提供データを記録する。この記録データが図8の(C)メモリカード中に示す利用制御情報417、暗号化コンテンツ418である。
【0137】
なお、図8に示す処理シーケンス中には示していないが、コンテンツサーバは、これらのデータの他、例えば、
(1)コンテンツリボケーションリスト(CRL)
(2)サーバリボケーションリスト(SRL)
これらのデータをメモリカードに提供し、メモリカードはこれらのデータをメモリカードに記録する。
【0138】
図9にメモリカード内に記録されるデータを示すディレクトリ構造と、コンテンツ再生処理を実行する再生装置内に記録されるデータの例を示す。
【0139】
図9の左側がメモリカードのディレクトリ構成であり、
ルート[root]ディレクトリ以下に設定される主にBD関連コンテンツを設定するディレクトリである[BDMV]ディレトトリの下位にサーバからのダウンロードまたはディスクからのコピーコンテンツやその管理情報を記録するディレクトリ[DELTA]が設定され、ディレクトリ[DELTA]以下に、サーバから提供されるコンテンツやコンテンツ管理データが記録される。
なお、図に示すディレクトリ構成は一例であり、メモリカードに対する記録構成は、この例に限らず、様々な構成とすることができる。ただし、コンテンツとコンテンツに対応するトークン等を含む管理情報はその対応関係を識別可能とする設定で記録されることが必要である。
【0140】
図9に示すメモリカードのディレクトリ[DELTA]以下の設定データについて説明する。
CPSユニットキーファイル(CPS Unit Key File)421は、図8に示す暗号化タイトルキー416に対応する。
トークン(Token)422は、図8に示すトークン415に対応する。
コンテンツハッシュテーブル423は、図8には示していないが、コンテンツのハッシュ値としてコンテンツサーバから提供され記録される。
【0141】
利用制御情報(CPSユニットUsage File#1〜#n)424#1〜#nは、図8に示す利用制御情報417に対応する。なお、CPSユニットはコンテンツの利用単位(再生単位)として設定されるユニットであり、各ユニット単位で利用制御情報が設定される。
【0142】
サーバ証明書(Server Certificate)425は、図8に示す認証処理(ステップS21)において、サーバから受領する証明書であり、先に図5を参照して説明したようにサーバIDやサーバの公開鍵等が格納された構成を持つ。
【0143】
コンテンツリボケーションリスト(CRL)426は無効化(リボーク)されたコンテンツの識別子(ID)を記録したリストであり、先に図4(b)を参照して説明したデータ構成を持つ。
サーバリボケーションリスト(SRL)427は無効化(リボーク)されたサーバの識別子(ID)を記録したリストであり、先に図4(a)を参照して説明したデータ構成を持つ。
メモリカードには、このようなコンテンツやコンテンツ管理データが記録される。
【0144】
なお、図には示していないが、メモリカードの保護領域(Protected Area)にはバインドキーが記録される。
暗号化コンテンツの復号処理にはタイトルキー(CPSユニットキー)を取得することが必要であり、このタイトルキーは、前述したように、バインドキーとメディアIDを利用して生成されるボリュームユニークキーで暗号化されている。
【0145】
従って、再生装置においてタイトルキーを取得するためには、メモリカードの保護領域(Protected Area)に記録されたバインドキーを取り出して、さらにメディアIDを利用してボリュームユニークキーを生成して、生成したボリュームユニークキーを適用して暗号タイトルキー(暗号化CPSユニットキー)を復号してタイトルキー(CPSユニットキー)取得する処理を行うことが必要となる。
【0146】
図9の右側には、メモリカードに記録されたコンテンツの再生処理を実行する再生装置のメモリに格納されるデータ例を示している。コンテンツの再生処理を実行する再生装置は、例えば、図1、図2に示す記録再生器22、PC23、あるいは再生機能のみを持つ再生装置などである。これら、コンテンツの再生処理を実行する再生装置は、
サーバリボケーションリスト(SRL)311、
コンテンツリボケーションリスト(CRL)312、
これらのリストをメモリに記録している。
【0147】
なお、コンテンツの再生処理を実行する再生装置では、コンテンツ再生処理に際して再生装置のメモリに格納されたサーバリボケーションリスト(SRL)311と、コンテンツリボケーションリスト(CRL)312のバージョンと、その時点で再生装置が取得可能なサーバリボケーションリスト(SRL)と、コンテンツリボケーションリスト(CRL)のバージョン比較を実行し、自装置のメモリに格納された各リストのバージョンより新しいバージョンのリストが取得できる場合は、メモリに格納された古いバージョンのリストを新しいバージョンのリストに置き換えるリストの更新処理を実行する。
【0148】
例えば再生装置がメモリカードに記録されたコンテンツを再生する場合には、メモリカードに記録されているサーバリボケーションリスト(SRL)426と、コンテンツリボケーションリスト(CRL)427の各リストのバージョンと、再生装置のメモリに格納されたサーバリボケーションリスト(SRL)311と、コンテンツリボケーションリスト(CRL)312のバージョンを比較する。
【0149】
例えば、メモリカードに記録されているサーバリボケーションリスト(SRL)426と、コンテンツリボケーションリスト(CRL)427の各リストのバージョンが、再生装置のメモリに格納されたサーバリボケーションリスト(SRL)311と、コンテンツリボケーションリスト(CRL)312のバージョンが新しい(例えばバージョン値が大きい値である)場合には、再生装置は再生装置のメモリに格納されたサーバリボケーションリスト(SRL)311と、コンテンツリボケーションリスト(CRL)312を、メモリカードに記録されているサーバリボケーションリスト(SRL)426と、コンテンツリボケーションリスト(CRL)427の各リストに置き換える処理を行う。
【0150】
さらに、ディスクからコンテンツ再生を行う場合に、ディスクからより新しいリボケージョンリストが得られる場合には、メモリに格納されたリストをディスクから読み取られるリストによる更新を行う。
このように、再生装置は、より新しいリボケーションリストに置き換える処理を実行する。この処理の実行シーケンスは例えば再生装置が保持する再生処理プログラム中の一部に記録されており、再生装置はプログラムにしたがって各リボケーションリストの更新を実行する。
【0151】
再生装置に予め記録されたコンテンツ再生プログラムを実行すると、再生装置に記録された、
サーバリボケーションリスト(SRL)311、
コンテンツリボケーションリスト(CRL)312、
これらの各リストのバージョンと、その時点で利用可能なリスト、例えばサーバから受信、あるいはディスク等から読み取ったリストのバージョン比較を実行して、新しいバージョンのリストが得られた場合は、装置のメモリに記録された古いリストを更新する処理が行われる。
【0152】
[5.サーバからのコンテンツダウンロード処理シーケンスについて]
次に、図10以下のフローチャートを参照してサーバからのコンテンツダウンロード処理シーケンスについて説明する。
【0153】
図10に示すフローチャートは、例えば図1に示すコンテンツサーバ11からコンテンツをダウンロードして図1に示すメモリカード31に記録する場合の処理である。
図10に示すフローは、図1に示す(b)コンテンツ記録装置(共用端末21、記録再生装置22、PC23等)のデータ処理部において実行する処理である。ただし、メモリカードに対するデータ書き込み、読み取り等の処理に際してはメモリカードのデータ処理部においても処理が実行される場合がある。
例えば、ステップS109のバインドキーの書き込み処理に際しては、メモリカードのデータ処理部において、先に図6を参照して説明した保護領域(Protected Area)に対する書き込み可否の判定が行われる。
【0154】
図10に示すフローチャートの各ステップについて説明する。
ステップS101において、装置にメモリカードを装着し、サーバに対するアクセスを行う。なお、この時点で、先に図8のステップS21の処理として説明したサーバとメモリカードとの相互認証処理が実行される。ステップS102以下の処理はこの相互認証処理が成立した場合に実行される。相互認証が成立しなかった場合にはコンテンツダウンロード処理は実行されない。なお、記録再生装置とサーバ間、さらに記録再生装置とメモリカード間の相互認証処理も必要に応じて行う構成としてよい。
【0155】
少なくともサーバとメモリカードとの相互認証が成立した後、様々なデータがメモリカードに提供され、メモリカードに格納される。なお、サーバとの通信はメモリカードを装着した装置、例えば図1に示す(b)コンテンツ記録装置(共用端末21、記録再生装置22、PC23等)を介して行われる。
【0156】
ステップS102では、
トークン(Token)、
コンテンツリボケーションリスト(CRL:Content Revocation List),
サーバリボケーションリスト(SRL:Server Revocation List)、
サーバ証明書(Server Certificate)、
これらの各データのダウンロード処理、読み取り処理、メモリカードに対する書き込み処理を行う。
【0157】
トークン(Token)は、先に図7を参照して説明したデータを持つ。
コンテンツリボケーションリスト(CRL)は、先に図4(b)を参照して説明した無効化(リボーク)コンテンツの識別子(ID)を記録したリストである。
サーバリボケーションリスト(SRL)は、先に図4(a)を参照して説明した無効化(リボーク)サーバの識別子(ID)を記録したリストである。
サーバ証明書(Server Certificate)は、先に図5を参照して説明したサーバ公開鍵を格納したデータである。
【0158】
なお、コンテンツリボケーションリスト(CRL)と、サーバリボケーションリスト(SRL)と、サーバ証明書(Server Certificate)は図3に示す認証局100が発行し、認証局の秘密鍵による署名が設定されている。
トークン(Token)は、サーバ(例えば図3に示すコンテンツサーバ200)が発行し、サーバの秘密鍵による署名が設定されている。
【0159】
ステップS103では、ステップS102においてサーバから取得したコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)の検証処理と再生器のメモリへの取り込み処理を実行する。
このステップS103の詳細シーケンスについて、図11に示すフローチャートを参照して説明する。
【0160】
図11のステップS151において処理を開始する。この処理は、図10に示すフローのステップS101〜S102の処理の完了後に行われる。すなわちメモリカードを装着し、装着したメモリカードに以下のデータ、すなわち、
トークン(Token)、
コンテンツリボケーションリスト(CRL:Content Revocation List),
サーバリボケーションリスト(SRL:Server Revocation List)
サーバ証明書(Server Certificate),
これらのデータの記録が完了した後に行われる。
【0161】
ステップS152において、
メモリカードに記録した、
コンテンツリボケーションリスト(CRL:Content Revocation List),
サーバリボケーションリスト(SRL:Server Revocation List)
これらのデータを読み取る。
これらはサーバからダウンロードしたデータである。
【0162】
ステップS153において、コンテンツリボケーションリスト(CRL)の署名検証を実行する。
前述したようにコンテンツリボケーションリスト(CRL)は、図3を参照して説明したように認証局(認証サーバ)100の発行するリストであり、認証局の秘密鍵による署名が付与されている。ステップS153では、この署名の検証を実行する。なお、署名に必要となる認証局公開鍵は、認証局公開鍵証明書から取得可能であり、この処理を実行する機器(例えば図1(b)コンテンツ記録装置(共用端末21、記録再生装置22、PC23等))に格納されている。格納されていない場合は必要に応じて取得する。
【0163】
ステップS153において、コンテンツリボケーションリスト(CRL)の署名検証が成立し、コンテンツリボケーションリスト(CRL)が改ざんのない正当なリストであることが確認された場合は、ステップS154に進む。
【0164】
一方、ステップS153において、コンテンツリボケーションリスト(CRL)の署名検証が成立せず、コンテンツリボケーションリスト(CRL)が改ざんのない正当なリストであることが確認されなかった場合は、ステップS160に進み、その後の処理を中止する。この場合は、図10のフローのステップS104以下の処理がすべて中止されることになり、コンテンツのダウンロード(S106)も行われない。
【0165】
ステップS153において、コンテンツリボケーションリスト(CRL)の署名検証が成立し、コンテンツリボケーションリスト(CRL)が改ざんのない正当なリストであることが確認された場合は、ステップS154に進む。
【0166】
ステップS154では、
メディア(メモリカード)にダウンロードして記録したコンテンツリボケーションリスト(CRL)のバージョンと、この処理を実行中の装置、例えば図1(b)コンテンツ記録装置(共用端末21、記録再生装置22、PC23等))のメモリに格納されているコンテンツリボケーションリスト(CRL)のバージョンとの比較処理を実行する。
【0167】
この処理は、先に図9を参照して説明した2つのコンテンツリボケーションリスト(CRL)、すなわち、
(1)サーバからダウンロードして、メモリカード内に記録したコンテンツリボケーションリスト(CRL)427、
(2)再生器内のメモリに格納済みのコンテンツリボケーションリスト(CRL)312、
これら2つのCRLのバージョン比較処理に相当する。
再生器は、ダウンロード処理を実行中の機器(例えば図1(b)コンテンツ記録装置(共用端末21、記録再生装置22、PC23等))に対応する。
【0168】
ステップS154において、
メディア(メモリカード)にダウンロード記録したコンテンツリボケーションリスト(CRL)のバージョン値>再生器のメモリに記録されたコンテンツリボケーションリスト(CRL)のバージョン値
上記式が成立する場合は、ステップS155に進む。
【0169】
上記式が成立する場合とは、メディア(メモリカード)にダウンロード記録したコンテンツリボケーションリスト(CRL)が、再生器(例えば図1(b)コンテンツ記録装置(共用端末21、記録再生装置22、PC23等))のメモリに記録されたコンテンツリボケーションリスト(CRL)より新しいことを意味する。
この場合は、ステップS155において、メディア(メモリカード)にダウンロード記録した新しいコンテンツリボケーションリスト(CRL)を、再生器(例えば図1(b)コンテンツ記録装置(共用端末21、記録再生装置22、PC23等))のメモリに記録されている古いコンテンツリボケーションリスト(CRL)に置き換える更新処理を実行する。
【0170】
コンテンツの再生処理を行う再生装置は、コンテンツ再生処理に際して、自装置のメモリに格納されたリボケーションリストを参照してコンテンツやサーバのリボーク(無効化)状況を判定するので、このような更新処理を行うことで、より新しいリストを適用した適正な判断が可能となる。なお、コンテンツ再生処理シーケンスについては後段で説明する。
【0171】
ステップS155におけるコンテンツリボケーションリスト(CRL)の更新処理が完了した場合、および、ステップS154において、メディア(メモリカード)にダウンロード記録したコンテンツリボケーションリスト(CRL)が装置内のメモリに記録済みのコンテンツリボケーションリスト(CRL)より新しくないと判定された場合(ステップS154の判定がNo)は、ステップS156に進む。
【0172】
ステップS156では、サーバリボケーションリスト(SRL)の署名検証を実行する。
前述したようにサーバリボケーションリスト(SRL)は、図3を参照して説明した認証局(認証サーバ)100の発行するリストであり、認証局の秘密鍵による署名が付与されている。ステップS156では、この署名の検証を実行する。なお、署名に必要となる認証局公開鍵は、認証局公開鍵証明書から取得可能であり、この処理を実行する装置(例えば図1(b)コンテンツ記録装置(共用端末21、記録再生装置22、PC23等))に格納されている。格納されていない場合は必要に応じて取得する。
【0173】
ステップS156において、サーバリボケーションリスト(SRL)の署名検証が成立し、サーバリボケーションリスト(SRL)が改ざんのない正当なリストであることが確認された場合は、ステップS157に進む。
【0174】
一方、ステップS156において、サーバリボケーションリスト(SRL)の署名検証が成立せず、サーバリボケーションリスト(SRL)が改ざんのない正当なリストであることが確認されなかった場合は、ステップS160に進み、その後の処理を中止する。この場合は、図10のフローのステップS104以下の処理がすべて中止されることになり、コンテンツのダウンロード(S106)も行われない。
【0175】
ステップS156において、サーバリボケーションリスト(SRL)の署名検証が成立し、サーバリボケーションリスト(SRL)が改ざんのない正当なリストであることが確認された場合は、ステップS157に進み、メディア(メモリカード)にダウンロードして記録したサーバリボケーションリスト(SRL)のバージョンと、この処理を実行中の装置、例えば図1(b)コンテンツ記録装置(共用端末21、記録再生装置22、PC23等))のメモリに格納されているサーバリボケーションリスト(SRL)のバージョンとの比較処理を実行する。
【0176】
この処理は、先に図9を参照して説明した2つのサーバリボケーションリスト(SRL)、すなわち、
(1)サーバからダウンロードして、メモリカード内に記録したサーバリボケーションリスト(SRL)426、
(2)再生器内のメモリに格納済みのサーバリボケーションリスト(SRL)311、
これら2つのSRLのバージョン比較処理に相当する。
再生器は、ダウンロード処理を実行中の機器(例えば図1(b)コンテンツ記録装置(共用端末21、記録再生装置22、PC23等))に対応する。
【0177】
ステップS157において、
メディア(メモリカード)にダウンロード記録したサーバリボケーションリスト(SRL)のバージョン値>再生器のメモリに記録されたサーバリボケーションリスト(SRL)のバージョン値、
上記式が成立する場合は、ステップS158に進む。
【0178】
上記式が成立する場合とは、メディア(メモリカード)にダウンロード記録したサーバリボケーションリスト(SRL)が、再生器(例えば図1(b)コンテンツ記録装置(共用端末21、記録再生装置22、PC23等))のメモリに記録されたサーバリボケーションリスト(SRL)より新しいことを意味する。
この場合は、ステップS158において、メディア(メモリカード)にダウンロード記録した新しいサーバリボケーションリスト(SRL)を、再生器(例えば図1(b)コンテンツ記録装置(共用端末21、記録再生装置22、PC23等))のメモリに記録されている古いサーバリボケーションリスト(SRL)に置き換える更新処理を実行する。
【0179】
前述したように、再生装置はコンテンツ再生処理に際して、自装置のメモリに格納されたリボケーションリストを参照してコンテンツやサーバのリボーク(無効化)状況を判定するので、このような更新処理を行うことで、より新しいリストを適用した適正な判断が可能となる。なお、コンテンツ再生処理シーケンスについては後段で説明する。
【0180】
ステップS158におけるサーバリボケーションリスト(SRL)の更新処理が完了した場合、および、ステップS157において、メディア(メモリカード)にたダウンロード記録したサーバリボケーションリスト(SRL)が装置内のメモリに記録済みのサーバリボケーションリスト(SRL)より新しくないと判定された場合(ステップS157の判定がNo)は、この処理を終了し、図10のフローのステップS104に進む。
【0181】
図10に示すフローチャートに戻り、ステップS104以下の処理について説明する。
ステップS104では、
(1)ダウンロード予定のコンテンツがリボーク(無効化)されているか否か、
(2)トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)が、この処理を実行している装置のメモリに格納されたコンテンツリボケーションリスト(CRL)のバージョンより大きいか否か、
これらの判定処理を実行する。
各判定処理について説明する。
【0182】
(1)ダウンロード予定のコンテンツがリボーク(無効化)されているか否か、
この処理は、ダウンロード予定のコンテンツのコンテンツIDが、装置のメモリに格納されたコンテンツリボケーションリスト(CRL)に記録されているか否かの判定処理として行われる。なお、コンテンツIDはサーバに対するダウンロード要求時にサーバから受領したコンテンツIDを用いてもよいし、トークン中に記録されたコンテンツID中のコンテンツ固有IDを用いてもよい。あるいはサーバから別途、コンテンツIDを記録したコンテンツ証明書を受信してその証明書に記載されたコンテンツIDを用いてもよい。
【0183】
ダウンロード予定のコンテンツのコンテンツIDが、装置のメモリに格納されたコンテンツリボケーションリスト(CRL)に記録されている場合、そのコンテンツはリボーク(無効化)コンテンツであり、ステップS104の判定はYesとなり、以下の処理は実行されず、ステップS110に進み、他ダウンロード処理は中止される。この場合、コンテンツのダウンロード(S106)は実行されない。
【0184】
また、ステップS104のもう1つの判定処理である、
(2)トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)が、この処理を実行している装置のメモリに格納されたコンテンツリボケーションリスト(CRL)のバージョンより大きいか否かの判定において大きいと判定された場合には、装置のメモリに格納されたコンテンツリボケーションリスト(CRL)は利用できないことになり、この場合もステップS104の判定はYesとなり、以下の処理は実行されず、ステップS110に進み、他ダウンロード処理は中止される。この場合、コンテンツのダウンロード(S106)は実行されない。
【0185】
ステップS104において、
(1)ダウンロード予定のコンテンツがリボーク(無効化)されていないと判定され、
かつ、
(2)トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)が、この処理を実行している装置のメモリに格納されたコンテンツリボケーションリスト(CRL)のバージョンより大きくないと判定された場合にのみ、
ステップS104の判定がNoとなり、次のステップS105の処理に進む。
【0186】
ステップS105では、
(1)ダウンロード処理を行っているサーバがリボーク(無効化)されているか否か、
(2)トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)が、この処理を実行している装置のメモリに格納されたサーバリボケーションリスト(SRL)のバージョンより大きいか否か、
これらの判定処理を実行する。
各判定処理について説明する。
【0187】
(1)ダウンロード処理を行っているサーバがリボーク(無効化)されているか否か、
この処理は、ダウンロード処理を行っているサーバのサーバIDが、装置のメモリに格納されたサーバリボケーションリスト(SRL)に記録されているか否かの判定処理として行われる。なお、サーバIDは例えばステップS102において取得したサーバ証明書(Server Certificate)から取得できる。なお、この処理の前提としてサーバ証明書に付与された認証局の署名検証処理によって、サーバ証明書の正当性の確認を行う。
【0188】
ダウンロード処理を行っているサーバのサーバIDが、装置のメモリに格納されたサーバリボケーションリスト(SRL)に記録されている場合、そのサーバはリボーク(無効化)されたサーバであり、ステップS105の判定はYesとなり、以下の処理は実行されず、ステップS110に進み、他ダウンロード処理は中止される。この場合、コンテンツのダウンロード(S106)は実行されない。
【0189】
また、ステップS105のもう1つの判定処理である、
(2)トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)が、この処理を実行している装置のメモリに格納されたサーバリボケーションリスト(SRL)のバージョンより大きいか否かの判定において大きいと判定された場合には、装置のメモリに格納されたサーバリボケーションリスト(SRL)は利用できないことになり、この場合もステップS105の判定はYesとなり、以下の処理は実行されず、ステップS110に進み、他ダウンロード処理は中止される。この場合、コンテンツのダウンロード(S106)は実行されない。
【0190】
ステップS105において、
(1)ダウンロード処理を行っているサーバがリボーク(無効化)されていないと判定され、
(2)トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)が、この処理を実行している装置のメモリに格納されたサーバリボケーションリスト(SRL)のバージョンより大きくないと判定された場合にのみ、
ステップS105の判定がNoとなり、次のステップS106の処理に進む。
【0191】
ステップS106では、接続サーバから以下のデータをダウンロードしてメディア(メモリカード)に対して書き込む処理を実行する。
暗号化コンテンツ(Encrypted content)、
CPSユニットキーファイル(CPS Unit Key File)、
コンテンツハッシュテーブル(Content Hash Table)、
利用制御情報(CPS Unit Usage File)
【0192】
暗号化コンテンツは、CPSユニットキーファイル(CPS Unit Key File)に含まれるCPSユニットキー(タイトルキー)で暗号化されたコンテンツである。
CPSユニットキーファイル(CPS Unit Key File)は、コンテンツ復号用の鍵であるCPSユニットキー(タイトルキー)を記録したファイルである。なお、先に図8を参照して説明したように、CPSユニットキー(タイトルキー)自身もバインドキーとメディアIDを用いて生成されるボリュームユニークキーを用いて暗号化されている。
【0193】
コンテンツハッシュテーブルは、コンテンツのハッシュ値を格納したテーブルである。コンテンツの再生時にコンテンツの正当性を確認するために利用される。
利用制御情報は、コンテンツの再生処理やコピー処理等のコンテンツ利用時の制限情報等を記録したデータである。
【0194】
ステップS106におけるダウンロード、記録処理が完了すると、ステップS107において課金処理を行う。
なお、課金処理に際しては、例えば決済サーバ等の別のサーバとの接続を伴う処理として実行してもよい。
【0195】
ステップS108において課金処理の完了が確認されない場合は、ステップS110で処理を中止する。この場合、ステップS109のバインドキー(Binding Key)のダウンロードが実行されないので、コンテンツの復号、利用は不可能となる。
【0196】
ステップS108において課金処理の完了が確認されると、ステップS109に進む。
ステップS109では、サーバから提供されるバインドキー(Binding Key)のダウンロードを実行して、メディア(メモリカード)に記録して、ステップS110において処理を終了する。
【0197】
なお、バインドキー(Binding Key)は、メモリカードの識別子としてメモリカードの不揮発性メモリに予め記録されたメディアIDとの暗号処理によってボリュームユニークキーを生成する際に必須となる鍵データである。
ボリュームユニークキーはCPSユニットキー(タイトルキー)の復号に適用され、CPSユニットキー(タイトルキー)は暗号化コンテンツの復号に必要となる。
従って、バインドキー(Binding Key)が得られなければ、暗号化コンテンツの復号、再生は不可能となる。
【0198】
また、ステップS109におけるバインドキー(Binding Key)のメモリカードへの書き込み処理は、先に、図6を参照して説明したように、メモリカードの保護領域(Protected Area)の所定の区分領域(図6に示すProtectedArea#1,#2,#3・・・)に対して実行されることになる。
【0199】
サーバのメモリカードの保護領域(Protected Area)に対する記録許容領域については、サーバ証明書(Server Cert)に記録されている。メモリカードのデータ処理部が、サーバ証明書(Server Cert)に記録された情報を参照してバインドキー(Binding Key)の記録先を決定して記録する処理を行う。
【0200】
なお、メモリカードを装着した装置が、メモリカードの取得した記録先許容情報を受領して、記録先を決定する処理を行う構成としてもよい。また、メモリカードを装着した装置自身が、サーバ証明書(Server Cert)に記録された記録許容領域情報を取得して記録先を決定する処理を行う構成としてもよい。
なお、メモリカードの保護領域(Protected Area)に対するデータ書き込み/読み取り制御処理についての詳細については、後段で説明する。
【0201】
図10を参照して説明したコンテンツダウンロード処理は、ダウンロード処理時に、再生装置のメモリに格納されたコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)のバージョンの値が、トークンに記録された許容最小値以上であるか否かを検証して、トークンに記録された許容最小値以上でない場合は、処理を中止する設定として説明した。
しかし、このバージョンチェックはダウンロード処理においては行わず、コンテンツの再生処理時に実行する構成としてもよい。
【0202】
次に、図12、図13に示すフローチャートを参照して、コンテンツダウンロード処理のもう1つの例について説明する。
図10のフローチャートを参照して説明した処理では、再生装置のメモリに格納されたコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)のバージョンの値と、トークンに記録されたバージョン許容最小値のみを比較する処理例として説明した。
【0203】
図12、図13に示す処理は、このバージョン比較に加え、さらに、
メデイア(メモリカード)に記録したコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)のバージョンの値と、トークンに記録されたバージョン許容最小値についての比較処理も実行する処理例である。
【0204】
メデイア(メモリカード)に記録したコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)のバージョンの値が、トークンに記録されたバージョン許容最小値未満である場合は処理を中止する。
【0205】
図12、図13に示すフローチャートの各ステップの処理について説明する。
ステップS201〜ステップS203の処理は、図10参照して説明したステップS101〜S103の処理と同様の処理である。
すなわち、ステップS201において、装置にメモリカードを装着し、サーバに対するアクセスを行う。なお、ステップS201の時点で、先に図8のステップS21の処理として説明したサーバとメモリカードとの相互認証処理が実行され、ステップS202以下の処理はこの相互認証処理が成立した場合に実行される。
【0206】
ステップS202では、
トークン(Token)、
コンテンツリボケーションリスト(CRL:Content Revocation List),
サーバリボケーションリスト(SRL:Server Revocation List)
サーバ証明書(Server Certificate),
これらの各データのダウンロード処理、読み取り処理、、メモリカードに対する書き込み処理を行う。
【0207】
ステップS203では、ステップS202においてサーバから取得したコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)の検証処理と再生器のメモリへの取り込み処理を実行する。
このステップS203の詳細シーケンスについては、先に図11に示すフローチャートを参照して説明した通りである。
【0208】
すなわち、サーバからダウンロードし、メモリカードに記録した
コンテンツリボケーションリスト(CRL:Content Revocation List),
サーバリボケーションリスト(SRL:Server Revocation List)
これらリボケーションリストの署名検証により正当性を確認する処理と、ダウンロードリストと、記録再生装置のメモリに格納されたリストのバージョン比較処理による装置格納リストの更新処理が行われる。
【0209】
すなわち、ダウンロードしたコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)が装置のメモリに格納された各リボケーションリストより新しいものである場合には、装置のメモリに格納されたリストをダウンロードした新しいリストに置き換えるリボケーションリスト更新処理を実行する。
【0210】
これらの処理の完了後、ステップS204に進む。
ステップS204は、図10に示すフローのステップS104の処理に対応する。
ステップS204では、
(1)ダウンロード予定のコンテンツがリボーク(無効化)されているか否か、
(2)トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)が、この処理を実行している装置のメモリに格納されたコンテンツリボケーションリスト(CRL)のバージョンより大きいか否か、
これらの判定処理を実行する。
この判定処理は図10に示すフローのステップS104の処理と同様の処理である。
【0211】
ステップS204において、
(1)ダウンロード予定のコンテンツがリボーク(無効化)されていないと判定され、
かつ、
(2)トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)が、この処理を実行している装置のメモリに格納されたコンテンツリボケーションリスト(CRL)のバージョンより大きくないと判定された場合にのみ、
ステップS204の判定がNoとなり、次のステップS205の処理に進む。
この場合以外は、ステップS204の判定はYesとなり、ステップS212に進み、その後の処理は中止される。この場合は、コンテンツのダウンロードは(ステップS208)行われない。
【0212】
ステップS204の判定がNoとなり、次のステップS205の処理に進むと、ステップS205では、
トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)と、ステップS202において新たにサーバからダウンロードし、メディア(メモリカード)に記録したコンテンツリボケーションリスト(CRL)のバージョンの比較を行う。
【0213】
このステップS205の処理は、図10を参照して説明した処理には含まれない処理である。
ステップS205において、
トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)が、ステップS202において新たにサーバからダウンロードし、メディア(メモリカード)に記録したコンテンツリボケーションリスト(CRL)のバージョンより大きい場合、このダウンロードにより新たに記録したコンテンツリボケーションリスト(CRL)は、トークンの記録に従って使用できないリストとなる。この場合、ステップS205の判定はYesとなり、以下の処理は実行されず、ステップS212に進み、他ダウンロード処理は中止される。この場合、コンテンツのダウンロード(S208)は実行されない。
【0214】
ステップS205において、
トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)が、ステップS202において新たにサーバからダウンロードし、メディア(メモリカード)に記録したコンテンツリボケーションリスト(CRL)のバージョンより大きくないと判定した場合には、ステップS205の判定がNoとなり、次のステップS206の処理に進む。
【0215】
ステップS206は、図10に示すフローのステップS105の処理に対応する。
ステップS206では、
(1)ダウンロード処理の実行先のサーバがリボーク(無効化)されているか否か、
(2)トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)が、この処理を実行している装置のメモリに格納されたサーバリボケーションリスト(SRL)のバージョンより大きいか否か、
これらの判定処理を実行する。
この判定処理は図10に示すフローのステップS105の処理と同様の処理である。
【0216】
ステップS206において、
(1)ダウンロード処理の実行先のサーバがリボーク(無効化)されていないと判定され、
かつ、
(2)トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)が、この処理を実行している装置のメモリに格納されたサーバリボケーションリスト(SRL)のバージョンより大きくないと判定された場合にのみ、
ステップS206の判定がNoとなり、次のステップS207の処理に進む。
この場合以外は、ステップS206の判定はYesとなり、ステップS212に進み、その後の処理は中止される。この場合は、コンテンツのダウンロードは(ステップS208)行われない。
【0217】
ステップS206の判定がNoとなり、次のステップS207の処理に進むと、ステップS207では、
トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)と、ステップS202において新たにサーバからダウンロードし、メディア(メモリカード)に記録したサーバリボケーションリスト(SRL)のバージョンの比較を行う。
【0218】
このステップS207の処理は、図10を参照して説明した処理には含まれない処理である。
ステップS207において、
トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)が、ステップS202において新たにサーバからダウンロードし、メディア(メモリカード)に記録したサーバリボケーションリスト(SRL)のバージョンより大きい場合、このダウンロードにより新たに記録したサーバリボケーションリスト(SRL)は、トークンの記録に従って使用できないリストとなる。この場合、ステップS207の判定はYesとなり、以下の処理は実行されず、ステップS212に進み、他ダウンロード処理は中止される。この場合、コンテンツのダウンロード(S208)は実行されない。
【0219】
ステップS207において、
トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)が、ステップS202において新たにサーバからダウンロードし、メディア(メモリカード)に記録したサーバリボケーションリスト(SRL)のバージョンより大きくないと判定した場合には、ステップS207の判定がNoとなり、次のステップS208の処理に進む。
【0220】
ステップS208〜ステップS212の処理は、図10に示すフローチャートのステップS106〜S110の処理に対応する。
ステップS208では、接続サーバから以下のデータをダウンロードしてメディア(メモリカード)に対して書き込む処理を実行する。
暗号化コンテンツ(Encrypted content)、
CPSユニットキーファイル(CPS Unit Key File)、
コンテンツハッシュテーブル(Content Hash Table)、
利用制御情報(CPS Unit Usage File)
【0221】
暗号化コンテンツは、CPSユニットキーファイル(CPS Unit Key File)に含まれるCPSユニットキー(タイトルキー)で暗号化されたコンテンツである。
CPSユニットキーファイル(CPS Unit Key File)は、コンテンツ復号用の鍵であるCPSユニットキー(タイトルキー)を記録したファイルである。なお、先に図8を参照して説明したように、CPSユニットキー(タイトルキー)自身もバインドキーとメディアIDを用いて生成されるボリュームユニークキーを用いて暗号化されている。
【0222】
コンテンツハッシュテーブルは、コンテンツのハッシュ値を格納したテーブルである。コンテンツの再生時にコンテンツの正当性を確認するために利用される。
利用制御情報は、コンテンツの再生処理やコピー処理等のコンテンツ利用時の制限情報等を記録したデータである。
【0223】
ステップS208におけるダウンロード、記録処理が完了すると、ステップS209において課金処理を行う。
なお、課金処理に際しては、例えば決済サーバ等の別のサーバとの接続を伴う処理として実行してもよい。
【0224】
ステップS210において課金処理の完了が確認されない場合は、ステップS212で処理を中止する。この場合、ステップS211のバインドキー(Binding Key)のダウンロードが実行されないので、コンテンツの復号、利用は不可能となる。
【0225】
ステップS210において課金処理の完了が確認されると、ステップS211に進む。
ステップS211では、サーバから提供されるバインドキー(Binding Key)のダウンロードを実行して、メディア(メモリカード)に記録する。
【0226】
なお、前述したようにバインドキー(Binding Key)は、メモリカードの識別子としてメモリカードの不揮発性メモリに予め記録されたメディアIDとの暗号処理によってボリュームユニークキーを生成する際に必須となる鍵データである。
ボリュームユニークキーはCPSユニットキー(タイトルキー)の復号に適用され、CPSユニットキー(タイトルキー)は暗号化コンテンツの復号に必要となる。
従って、バインドキー(Binding Key)が得られなければ、暗号化コンテンツの復号、再生は不可能となる。
【0227】
なお、ステップS211におけるバインドキー(Binding Key)のメモリカードへの書き込み処理は、先に、図6を参照して説明したように、メモリカードの保護領域(Protected Area)の所定の区分領域(図6に示すProtectedArea#1,#2,#3・・・)に対して実行されることになる。
【0228】
サーバの記録許容領域については、サーバ証明書(Server Cert)に記録されており、メモリカードの書き込み処理プログラムがサーバ証明書(Server Cert)に記録された情報を参照してバインドキー(Binding Key)の記録先を決定して記録する処理を行う。あるいはダウンロード実行装置が代わりに行ってもよい。
なお、メモリカードの保護領域(Protected Area)に対するデータ書き込み/読み取り制御処理についての詳細については、後段で説明する。
【0229】
なお、図12を参照して説明したコンテンツダウンロード処理においては、
ダウンロード処理時に、再生装置のメモリに格納されたコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)、さらにダウンロードしてルモリカードに新たに記録したコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)、これらのバージョンの値が、トークンに記録された許容最小値以上であるか否かを検証して、トークンに記録された許容最小値以上でない場合は、処理を中止する設定として説明した。
【0230】
しかし、これらのバージョンチェックはダウンロード処理においては行わず、コンテンツの再生処理時に実行する構成としてもよい。
【0231】
なお、図10〜図13に示すフローチャートでは、コンテンツ自体をサーバからダウンロードする場合の処理例として説明したが、コンテンツ自体をディスクからメモリカードにコピーする場合は、コンテンツ以外のデータをサーバから取得することになる。この場合、図10〜図13に示すフロー中のコンテンツのダウンロード処理がディスクからのコンテンツコピー処理に置き換えられることになる。その他のトークン、CRL、SRL等を含むコンテンツ管理情報については、サーバからダウンロードしてメモリカードに記録され、この際に、コンテンツ記録以外の図10〜図13のフローに示す処理が実行される。
【0232】
[6.コンテンツ再生処理シーケンスについて]
次に、図14以下のフローチャートを参照して、サーバからダウンロードしてメディア(メモリカード)に記録したコンテンツと管理情報(ダウンロードコンテンツ対応の管理データ)を適用したコンテンツの再生処理シーケンスについて説明する。
【0233】
このコンテンツ再生処理は、メモリカードを装着した再生装置によって行われる。再生装置は、例えば図2に示す記録再生器22、PC23、あるいは再生処理のみを行う再生装置等の様々な装置である。なお、これらの再生装置には、以下に説明するフローに従った再生シーケンスを実行するためのプログラムが格納されており、そのプログラムに従って再生伴う様々な処理、例えばコンテンツの復号処理や、管理データの検証、管理データを適用したコンテンツやサーバ検証等を実行する。
【0234】
図14に示すフローチャートについて説明する。
ステップS301において、再生対象となるコンテンツと管理データを格納したメデイア(メモリカード)を装着し、再生対象コンテンツのユーザ指定等により再生コンテンツが選択される。
【0235】
ステップS302において、再生対象コンテンツに対応する以下の管理データがメモリカードから読み取られる。
トークン(Token)、
コンテンツハッシュテーブル(Content Hash Table)、
コンテンツリボケーションリスト(CRL:Content Revocation List)、
サーバ証明書(Server Certificate)、
サーバリボケーションリスト(SRL:Server Revocation List)、
これらのデータの読み取りを行う。
【0236】
トークン(Token)は、先に図7を参照して説明したデータを持つ。
コンテンツハッシュテーブル(Content Hash Table)はコンテンツのハッシュ値を格納したデータであり、コンテンツの正当性(改ざんの有無)を判定するために利用される。
コンテンツリボケーションリスト(CRL)は、先に図4(b)を参照して説明した無効化(リボーク)コンテンツの識別子(ID)を記録したリストである。
サーバ証明書(Server Certificate)は、先に図5を参照して説明したサーバ公開鍵を格納したデータである。
サーバリボケーションリスト(SRL)は、先に図4(a)を参照して説明した無効化(リボーク)サーバの識別子(ID)を記録したリストである。
【0237】
なお、コンテンツリボケーションリスト(CRL)と、サーバリボケーションリスト(SRL)と、サーバ証明書(Server Certificate)は図3に示す認証局100が発行し、認証局の秘密鍵による署名が設定されている。
トークン(Token)とコンテンツハッシュテーブル(Content Hash Table)は、サーバ(例えば図3に示すコンテンツサーバ200)が発行し、サーバの秘密鍵による署名が設定されている。
【0238】
ステップS303では、ステップS302においてサーバから取得したコンテンツリボケーションリスト(CRL)に基づくコンテンツのリボーク(無効化)状況の検証処理を実行する。
このステップS303の詳細シーケンスについて、図15に示すフローチャートを参照して説明する。
【0239】
図15のステップS331は、図14のステップS301と同様の処理を示しており、コンテンツリボケーションリスト(CRL)に基づくコンテンツのリボーク(無効化)状況の検証処理の開始条件として行われる処理である。
ステップS332において、
サーバ証明書(Server Certificate)、
トークン(Token)、
コンテンツリボケーションリスト(CRL:Content Revocation List)、
これらのデータを取得する。
なお、これらは再生対象コンテンツに対応してメモリカードに記録された管理データである。
【0240】
ステップS333において、
サーバ証明書(Server Certificate)、
トークン(Token)、
コンテンツリボケーションリスト(CRL:Content Revocation List)、
これらの各データに設定された署名検証処理を実行して各データの正当性を確認する。
【0241】
前述したように、コンテンツリボケーションリスト(CRL)と、サーバリボケーションリスト(SRL)と、サーバ証明書(Server Certificate)は図3に示す認証局100が発行し、認証局の秘密鍵による署名が設定されている。これらのデータに対しては、認証局の公開鍵を適用した署名検証を実行する。
再生装置は、予め認証局の公開鍵を格納した公開鍵証明書を自装置のメモリに格納している。あるいは必要に応じて取得するものとする。
【0242】
また、トークン(Token)は、サーバ(例えば図3に示すコンテンツサーバ200)が発行し、サーバの秘密鍵による署名が設定されている。この署名検証は、サーバ証明書に格納されたサーハバの公開鍵を適用して実行される。ただし、サーバ証明書の署名検証により正当性の確認されたサーバ証明書であることが条件である。
【0243】
ステップS333において、
サーバ証明書(Server Certificate)、
トークン(Token)、
コンテンツリボケーションリスト(CRL:Content Revocation List)、
これらの各データに設定された署名検証処理を実行して全てのデータの正当性が確認された場合は、ステップS333の判定はYesとなり、ステップS334に進む。
一方、上記のいずれかのデータの署名検証が成立しなかった場合は、ステップS333の判定はNoとなり、ステップS320(図14参照)に進み、再生処理は中止される。
【0244】
ステップS333において、サーバ証明書(Server Certificate)、トークン(Token)、コンテンツリボケーションリスト(CRL:Content Revocation List)、これら全てのデータの正当性が確認された場合は、ステップS334に進む。ステップS334では、正当性の確認されたトークン内に記録されたコンテンツIDが、正当性の確認されたコンテンツリボケーションリスト(CRL)にリボーク(無効化)コンテンツとして記録されているか否かを判定する。
【0245】
なお、トークンには、先に図7を参照して説明したように、コンテンツIDとして、サーバIDと、コンテンツ固有IDとの組み合わせデータが記録されている。
コンテンツリボケーションリスト(CRL)に記録されるコンテンツIDは、「コンテンツ固有ID」あるいは「コンテンツID=サーバID+コンテンツ固有ID」、これらいずれのパターンとしてもよく、再生装置は、これらのパターンに応じて、トークンに記録されたコンテンツID(またはコンテンツ固有ID)と、コンテンツリボケーションリスト(CRL)に記録されたコンテンツID(またはコンテンツ固有ID)とを比較する。
【0246】
トークンに記録されたコンテンツID(またはコンテンツ固有ID)がコンテンツリボケーションリスト(CRL)に記録されている場合は、そのコンテンツ、すなわち再生予定のコンテンツはリボーク(無効化)されていることになり、ステップS334の判定はNoとなり、ステップS320に進みコンテンツ再生は中止される。
【0247】
一方、トークンに記録されたコンテンツID(またはコンテンツ固有ID)がコンテンツリボケーションリスト(CRL)に記録されていない場合は、そのコンテンツ、すなわち再生予定のコンテンツはリボーク(無効化)されていないことになり、ステップS334の判定はYesとなり、ステップS335に進む。
【0248】
ステップS335では、トークンに記録されたコンテンツID中の上位ビットとして設定されているサーバIDを取得する。このサーバIDが、正当性の確認されたサーバ証明書(Server Cert)に記録されたサーバIDと一致するか否かを確認する。
【0249】
一致すれば、トークンは、認証局によって認められた正当なサーバによって、自己のサーバIDを設定したコンテンツIDを記録した正しい記録データを持つトークンであると判定し、ステップS335の判定がYesとなり、図14のステップS304に進む。
【0250】
一致しない場合は、トークンが、認証局によって認められた正当なサーバではあるが、自己のサーバIDと異なるサーバIDを設定した不正なコンテンツIDを記録した不正データを持つトークンであると判定し、ステップS335の判定はNoとなり、ステップS320(図14)に進みコンテンツ再生は中止される。
【0251】
このステップS335の判定処理は、トークンが認証局の監視外で、サーバが自由に作成できるという問題点を補う処理として行われる。
認証局によって認められたサーバであっても、不正なトークンを作成する可能性がある。
しかし、トークン内に記録されるコンテンツIDは、先に図7を参照して説明したように、
コンテンツID=[サーバID]+[コンテンツ固有ID]
の構成を有しているため、トークンに記録されたコンテンツIDを参照すれば不正なトークンを作成したサーバを特定できる。
【0252】
不正を行おうとするサーバは、この特定を不可能にするため、トークン中に記録されるコンテンツIDに含まれるサーバIDを、本来の自サーバのIDではなく、他のサーバIDや実在しないサーバID等に設定してトークンを作成することが考えられる。
【0253】
このような不正を防止し判定する処理がステップS335の処理である。ステップS335において、トークン中のコンテンツIDに含まれるサーバIDと、サーバ証明書に記録されたサーバIDが一致することを確認することで、トークンに記録されたコンテンツID中のサーバIDが間違いなくトークンの発行主体であることが確認され、不正な記録を含むトークンでないことが確認される。
【0254】
図15に示す、
サーバ証明書とコンテンツリボケーションリスト(CRL)の署名検証の成立(S333)、
トークンに記録されたコンテンツIDがコンテンツリボケーションリスト(CRL)に記録されていないことの確認(S334)、
トークンに記録されたサーバIDとサーバ証明書のサーバIDが一致することの確認(S335)、
これらすべてが確認された場合に図14のフローのステップS304に進む。
【0255】
図14のフローチャートのステップS304では、ステップS302において読み取ったコンテンツハッシュテーブルの正当性確認処理を実行する。
コンテンツハッシュテーブル(CHT)はコンテンツのハッシュ値を登録したテーブルであり、コンテンツの正当性(改ざんの有無)を検証するために利用されるデータであり、例えばサーバの秘密鍵による署名が付与されている。この署名検証を実行する。署名検証はサーバ証明書から取得するサーバ公開鍵によって行われる。
【0256】
ステップS304において、コンテンツハッシュテーブル(CHT)の正当性が確認されなかった場合は、ステップS304の判定はNoとなり、ステップS320に進み、コンテンツ再生は中止される。
【0257】
ステップS304において、コンテンツハッシュテーブル(CHT)の正当性が確認された場合は、ステップS304の判定はYesとなり、ステップS305に進む。
【0258】
ステップS305では、コンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)の検証処理と再生器のメモリへの取り込み処理を実行する。
この処理は、先に、図11に示すフローチャートを参照して説明した処理に相当する。
すなわち、サーバからダウンロードし、メモリカードに記録した、
コンテンツリボケーションリスト(CRL:Content Revocation List),
サーバリボケーションリスト(SRL:Server Revocation List)
これらリボケーションリストの署名検証により正当性を確認する処理と、ダウンロードリストと、記録再生装置のメモリに格納されたリストのバージョン比較処理による装置格納リストの更新処理が行われる。
リボケーションリストの署名検証により正当性が確認されなかった場合は、コンテンツ再生は中止(S320)される。
【0259】
また、バージョン比較処理において、ダウンロードしたコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)が装置のメモリに格納された各リボケーションリストより新しいものである場合には、装置のメモリに格納されたリストをダウンロードした新しいリストに置き換えるリボケーションリスト更新処理を実行する。
【0260】
これらの処理の完了後、ステップ306に進む。
ステップS306では、
(1)再生予定のコンテンツがリボーク(無効化)されているか否か、
(2)トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)が、この処理を実行している装置のメモリに格納されたコンテンツリボケーションリスト(CRL)のバージョンより大きいか否か、
これらの判定処理を実行する。
この判定処理は図10に示すフローのステップS104の処理と同様の処理である。
【0261】
ステップS306において、
(1)再生予定のコンテンツがリボーク(無効化)されていないと判定され、
かつ、
(2)トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)が、この処理を実行している装置のメモリに格納されたコンテンツリボケーションリスト(CRL)のバージョンより大きくないと判定された場合にのみ、
ステップS306の判定がNoとなり、次のステップS307の処理に進む。
この場合以外は、ステップS306の判定はYesとなり、ステップS320に進み、その後の処理は中止される。この場合は、コンテンツ再生は行われない。
【0262】
ステップS306の判定がNoとなり、次のステップS307の処理に進むと、ステップS307では、
(1)再生予定コンテンツまたは再生予定コンテンツの管理データを取得したサーバがリボーク(無効化)されているか否か、
(2)トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)が、この処理を実行している装置のメモリに格納されたサーバリボケーションリスト(SRL)のバージョンより大きいか否か、
これらの判定処理を実行する。
この判定処理は図10に示すフローのステップS105の処理と同様の処理である。
【0263】
ステップS307において、
(1)再生予定コンテンツまたは再生予定コンテンツの管理データを取得したサーバがリボーク(無効化)されていないと判定され、
かつ、
(2)トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)が、この処理を実行している装置のメモリに格納されたサーバリボケーションリスト(SRL)のバージョンより大きくないと判定された場合にのみ、
ステップS307の判定がNoとなり、次のステップS308の処理に進む。
この場合以外は、ステップS307の判定はYesとなり、ステップS320に進み、その後の処理は中止される。この場合は、コンテンツ再生は行われない。
【0264】
ステップS307の判定がNoとなり、次のステップS308の処理に進むと、ステップS308では、
トークンと利用制御情報の検証処理を実行する。
トークンは、先に図7参照して説明したデータ構成を有し、サーバの秘密鍵による署名が付与されている。
利用制御情報は、コンテンツの再生条件やコピー許容回数等のコンテンツの利用条件を記録したデータであり、サーバの秘密鍵による署名が付与されている。
ステップS308では、これらの各データの署名検証によりデータの正当性を確認する。署名検証は、サーバ証明書から取得されるサーバ公開鍵を用いて行われる。
【0265】
ステップS309では、これらの各データの署名検証が成立しデータの正当性が確認されたか否かを判定する。
ステップS309において、トークンと利用制御情報の正当性が確認されなかった場合は、ステップS309の判定はNoとなり、ステップS320に進み、その後の処理は中止される。この場合は、コンテンツ再生は行われない。
【0266】
ステップS309において、トークンと利用制御情報の正当性が確認された場合は、ステップS309の判定はYesとなり、次のステップS310に進む。
【0267】
ステップS310では、コンテンツの復号に適用するCPSユニットキー(タイトルキー)を取得する。
なお、先に図8等を参照して説明したように、再生装置においてCPSユニットキー(タイトルキー)を取得するためには、メモリカードの保護領域(Protected Area)に記録されたバインドキーを取り出して、さらにメディアIDを利用してボリュームユニークキーを生成して、生成したボリュームユニークキーを適用して暗号化CPSユニットキー(暗号化タイトルキー)を復号してCPSユニットキー(タイトルキー)を取得する処理を行う。
【0268】
その後、ステップS311において、取得したCPSユニットキー(タイトルキー)を適用して暗号化コンテンツの復号処理を行いコンテンツ再生を実行する。
【0269】
このように、コンテンツ再生を実行するためには、サーバから受領したトークン他のコンテンツ管理データを検証し、各管理データの正当性を確認した後、管理データに基づいて、コンテンツと、サーバの正当性を検証し、さらにサーバから受信したバインドキーを適用してコンテンツ復号用のCPSユニットキー(タイトルキー)を取得して暗号化コンテンツの復号を行うという一連の処理が必要となる。
【0270】
また、コンテンツと、サーバの正当性を検証するために適用するコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)は、トークンに記録されたバージョンの最小許容値以上のバージョンのものに制限される。すなわちトークンに記録されたバージョンの最小許容値未満のバージョンの古いリストを適用してコンテンツやサーバの有効性を判定して再生処理に移行することが禁止される。
【0271】
なお、これらの再生処理シーケンスは、再生装置が保持する再生処理プログラムに従って実行される。
また、図14を参照して説明した処理は、コンテンツとコンテンツ管理データの双方をサーバからダウンロードした場合に適用されるのみではなく、他のメデイア、例えば図1に示すコンテンツ記録ディスクからメモリカードにコンテンツをコピーし、そのコンテンツに対応する管理データをサーバから取得した場合にも実行される。
【0272】
次に、図16、図17に示すフローチャートを参照して、コンテンツ再生処理のもう1つの例について説明する。
図14のフローチャートを参照して説明した処理では、再生装置のメモリに格納されたコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)のバージョンの値と、トークンに記録されたバージョン許容最小値のみを比較する処理例として説明した。
【0273】
図16、図17に示す処理は、このバージョン比較に加え、さらに、
メデイア(メモリカード)に記録したコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)のバージョンの値と、トークンに記録されたバージョン許容最小値の比較処理も実行する処理例である。
【0274】
メデイア(メモリカード)に記録したコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)のバージョンの値が、トークンに記録されたバージョン許容最小値未満である場合は再生処理を中止する。
【0275】
図16、図17に示すフローチャートの各ステップの処理について説明する。
ステップS381〜ステップS385の処理は、図14、図15参照して説明したステップS301〜S305の処理と同様の処理である。
【0276】
ステップS381において、再生対象となるコンテンツと管理データを格納したメデイア(メモリカード)を装着し、再生対象コンテンツのユーザ指定等により再生コンテンツが選択される。
【0277】
ステップS382において、再生対象コンテンツに対応する以下の管理データがメモリカードから読み取られる。
トークン(Token)、
コンテンツハッシュテーブル(Content Hash Table)、
コンテンツリボケーションリスト(CRL:Content Revocation List)、
サーバ証明書(Server Certificate)、
サーバリボケーションリスト(SRL:Server Revocation List)、
これらのデータの読み取りを行う。
【0278】
ステップS383では、ステップS382においてサーバから取得したコンテンツリボケーションリスト(CRL)に基づくコンテンツのリボーク(無効化)状況の検証処理を実行する。
このステップS383の詳細シーケンスは、先に図15に示すフローチャートを参照して説明したとおりである。
【0279】
図15に示す、
サーバ証明書とコンテンツリボケーションリスト(CRL)の署名検証の成立(S333)、
トークンに記録されたコンテンツIDがコンテンツリボケーションリスト(CRL)に記録されていないことの確認(S334)、
トークンに記録されたサーバIDとサーバ証明書のサーバIDが一致することの確認(S335)、
これらのいずれかが確認されない場合は、ステップS395に進み、コンテンツ再生は中止される。
これらすべてが確認された場合に図16のフローのステップS384に進む。
【0280】
図16のフローチャートのステップS384では、ステップS382において読み取ったコンテンツハッシュテーブルの正当性確認処理を実行する。
コンテンツハッシュテーブル(CHT)はコンテンツのハッシュ値を登録したテーブルであり、コンテンツの正当性(改ざんの有無)を検証するために利用されるデータであり、例えばサーバの秘密鍵による署名が付与されている。この署名検証を実行する。署名検証はサーバ証明書から取得するサーバ公開鍵によって行われる。
【0281】
ステップS384において、コンテンツハッシュテーブル(CHT)の正当性が確認されなかった場合は、ステップS384の判定はNoとなり、ステップS395に進み、コンテンツ再生は中止される。
【0282】
ステップS384において、コンテンツハッシュテーブル(CHT)の正当性が確認された場合は、ステップS384の判定はYesとなり、ステップS385に進む。
【0283】
ステップS385では、コンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)の検証処理と再生器のメモリへの取り込み処理を実行する。
この処理は、先に、図11に示すフローチャートを参照して説明した処理に相当する。
すなわち、サーバからダウンロードし、メモリカードに記録した、
コンテンツリボケーションリスト(CRL:Content Revocation List),
サーバリボケーションリスト(SRL:Server Revocation List)
これらリボケーションリストの署名検証により正当性を確認する処理と、ダウンロードリストと、記録再生装置のメモリに格納されたリストのバージョン比較処理による装置格納リストの更新処理が行われる。
リボケーションリストの署名検証により正当性が確認されなかった場合は、コンテンツ再生は中止(S395)される。
【0284】
また、バージョン比較処理において、ダウンロードしたコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)が装置のメモリに格納された各リボケーションリストより新しいものである場合には、装置のメモリに格納されたリストをダウンロードした新しいリストに置き換えるリボケーションリスト更新処理を実行する。
【0285】
これらの処理の完了後、ステップ386に進む。ステップS386では、
(1)再生予定のコンテンツがリボーク(無効化)されているか否か、
(2)トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)が、この処理を実行している装置のメモリに格納されたコンテンツリボケーションリスト(CRL)のバージョンより大きいか否か、
これらの判定処理を実行する。
この判定処理は図14に示すステップS306の処理と同様であり、また図10に示すフローのステップS104の処理と同様の処理である。
【0286】
ステップS386において、
(1)再生予定のコンテンツがリボーク(無効化)されていないと判定され、
かつ、
(2)トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)が、この処理を実行している装置のメモリに格納されたコンテンツリボケーションリスト(CRL)のバージョンより大きくないと判定された場合にのみ、
ステップS386の判定がNoとなり、次のステップS387の処理に進む。
この場合以外は、ステップS386の判定はYesとなり、ステップS395に進み、その後の処理は中止される。この場合は、コンテンツ再生は行われない。
【0287】
ステップS386の判定がNoとなり、次のステップS387の処理に進むと、ステップS387では、
トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)と、再生予定のコンテンツに対応する管理データとしてサーバからダウンロードして、メディア(メモリカード)に記録したコンテンツリボケーションリスト(CRL)のバージョンの比較を行う。
【0288】
このステップS387の処理は、図14を参照して説明した処理には含まれない処理である。
ステップS387において、
トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)が、サーバからダウンロードし、メディア(メモリカード)に記録したコンテンツリボケーションリスト(CRL)のバージョンより大きい場合、このダウンロードにより新たに記録したコンテンツリボケーションリスト(CRL)は、トークンの記録に従って使用できないリストとなる。この場合、ステップS387の判定はYesとなり、以下の処理は実行されず、ステップS395に進み、以下の処理は中止される。この場合、コンテンツの再生処理は実行されない。
【0289】
ステップS387において、
トークン(Token)に記録されているコンテンツリボケーションリスト(CRL)バージョン許容最小値(Minimum CRL Version)が、再生予定のコンテンツ対応の管理データとしてサーバからダウンロードし、メディア(メモリカード)に記録したコンテンツリボケーションリスト(CRL)のバージョンより大きくないと判定した場合には、ステップS387の判定がNoとなり、次のステップS388の処理に進む。
【0290】
ステップS388では、
(1)再生予定のコンテンツあるいは再生予定コンテンツに対応するコンテンツ管理データをダウンロードしたサーバがリボーク(無効化)されているか否か、
(2)トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)が、この処理を実行している装置のメモリに格納されたサーバリボケーションリスト(SRL)のバージョンより大きいか否か、
これらの判定処理を実行する。
この判定処理は図14に示すステップS307の処理と同様であり、また図10に示すフローのステップS105の処理と同様の処理である。
【0291】
ステップS388において、
(1))再生予定のコンテンツあるいは再生予定コンテンツに対応するコンテンツ管理データをダウンロードしたサーバがリボーク(無効化)されていないと判定され、
かつ、
(2)トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)が、この処理を実行している装置のメモリに格納されたサーバリボケーションリスト(SRL)のバージョンより大きくないと判定された場合にのみ、
ステップS388の判定がNoとなり、次のステップS389の処理に進む。
この場合以外は、ステップS388の判定はYesとなり、ステップS395に進み、その後の処理は中止される。この場合は、コンテンツ再生は行われない。
【0292】
ステップS388の判定がNoとなり、次のステップS389の処理に進むと、ステップS389では、
トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)と、再生予定のコンテンツに対応する管理データとしてサーバからダウンロードして、メディア(メモリカード)に記録したサーバリボケーションリスト(SRL)のバージョンの比較を行う。
【0293】
このステップS389の処理は、図14を参照して説明した処理には含まれない処理である。
ステップS389において、
トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)が、サーバからダウンロードし、メディア(メモリカード)に記録したサーバリボケーションリスト(SRL)のバージョンより大きい場合、このダウンロードにより新たに記録したサーバリボケーションリスト(SRL)は、トークンの記録に従って使用できないリストとなる。この場合、ステップS389の判定はYesとなり、以下の処理は実行されず、ステップS395に進み、以下の処理は中止される。この場合、コンテンツの再生処理は実行されない。
【0294】
ステップS389において、
トークン(Token)に記録されているサーバリボケーションリスト(SRL)バージョン許容最小値(Minimum SRL Version)が、再生予定のコンテンツ対応の管理データとしてサーバからダウンロードし、メディア(メモリカード)に記録したサーバリボケーションリスト(SRL)のバージョンより大きくないと判定した場合には、ステップS389の判定がNoとなり、次のステップS390の処理に進む。
【0295】
ステップS390〜S393は、図14を参照して説明したフローのステップS308〜S311の処理に対応する処理である。
ステップS390では、
トークンと利用制御情報の検証処理を実行する。
トークンは、先に図7参照して説明したデータ構成を有し、サーバの秘密鍵による署名が付与されている。
利用制御情報は、コンテンツの再生条件やコピー許容回数等のコンテンツの利用条件を記録したデータであり、サーバの秘密鍵による署名が付与されている。
ステップS390では、これらの各データの署名検証によりデータの正当性を確認する。署名検証は、サーバ証明書から取得されるサーバ公開鍵を用いて行われる。
【0296】
ステップS391では、これらの各データの署名検証が成立しデータの正当性が確認されたか否かを判定する。
ステップS391において、トークンと利用制御情報の正当性が確認されなかった場合は、ステップS391の判定はNoとなり、ステップS395に進み、その後の処理は中止される。この場合は、コンテンツ再生は行われない。
【0297】
ステップS391において、トークンと利用制御情報の正当性が確認された場合は、ステップS391の判定はYesとなり、次のステップS392に進む。
【0298】
ステップS392では、コンテンツの復号に適用するCPSユニットキー(タイトルキー)を取得する。
なお、先に図8等を参照して説明したように、再生装置においてCPSユニットキー(タイトルキー)を取得するためには、メモリカードの保護領域(Protected Area)に記録されたバインドキーを取り出して、さらにメディアIDを利用してボリュームユニークキーを生成して、生成したボリュームユニークキーを適用して暗号化CPSユニットキー(暗号化タイトルキー)を復号してCPSユニットキー(タイトルキー)を取得する処理を行う。
【0299】
その後、ステップS393において、取得したCPSユニットキー(タイトルキー)を適用して暗号化コンテンツの復号処理を行いコンテンツ再生を実行する。
【0300】
このように、本処理例では、コンテンツ再生を実行するためには、サーバから受領したトークン他のコンテンツ管理データを検証し、各管理データの正当性を確認した後、管理データに基づいて、コンテンツと、サーバの正当性を検証し、さらにサーバから受信したバインドキーを適用してコンテンツ復号用のCPSユニットキー(タイトルキー)を取得して暗号化コンテンツの復号を行うという一連の処理が必要となる。
【0301】
また、コンテンツと、サーバの正当性を検証するために適用するコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)については、
(a)再生装置のメモリに格納されたコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)のバージョン、
(b)再生予定のコンテンツ対応の管理データとしてサーバからダウンロードしてメモリカードに格納されたコンテンツリボケーションリスト(CRL)とサーバリボケーションリスト(SRL)のバージョン、
これらの各リストのバージョンが、いずれも、トークンに記録されたバージョンの最小許容値以上のバージョンのものに制限される。すなわちトークンに記録されたバージョンの最小許容値未満のバージョンの古いリストを適用してコンテンツやサーバの有効性を判定して再生処理に移行することが禁止される。
【0302】
なお、これらの再生処理シーケンスは、再生装置が保持する再生処理プログラムに従って実行される。
また、図16〜図17を参照して説明した処理は、コンテンツとコンテンツ管理データの双方をサーバからダウンロードした場合に適用されるのみではなく、他のメデイア、例えば図1に示すコンテンツ記録ディスクからメモリカードにコンテンツをコピーし、そのコンテンツに対応する管理データをサーバから取得した場合にも実行される。
【0303】
[7.メモリカードの保護領域のアクセス制限構成と処理について]
先に、図6を参照して説明したように、メモリカードは、自由なアクセスの許容される非保護領域(User Area)と、保護領域(Protected Area)を有している。
以下では、メモリカードの保護領域のアクセス制限構成と具体的な処理例について説明する。
【0304】
メモリカードの保護領域(Protected Area)に対するデータの書き込み(Write)、あるいは保護領域(Protected Area)からのデータ読み込み(Read)は制限されている。
【0305】
具体的には、
アクセス要求装置(サーバや、記録再生装置(ホスト)等)単位、および、
各区分領域(#1,#2・・・)単位、
で、書き込み(Write)処理と、読み取り(Read)処理の可否をアクセス制御情報として設定している。
【0306】
この設定情報は、各装置の装置証明書に記録されている。装置証明書は認証局の署名を持つ認証局発行の証明書である。
具体的には、サーバであれば先に図5を参照して説明したサーバ証明書(Server Cert)である。記録再生装置(ホスト)も、認証局の発行したホスト証明書(Host Cert)を有し、この証明書にアクセス制御情報が記録されている。
これらの証明書は認証局の署名が設定されており、改ざん防止構成がとられている。すなわち、署名検証により、正当性(改ざんの有無)を確認可能な構成を有している。
【0307】
メモリカードは、アクセス要求装置から受領した証明書、例えばサーバであれば図5を参照して説明したサーバ証明書(Server Cert)、記録再生装置(ホスト)であれば記録再生装置(ホスト)の証明書であるホスト証明書(Host Cert)を参照して、各装置に対して許容されている書き込み領域や読み取り領域を確認する。
【0308】
例えばデータ書き込み(Write)処理の場合は、メモリカードがアクセス要求装置から受領した証明書の記録データに基づいて、メモリカードのデータ処理部が書き込み許容領域を確認し、確認された書き込み許容領域に対してデータの書き込みを実行する。例えば先に図6を参照して説明したバインドキーの書き込み等が行われる。
【0309】
データの読み取り(Read)処理の場合も同様であり、アクセス要求装置の証明書の記録データに基づいて、読み取り許容領域を確認し、確認された読み取り許容領域からデータの読み取りが実行される。
【0310】
例えば先に図6を参照して説明したバインドキーは、サーバによるアクセス要求に基づいて、サーバに対して書き込みの許容された区分領域に書き込みが実行される。
このバインドキーは、記録再生装置(ホスト)において、コンテンツ再生処理を実行する場合に必要なデータであり、記録再生装置(ホスト)は、バインドキーの書き込みが行われた区分領域の読み取り許可のなされた証明書(ホスト証明書)を保持していることが必要となる。
【0311】
記録再生装置(ホスト)において、コンテンツ再生処理を実行する場合、記録再生装置(ホスト)はメモリカードに対してホスト証明書を提供する。メモリカードのデータ処理部は、ホスト証明書の署名検証により、正当性を確認した後、ホスト証明書に記録された保護領域に対するアクセス許容情報を参照して、バインドキーの書き込まれた区分領域に対する読み取り(Read)の許可情報が記録されていることの確認を条件として、バインドキーを読み取り、記録再生装置(ホスト)に提供する。
【0312】
記録再生装置(ホスト)の所有するホスト証明書の例を図18に示す。
図18は、コンテンツ再生を実行する記録再生装置(ホスト)の所有するホスト証明書(Host Cert)の例である。図18に示すように、ホスト証明書(Host Cert)には以下のデータが記録される。
【0313】
Type:タイプ情報(Type)501は、証明書の種類情報や、ホスト情報等を記録する。たとえばホストがPCであるか、ホストが記録再生装置であるか、記録装置であるか、再生装置であるかの情報等が記録される。
PAD Read:読み取り許容領域情報(PAD Read)502は、メモリカードの保護領域(PA:Protected Area)の読み取り(Read)の許容された区分領域を示す情報である。
PAD Write:書き込み許容領域情報(PAD Write)503は、メモリカードの保護領域(PA:Protected Area)の書き込み(Write)の許容された区分領域を示す情報である。
Host ID:ホストID(Host ID)504は、ホストの識別子であるホストIDの記録領域である。
Host Public Key:ホスト公開鍵(Host Public Key)505は、ホストの公開鍵を格納した領域である。
Signature:署名(Signature)506は、ホスト証明書の構成データに対する認証局の秘密鍵による署名データである。
これらのデータが記録される。
【0314】
なお、これらのデータは、先に図5を参照して説明したサーバ証明書(Server Certificate)にも記録されている。
【0315】
図19を参照して、メモリカードに対するアクセス要求装置がサーバである場合と、記録再生装置等のホスト機器である場合のアクセス制限の設定例について説明する。
【0316】
図19には、左から、メモリカードに対するアクセス要求装置であるサーバ521、ホスト機器522、メモリカード530を示している。
サーバ521は、前述のダウンロードコンテンツや、ディスクからのコピーコンテンツの再生時に必要となるバインドキーの書き込み処理を実行するサーバである。
ホスト機器522は、メモリカードに格納されたコンテンツの再生処理を行う装置であり、コンテンツの復号処理のために、メモリカードに記録されたバインドキーを取得する必要がある機器である。
【0317】
メモリカード530は、保護領域(Protected Area)540と、非保護領域(User Area)550を有し、暗号化コンテンツ等は非保護領域(User Area)550に記録される。
バインドキー(Binding Key)は保護領域(Protected Area)540に記録される。
【0318】
先に図6を参照して説明したように、保護領域(Protected Area)540は、複数の領域に区分されている。
図19に示す例では、
区分領域#0(Protected Area#0)541、
区分領域#1(Protected Area#1)542、
これらの2つの区分領域を持つ例を示している。
【0319】
区分領域#0(Protected Area#0)541は、放送コンテンツの鍵データとしてのバインドキー記録領域として設定され、
区分領域#1(Protected Area#1)542は、ダウンロード、コピーコンテンツの鍵データとしてのバインドキー記録領域として設定された例である。
【0320】
このような設定では、先に図8を参照して説明したサーバの提供するバインドキーは、区分領域#1(Protected Area#1)542に記録される。
この場合、サーバのサーバ証明書(Server Certificate)に記録される書き込み許容領域情報(PAD Write)は、区分領域#1(Protected Area#1)に対する書き込み(Write)許可が設定された証明書として構成される。
なお、図に示す例では、書き込み(Write)の許容された区分領域に対しては、読み取り(Read)についても許容された設定として示している。
【0321】
また、区分領域#1(Protected Area#1)542に記録されたバインドキーを読み取ってコンテンツ再生を実行する再生装置であるホスト機器522の保持するホスト証明書(Host Certificate)は、区分領域#1(Protected Area#1)に対する読み取り(Read)許可のみが設定された証明書として構成される。
【0322】
ホスト証明書(Host Certificate)には、区分領域#1(Protected Area#1)に対する書き込み(Write)許可は設定されない。
ただし、コンテンツ削除時に、削除コンテンツに対応するバインドキーの削除が可能な設定とするため、削除処理については許可する設定としてもよい。
【0323】
すなわち、メモリカードのデータ処理部は、アクセス要求装置からの保護領域(Protected Area)540に対するデータ書き込みとデータ読み取りについては、書く装置の装置証明書に基づいて許可するか否かを判定するが、削除要求についてはすべて許可する設定としてもよい。
【0324】
あるいは、アクセス要求装置の証明書に、区分領域単位の書き込み(Write)、読み取り(Read)の各処理についての許容情報に加えて、削除(delete)についての許容情報を記録して、この記録情報に基づいて削除の可否を判定する構成としてもよい。
【0325】
図19に示すメモリカード530の区分領域#0(Protected Area#0)541は、放送コンテンツの鍵データとしてのバインドキー記録領域として設定された例を示している。
放送コンテンツは、例えば、レコーダ、あるいはPC等、放送データの受信、記録機能を持つホスト機器522が放送局からのコンテンツを受信してメディアに記録する。
【0326】
この場合、放送コンテンツの復号のために適用する鍵情報であるバインドキーは、放送局が提供し、ホスト機器522が受信する。ホスト機器522はメモリカード530にアクセスを行い、メモリカード530の保護領域(Protected Area)540に放送コンテンツ用の鍵データを記録する。
【0327】
この例では、放送コンテンツ用の鍵データを記録する領域は、区分領域#0(Protected Area#0)541として予め規定されている。
メモリカード530の保護領域(Protected Area)540は、このように、区分領域(#0,#1,#2・・・)単位で、記録するデータの種類を予め規定することが可能である。
【0328】
メモリカードは、アクセス要求装置からのデータ書き込みや読み取り要求の入力に応じて、書き込みあるいは読み取り要求データの種類を判別し、データ書き込み先あるいは読み取り先としての区分領域(#0,#1,#2・・・)を選別する。
【0329】
放送コンテンツの復号のために適用する鍵情報であるバインドキーは、ホスト機器522が書き込み処理を実行し、再生処理においても、ホスト機器522が読み取り処理を実行する。
【0330】
従って、ホスト機器522の保持するホスト証明書(Host Certificate)は、放送コンテンツ用の鍵データの記録領域として規定された区分領域#0(Protected Area#0)541については、書き込み(Write)、読み取り(Read)の双方の処理許可が設定された証明書として構成される。
【0331】
図19に示すホスト522の保持するホスト証明書(Host Cer)は、図に示すように、
読み取り(Read)許容領域:#0,#1
書き込み(Write)許容領域:#0
これらの設定のなされた証明書となる。
【0332】
一方、サーバ521はこの放送コンテンツ用の鍵データの記録領域として規定された区分領域#0(Protected Area#0)541に対しては、データ書き込み(Write)、読み取り(Read)のいずれも許可されておらず、サーバ証明書(Server Certificate)にはデータ書き込み(Write)、読み取り(Read)の非許可情報が記録される。
【0333】
図19に示すサーバ521の保持するサーバ証明書(Server Cer)は、図に示すように、
読み取り(Read)許容領域:#1
書き込み(Write)許容領域:#1
これらの設定のなされた証明書となる。
【0334】
このように、メモリカードの保護領域(Protected Area)は、アクセス要求装置単位、かつ区分領域(#0,#1,#2・・・)単位で、データの書き込み(Write)、読み取り(Read)の許容、非許容がアクセス制御情報として設定される。
【0335】
このアクセス制御情報は、各アクセス要求装置の証明書(サーバ証明書、ホスト証明書など)に記録され、メモリカードは、アクセス要求装置から受領した証明書について、まず署名検証を行い、正当性を確認した後、証明書に記載されたアクセス制御情報、すなわち、以下の情報を読み取る。
読み取り許容領域情報(PAD Read)、
書き込み許容領域情報(PAD Write)、
これらの情報に基づいて、アクセス要求装置に対して認められた処理のみを許容して実行する。
【0336】
なお、ホスト機器にも、例えばレコーダ、プレーヤ等のCE機器や、PC等、様々な機器の種類がある。
装置証明書は、これらの各装置が個別に保持する証明書であり、これらの装置の種類に応じて異なる設定とすることができる。
また、メモリカードのデータ処理部は、装置証明書に記録された以下の情報、すなわち、
読み取り許容領域情報(PAD Read)、
書き込み許容領域情報(PAD Write)、
これらの情報のみならず、
図18を参照して説明したタイプ情報(Type)501に基づいて、保護領域の区分領域単位のアクセスの許容判定を行ってもよい。
【0337】
図20には、メモリカード530に対するデータの記録や、メモリカード530に記録されたデータの読み出しを実行するホスト機器としてPC523と、レコーダやプレーヤ等のCE(Consumer Electronics)機器524を示している。
【0338】
また、図20に示すメモリカード530の保護領域(Protected Area)540は、以下の設定のなされた区分領域を持つ。
区分領域#2(Protected Area#2)545は、SD(Standard Definition(標準画質))画像のデータに対応するコンテンツの鍵データとしてのバインドキー記録領域として設定され、
区分領域#3(Protected Area#3)546は、HD(High Definition(高画質))画像のデータに対応するコンテンツの鍵データとしてのバインドキー記録領域として設定されている。
【0339】
図20に示すPC523の保持するホスト証明書(Host Cer)は、図に示すように、
タイプ:PC
読み取り(Read)許容領域:#2
書き込み(Write)許容領域:#2
これらの設定のなされた証明書である。
【0340】
また、CE機器524の保持するホスト証明書(Host Cer)は、図に示すように、
タイプ:CE
読み取り(Read)許容領域:#2,3
書き込み(Write)許容領域:#2,3
これらの設定のなされた証明書である。
【0341】
すなわち、PC523は、SD(Standard Definition(標準画質))画像のデータに対応するコンテンツの鍵データとしてのバインドキー記録領域である区分領域#2(Protected Area#2)545に対するデータ書き込み(Write)と読み取り(Read)のみが許容されている。PC523は、HD(High Definition(高画質))画像のデータに対応するコンテンツの鍵データとしてのバインドキー記録領域である区分領域#3(Protected Area#3)546に対するデータ書き込み(Write)と読み取り(Read)は許可されていない。
【0342】
また、CE機器524は、SD(Standard Definition(標準画質))画像のデータに対応するコンテンツの鍵データとしてのバインドキー記録領域である区分領域#2(Protected Area#2)545に対するデータ書き込み(Write)と読み取り(Read)のみが許容されている。また、HD(High Definition(高画質))画像のデータに対応するコンテンツの鍵データとしてのバインドキー記録領域である区分領域#3(Protected Area#3)546に対するデータ書き込み(Write)と読み取り(Read)も許可されている。
【0343】
このように、ホスト機器であってもその装置の種類に応じたアクセス制御情報を設定できる。
なお。ホスト証明書のタイプ情報にはPCであるかCE機器であるかを識別する情報が含まれており、メモリカードのデータ処理部は、装置証明書に記録されたアクセス制御情報、すなわち、
読み取り許容領域情報(PAD Read)、
書き込み許容領域情報(PAD Write)、
これらの情報に基づいて、核区分領域のアクセス(Read/Write)可否の判定を行ってもよいが、タイプ情報(Type)に基づいて、保護領域の区分領域単位のアクセスの許容判定を行ってもよい。
【0344】
図19、図20を参照して説明したように、メモリカード530の保護領域(Protected Area)540に設定する複数の区分領域については、例えば、
プレミアムコンテンツと放送録画コンテンツ、あるいは、
SD画サイズのコンテンツとHD画サイズのコンテンツ、
このように、要求されるセキュリティレベルが異なるコンテンツを格納領域として設定する構成が可能である。
また、
サーバやクライアント、
PCやCE機器、
このように、セキュリティレベルの異なる機器に応じてそれぞれ記録もしくは再生のいずれかを許容するといった設定とすることで、各区分領域の利用形態を柔軟に制御できる。
【0345】
さらに、例えば、サーバやホスト機器等の特定の機器のアクセス権限を変更したい場合には、証明書に属性を追加するといった処理も可能である。
この権限変更の方法の具体的な手法として、例えばあるホスト機器に権限を追加する場合の処理としては、以下のような方法がある。
(1)権限変更を行うホスト機器に対して新たな鍵と属性を追加した証明書を合わせて発行し、古いホスト機器の鍵と証明書を無効化して、鍵と証明書の更新を行う。
あるいは、1つのホスト機器が有効な2つ以上の鍵と証明書を持つ構成としてもよい。
(2)属性を追加した証明書のみを追加発行して、ホスト機器の証明書のみを更新する。
(3)追加したい属性のみ記述した証明書のみを追加発行する。
ただし、この場合、ホスト機器は1つの鍵に対して複数の証明書を持つことになる。
例えば、上記の(1)〜(3)の方法で特定の機器のアクセス権限を変更する処理が可能となる。
【0346】
[8.各装置のハードウェア構成例について]
最後に、図21以下を参照して、上述した処理を実行する各装置のハードウェア構成例について説明する。
まず、図21を参照して、メモリカードを装着してデータの記録や再生処理を行うホスト機器のハードウェア構成例について説明する。
【0347】
CPU(Central Processing Unit)701は、ROM(Read Only Memory)702、または記憶部708に記憶されているプログラムに従って各種の処理を実行するデータ処理部として機能する。例えば、上述の各実施例において説明したサーバとの通信処理やサーバからの受信データのメモリカード(図中のリムーバブルメディア711)に対する記録処理、メモリカード(図中のリムーバブルメディア711)からのデータ再生処理等を実行する。RAM(Random Access Memory)703には、CPU701が実行するプログラムやデータなどが適宜記憶される。これらのCPU701、ROM702、およびRAM703は、バス704により相互に接続されている。
【0348】
CPU701はバス704を介して入出力インタフェース705に接続され、入出力インタフェース705には、各種スイッチ、キーボード、マウス、マイクロホンなどよりなる入力部706、ディスプレイ、スピーカなどよりなる出力部707が接続されている。CPU701は、入力部706から入力される指令に対応して各種の処理を実行し、処理結果を例えば出力部707に出力する。
【0349】
入出力インタフェース705に接続されている記憶部708は、例えばハードディスク等からなり、CPU701が実行するプログラムや各種のデータを記憶する。通信部709は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【0350】
入出力インタフェース705に接続されているドライブ710は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア711を駆動し、記録されているコンテンツや鍵情報等の各種データを取得する例えば、。取得されたコンテンツや鍵データを用いて、CPUによって実行する再生プログラムに従ってコンテンツの復号、再生処理などが行われる。
【0351】
図22は、メモリカードのハードウェア構成例を示している。
CPU(Central Processing Unit)801は、ROM(Read Only Memory)802、または記憶部807に記憶されているプログラムに従って各種の処理を実行するデータ処理部として機能する。例えば、上述の各実施例において説明したサーバやホスト機器との通信処理やデータの記憶部807に対する書き込み、読み取り等の処理、記憶部807の保護領域811の区分領域単位のアクセス可否判定処理等を実行する。RAM(Random Access Memory)803には、CPU801が実行するプログラムやデータなどが適宜記憶される。これらのCPU801、ROM802、およびRAM803は、バス804により相互に接続されている。
【0352】
CPU801はバス804を介して入出力インタフェース805に接続され、入出力インタフェース805には、通信部806、記憶部807が接続されている。
【0353】
入出力インタフェース805に接続されている通信部804は、例えばサーバ、ホスト機器との通信を実行する。記憶部807は、データの記憶領域であり、先に説明したようにアクセス制限のある保護領域(Protected Aea)811、自由にデータ記録読み取りができる非保護領域812を有する。
【0354】
なお、サーバは、例えば図21に示すホスト機器と同様のハードウェア構成を持つ装置によって実現可能である。
【0355】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【0356】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LAN(Local Area Network)、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【0357】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【0358】
以上、説明したように、本発明の一実施例の構成によれば、メディアに記録されたコンテンツの不正利用を防止する再生制御が実現される。メディアの記録コンテンツに対応する管理データであるトークンをメディアから取得し、取得したトークンに記録されたサーバIDと、管理データの取得元であるサーバから取得したサーバ証明書に記録されたサーバIDとを比較し、両サーバIDが一致しない場合は、コンテンツ再生を中止させる。両IDの一致が確認された場合には、再生予定のコンテンツIDがコンテンツリボケーションリストに記録されているか否かを検証し、記録されている場合には、コンテンツ再生を中止する。本処理により、メディア記録コンテンツの不正利用を防止した再生制御が実現される。
【符号の説明】
【0359】
11 コンテンツサーバ
12 コンテンツ記録ディスク
21 共用端末
22 記録再生器(CE機器)
23 PC
31 メモリカード
100 認証局(認証サーバ)
101 サーバ生類所(Server Certificate)
102 サーバリボケーションリスト(SRL)
103 コンテンツリボケーションリスト(CRL)
200 コンテンツサーバ
201 トークン
202 コンテンツ
203 サーバリボケーションリスト(SRL)
204 コンテンツリボケーションリスト(CRL)
211 データベース(DB)
212 ボリュームID
213 トークン
214 ボリュームユニークキー
215 タイトルキー(CPSユニットキー)
216 利用制御情報(Usage Rule)
218 コンテンツ
250 ディスク
251 コンテンツ
252 コンテンツID
300 コンテンツ記録装置(ホスト)
311 サーバリボケーションリスト(SRL)
3124 コンテンツリボケーションリスト(CRL)
400 メモリカード
401 保護領域(Protected Area)
402 非保護領域
411 メディアID
412 保護領域
414 バインドキー
415 トークン
416暗号化タイトルキー
417 利用制御情報
418 暗号化コンテンツ
501 タイプ情報(Type)
502 読み取り許容領域情報(PAD Read)
503 書き込み許容領域情報(PAD Write)
504 ホストID(Host ID)
505 ホスト公開鍵(Host Public Key)
506 署名(Signature)
521 サーバ
522 ホスト機器
523 PC
524 CE機器
530 メモリカード
540 保護領域(Protected Area)
541 区分領域#0(Protected Area#0)
542 区分領域#1(Protected Area#1)
545 区分領域#2(Protected Area#2)
546 区分領域#3(Protected Area#3)
550 非保護領域(User Area)
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 非保護領域(User Area)

【特許請求の範囲】
【請求項1】
メディアに記録されたコンテンツの再生処理を実行するデータ処理部を有し、
前記データ処理部は、
前記メディアの記録コンテンツに対応する管理データであるトークンを前記メディアから取得し、取得したトークンに記録されたサーバIDと、前記管理データの取得元であるサーバから取得したサーバ証明書に記録されたサーバIDとを比較し、両サーバIDが一致しない場合は、コンテンツ再生を中止する処理を実行する情報処理装置。
【請求項2】
前記情報処理装置は、
無効化コンテンツの識別子(ID)を記録したコンテンツリボケーションリストを格納した記憶部を有し、
前記データ処理部は、
前記トークンに記録されたサーバIDと、前記サーバ証明書に記録されたサーバIDとが一致することを確認した場合に、再生予定のコンテンツIDが前記コンテンツリボケーションリストに記録されているか否かを検証し、記録されている場合には、コンテンツ再生を中止する処理を実行する請求項1に記載の情報処理装置。
【請求項3】
前記トークンに記録されたサーバIDは、トークンの記録情報として設定されたコンテンツIDの構成ビットに含まれ、
前記データ処理部は、トークンに含まれるコンテンツIDからサーバIDの構成ビットを抽出して、前記サーバ証明書に記録されたサーバIDとの比較処理を実行する請求項1に記載の情報処理装置。
【請求項4】
前記データ処理部は、
前記サーバ証明書に設定された署名の検証処理により、サーバ証明書の正当性を確認する処理を実行し、サーバ証明書の正当性が確認されたことを条件として、該サーバ証明書からサーバIDを取得する処理を行う請求項1に記載の情報処理装置。
【請求項5】
前記データ処理部は、
前記サーバ証明書に設定された署名の検証処理により、サーバ証明書の正当性を確認する処理を実行し、サーバ証明書の正当性が確認されたことを条件として、該サーバ証明書からサーバ公開鍵を取得し、
取得したサーバ公開鍵を適用して前記トークンに設定された署名の検証処理を実行して、トークンの正当性を確認する処理を実行し、トークンの正当性が確認されたことを条件として、該トークンからサーバIDを取得する処理を実行する請求項1に記載の情報処理装置。
【請求項6】
前記データ処理部は、
前記コンテンツリボケーションリストに設定された署名の検証処理により、コンテンツリボケーションリストの正当性を確認する処理を実行し、コンテンツリボケーションリストの正当性が確認されたことを条件として、再生予定のコンテンツIDが前記コンテンツリボケーションリストに記録されているか否かを検証する処理を実行する請求項2に記載の情報処理装置。
【請求項7】
前記メディアはフラッシュメモリタイプのメモリカードであり、
前記データ処理部は、
再生対象コンテンツおよび前記管理データを前記メモリカードから読み出す処理を実行する請求項1〜6いずれかに記載の情報処理装置。
【請求項8】
コンテンツ管理データを提供するサーバと、
前記サーバの提供データを受信してメディアに記録するホスト装置を有し、
前記サーバは、
前記コンテンツ管理データとして、サーバIDを記録したトークンと、
サーバIDを記録情報として含み、認証局署名を有する認証局発行のサーバ証明書を前記ホスト装置に提供し、
前記ホスト装置は、
前記トークンに記録されたサーバIDが、前記サーバ証明書に記録されたサーバIDと一致するか否かを判定し、一致の確認がなされたことを条件としてコンテンツ再生を行うコンテンツ利用制御システム。
【請求項9】
前記ホスト装置は、
無効化コンテンツの識別子(ID)を記録したコンテンツリボケーションリストを格納した記憶部を有し、
前記トークンに記録されたサーバIDと、前記サーバ証明書に記録されたサーバIDとが一致することを確認した場合に、再生予定のコンテンツIDが前記コンテンツリボケーションリストに記録されているか否かを検証し、記録されている場合には、コンテンツ再生を中止する処理を実行する請求項8に記載のコンテンツ利用制御システム。
【請求項10】
コンテンツおよびコンテンツの管理データを記録した情報記録媒体であり、
前記管理データには、該管理データを提供したサーバのサーバIDを記録データとして含むトークンと、
前記サーバに対応する証明書であり、サーバIDを記録情報として含み認証局の署名を有する認証局が発行したサーバ証明書を含み、
コンテンツ再生を実行する再生装置において、前記トークンに記録されたサーバIDが前記サーバ証明書に記録されたサーバIDと一致するか否かを判定させて、一致の確認がなされたことを条件としてコンテンツ再生を許容することを可能とした情報記録媒体。
【請求項11】
情報処理装置において実行する情報処理方法であり、
データ処理部が、メディアに記録されたコンテンツの管理データを取得するステップと、
前記データ処理部が、前記管理データに含まれるトークンに記録されたサーバIDと、前記管理データの取得元であるサーバから取得したサーバ証明書に記録されたサーバIDとを比較し、両サーバIDが一致しない場合は、コンテンツ再生を中止する処理を実行するステップと、
を実行する情報処理方法。
【請求項12】
情報処理装置において情報処理を実行させるプログラムであり、
データ処理部に、メディアに記録されたコンテンツの管理データを取得させるステップと、
前記データ処理部に、前記管理データに含まれるトークンに記録されたサーバIDと、前記管理データの取得元であるサーバから取得したサーバ証明書に記録されたサーバIDとを比較させて、両サーバIDが一致しない場合は、コンテンツ再生を中止させるステップと、
を実行させるプログラム。

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
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

【図1】
image rotate

【図2】
image rotate

【図9】
image rotate


【公開番号】特開2012−8757(P2012−8757A)
【公開日】平成24年1月12日(2012.1.12)
【国際特許分類】
【出願番号】特願2010−143362(P2010−143362)
【出願日】平成22年6月24日(2010.6.24)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】