説明

情報処理装置、および情報処理方法、並びにコンピュータ・プログラム

【課題】 情報記録媒体に格納された情報を適用して後発的に取得した後発データについての様々な利用管理構成を実現する。
【解決手段】 情報記録媒体の格納情報を適用して後発的に取得した後発データを、ハードディスクなどに記録する際に、後発データ暗号鍵としてのユニット鍵を、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報とのバインドデータとし暗号化して記録する。本構成により後発データを利用する際、バインド解除処理が必須となる。デバイスバインドであれば、記録を実行した装置と同一であること、ディスクバインドであれば、後発データ記録の際の適用ディスクと同一ディスクが装着されていること、パッケージバインドであれば、後発データ記録の際の適用ディスクと同一パッケージIDのディスク装着が必要となる。従って、後発データの利用制限を様々な態様で実現することが可能となる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、および情報処理方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、情報記録媒体に格納されたコンテンツについて、ユニット単位の利用制御を実現するとともに、後発的にユーザが生成したデータやダウンロードしたデータなどの後発データについての厳格な利用制御を実現する情報処理装置、および情報処理方法、並びにコンピュータ・プログラムに関する。
【背景技術】
【0002】
音楽等のオーディオデータ、映画等の画像データ、ゲームプログラム、各種アプリケーションプログラム等、様々なソフトウエアデータ(以下、これらをコンテンツ(Content)と呼ぶ)は、記録メディア、例えば、青色レーザを適用したBlu−rayディスク、あるいはDVD(Digital Versatile Disc)、MD(Mini Disc)、CD(Compact Disc)にデジタルデータとして格納することができる。特に、青色レーザを利用したBlu−rayディスクは、高密度記録可能なディスクであり大容量の映像コンテンツなどを高画質データとして記録することができる。
【0003】
これら様々な情報記録媒体(記録メディア)にデジタルコンテンツが格納され、ユーザに提供される。ユーザは、所有するPC(Personal Computer)、ディスクプレーヤ等の再生装置においてコンテンツの再生、利用を行う。
【0004】
音楽データ、画像データ等、多くのコンテンツは、一般的にその作成者あるいは販売者に頒布権等が保有されている。従って、これらのコンテンツの配布に際しては、一定の利用制限、すなわち、正規なユーザに対してのみ、コンテンツの利用を許諾し、許可のない複製等が行われないようにする構成をとるのが一般的となっている。
【0005】
デジタル記録装置および記録媒体によれば、例えば画像や音声を劣化させることなく記録、再生を繰り返すことが可能であり、不正コピーコンテンツのインターネットを介した配信や、コンテンツをCD−R等にコピーした、いわゆる海賊版ディスクの流通や、PC等のハードディスクに格納したコピーコンテンツの利用が蔓延しているといった問題が発生している。
【0006】
DVD、あるいは近年開発が進んでいる青色レーザを利用した記録媒体等の大容量型記録媒体は、1枚の媒体に例えば映画1本〜数本分の大量のデータをデジタル情報として記録することが可能である。このように映像情報等をデジタル情報として記録することが可能となってくると不正コピーを防止して著作権者の保護を図ることが益々重要な課題となっている。昨今では、このようなデジタルデータの不正なコピーを防ぐため、デジタル記録装置および記録媒体に違法なコピーを防止するための様々な技術が実用化されている。
【0007】
例えば、DVDプレーヤでは、コンテンツ・スクランブルシステム(Content Scramble System)が採用されている。コンテンツ・スクランブルシステムでは、DVD−ROM(Read Only Memory)に、ビデオデータやオーディオデータ等が暗号化されて記録されており、その暗号化されたデータを復号するのに用いる鍵が、ライセンスを受けたDVDプレーヤに与えられる。ライセンスは、不正コピーを行わない等の所定の動作規定に従うように設計されたDVDプレーヤに対して与えられる。従って、ライセンスを受けたDVDプレーヤでは、与えられたキーを利用して、DVD−ROMに記録された暗号化データを復号することにより、DVD−ROMから画像や音声を再生することができる。
【0008】
一方、ライセンスを受けていないDVDプレーヤは、暗号化されたデータを復号するための鍵を有していないため、DVD−ROMに記録された暗号化データの復号を行うことができない。このように、コンテンツ・スクランブルシステム構成では、ライセンス時に要求される条件を満たしていないDVDプレーヤは、デジタルデータを記録したDVD−ROMの再生を行なえないことになり、不正コピーが防止されるようになっている。
【0009】
このように、情報記録媒体に格納されたコンテンツの管理システムは構築されている。また、例えば、ビデオ作品の素材となる効果音や動画、静止画等のコンテンツをユーザが容易にダウンロードすることができるシステムが特許文献1に開示されている。また、音楽データ全体のうちのある部分のデータを、他のデータに置き換えることができる技術が特許文献2に開示されている。しかし、このように、情報記録媒体に格納されたコンテンツとしてのプログラムを実行してユーザが生成したデータや、外部サーバから取得したデータ、コンテンツなどの後発データについては、セキュアなデータ管理や、利用管理が実現されているとは言い難い。
【0010】
特に、PCなど、様々なアプリケーションプログラムが実行可能な環境においては、汎用のファイルシステムによって管理されるディレクトリが設定され、後発的にユーザが生成あるいは取得した後発データは、様々なアプリケーションからアクセス可能な設定となっていることが多い。従って、コンテンツ管理システムによって管理すべき後発データといえども、このような汎用ファイルシステムによる管理ディレクトリに設定することが要求され、特別な設定をしないと、様々なアプリケーションプログラムからのアクセスがなされ、データの不正な利用や改竄を許容する結果となる。
【0011】
また、後発データの種類は、特定の情報記録媒体に格納されたコンテンツに対応して利用される後発データや、コンテンツを提供するコンテンツ提供エンティテイとしての特定のスタジオの提供コンテンツに対応して共通に利用可能な後発データ、あるいは異なるスタジオのコンテンツに対応して共通に利用可能な後発データなど、様々な種類の後発データがあり、それぞれの種類に応じた利用制御を行うことが望まれている。しかし、現行のシステムにおいては、このような後発データの種類に応じた利用制御は困難である。
【特許文献1】特開2003−140662号公報
【特許文献2】特開2002−311967号公報
【発明の開示】
【発明が解決しようとする課題】
【0012】
本発明は、このような状況に鑑みてなされたものであり、情報記録媒体に格納されたコンテンツに対応して外部から取得したデータや、ユーザが生成したデータなどの後発データについて、情報記録媒体の格納コンテンツと同様の利用制御を実現し、さらに、様々な種類の後発データに応じた利用制御を可能とした情報処理装置、および情報処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
【課題を解決するための手段】
【0013】
本発明の第1の側面は、
情報処理装置であり、
情報記録媒体からの読み取り情報を適用して後発的に生成または取得した後発データを記憶手段に格納する処理を実行するデータ処理部を有し、
前記データ処理部は、
前記後発データの属するコンテンツ管理ユニットに対応する暗号鍵であるユニット鍵による暗号化データとしての暗号化後発データを前記記憶手段に格納する処理を実行するとともに、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成して前記記憶手段に格納する処理を実行する構成であることを特徴とする情報処理装置にある。
【0014】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記後発データの属するコンテンツ管理ユニットに対応する使用許諾情報を前記バインドユニット鍵に含めた暗号化バインドユニット鍵を生成して前記記憶手段に格納する処理を実行する構成であることを特徴とする。
【0015】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、情報処理装置に格納された情報処理装置固有のデバイス鍵と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成する構成であることを特徴とする。
【0016】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、情報記録媒体に格納された情報記録媒体固有の識別情報と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成する構成であることを特徴とする。
【0017】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、情報記録媒体に格納された所定数の情報記録媒体集合に固有の識別情報と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成する構成であることを特徴とする。
【0018】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報と、前記ユニット鍵に基づく演算処理によってバインドユニット鍵を生成する構成であることを特徴とする。
【0019】
さらに、本発明の情報処理装置の一実施態様において、前記演算処理は排他論理和演算であることを特徴とする。
【0020】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、後発データ提供サーバから取得した後発データを前記記憶手段に格納するとともに、該後発データ提供サーバから取得した取得後発データに対応する暗号化ユニット鍵を復号し、前記暗号化バインドユニット鍵を生成する構成であることを特徴とする。
【0021】
さらに、本発明の第2の側面は、
情報処理装置であり、
暗号化コンテンツの復号処理を実行するデータ処理部を有し、
前記データ処理部は、
暗号化コンテンツの暗号化に適用したユニット鍵を含む暗号化データとしての暗号化バインドユニット鍵を記憶手段から取得し、取得した暗号化バインドユニット鍵の復号処理、およびバインド解除処理によりユニット鍵を算出する処理を実行する構成であり、
前記バインドユニット鍵に対するバインド解除処理は、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報を適用したデータ処理として行なう構成であることを特徴とする情報処理装置にある。
【0022】
さらに、本発明の情報処理装置の一実施態様において、前記バインドユニット鍵は、前記後発データの属するコンテンツ管理ユニットに対応する使用許諾情報を構成データとして含み、前記データ処理部は、前記バインド解除処理を、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報と、前記使用許諾情報を適用したデータ処理として行なう構成であることを特徴とする。
【0023】
さらに、本発明の情報処理装置の一実施態様において、前記バインドユニット鍵は、情報処理装置に格納された情報処理装置固有のデバイス鍵を構成データとして含み、前記データ処理部は、前記バインド解除処理を、情報処理装置に格納された情報処理装置固有のデバイス鍵を適用したデータ処理として行なう構成であることを特徴とする。
【0024】
さらに、本発明の情報処理装置の一実施態様において、前記バインドユニット鍵は、情報記録媒体に格納された情報記録媒体固有の識別情報を構成データとして含み、前記データ処理部は、前記バインド解除処理を、情報記録媒体に格納された情報記録媒体固有の識別情報を適用したデータ処理として行なう構成であることを特徴とする。
【0025】
さらに、本発明の情報処理装置の一実施態様において、前記バインドユニット鍵は、情報記録媒体に格納された所定数の情報記録媒体集合に固有の識別情報を構成データとして含み、前記データ処理部は、前記バインド解除処理を、情報記録媒体に格納された所定数の情報記録媒体集合に固有の識別情報を適用したデータ処理として行なう構成であることを特徴とする。
【0026】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記バインドユニット鍵に対して、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報の排他論理和演算により、前記バインド解除処理を実行する構成であることを特徴とする。
【0027】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記後発データのバインドタイプを該後発データに対応する使用許諾情報またはその他のデータファイルから取得し、該取得情報に従ってバインド解除処理の実行に適用するデータを決定する構成であることを特徴とする。
【0028】
さらに、本発明の第3の側面は、
情報処理方法であり、
情報記録媒体からの読み取り情報を適用して後発的に生成または取得した後発データを記憶手段に格納する処理を実行するデータ処理ステップを有し、
前記データ処理ステップは、
前記後発データの属するコンテンツ管理ユニットに対応する暗号鍵であるユニット鍵による暗号化データとしての暗号化後発データを前記記憶手段に格納するステップと、
情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成する暗号化バインドユニット鍵生成ステップと、
前記暗号化バインドユニット鍵を前記記憶手段に格納する処理を実行するステップと、
を有することを特徴とする情報処理方法にある。
【0029】
さらに、本発明の情報処理方法の一実施態様において、前記暗号化バインドユニット鍵生成ステップは、前記後発データの属するコンテンツ管理ユニットに対応する使用許諾情報を前記バインドユニット鍵に含めた暗号化バインドユニット鍵を生成する処理を実行する構成であることを特徴とする。
【0030】
さらに、本発明の情報処理方法の一実施態様において、前記暗号化バインドユニット鍵生成ステップは、情報処理装置に格納された情報処理装置固有のデバイス鍵と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成するステップであることを特徴とする。
【0031】
さらに、本発明の情報処理方法の一実施態様において、前記暗号化バインドユニット鍵生成ステップは、情報記録媒体に格納された情報記録媒体固有の識別情報と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成するステップであることを特徴とする。
【0032】
さらに、本発明の情報処理方法の一実施態様において、前記暗号化バインドユニット鍵生成ステップは、情報記録媒体に格納された所定数の情報記録媒体集合に固有の識別情報と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成するステップであることを特徴とする。
【0033】
さらに、本発明の情報処理方法の一実施態様において、前記暗号化バインドユニット鍵生成ステップは、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報と、前記ユニット鍵に基づく演算処理によってバインドユニット鍵を生成するステップであることを特徴とする。
【0034】
さらに、本発明の情報処理方法の一実施態様において、前記演算処理は排他論理和演算であることを特徴とする。
【0035】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、後発データ提供サーバから取得した後発データを前記記憶手段に格納するとともに、該後発データ提供サーバから取得した取得後発データに対応する暗号化ユニット鍵を復号し、前記暗号化バインドユニット鍵を生成するステップを有することを特徴とする。
【0036】
さらに、本発明の第4の側面は、
情報処理方法であり、
暗号化コンテンツの復号処理を実行するデータ処理ステップを有し、
前記データ処理ステップは、
暗号化コンテンツの暗号化に適用したユニット鍵を含む暗号化データとしての暗号化バインドユニット鍵を記憶手段から取得するステップと、
取得した暗号化バインドユニット鍵の復号処理を実行する復号ステップと、
バインド解除処理によりユニット鍵を算出するバインド解除処理ステップとを有し、
前記バインド解除処理ステップは、
情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報を適用したデータ処理として実行することを特徴とする情報処理方法にある。
【0037】
さらに、本発明の情報処理方法の一実施態様において、前記バインドユニット鍵は、前記後発データの属するコンテンツ管理ユニットに対応する使用許諾情報を構成データとして含み、前記バインド解除処理ステップは、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報と、前記使用許諾情報を適用したデータ処理として行なうステップであることを特徴とする。
【0038】
さらに、本発明の情報処理方法の一実施態様において、前記バインドユニット鍵は、情報処理装置に格納された情報処理装置固有のデバイス鍵を構成データとして含み、前記バインド解除処理ステップは、情報処理装置に格納された情報処理装置固有のデバイス鍵を適用したデータ処理として行なうステップであることを特徴とする。
【0039】
さらに、本発明の情報処理方法の一実施態様において、前記バインドユニット鍵は、情報記録媒体に格納された情報記録媒体固有の識別情報を構成データとして含み、前記バインド解除処理ステップは、情報記録媒体に格納された情報記録媒体固有の識別情報を適用したデータ処理として行なうステップであることを特徴とする。
【0040】
さらに、本発明の情報処理方法の一実施態様において、前記バインドユニット鍵は、情報記録媒体に格納された所定数の情報記録媒体集合に固有の識別情報を構成データとして含み、前記バインド解除処理ステップは、情報記録媒体に格納された所定数の情報記録媒体集合に固有の識別情報を適用したデータ処理として行なうステップであることを特徴とする。
【0041】
さらに、本発明の情報処理方法の一実施態様において、前記バインド解除処理ステップは、前記バインドユニット鍵に対して、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報の排他論理和演算により、前記バインド解除処理を実行するステップであることを特徴とする。
【0042】
さらに、本発明の情報処理方法の一実施態様において、前記バインド解除処理ステップは、前記後発データのバインドタイプを該後発データに対応する使用許諾情報またはその他のデータファイルから取得し、該取得情報に従ってバインド解除処理の実行に適用するデータを決定するステップを含むことを特徴とする。
【0043】
さらに、本発明の第5の側面は、
情報処理をコンピュータ上において実行するコンピュータ・プログラムであり、
情報記録媒体からの読み取り情報を適用して後発的に生成または取得した後発データを記憶手段に格納する処理を実行するデータ処理ステップを有し、
前記データ処理ステップは、
前記後発データの属するコンテンツ管理ユニットに対応する暗号鍵であるユニット鍵による暗号化データとしての暗号化後発データを前記記憶手段に格納するステップと、
情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成する暗号化バインドユニット鍵生成ステップと、
前記暗号化バインドユニット鍵を前記記憶手段に格納する処理を実行するステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【0044】
さらに、本発明の第6の側面は、
情報処理をコンピュータ上において実行するコンピュータ・プログラムであり、
暗号化コンテンツの復号処理を実行するデータ処理ステップを有し、
前記データ処理ステップは、
暗号化コンテンツの暗号化に適用したユニット鍵を含む暗号化データとしての暗号化バインドユニット鍵を記憶手段から取得するステップと、
取得した暗号化バインドユニット鍵の復号処理を実行する復号ステップと、
バインド解除処理によりユニット鍵を算出するバインド解除処理ステップとを有し、
前記バインド解除処理ステップは、
情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報を適用したデータ処理として実行することを特徴とするコンピュータ・プログラムにある。
【0045】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、DVD、CD、MOなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【0046】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【0047】
本発明の一実施例の構成によれば、情報記録媒体に格納された情報を適用して後発的にユーザが生成した情報やダウンロードした情報などの後発データを、ハードディスクやリムーバブルメディアなどのローカルストレージに記録する際に、後発データの暗号化鍵としてのユニット鍵を、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報とのバインドデータとし、暗号化して記録する構成とした。これによって、ローカルストレージに記録された後発データを利用する際、バインド解除処理が必須となる。このバインド解除処理は、例えばデバイスバインドタイプの後発データであれば、記録を実行した情報処理装置と同一であることが必要であり、また、例えばディスクバインドタイプの後発データであれば、後発データ記録の際に適用したディスクと同一ディスクが情報処理装置に装着されていることが必要であり、また、例えばパッケージバインドタイプの後発データであれば、後発データ記録の際に適用したディスクと同一のパッケージIDを持つディスクが情報処理装置に装着されていることが必要となる。従って、後発データの利用制限を様々な態様で実現することが可能となる。
【発明を実施するための最良の形態】
【0048】
以下、図面を参照しながら本発明の情報処理装置、および情報処理方法、並びにコンピュータ・プログラムの詳細について説明する。なお、説明は、以下の記載項目に従って行う。
1.情報記録媒体の格納データおよび情報処理装置の概要
2.コンテンツ管理ユニット(CPSユニット)について
3.後発データの取得、記録、利用処理
(3.1)デバイスバインド後発データの取得、記録、利用処理の詳細
(3.2)ディスクバインド後発データの取得、記録、利用処理の詳細
(3.3)パッケージバインド後発データの取得、記録、利用処理の詳細
(3.4)後発データ対応のCPSユニット鍵が情報記録媒体に格納済みである場合の後発データの取得、記録、利用処理の詳細
(3.5)後発データの取得、記録、利用処理シーケンス
4.情報処理装置の構成例
【0049】
[1.情報記録媒体の格納データおよび情報処理装置の概要]
まず、情報記録媒体の格納データおよび情報処理装置の概要について説明する。図1に、コンテンツの格納された情報記録媒体100および情報処理装置(再生装置)150の構成を示す。ここでは、コンテンツ格納済みディスクとしてのROMディスクの情報格納例を示す。情報処理装置150は、例えばPC、あるいは再生専用装置など、様々な情報処理装置であり、情報記録媒体100からのデータ読み取り処理を実行するドライブ120を有する。
【0050】
情報記録媒体100としてのROMディスクは、例えば、Blu−rayディスク、DVDなどの情報記録媒体であり、正当なコンテンツ著作権、あるいは頒布権を持ついわゆるコンテンツ権利者の許可の下にディスク製造工場において製造された正当なコンテンツを格納した情報記録媒体である。なお、以下の実施例では、情報記録媒体の例としてディスク型の媒体を例として説明するが、本発明は様々な態様の情報記録媒体を用いた構成において適用可能である。
【0051】
図1に示すように、情報記録媒体100には、暗号化処理の施された暗号化コンテンツ111と、ブロードキャストエンクリプション方式の一態様として知られる木構造の鍵配信方式に基づいて生成される暗号鍵ブロックとしてのMKB(Media Key Block)112、所定枚数の製造単位毎の情報記録媒体毎の識別情報として設定されるボリュームID113、コンテンツタイトルや、コンテンツオーナー、スタジオなどの単位の識別情報として設定されるパッケージID114、コンテンツのコピー・再生制御情報としてのCCI(Copy Control Information)等を含む使用許諾情報115、コンテンツ利用管理単位としてのコンテンツ管理ユニット(CPSユニット)毎に設定される暗号鍵であるCPSユニット鍵を格納したCPSユニット鍵ファイル116、さらに、情報記録媒体100各々に個別の番号として設定されるシリアル番号117、さらに、後発データの取得サーバアドレスなどのダウンロード情報118が格納されている。以下、これらの各種情報の概要について説明する。
【0052】
(1)暗号化コンテンツ111
情報記録媒体100には、様々なコンテンツが格納される。例えば高精細動画像データであるHD(High Definition)ムービーコンテンツなどの動画コンテンツのAV(Audio Visual)ストリームや特定の規格で規定された形式のゲームプログラム、画像ファイル、音声データ、テキストデータなどからなるコンテンツである。これらのコンテンツは、特定のAVフォーマット規格データであり、特定のAVデータフォーマットに従って格納される。具体的には、例えばBlu−rayディスクROM規格データとして、Blu−rayディスクROM規格フォーマットに従って格納される。
【0053】
さらに、例えばサービスデータとしてのゲームプログラムや、画像ファイル、音声データ、テキストデータなどが格納される場合もある。これらのコンテンツは、特定のAVデータフォーマットに従わないデータフォーマットを持つデータとして格納される場合もある。
【0054】
コンテンツの種類としては、音楽データ、動画、静止画等の画像データ、ゲームプログラム、WEBコンテンツなど、様々なコンテンツが含まれ、これらのコンテンツには、情報記録媒体100からのデータのみによって利用可能なコンテンツ情報と、情報記録媒体100からのデータと、ネットワーク接続されたサーバから提供されるデータとを併せて利用可能となるコンテンツ情報など、様々な態様の情報が含まれる。情報記録媒体に格納されるコンテンツは、区分コンテンツ毎の異なる利用制御を実現するため、区分コンテンツ毎に異なる鍵(CPSユニット鍵またはユニット鍵(あるいはタイトル鍵と呼ぶ場合もある))が割り当てられ暗号化されて格納される。1つのユニット鍵を割り当てる単位をコンテンツ管理ユニット(CPSユニット)と呼ぶ。
【0055】
(2)MKB
MKB(Media Key Block)112は、ブロードキャストエンクリプション方式の一態様として知られる木構造の鍵配信方式に基づいて生成される暗号鍵ブロックである。MKB112は有効なライセンスを持つユーザの情報処理装置に格納されたデバイス鍵[Kd]に基づく処理(復号)によってのみ、コンテンツの復号に必要なキーであるメディア鍵[Km]の取得を可能とした鍵情報ブロックである。これはいわゆる階層型木構造に従った情報配信方式を適用したものであり、ユーザデバイス(情報処理装置)が有効なライセンスを持つ場合にのみ、メディア鍵[Km]の取得を可能とし、無効化(リボーク処理)されたユーザデバイスにおいては、メディア鍵[Km]の取得が不可能となる。
【0056】
ライセンスエンティテイとしての管理センタはMKBに格納する鍵情報の暗号化に用いるデバイス鍵の変更により、特定のユーザデバイスに格納されたデバイス鍵では復号できない、すなわちコンテンツ復号に必要なメディア鍵を取得できない構成を持つMKBを生成することができる。従って、任意タイミングで不正デバイスを排除(リボーク)して、有効なライセンスを持つデバイスに対してのみ復号可能な暗号化コンテンツを提供することが可能となる。コンテンツの復号処理については後述する。
【0057】
(3)ボリュームID(パッケージID)
ボリュームIDは、例えば、スタンパ単位で設定され、所定製造枚数単位の情報記録媒体毎の識別情報として設定されるIDである。このボリュームIDは、コンテンツの復号に適用する鍵の生成情報として利用される。これらの処理については後述する。
【0058】
(4)パッケージID、
パッケージIDは、例えば同一タイトルを持つコンテンツを記録した情報記録媒体、あるいは同一のコンテンツ制作会社であるスタジオの提供するコンテンツを格納した情報記録媒体に共通に設定されるIDである。コンテンツタイトルや、コンテンツオーナー、スタジオなどの単位の情報記録媒体の識別情報として設定されるIDである。
【0059】
(5)使用許諾情報
使用許諾情報には、例えばコピー・再生制御情報(CCI)が含まれる。すなわち、情報記録媒体100に格納された暗号化コンテンツ111に対応する利用制御のためのコピー制限情報や、再生制限情報である。このコピー・再生制御情報(CCI)は、コンテンツ管理ユニットとして設定されるCPSユニット個別の情報として設定される場合や、複数のCPSユニットに対応して設定される場合など、様々な設定が可能である。この情報の詳細については後段で説明する。なお、情報記録媒体100に格納される使用許諾情報は暗号化データとして格納される。具体的な暗号化構成については後述する。
【0060】
(6)CPSユニット鍵ファイル
情報記録媒体100に格納された暗号化コンテンツ111は、上述したように、コンテンツ管理ユニットとして設定されるCPSユニット個別の暗号鍵を適用して暗号化されている。コンテンツを構成するAV(Audio Visual)ストリーム、音楽データ、動画、静止画等の画像データ、ゲームプログラム、WEBコンテンツなどは、コンテンツ利用の管理単位としてのCPSユニットに区分されている。再生処理を実行する情報処理装置は、再生対象とするコンテンツの属するCPSユニットを判別し、判別したCPSユニットに対応する暗号鍵としてのCPSユニット鍵を適用した復号処理を行うことが必要となる。このCPSユニット鍵を取得するために必要なデータを格納したファイルがCPSユニット鍵ファイルである。CPSユニット鍵ファイルの詳細については後述する。なお、コンテンツ再生には、CPSユニット鍵のみならず、他の様々な鍵情報や鍵生成情報等を適用することが必要となる。これらの具体的な処理についても後述する。
【0061】
(7)シリアル番号
シリアル番号は、情報記録媒体100各々に個別の番号として設定される番号である。
(8)ダウンロード情報
ダウンロード情報は、情報記録媒体100に格納されたデータ、例えば、暗号化コンテンツ111に対応して後発的に取得可能なデータがある場合、その後発データの取得に必要な情報、具体的には、後発データの取得サーバアドレス、サーバ内のどのコンテンツをダウンロードをするべきかを判断するのに用いる情報として例えば、コンテンツオーナーを識別する情報(スタジオID)、コンテンツオーナーが提供しているディスクを識別する情報(パッケージID)などが含まれる。なお、後発データとは、例えば、暗号化コンテンツ111が外国語の映画である場合、その映画の字幕データや解説データ、あるいはおまけデータなどの様々なデータである。
【0062】
図1に示すサーバ130は、この後発データを提供するサーバである。サーバ130は、情報処理装置150との所定シーケンスに従った通信処理を実行し、後発データ131としての暗号化サブコンテンツ、後発データ131に対する使用許諾情報132、さらに後発データ131に適用する暗号鍵情報としてのCPSユニット鍵ファイルを、ネットワークを介して情報処理装置150に送信する。情報処理装置150は、これらのデータを例えばハードディスクなどのローカルストレージ155に格納して保管する。なお、後発データの取得処理シーケンスの詳細については後述する。
【0063】
図1には、情報記録媒体100に格納されたコンテンツの再生処理を実行する情報処理装置150の構成の概略を示している。情報処理装置150は、情報記録媒体100の格納データの読み取り処理を実行するドライブ120を有する。ドライブ120によって読み取られたデータは、暗号化コンテンツの復号処理およびデコード(例えばMPEGデコード)処理を実行する再生処理実行LSI151に入力される。
【0064】
再生処理実行LSI151は、暗号化コンテンツの復号処理を実行する復号処理部152と、デコード(例えばMPEGデコード)処理を実行するデコード処理部153を有する。復号処理部152では、メモリ154に格納された各種情報、および、情報記録媒体100からの読み取りデータを適用して、コンテンツの復号に適用する鍵を生成し、暗号化コンテンツ111の復号処理を実行する。
【0065】
さらに、ローカルストレージ155に格納された後発データの復号処理も実行する。例えば映画コンテンツを情報記録媒体100から読み取り復号するとともに、ローカルストレージ155から暗号化後発データとしての字幕データの復号を実行して、併せて再生する処理が行なわれる。
【0066】
情報処理装置150のメモリ154には、デバイス鍵:Kdが格納される。デバイス鍵:Kdは、先に説明したMKBの処理に適用する鍵である。MKB112は有効なライセンスを持つユーザの情報処理装置に格納されたデバイス鍵[Kd]に基づく処理(復号)によってのみ、コンテンツの復号に必要なキーであるメディア鍵[Km]の取得を可能とした鍵情報ブロックであり、暗号化コンテンツの復号に際して、情報処理装置150は、メモリ154に格納されたデバイス鍵:Kdを適用してMKB112の処理を実行することになる。なお、コンテンツの復号処理の詳細については後述する。
【0067】
[2.コンテンツ管理ユニット(CPSユニット)について]
前述したように、情報記録媒体に格納されるコンテンツは、ユニット毎の異なる利用制御を実現するため、ユニット毎に異なる鍵が割り当てられ暗号化処理がなされて格納される。すなわち、コンテンツはコンテンツ管理ユニット(CPSユニット)に区分されて、個別の暗号化処理がなされ、個別の利用管理がなされる。
【0068】
コンテンツ利用に際しては、まず、各ユニットに割り当てられたCPSユニット鍵を取得することが必要であり、さらに、その他の必要な鍵、鍵生成情報等を適用して予め定められた復号処理シーケンスに基づくデータ処理を実行して再生を行う。コンテンツ管理ユニット(CPSユニット)の設定態様について、図2を参照して説明する。
【0069】
図2に示すように、コンテンツは、(A)インデックス210、(B)ムービーオブジェクト220、(C)プレイリスト230、(D)クリップ240の階層構成を有する。再生アプリケーションによってアクセスされるタイトルなどのインデックスを指定すると、例えばタイトルに関連付けられた再生プログラムが指定され、指定された再生プログラムのプログラム情報に従ってコンテンツの再生順等を規定したプレイリストが選択される。
【0070】
プレイリストには、再生対象データ情報としてのプレイアイテムが含まれる。プレイリストに含まれるプレイアイテムによって規定される再生区間としてのクリップ情報によって、コンテンツ実データとしてのAVストリームあるいはコマンドが選択的に読み出されて、AVストリームの再生、コマンドの実行処理が行われる。なお、プレイリスト、プレイアイテムは多数、存在し、それぞれに識別情報としてのプレイリストID、プレイアイテムIDが対応付けられている。
【0071】
図2には、2つのCPSユニットを示している。これらは、情報記録媒体に格納されたコンテンツの一部を構成している。CPSユニット1,271、CPSユニット2,272の各々は、インデックスとしてのタイトルと、再生プログラムファイルとしてのムービーオブジェクトと、プレイリストと、コンテンツ実データとしてのAVストリームファイルを含むクリップを含むユニットとして設定されたCPSユニットである。
【0072】
コンテンツ管理ユニット(CPSユニット)1,271には、タイトル1,211とタイトル2,212、再生プログラム221,222、プレイリスト231,232、クリップ241、クリップ242が含まれ、これらの2つのクリップ241,242に含まれるコンテンツの実データであるAVストリームデータファイル261,262が、少なくとも暗号化対象データであり、原則的にコンテンツ管理ユニット(CPSユニット)1,271に対応付けて設定される暗号鍵であるCPSユニット鍵(Ku1)を適用して暗号化されたデータとして設定される。
【0073】
コンテンツ管理ユニット(CPSユニット)2,272には、インデックスとしてアプリケーション1,213、再生プログラム224、プレイリスト233、クリップ243が含まれ、クリップ243に含まれるコンテンツの実データであるAVストリームデータファイル263がコンテンツ管理ユニット(CPSユニット)2,272に対応付けて設定される暗号鍵である暗号鍵であるCPSユニット鍵(Ku2)を適用して暗号化される。
【0074】
例えば、ユーザがコンテンツ管理ユニット1,271に対応するアプリケーションファイルまたはコンテンツ再生処理を実行するためには、コンテンツ管理ユニット(CPSユニット)1,271に対応付けて設定された暗号鍵としてのユニット鍵:Ku1を取得して復号処理を実行することが必要となる。コンテンツ管理ユニット2,272に対応するアプリケーションファイルまたはコンテンツ再生処理を実行するためには、コンテンツ管理ユニット(CPSユニット)2,272に対応付けて設定された暗号鍵としてのユニット鍵:Ku2を取得して復号処理を実行することが必要となる。
【0075】
CPSユニットの設定構成、およびユニット鍵の対応例を図3に示す。図3には、情報記録媒体に格納される暗号化コンテンツの利用管理単位としてのCPSユニット設定単位と、各CPSユニットに適用するCPSユニット鍵の対応を示している。なお、予め後発データ用のCPSユニットおよびCPSユニット鍵を格納して設定しておくことも可能である。例えばデータ部281が後発データ用のエントリである。
【0076】
CPSユニット設定単位は、コンテンツのタイトル、アプリケーション、データグループなど、様々であり、CPSユニット管理テーブルには、それぞれのCPSユニットに対応する識別子としてのCPSユニットIDが設定される。
【0077】
図3において、例えばタイトル1はCPSユニット1であり、CPSユニット1に属する暗号化コンテンツの復号に際しては、ユニット鍵Ku1を生成し、生成したユニット鍵Ku1に基づく復号処理を行なうことが必用となる。
【0078】
このように、情報記録媒体100に格納されるコンテンツは、ユニット毎の異なる利用制御を実現するため、ユニット毎に異なる鍵が割り当てられ暗号化処理がなされて格納される。各コンテンツ管理ユニット(CPSユニット)に対する個別の利用管理のために、各コンテンツ管理ユニット(CPSユニット)に対する使用許諾情報(UR:Usage Rule)が設定されている。使用許諾情報は、前述したように、コンテンツに対する例えばコピー・再生制御情報(CCI)を含む情報であり、各コンテンツ管理ユニット(CPSユニット)に含まれる暗号化コンテンツのコピー制限情報や、再生制限情報である。
【0079】
情報記録媒体100に格納されるコンテンツを含むCPSユニットの暗号化態様と、各CPSユニットの復号に適用するCPSユニット鍵の格納ファイルとして設定されるCPSユニット鍵ファイルの具体的なデータ構成例について図4を参照して説明する。図4に示すように、各CPSユニット(CPS_Unit#n)は、対応するユニット鍵(KU_n)によって暗号化されたデータ[Enc(Ku_n,CPS_Unit#n)]として格納される。なお、Enc(A,B)は、データ(B)の鍵(A)による暗号化データであることを示す。
【0080】
情報記録媒体100に格納される各CPSユニットの復号に適用するCPSユニット鍵の格納ファイルとして設定されるCPSユニット鍵ファイルには、各CPSユニット鍵[Ku_n]が暗号化データとして格納される。すなわち、図4に示すように、CPSユニット(CPS_Unit#n)に対するCPSユニット鍵[Ku_n]は、対応する使用許諾情報(UR#n)との演算結果[f(Ku_n,UR#n)]に対して、ボリューム固有鍵[Ke(embedded Key)]を適用した暗号化データ、すなわち、[Enc(Ke,f(Ku_n,UR#n))]として情報記録媒体100に格納される。
【0081】
なお、f(A,B)は、データAとデータBとの演算を示している。f(Ku_n,UR#n)は、例えば、CPSユニット(CPS_Unit#n)に対するユニット鍵[Ku_n]と使用許諾情報(UR#n)との排他論理和演算などの演算処理であり、この演算結果に対して、ボリューム固有鍵[Ke]で暗号化したデータとして情報記録媒体100に格納される。なお、ボリューム固有鍵[Ke(embedded Key)]は、情報記録媒体100のボリュームIDに対応して設定される鍵である。
【0082】
このように、情報記録媒体100に予め格納されているコンテンツは、CPSユニットに区分され、それぞれのユニット対応のユニット鍵を適用した暗号化データとして格納され、さらに各CPSユニットに対応する使用許諾情報に基づく利用制御がなされる構成となっている。
【0083】
情報記録媒体100に予め格納されているコンテンツ以外のコンテンツ、例えばユーザが後発的に生成したデータや外部から取得したデータなどの後発データもCPSユニットによる利用管理が可能となる。以下、後発データの取得処理、利用制御処理について説明する。
【0084】
[3.後発データの取得、管理構成]
図1に示すように、サーバ130から取得する後発データ、例えば映画コンテンツに対応する字幕データなどの後発データ(暗号化サブコンテンツ)131もCPSユニットに属するデータとして設定される。なお、後発データに対するCPSユニットは、新たなCPSユニットとして設定される場合と、情報記録媒体100に設定済みのCPSユニットとされる場合がある。
【0085】
後発データ131が情報記録媒体100に設定済みのCPSユニットに属する場合は、情報記録媒体100に設定済みのCPSユニットに対応して情報記録媒体100に格納されている使用許諾情報(UR)を、後発データに対する使用許諾情報(UR)として利用することも可能であるが、後発データに対するCPSユニットが、新たなCPSユニットとして設定される場合は、サーバ130は、後発データ131に対応する使用許諾情報(UR)132と、新たなCPSユニットに対応するユニット鍵を格納したCPSユニット鍵ファイル133をユーザの情報処理装置150に提供することになる。
【0086】
なお、後述するが、後発データには、情報記録媒体100に格納済みのコンテンツと異なるバインドタイプが設定される場合がある。バインドタイプが設定された後発データの場合には、バインドタイプを記述した使用許諾情報(UR)を後発データに対する使用許諾情報(UR)としてユーザの情報処理装置に提供する。後発データ131が情報記録媒体100に設定済みのCPSユニットに属する場合においてもバインドタイプを設定する場合は、後発データ対応のバイントタイプを記述した使用許諾情報(UR)がユーザの情報処理装置150に提供される。
【0087】
情報処理装置150は、後発データを、図1に示す情報処理装置150内のハードディスク等のローカルストレージ155に格納して利用する。なお、ローカルストレージ155は、ハードディスクに限らず、フラッシュメモリ型のカードメモリ、データ書き込み可能なDVDなどのリムーバブルメディアであってもよい。
【0088】
ローカルストレージに格納した後発データの利用に際しては、情報記録媒体100に格納されたCPSユニット対応コンテンツと同様、後発データの属するCPSユニットに対応する使用許諾情報の利用制限に従って利用が行なわれ、また、後発データ対応のCPSユニットに対応して設定されるCPSユニット鍵を取得して後発データとしての暗号化データの復号を実行することが必要となる。
【0089】
ローカルストレージ155に格納された後発データも、情報記録媒体100に予め格納済みのCPSユニット対応コンテンツと同様、所定の利用制御管理下で利用される。例えば外部の記憶媒体にコピーされて、コンテンツの利用権を持たない第三者に不正に利用されるといったことを防止する構成となっている。
【0090】
後発データは、情報記録媒体100に予め格納済みのコンテンツと異なり、後発データ特有の利用制限態様がある。すなわち、後発データは、後発データ特有の利用制限態様に応じて、以下の4つの種類(バインドタイプ)の後発データに区分される。
(1)デバイスバインド後発データ:後発データを取得(ダウンロード)したデバイス(情報処理装置)でのみ後発データの利用を許容する。
(2)ディスクバインド後発データ:後発データを取得(ダウンロード)した際に適用した情報記録媒体(ディスク)と同一のシリアル番号を持つディスクが情報処理装置にセットされている場合にのみ後発データの利用を許容する。
(3)パッケージバインド後発データ:後発データを取得(ダウンロード)した際に適用した情報記録媒体(ディスク)と同一のパッケージIDの情報記録媒体(ディスク)が情報処理装置にセットされている場合にのみ後発データの利用を許容する。
(4)バインドなし後発データ:特に利用制限を設けない後発データである。
(5)その他の後発データ:上記(1)〜(4)以外の後発データである。例えば、コンテンツを提供するエンティテイであるスタジオ独自の方法で利用制限を設定した後発データなどである。例えばJAVAアプリケーションなどのプログラムを適用して暗号化などを施した後発データなどが含まれる。
【0091】
図1に示す情報処理装置150がサーバ130から後発データ131を取得する場合には、図1に示すように使用許諾情報(Usage Rule)132が提供される。使用許諾情報(Usage Rule)132は、取得する後発データの利用制限情報が記録されており、上述した(1)〜(5)に示す後発データの利用制限態様を示すバインドタイプについての記述を含む構成となっている。
【0092】
後発データに対応する使用許諾情報(Usage Rule)に含まれるバインドタイプの具体的な記述例について、図5を参照して説明する。
【0093】
図5(A)は、後発データに対応するバインドタイプの種類およびコード(8ビット)の対応例を示している。これらのコードあるいはバインドタイプ種が後発データに対応する使用許諾情報(Usage Rule)に記録される。図5(Ba)は、後発データのバインドタイプをXML記述によって記録した使用許諾情報(UR)の例、図5(Bb)は、後発データのバインドタイプをコードデータを8ビット表現としてバイナリ記述によって記録した使用許諾情報(UR)の例を示している。
【0094】
なお、バインドタイプは、必ずしも使用許諾情報(Usage Rule)に記録する構成に限られるものではなく、使用許諾情報(Usage Rule)と異なるデータファイルに記録する構成としてもよい。例えば後発データの検索用データを格納した後発データ検索情報ファイルに、各後発データに対応するバインドタイプを記録する構成としてもよい。この例が、図5(Bc)に示す例であり、ローカルストレージに記録される後発データのファイル名とバインドタイプとを対応付けたデータを記録している。
【0095】
後発データの検索用データを格納した後発データ検索情報ファイルは、情報処理装置が新たな後発データを取得してローカルストレージに記録する際に、後発データに対応するファイル名とバインド情報をサーバから取得して更新される。図5(Bc)に示すように、後発データ検索情報ファイルに各後発データのバインドタイプを記録する構成とした場合は、後発データを利用する場合、情報処理装置は、ローカルストレージに格納された後発データ検索情報ファイルを読み出して、必用とする後発データのバインドタイプを取得することが可能となり、効率的に各後発データのバインドタイプを確認することができる。
【0096】
次に、図6以下を参照して、
(1)デバイスバインド後発データ
(2)ディスクバインド後発データ
(3)パッケージバインド後発データ
これら各バインドタイプの後発データについて、それぞれ
(a)後発データの取得処理、
(b)後発データのローカルストレージに対する記録処理、
(c)ローカルストレージに記録された後発データの復号、利用処理、
これら3つの処理シーケンスの詳細を、順次説明する。
【0097】
[(3.1)デバイスバインド後発データの取得、記録、利用処理の詳細]
まず、デバイスバインド後発データの取得、記録、利用処理の詳細について説明する。
デバイスバインド後発データは、前述したように、後発データを取得(ダウンロード)したデバイス(情報処理装置)でのみ後発データの利用を許容するタイプの後発データである。
【0098】
(3.1.a)デバイスバインド後発データの取得処理
デバイスバインド後発データの取得処理について、図6を参照して説明する。図6において、左に後発データを取得する情報処理装置を示し、右側に後発データを提供するサーバを示している。
【0099】
情報処理装置は、情報処理装置のドライブに前述したCPUユニットに区分されたコンテンツを格納した情報記録媒体を装着して後発データの取得処理を実行する。情報記録媒体は、ボリュームID=#mであり、
暗号化コンテンツ:Enc(Ku_1,CPS_Unit#1)〜Enc(Ku_n,CPS_Unit#n)、
CPSユニット鍵ファイル:Enc(Ke,f(Ku_1,UR#1)〜(Ke,f(Ku_n,UR#n)
を格納し、さらに、図1を参照して説明した各種情報が記録されている。図6にはその一部としてボリュームID、ダウンロード情報、MKB等の各データを示している。
【0100】
また、情報処理装置のメモリには、デバイス鍵[Kd]が格納されている。デバイス鍵[Kd]は、MKBの処理に適用する鍵である。MKBは有効なライセンスを持つユーザの情報処理装置に格納されたデバイス鍵[Kd]に基づく処理(復号)によってのみ、コンテンツの復号に必要なキーであるメディア鍵[Km]の取得を可能とした鍵情報ブロックであり、暗号化コンテンツの復号に際して、情報処理装置は、メモリに格納されたデバイス鍵[Kd]を適用してMKBの処理を実行することになる。なお、コンテンツの復号処理の詳細については後述する。
【0101】
また、後発データを提供するサーバは、図6に示すようにデータベースに、ボリュームIDとダウンロード情報に対応づけて、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]と、
*後発データとしての暗号化サブコンテンツの復号に適用するユニット鍵を暗号化したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]と、
*後発データとしての暗号化サブコンテンツに対応する使用許諾情報(UR:Usage Rule#n+1)を格納している。
【0102】
ステップS101〜S107の各処理について説明する。ステップS101において、情報処理装置は、情報記録媒体から取得したボリュームID(Volume ID#m)と、ダウンロード情報(Download_info)とをサーバに送信する。
【0103】
ボリュームID(Volume ID#m)と、ダウンロード情報(Download_info)とを受信したサーバは、ステップS102において、データベース検索を実行し、ボリュームID(Volume ID#m)と、ダウンロード情報(Download_info)に対応して格納されたデータ、すなわち、
*後発データとしての暗号化サブコンテンツの復号に適用するユニット鍵を暗号化したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]、
*後発データとしての暗号化サブコンテンツに対応する使用許諾情報(UR:Usage Rule#n+1)、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]、
これらの各データを取得し、ステップS103、ステップS104においてこれらの取得データを情報処理装置に送信する。
【0104】
情報処理装置は、サーバからの送信データを受領すると、ステップS105において、CPSユニット鍵ファイルのデータ、すなわち暗号化サブコンテンツの復号に適用するユニット鍵を暗号化したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]をボリューム固有鍵[Ke]を適用して復号し、ステップS106において、メモリに格納されたデバイス鍵[Kd]とのバインド処理および暗号化を実行して暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,Kd))]を生成する。f(a,b,c)は、データa,b,cに基づく排他論理和演算などの演算結果データを示す。なお、これらのデータ処理の詳細については、図7を参照して後段で説明する。
【0105】
ステップS107では、サーバから取得したデータ、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]、
*後発データとしての暗号化サブコンテンツに対応する使用許諾情報(UR:Usage Rule#n+1)、
および、サーバから取得したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]に基づいて情報処理装置において生成した下記データ、すなわち、
*暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,Kd))]、
これらのデータをローカルストレージに格納する。
【0106】
(3.1.b)デバイスバインド後発データのローカルストレージに対する記録処理、
次に、図7を参照して、デバイスバインド後発データのローカルストレージに対する記録処理、特に、暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,Kd))]の生成処理シーケンスについて説明する。
【0107】
図7には、後発データ等をサーバから取得して取得データおよび取得データに対する処理データをローカルストレージ320に格納する情報処理装置300と、後発データ等を提供するサーバ400と、情報処理装置300に装着された情報記録媒体100とを示している。
【0108】
情報記録媒体100には、先に図1を参照して説明した各種データが格納されているが、ここでは、デバイスバインド後発データのローカルストレージに対する記録処理において適用するデータとして、暗号鍵ブロックとしてのMKB112と、ボリュームID113のみを示している。
【0109】
サーバは、先に図6を参照して説明した通り、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]403と、
*後発データとしての暗号化サブコンテンツ403の復号に適用するユニット鍵を暗号化したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]401と、
*後発データとしての暗号化サブコンテンツ403に対応する使用許諾情報(UR:Usage Rule#n+1)402、
これらの各データを情報処理装置300に提供する。
【0110】
情報処理装置300の処理について説明する。まず、情報処理装置300は、メモリに格納しているデバイス鍵[Kd]301を読み出す。デバイス鍵301は、コンテンツ利用に関するライセンスを受けた情報処理装置に格納された秘密キーである。
【0111】
次に、情報処理装置300は、ステップS121において、デバイス鍵301を適用して情報記録媒体100に格納されたメディア鍵Kmを格納した暗号鍵ブロックであるMKB112の復号処理を実行して、メディア鍵Kmを取得する。
【0112】
次に、ステップS122において、ステップS121におけるMKB処理で取得したメディア鍵Kmと、情報記録媒体100から読み取ったボリュームID113とに基づく暗号処理によって、ボリューム固有鍵Ke(embedded Key)を生成する。この鍵生成処理は、例えばAES暗号アルゴリズムに従った処理として実行される。
【0113】
AES暗号アルゴリズムの詳細について、図8を参照して説明する。AES暗号アルゴリズムに従った処理としては、例えばAESベースのハッシュ関数[AES_H]が適用される。AESベースのハッシュ関数は、図8に示すように、AES暗号処理を適用したデータ復号処理を伴う鍵生成(Key Generation)処理実行部(AES_G)と排他的論理和部との組み合わせによって構成される。AES_G部は、さらに図8に示すようにAES復号部(AES_D)と排他的論理和部との組みによって構成される。
【0114】
図7におけるステップS122におけるボリューム固有鍵Keの生成処理は、ステップS121におけるMKB処理で取得したメディア鍵Kmと、情報記録媒体100から読み取ったボリュームID113とを入力として、例えば図8に示すAESベースのハッシュ関数[AES_H]を適用した処理として実行される。
【0115】
次に、ステップS123において、ボリューム固有鍵Keを適用して、サーバから取得したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]311(=401)の復号処理を実行する。この復号処理によって、
CPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]
から、
データ[Kt]=f(Ku_n+1,UR#n+1)
が取得される。
【0116】
次に、ステップS124において、情報処理装置300のメモリに格納されたデバイス鍵[Kd]と、サーバから取得した後発データに対応する使用許諾情報(UR:Usage Rule#n+1)322(=402)とを適用した演算処理を実行してバインドユニット鍵(BKu)データを生成する。バインドユニット鍵(BKu)は、以下のデータである。
BKu=f(Ku_n+1,UR#n+1,Kd)
【0117】
バインドユニット鍵:BKu=f(Ku_n+1,UR#n+1,Kd)は、CPSユニット#n+1に対応するユニット鍵[Ku_n+1]と、使用許諾情報[UR#n+1]と、デバイス鍵[Kd]との排他論理和演算などの演算結果データである。
【0118】
さらに、ステップS125において、ステップS122で算出したボリューム固有鍵Keを適用して、バインドユニット鍵:BKu=f(Ku_n+1,UR#n+1,Kd)の暗号化処理を実行し、
暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,Kd))]、
を生成して、ローカルストレージ320に格納する。
【0119】
なお、ローカルストレージ320には、
上述の処理によって生成した
*暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,Kd))]323
の他、サーバ400から取得した
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]322(=403)と、
*後発データとしての暗号化サブコンテンツ322に対応する使用許諾情報(UR:Usage Rule#n+1)321(=402)、
これらの各データが格納される。
【0120】
(3.1.c)ローカルストレージに記録されたデバイスバインド後発データの復号、利用処理、
次に、ローカルストレージに格納されたデバイスバインド後発データの利用処理について説明する。ローカルストレージに格納された後発データの利用処理は、情報記録媒体に記録されたコンテンツの利用におけるデータ処理と類似する処理によって行なわれる。まず、情報記録媒体に記録されたコンテンツの利用におけるデータ処理について、図9を参照して説明する。
【0121】
まず、情報処理装置300は、メモリに格納しているデバイス鍵[Kd]301を読み出す。デバイス鍵301は、コンテンツ利用に関するライセンスを受けた情報処理装置に格納された秘密キーである。
【0122】
次に、情報処理装置300は、ステップS131において、デバイス鍵301を適用して情報記録媒体100に格納されたメディア鍵Kmを格納した暗号鍵ブロックであるMKB112の復号処理を実行して、メディア鍵Kmを取得する。
【0123】
次に、ステップS132において、ステップS131におけるMKB処理で取得したメディア鍵Kmと、情報記録媒体100から読み取ったボリュームID113とに基づく暗号処理によって、ボリューム固有鍵Keを生成する。この鍵生成処理は、例えば、先に図8を参照して説明したAES暗号アルゴリズムに従った処理として実行される。
【0124】
次に、ステップS133において、ボリューム固有鍵Keによって、情報記録媒体100から読み取ったCPSユニット鍵ファイル116、すなわち、[Enc(Ke,f(Ku_n,UR#n))]の復号処理を実行する。なお、ここで利用するCPSユニットはCPSユニット[CPS_Unit#n]であるものとする。
【0125】
ステップS133におけるCPSユニット鍵ファイル116の復号処理によって、
データ[Kt]=f(Ku_n,UR#n)
を取得し、ステップS134において、
データ[Kt]=f(Ku_n,UR#n)、
に対して、情報記録媒体100から読み取った使用許諾情報(UR:Usage Rule#n)115を適用した演算処理を実行して、ユニット鍵[Ku_n]を得る。
例えば、データ[Kt]=f(Ku_n,UR#n)が、ユニット鍵[Ku_n]と、使用許諾情報[UR#n]との排他論理和(XOR)結果データである場合、再度、この演算結果に対して、情報記録媒体100から読み取った使用許諾情報[UR#n]の排他論理和(XOR)演算を実行することで、ユニット鍵[Ku_n]を取得することができる。
【0126】
次に、ステップS135において、情報記録媒体100から読み取った暗号化コンテンツに対して、ユニット鍵[Ku_n]を適用した復号処理(例えばAES_D)を実行し、ステップS136において、例えばMPEGデコード、圧縮解除、スクランブル解除等、必要なデコード処理を実行して、コンテンツ350を取得する。
【0127】
この処理によって、情報記録媒体100に格納されたCPSユニットとして管理される暗号化コンテンツが復号されて利用、すなわち再生することができる。
【0128】
次に、図10を参照してローカルストレージ320に格納された後発データである暗号化サブコンテンツ322の利用処理について説明する。なお、ローカルストレージ320には、先に図6、図7を参照して説明した処理によって格納されたデータとして、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]322と、
*後発データとしての暗号化サブコンテンツ322に対応する使用許諾情報(UR:Usage Rule#n+1)321と、
*暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,Kd))]323と、
が格納されているものとする。
【0129】
まず、情報処理装置300は、メモリに格納しているデバイス鍵[Kd]301を読み出す。デバイス鍵301は、コンテンツ利用に関するライセンスを受けた情報処理装置に格納された秘密キーである。
【0130】
次に、情報処理装置300は、ステップS151において、デバイス鍵301を適用して情報記録媒体100に格納されたメディア鍵Kmを格納した暗号鍵ブロックであるMKB112の復号処理を実行して、メディア鍵Kmを取得する。
【0131】
次に、ステップS152において、ステップS151におけるMKB処理で取得したメディア鍵Kmと、情報記録媒体100から読み取ったボリュームID113とに基づく暗号処理によって、ボリューム固有鍵Keを生成する。この鍵生成処理は、例えば、先に図8を参照して説明したAES暗号アルゴリズムに従った処理として実行される。
【0132】
次に、ステップS153において、ボリューム固有鍵Keによって、ローカルストレージ320から読み取った暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,Kd))]323の復号処理を実行する。
【0133】
ステップS153における暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,Kd))]323の復号処理によって、
バインドユニット鍵[BKu]=f(Ku_n+1,UR#n+1,Kd)
を取得し、ステップS154において、
バインドユニット鍵[BKu]=f(Ku_n+1,UR#n+1,Kd)
に対して、ローカルストレージ320から読み取った使用許諾情報(UR:Usage Rule#n+1)321と、情報処理装置300のメモリに格納されているデバイス鍵[Kd]とを適用した演算処理を実行して、ユニット鍵[Ku_n+1]を得る。
例えば、バインドユニット鍵[BKu]=f(Ku_n+1,UR#n+1,Kd)が、ユニット鍵[Ku_n+1]と、使用許諾情報[UR#n+1]と、デバイス鍵[Kd]との排他論理和(XOR)データである場合、再度、このバインドユニット鍵[BKu]に対して、ローカルストレージ320から読み取った使用許諾情報(UR:Usage Rule#n+1)321と、情報処理装置300のメモリに格納されているデバイス鍵[Kd]との排他論理和(XOR)演算を実行することで、ユニット鍵[Ku_n+1]を取得することができる。
【0134】
次に、ステップS155において、ローカルストレージ320から読み取った暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]322に対して、ユニット鍵[Ku_n+1]を適用した復号処理(例えばAES_D)を実行し、ステップS156において、例えばMPEGデコード、圧縮解除、スクランブル解除等、必要なデコード処理を実行して、コンテンツ350を取得する。
【0135】
この処理によって、ローカルストレージ320に格納された後発データである暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]322を復号して利用、すなわち再生することができる。
【0136】
このように、デバイスバインド後発データは、サーバから取得した後発データをローカルストレージに格納する際に、図7を参照して説明したように、サーバから受信したCPSユニット鍵ファイルの処理によって、CPSユニット鍵とデバイス鍵[Kd]とをバインドし、暗号化した暗号化バインドユニット鍵としてローカルストレージに格納し、後発データの利用に際しては、図10を参照して説明したように、ローカルストレージに格納された暗号化バインドユニット鍵からユニット鍵を取得するために、デバイス鍵[Kd]を適用した処理を行なうことが必要となる。
【0137】
後発データ再生時に適用するデバイス鍵[Kd]は、後発データ記録時に適用したデバイス鍵[Kd]と同一であることがバインド解除およびユニット鍵取得のために必須な条件となる。従って、デバイスバインド後発データは、先に説明したように、後発データを取得(ダウンロード)したデバイス(情報処理装置)でのみ後発データの利用が許容される後発データとなる。
【0138】
[(3.2)ディスクバインド後発データの取得、記録、利用処理の詳細]
次に、ディスクバインド後発データの取得、記録、利用処理の詳細について説明する。
ディスクバインド後発データは、前述したように、後発データを取得(ダウンロード)した際に適用した情報記録媒体(ディスク)と同一のシリアル番号を持つディスクが情報処理装置にセットされている場合にのみ後発データの利用を許容するタイプの後発データである。
【0139】
(3.2.a)ディスクバインド後発データの取得処理
ディスクバインド後発データの取得処理について、図11を参照して説明する。図11において、左に後発データを取得する情報処理装置を示し、右側に後発データを提供するサーバを示している。
【0140】
情報処理装置は、情報処理装置のドライブに前述したCPUユニットに区分されたコンテンツを格納した情報記録媒体を装着して後発データの取得処理を実行する。情報記録媒体は、ボリュームID=#mであり、
暗号化コンテンツ:Enc(Ku_1,CPS_Unit#1)〜Enc(Ku_n,CPS_Unit#n)、
CPSユニット鍵ファイル:Enc(Ke,f(Ku_1,UR#1)〜(Ke,f(Ku_n,UR#n)
を格納し、さらに、図1を参照して説明した各種情報が記録されている。図6にはその一部としてボリュームID、ダウンロード情報、MKB、およびシリアル番号[SN]等の各データを示している。
【0141】
後発データを提供するサーバは、先に図6を参照して説明したと同様、データベースに、ボリュームIDとダウンロード情報に対応づけて、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]と、
*後発データとしての暗号化サブコンテンツの復号に適用するユニット鍵を暗号化したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]と、
*後発データとしての暗号化サブコンテンツに対応する使用許諾情報(UR:Usage Rule#n+1)を格納している。
【0142】
ステップS201〜S207の各処理について説明する。ステップS201において、情報処理装置は、情報記録媒体から取得したボリュームID(Volume ID#m)と、ダウンロード情報(Download_info)とをサーバに送信する。
【0143】
ボリュームID(Volume ID#m)と、ダウンロード情報(Download_info)とを受信したサーバは、ステップS202において、データベース検索を実行し、ボリュームID(Volume ID#m)と、ダウンロード情報(Download_info)に対応して格納されたデータ、すなわち、
*後発データとしての暗号化サブコンテンツの復号に適用するユニット鍵を暗号化したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]、
*後発データとしての暗号化サブコンテンツに対応する使用許諾情報(UR:Usage Rule#n+1)、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]、
これらの各データを取得し、ステップS203、ステップS204においてこれらの取得データを情報処理装置に送信する。
【0144】
情報処理装置は、サーバからの送信データを受領すると、ステップS205において、CPSユニット鍵ファイルのデータ、すなわち暗号化サブコンテンツの復号に適用するユニット鍵を暗号化したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]をボリューム固有鍵[Ke]を適用して復号し、ステップS206において、情報記録媒体から読み取ったシリアル番号[SN]とのバインド処理および暗号化を実行して暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,SN))]を生成する。これらのデータ処理の詳細については、図12を参照して後段で説明する。
【0145】
ステップS207では、サーバから取得したデータ、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]、
*後発データとしての暗号化サブコンテンツに対応する使用許諾情報(UR:Usage Rule#n+1)、
および、サーバから取得したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]に基づいて情報処理装置において生成した下記データ、すなわち、
*暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,SN))]、
これらのデータをローカルストレージに格納する。
【0146】
(3.2.b)ディスクバインド後発データのローカルストレージに対する記録処理、
次に、図12を参照して、ディスクバインド後発データのローカルストレージに対する記録処理、特に、暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,SN))]の生成処理シーケンスについて説明する。
【0147】
図12には、後発データ等をサーバから取得して取得データおよび取得データに対する処理データをローカルストレージ320に格納する情報処理装置300と、後発データ等を提供するサーバ400と、情報処理装置300に装着された情報記録媒体100とを示している。
【0148】
情報記録媒体100には、先に図1を参照して説明した各種データが格納されているが、ここでは、ディスクバインド後発データのローカルストレージに対する記録処理において適用するデータとして、暗号鍵ブロックとしてのMKB112と、ボリュームID113、およびシリアル番号117のみを示している。
【0149】
サーバは、先に図11を参照して説明した通り、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]403と、
*後発データとしての暗号化サブコンテンツ403の復号に適用するユニット鍵を暗号化したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]401と、
*後発データとしての暗号化サブコンテンツ403に対応する使用許諾情報(UR:Usage Rule#n+1)402、
これらの各データを情報処理装置300に提供する。
【0150】
情報処理装置300の処理について説明する。まず、情報処理装置300は、メモリに格納しているデバイス鍵[Kd]301を読み出す。デバイス鍵301は、コンテンツ利用に関するライセンスを受けた情報処理装置に格納された秘密キーである。
【0151】
次に、情報処理装置300は、ステップS211において、デバイス鍵301を適用して情報記録媒体100に格納されたメディア鍵Kmを格納した暗号鍵ブロックであるMKB112の復号処理を実行して、メディア鍵Kmを取得する。
【0152】
次に、ステップS212において、ステップS211におけるMKB処理で取得したメディア鍵Kmと、情報記録媒体100から読み取ったボリュームID113とに基づく暗号処理によって、ボリューム固有鍵Ke(embedded Key)を生成する。この鍵生成処理は、例えば先に図8を参照して説明したAES暗号アルゴリズムに従った処理として実行される。
【0153】
次に、ステップS213において、ボリューム固有鍵Keを適用して、サーバから取得したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]311(=401)の復号処理を実行する。この復号処理によって、
CPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]
から、
データ[Kt]=f(Ku_n+1,UR#n+1)
が取得される。
【0154】
次に、ステップS214において、情報記録媒体100から読み取ったシリアル番号[SN]と、サーバから取得した後発データに対応する使用許諾情報(UR:Usage Rule#n+1)322(=402)とを適用した演算処理を実行してバインドユニット鍵(BKu)データを生成する。バインドユニット鍵(BKu)は、以下のデータである。
BKu=f(Ku_n+1,UR#n+1,SN)
【0155】
バインドユニット鍵:BKu=f(Ku_n+1,UR#n+1,SN)は、CPSユニット#n+1に対応するユニット鍵[Ku_n+1]と、使用許諾情報[UR#n+1]と、シリアル番号[SN]との排他論理和演算などの演算結果データである。
【0156】
さらに、ステップS215において、ステップS212で算出したボリューム固有鍵Keを適用して、バインドユニット鍵:BKu=f(Ku_n+1,UR#n+1,SN)の暗号化処理を実行し、
暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,SN))]、
を生成して、ローカルストレージ320に格納する。
【0157】
なお、ローカルストレージ320には、
上述の処理によって生成した
*暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,SN))]324
の他、サーバ400から取得した
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]322(=403)と、
*後発データとしての暗号化サブコンテンツ322に対応する使用許諾情報(UR:Usage Rule#n+1)321(=402)、
これらの各データが格納される。
【0158】
(3.2.c)ローカルストレージに記録されたディスクバインド後発データの復号、利用処理、
次に、ローカルストレージに格納されたディスクバインド後発データの利用処理について、図13を参照して説明する。ローカルストレージ320には、先に図11、図12を参照して説明した処理によって格納されたデータとして、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]322と、
*後発データとしての暗号化サブコンテンツ322に対応する使用許諾情報(UR:Usage Rule#n+1)321と、
*暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,SN))]324と、
が格納されているものとする。
【0159】
まず、情報処理装置300は、メモリに格納しているデバイス鍵[Kd]301を読み出す。デバイス鍵301は、コンテンツ利用に関するライセンスを受けた情報処理装置に格納された秘密キーである。
【0160】
次に、情報処理装置300は、ステップS251において、デバイス鍵301を適用して情報記録媒体100に格納されたメディア鍵Kmを格納した暗号鍵ブロックであるMKB112の復号処理を実行して、メディア鍵Kmを取得する。
【0161】
次に、ステップS252において、ステップS251におけるMKB処理で取得したメディア鍵Kmと、情報記録媒体100から読み取ったボリュームID113とに基づく暗号処理によって、ボリューム固有鍵Keを生成する。この鍵生成処理は、例えば、先に図8を参照して説明したAES暗号アルゴリズムに従った処理として実行される。
【0162】
次に、ステップS253において、ボリューム固有鍵Keによって、ローカルストレージ320から読み取った暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,SN))]324の復号処理を実行する。
【0163】
ステップS253における暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,SN))]324の復号処理によって、
バインドユニット鍵[BKu]=f(Ku_n+1,UR#n+1,SN)
を取得し、ステップS254において、
バインドユニット鍵[BKu]=f(Ku_n+1,UR#n+1,SN)
に対して、ローカルストレージ320から読み取った使用許諾情報(UR:Usage Rule#n+1)321と、情報記録媒体100から読み取ったシリアル番号[SN]とを適用した演算処理を実行して、ユニット鍵[Ku_n+1]を得る。
例えば、バインドユニット鍵[BKu]=f(Ku_n+1,UR#n+1,SN)が、ユニット鍵[Ku_n+1]と、使用許諾情報[UR#n+1]と、シリアル番号[SN]との排他論理和(XOR)データである場合、再度、このバインドユニット鍵[BKu]に対して、ローカルストレージ320から読み取った使用許諾情報(UR:Usage Rule#n+1)321と、情報記録媒体100から読み取ったシリアル番号[SN]との排他論理和(XOR)演算を実行することで、ユニット鍵[Ku_n+1]を取得することができる。
【0164】
次に、ステップS255において、ローカルストレージ320から読み取った暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]322に対して、ユニット鍵[Ku_n+1]を適用した復号処理(例えばAES_D)を実行し、ステップS256において、例えばMPEGデコード、圧縮解除、スクランブル解除等、必要なデコード処理を実行して、コンテンツ350を取得する。
【0165】
この処理によって、ローカルストレージ320に格納された後発データである暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]322を復号して利用、すなわち再生することができる。
【0166】
このように、ディスクバインド後発データは、サーバから取得した後発データをローカルストレージに格納する際に、図12を参照して説明したように、サーバから受信したCPSユニット鍵ファイルの処理によって、CPSユニット鍵とシリアル番号[SN]とをバインドし、暗号化した暗号化バインドユニット鍵としてローカルストレージに格納し、後発データの利用に際しては、図13を参照して説明したように、ローカルストレージに格納された暗号化バインドユニット鍵からユニット鍵を取得するために、シリアル番号[SN]を適用した処理を行なうことが必要となる。
【0167】
後発データ再生時に適用するシリアル番号[SN]は、後発データ記録時に適用したシリアル番号[SN]と同一であることがバインド解除およびユニット鍵取得のために必須な条件となる。従って、ディスクバインド後発データは、先に説明したように、後発データを取得(ダウンロード)した際に適用した情報記録媒体(ディスク)と同一のシリアル番号を持つディスクが情報処理装置にセットされている場合にのみ後発データの利用が許容される後発データとなる。
【0168】
[(3.3)パッケージバインド後発データの取得、記録、利用処理の詳細]
次に、パッケージバインド後発データの取得、記録、利用処理の詳細について説明する。
パッケージバインド後発データは、前述したように、後発データを取得(ダウンロード)した際に適用した情報記録媒体(ディスク)と同一のパッケージIDの情報記録媒体(ディスク)が情報処理装置にセットされている場合にのみ後発データの利用を許容するタイプの後発データである。
【0169】
(3.3.a)パッケージバインド後発データの取得処理
パッケージバインド後発データの取得処理について、図14を参照して説明する。図14において、左に後発データを取得する情報処理装置を示し、右側に後発データを提供するサーバを示している。
【0170】
情報処理装置は、情報処理装置のドライブに前述したCPUユニットに区分されたコンテンツを格納した情報記録媒体を装着して後発データの取得処理を実行する。情報記録媒体は、ボリュームID=#mであり、
暗号化コンテンツ:Enc(Ku_1,CPS_Unit#1)〜Enc(Ku_n,CPS_Unit#n)、
CPSユニット鍵ファイル:Enc(Ke,f(Ku_1,UR#1)〜(Ke,f(Ku_n,UR#n)
を格納し、さらに、図1を参照して説明した各種情報が記録されている。図6にはその一部としてボリュームID、ダウンロード情報、MKB、およびパッケージID[PID]等の各データを示している。
【0171】
後発データを提供するサーバは、先に図6を参照して説明したと同様、データベースに、ボリュームIDとダウンロード情報に対応づけて、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]と、
*後発データとしての暗号化サブコンテンツの復号に適用するユニット鍵を暗号化したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]と、
*後発データとしての暗号化サブコンテンツに対応する使用許諾情報(UR:Usage Rule#n+1)を格納している。
【0172】
ステップS301〜S307の各処理について説明する。ステップS301において、情報処理装置は、情報記録媒体から取得したボリュームID(Volume ID#m)と、ダウンロード情報(Download_info)とをサーバに送信する。
【0173】
ボリュームID(Volume ID#m)と、ダウンロード情報(Download_info)とを受信したサーバは、ステップS302において、データベース検索を実行し、ボリュームID(Volume ID#m)と、ダウンロード情報(Download_info)に対応して格納されたデータ、すなわち、
*後発データとしての暗号化サブコンテンツの復号に適用するユニット鍵を暗号化したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]、
*後発データとしての暗号化サブコンテンツに対応する使用許諾情報(UR:Usage Rule#n+1)、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]、
これらの各データを取得し、ステップS303、ステップS304においてこれらの取得データを情報処理装置に送信する。
【0174】
情報処理装置は、サーバからの送信データを受領すると、ステップS305において、CPSユニット鍵ファイルのデータ、すなわち暗号化サブコンテンツの復号に適用するユニット鍵を暗号化したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]をボリューム固有鍵[Ke]を適用して復号し、ステップS306において、情報記録媒体から読み取ったパッケージID[PID]とのバインド処理および暗号化を実行して暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,PID))]を生成する。これらのデータ処理の詳細については、図15を参照して後段で説明する。
【0175】
ステップS307では、サーバから取得したデータ、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]、
*後発データとしての暗号化サブコンテンツに対応する使用許諾情報(UR:Usage Rule#n+1)、
および、サーバから取得したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]に基づいて情報処理装置において生成した下記データ、すなわち、
*暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,PID))]、
これらのデータをローカルストレージに格納する。
【0176】
(3.3.b)パッケージバインド後発データのローカルストレージに対する記録処理、
次に、図15を参照して、パッケージバインド後発データのローカルストレージに対する記録処理、特に、暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,PID))]の生成処理シーケンスについて説明する。
【0177】
図15には、後発データ等をサーバから取得して取得データおよび取得データに対する処理データをローカルストレージ320に格納する情報処理装置300と、後発データ等を提供するサーバ400と、情報処理装置300に装着された情報記録媒体100とを示している。
【0178】
情報記録媒体100には、先に図1を参照して説明した各種データが格納されているが、ここでは、パッケージバインド後発データのローカルストレージに対する記録処理において適用するデータとして、暗号鍵ブロックとしてのMKB112と、ボリュームID113、およびパッケージID114のみを示している。
【0179】
サーバは、先に図14を参照して説明した通り、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]403と、
*後発データとしての暗号化サブコンテンツ403の復号に適用するユニット鍵を暗号化したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]401と、
*後発データとしての暗号化サブコンテンツ403に対応する使用許諾情報(UR:Usage Rule#n+1)402、
これらの各データを情報処理装置300に提供する。
【0180】
情報処理装置300の処理について説明する。まず、情報処理装置300は、メモリに格納しているデバイス鍵[Kd]301を読み出す。デバイス鍵301は、コンテンツ利用に関するライセンスを受けた情報処理装置に格納された秘密キーである。
【0181】
次に、情報処理装置300は、ステップS311において、デバイス鍵301を適用して情報記録媒体100に格納されたメディア鍵Kmを格納した暗号鍵ブロックであるMKB112の復号処理を実行して、メディア鍵Kmを取得する。
【0182】
次に、ステップS312において、ステップS311におけるMKB処理で取得したメディア鍵Kmと、情報記録媒体100から読み取ったボリュームID113とに基づく暗号処理によって、ボリューム固有鍵Ke(embedded Key)を生成する。この鍵生成処理は、例えば先に図8を参照して説明したAES暗号アルゴリズムに従った処理として実行される。
【0183】
次に、ステップS313において、ボリューム固有鍵Keを適用して、サーバから取得したCPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]311(=401)の復号処理を実行する。この復号処理によって、
CPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]
から、
データ[Kt]=f(Ku_n+1,UR#n+1)
が取得される。
【0184】
次に、ステップS314において、情報記録媒体100から読み取ったパッケージID[PID]と、サーバから取得した後発データに対応する使用許諾情報(UR:Usage Rule#n+1)322(=402)とを適用した演算処理を実行してバインドユニット鍵(BKu)データを生成する。バインドユニット鍵(BKu)は、以下のデータである。
BKu=f(Ku_n+1,UR#n+1,PID)
【0185】
バインドユニット鍵:BKu=f(Ku_n+1,UR#n+1,PID)は、CPSユニット#n+1に対応するユニット鍵[Ku_n+1]と、使用許諾情報[UR#n+1]と、パッケージID[PID]との排他論理和演算などの演算結果データである。
【0186】
さらに、ステップS315において、ステップS312で算出したボリューム固有鍵Keを適用して、バインドユニット鍵:BKu=f(Ku_n+1,UR#n+1,PID)の暗号化処理を実行し、
暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,PID))]、
を生成して、ローカルストレージ320に格納する。
【0187】
なお、ローカルストレージ320には、
上述の処理によって生成した
*暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,PID))]325
の他、サーバ400から取得した
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]322(=403)と、
*後発データとしての暗号化サブコンテンツ322に対応する使用許諾情報(UR:Usage Rule#n+1)321(=402)、
これらの各データが格納される。
【0188】
(3.3.c)ローカルストレージに記録されたパッケージバインド後発データの復号、利用処理、
次に、ローカルストレージに格納されたパッケージバインド後発データの利用処理について、図16を参照して説明する。ローカルストレージ320には、先に図14、図15を参照して説明した処理によって格納されたデータとして、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]322と、
*後発データとしての暗号化サブコンテンツ322に対応する使用許諾情報(UR:Usage Rule#n+1)321と、
*暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,PID))]325と、
が格納されているものとする。
【0189】
まず、情報処理装置300は、メモリに格納しているデバイス鍵[Kd]301を読み出す。デバイス鍵301は、コンテンツ利用に関するライセンスを受けた情報処理装置に格納された秘密キーである。
【0190】
次に、情報処理装置300は、ステップS351において、デバイス鍵301を適用して情報記録媒体100に格納されたメディア鍵Kmを格納した暗号鍵ブロックであるMKB112の復号処理を実行して、メディア鍵Kmを取得する。
【0191】
次に、ステップS352において、ステップS351におけるMKB処理で取得したメディア鍵Kmと、情報記録媒体100から読み取ったボリュームID113とに基づく暗号処理によって、ボリューム固有鍵Keを生成する。この鍵生成処理は、例えば、先に図8を参照して説明したAES暗号アルゴリズムに従った処理として実行される。
【0192】
次に、ステップS353において、ボリューム固有鍵Keによって、ローカルストレージ320から読み取った暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,PID))]325の復号処理を実行する。
【0193】
ステップS353における暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,PID))]325の復号処理によって、
バインドユニット鍵[BKu]=f(Ku_n+1,UR#n+1,PID)
を取得し、ステップS354において、
バインドユニット鍵[BKu]=f(Ku_n+1,UR#n+1,PID)
に対して、ローカルストレージ320から読み取った使用許諾情報(UR:Usage Rule#n+1)321と、情報記録媒体100から読み取ったパッケージID[PID]114とを適用した演算処理を実行して、ユニット鍵[Ku_n+1]を得る。
例えば、バインドユニット鍵[BKu]=f(Ku_n+1,UR#n+1,PID)が、ユニット鍵[Ku_n+1]と、使用許諾情報[UR#n+1]と、パッケージID[PID]との排他論理和(XOR)データである場合、再度、このバインドユニット鍵[BKu]に対して、ローカルストレージ320から読み取った使用許諾情報(UR:Usage Rule#n+1)321と、情報記録媒体100から読み取ったパッケージID[PID]との排他論理和(XOR)演算を実行することで、ユニット鍵[Ku_n+1]を取得することができる。
【0194】
次に、ステップS355において、ローカルストレージ320から読み取った暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]322に対して、ユニット鍵[Ku_n+1]を適用した復号処理(例えばAES_D)を実行し、ステップS356において、例えばMPEGデコード、圧縮解除、スクランブル解除等、必要なデコード処理を実行して、コンテンツ350を取得する。
【0195】
この処理によって、ローカルストレージ320に格納された後発データである暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]322を復号して利用、すなわち再生することができる。
【0196】
このように、パッケージバインド後発データは、サーバから取得した後発データをローカルストレージに格納する際に、図15を参照して説明したように、サーバから受信したCPSユニット鍵ファイルの処理によって、CPSユニット鍵とパッケージID[PID]とをバインドし、暗号化した暗号化バインドユニット鍵としてローカルストレージに格納し、後発データの利用に際しては、図16を参照して説明したように、ローカルストレージに格納された暗号化バインドユニット鍵からユニット鍵を取得するために、パッケージID[PID]を適用した処理を行なうことが必要となる。
【0197】
後発データ再生時に適用するパッケージID[PID]は、後発データ記録時に適用したパッケージID[PID]と同一であることがバインド解除およびユニット鍵取得のために必須な条件となる。従って、パッケージバインド後発データは、先に説明したように、後発データを取得(ダウンロード)した際に適用した情報記録媒体(ディスク)と同一のパッケージIDを持つディスクが情報処理装置にセットされている場合にのみ後発データの利用が許容される後発データとなる。
【0198】
[(3.4)後発データ対応のCPSユニット鍵が情報記録媒体に格納済みである場合の後発データの取得、記録、利用処理の詳細]
次に、後発データ対応のCPSユニット鍵が情報記録媒体に格納済みである場合の後発データの取得、記録、利用処理の詳細について説明する。後発データを取得する場合において、その後発データに対応するCPSユニット鍵や使用許諾情報(UR)が予め情報記録媒体に格納されている場合がある。この場合には、CPSユニット鍵ファイルや使用許諾情報(UR)をサーバから取得する必要がない。この場合の後発データの取得、記録、利用処理の詳細について説明する。
【0199】
(3.4.a)後発データの取得処理
後発データ対応のCPSユニット鍵が情報記録媒体に格納済みである場合の後発データの取得処理について、図17を参照して説明する。図17において、左に後発データを取得する情報処理装置を示し、右側に後発データを提供するサーバを示している。
【0200】
情報処理装置は、情報処理装置のドライブに前述したCPUユニットに区分されたコンテンツを格納した情報記録媒体を装着して後発データの取得処理を実行する。情報記録媒体は、ボリュームID=#mであり、
暗号化コンテンツ:Enc(Ku_1,CPS_Unit#1)〜Enc(Ku_n,CPS_Unit#n)、
CPSユニット鍵ファイル:Enc(Ke,f(Ku_1,UR#1)〜(Ke,f(Ku_n,UR#n)
を格納し、さらに、図1を参照して説明した各種情報が記録されている。図6にはその一部としてボリュームID、ダウンロード情報、MKB、およびパッケージID[PID]等の各データを示している。
【0201】
後発データを提供するサーバは、データベースに、ボリュームIDとダウンロード情報に対応づけて、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n,CPS_Unit#n')]を格納している。暗号化サブコンテンツ[Enc(Ku_n,CPS_Unit#n')]は、情報記録媒体100に格納されたCPSユニット鍵[Ku_n]によって暗号化されたデータである。
【0202】
ステップS401〜S404の各処理について説明する。ステップS401において、情報処理装置は、情報記録媒体から取得したボリュームID(Volume ID#m)と、ダウンロード情報(Download_info)とをサーバに送信する。
【0203】
ボリュームID(Volume ID#m)と、ダウンロード情報(Download_info)とを受信したサーバは、ステップS402において、データベース検索を実行し、ボリュームID(Volume ID#m)と、ダウンロード情報(Download_info)に対応して格納されたデータ、すなわち、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n,CPS_Unit#n')]を取得し、ステップS403において情報処理装置に送信する。
【0204】
情報処理装置は、サーバからの送信データを受領すると、ステップS404において、サーバから取得したデータ、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n,CPS_Unit#n')]、
をローカルストレージに格納する。
【0205】
(3.4.b)後発データの復号、利用処理、
次に、後発データ対応のCPSユニット鍵が情報記録媒体に格納済みである場合のローカルストレージに格納された後発データの利用処理について、図18を参照して説明する。ローカルストレージ320には、先に図17を参照して説明した処理によって格納されたデータとして、
*後発データとしての暗号化サブコンテンツ[Enc(Ku_n,CPS_Unit#n')]322
が格納されているものとする。
【0206】
まず、情報処理装置300は、メモリに格納しているデバイス鍵[Kd]301を読み出す。デバイス鍵301は、コンテンツ利用に関するライセンスを受けた情報処理装置に格納された秘密キーである。
【0207】
次に、情報処理装置300は、ステップS451において、デバイス鍵301を適用して情報記録媒体100に格納されたメディア鍵Kmを格納した暗号鍵ブロックであるMKB112の復号処理を実行して、メディア鍵Kmを取得する。
【0208】
次に、ステップS452において、ステップS451におけるMKB処理で取得したメディア鍵Kmと、情報記録媒体100から読み取ったボリュームID113とに基づく暗号処理によって、ボリューム固有鍵Keを生成する。この鍵生成処理は、例えば、先に図8を参照して説明したAES暗号アルゴリズムに従った処理として実行される。
【0209】
次に、ステップS453において、ボリューム固有鍵Keによって、情報記録媒体100から読み取ったユニット鍵ファイル[Enc(Ke,f(Ku_n,UR#n))]116の復号処理を実行して、
データ[t]=f(Ku_n,UR#n)
を取得する。
【0210】
次に、ステップS454において、
データ[t]=f(Ku_n,UR#n)
に対して、情報記録媒体100から読み取った使用許諾情報(UR:Usage Rule#n)115を適用した演算処理を実行して、ユニット鍵[Ku_n]を得る。
【0211】
次に、ステップS455において、ローカルストレージ320から読み取った暗号化サブコンテンツ[Enc(Ku_n,CPS_Unit#n')]322に対して、ユニット鍵[Ku_n]を適用した復号処理(例えばAES_D)を実行し、ステップS456において、例えばMPEGデコード、圧縮解除、スクランブル解除等、必要なデコード処理を実行して、コンテンツ350を取得する。
【0212】
この処理によって、ローカルストレージ320に格納された後発データである暗号化サブコンテンツ[Enc(Ku_n,CPS_Unit#n')]322を復号して利用、すなわち再生することができる。
【0213】
このように、後発データ対応のCPSユニット鍵が情報記録媒体に格納済みである場合のローカルストレージに格納された後発データの利用に際しては、先に図9を参照して説明した情報記録媒体100に格納されたCPSユニット対応の暗号化コンテンツの復号、再生と同様の処理シーケンスによって、復号、再生を行なうことができる。
【0214】
[(3.5)後発データの取得、記録、利用処理シーケンス]
上述の説明では、各バインドタイプに区別した処理シーケンスを説明した。しかし、情報処理装置は、後発データとして、様々なバインドタイプの後発データを逐次取得し、ハードディスク等のローカルストレージに記録し、また利用することになる。この場合、情報処理装置は、バインドタイプを識別して、識別したバインドタイプに従った処理を行なうことになる。
【0215】
以下、図19、図20に示すフローチャートを参照して、情報処理装置において実行されるバインドタイプの識別処理、識別結果に従った後発データ取得および記録処理と、ローカルストレージに格納さけた後発データの利用処理シーケンスについて説明する。
【0216】
まず、図19に示すフローチャートを参照して、後発データ取得および記録処理シーケンスについて説明する。なお、この処理は、CPSユニットによって区分管理されたコンテンツを格納した情報記録媒体、すなわち、図1を参照して説明した暗号化コンテンツ111、MKB112等の各種データを記録した情報記録媒体をドライブに装着した情報処理装置において実行される。
【0217】
まず、情報処理装置は、後発データを提供するサーバとの相互認証処理を実行する。認証態様は、例えば、公開鍵暗号方式による認証、パスワードを適用した認証などが適用される。認証が不成立の場合は、以下の処理は中止される。認証が成立した場合は、ステップS502に進み、情報処理装置は、装着した情報記録媒体からボリュームIDと、ダウンロード情報を読み取り、ステップS503においてこれらの情報をサーバに送信(アップロード)する。サーバおいては、これらボリュームIDと、ダウンロード情報とに対応して設定された後発データを検索し、対応する後発データが存在しない場合は、データなしのメッセージを情報処理装置に送信し、情報処理装置は、このメッセージを受信した場合(ステップS504:No)は、処理を中止する。
【0218】
サーバ内に対応する後発データがある場合は、ステップS505において、情報処理装置が対応する後発データを受信(ダウンロード)する。なお、受信データには、基本的に後発データとしての暗号化サブコンテンツ、CPSユニット鍵ファイル、使用許諾情報(UR)が含まれる。ただし、情報記録媒体に格納されているCPSユニット鍵が適用可能な後発データを受信する場合は、暗号化サブコンテンツのみが送付されるといった場合もある。
【0219】
サーバからデータを受信すると、情報処理装置は、ステップS506において、ボリューム固有鍵[Ke]を算出する。ボリューム固有鍵は、先に図9他を参照して説明したように、情報処理装置内のメモリに格納されたデバイス鍵を適用してMKBから取得したメディア鍵[Km]と、情報記録媒体から取得したボリュームIDとに基づく鍵生成処理によって生成される。
【0220】
次に、ステップS507において、サーバから受信したCPSユニット鍵ファイルの構成データである暗号化ユニット鍵、すなわち、例えば、
CPSユニット鍵ファイル[Enc(Ke,f(Ku_n+1,UR#n+1))]
をボリューム固有鍵[Ke]を適用して復号する。
【0221】
さらに、ステップS508において、サーバから取得した使用許諾情報(UR)を参照し、後発データのバインドタイプを確認する。後発データのバインドタイプがディスクバインドである場合(ステップS509:Yes)は、ステップS514の処理を実行する。後発データのバインドタイプがデバイスバインドである場合(ステップS510:Yes)は、ステップS513の処理を実行する。後発データのバインドタイプがパッケージバインドである場合(ステップS511:Yes)は、ステップS512の処理を実行する。
【0222】
ステップS512は、パッケージバインドの後発データに対応する暗号化バインドユニット鍵の生成処理ステップである。これは、先に、図14、図15を参照して説明したように、例えば、
暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,PID))]、
のように、パッケージID[PID]を含む暗号化バインドユニット鍵を生成する処理である。
【0223】
ステップS513は、デバイスバインドの後発データに対応する暗号化バインドユニット鍵の生成処理ステップである。これは、先に、図6、図7を参照して説明したように、例えば、
暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,Kd))]、
のように、デバイス鍵[Kd]を含む暗号化バインドユニット鍵を生成する処理である。
【0224】
ステップS514は、ディスクバインドの後発データに対応する暗号化バインドユニット鍵の生成処理ステップである。これは、先に、図11、図12を参照して説明したように、例えば、
暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,SN))]、
のように、ディスクシリアル番号[SN]を含む暗号化バインドユニット鍵を生成する処理である。
【0225】
いずれのバインドタイプにも該当しない場合は、バインドユニット鍵の生成は実行しない。これは、例えば、先に図17を参照して説明した後発データ対応のCPSユニット鍵が情報記録媒体に格納済みである場合の処理などに相当する。
【0226】
バインドユニット鍵の生成が不要である場合、または、ステップS512〜S514の処理のいずれかを実行した後は、ステップS515に進み、生成した暗号化バインドユニット鍵と、サーバから取得した後発データとしての暗号化サブコンテンツと、使用許諾情報をローカルストレージに記録して処理を終了する。
【0227】
次に、ローカルストレージに記録された後発データの利用処理について、図20に示すフローチャートを参照して説明する。なお、この処理も、CPSユニットによって区分管理されたコンテンツを格納した情報記録媒体、すなわち、図1を参照して説明した暗号化コンテンツ111、MKB112等の各種データを記録した情報記録媒体をドライブに装着した情報処理装置において実行される。
【0228】
まず、情報処理装置は、ステップS601において、ボリューム固有鍵[Ke]を算出する。ボリューム固有鍵は、先に図10他を参照して説明したように、情報処理装置内のメモリに格納されたデバイス鍵を適用してMKBから取得したメディア鍵[Km]と、情報記録媒体から取得したボリュームIDとに基づく鍵生成処理によって生成される。
【0229】
次にステップS602において、生成したボリューム固有鍵[Ke]を適用して、ローカルストレージに記録された暗号化バインドユニット鍵の復号を実行する。暗号化バインドユニット鍵は、ディスクバインド、デバイスバインド、パッケージバインドのいずれかであり、
暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,SN))]、
暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,Kd))]、
暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,PID))]、
これらのいずれかの暗号化バインドユニット鍵である。
【0230】
次に、ステップS603において、サーバから取得した使用許諾情報(UR)を参照し、利用予定の後発データのバインドタイプを確認する。なお、先に、図5(Bc)を参照して説明したように、ローカルストレージの記録ファイルとして設定される後発データ検索情報中にローカルストレージ内の各後発データのバインドタイプが記録されている構成では、後発データ検索情報を参照して、利用予定の後発データのバインドタイプを確認してもよい。
【0231】
後発データのバインドタイプがディスクバインドである場合(ステップS604:Yes)は、ステップS608の処理を実行する。後発データのバインドタイプがデバイスバインドである場合(ステップS605:Yes)は、ステップS609の処理を実行する。後発データのバインドタイプがパッケージバインドである場合(ステップS606:Yes)は、ステップS610の処理を実行する。
【0232】
ステップS608は、ディスクバインドの後発データに対応する暗号化バインドユニット鍵の復号によるユニット鍵の生成処理ステップである。これは、先に、図13を参照して説明したように、例えば、
暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,SN))]、
をボリューム固有鍵[Ke]を適用して復号した後、サーバから取得した使用許諾情報[UR#n+1]と、情報記録媒体から読み出したシリアル番号[SN]とに基づく演算によるバインド解除処理によって、ユニット鍵[Ku_n+1]を算出し、サーバから取得しローカルストレージに記録された後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]を復号する処理である。
【0233】
ステップS609は、デバイスバインドの後発データに対応する暗号化バインドユニット鍵の復号によるユニット鍵の生成処理ステップである。これは、先に、図9を参照して説明したように、例えば、
暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,Kd))]、
をボリューム固有鍵[Ke]を適用して復号した後、サーバから取得した使用許諾情報[UR#n+1]と、情報処理装置のメモリから取得したデバイス鍵[Kd]とに基づく演算によるバインド解除処理によって、ユニット鍵[Ku_n+1]を算出し、サーバから取得しローカルストレージに記録された後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]を復号する処理である。
【0234】
ステップS610は、パッケージバインドの後発データに対応する暗号化バインドユニット鍵の復号によるユニット鍵の生成処理ステップである。これは、先に、図13を参照して説明したように、例えば、
暗号化バインドユニット鍵[Enc(Ke,f(Ku_n+1,UR#n+1,PID))]、
をボリューム固有鍵[Ke]を適用して復号した後、サーバから取得した使用許諾情報[UR#n+1]と、情報記録媒体から読み出したパッケージID[PID]とに基づく演算によるバインド解除処理によって、ユニット鍵[Ku_n+1]を算出し、サーバから取得しローカルストレージに記録された後発データとしての暗号化サブコンテンツ[Enc(Ku_n+1,CPS_Unit#n+1)]を復号する処理である。
【0235】
これらのいずれかの処理の後、ステップS611においてコンテンツを再生する。なお、いずれのバインドタイプでもない場合は、情報記録媒体に格納されたCPSユニット鍵を適用した復号処理を行なうことで、再生可能となる。
【0236】
なお、上述した実施例では、後発データはサーバから取得する構成として説明したが、サーバ以外の例えばDVDなどの記憶媒体を介して取得する構成においても同様の処理が可能である。また、情報処理装置において生成した後発データについても同様の処理によってローカルストレージに記録し、利用する構成とすることが可能である。
【0237】
[4.情報処理装置の構成例]
次に、図21を参照して、上述のコンテンツの記録、再生処理を行う情報処理装置の構成例について説明する。
【0238】
図21に示す情報処理装置900は、情報記録媒体910の駆動を行ない、データ記録再生信号の入手力を行なうドライブ909、各種プログラムに従ったデータ処理を実行する制御手段としてのCPU907、プログラム、パラメータ等の記憶領域としてのROM906、メモリ908、デジタル信号を入出力する入出力I/F902、アナログ信号を入出力し、A/D,D/Aコンバータ904を持つ入出力I/F903、MPEGデータのエンコード、デコード処理を実行するMPEGコーデック921、TS(Transport Stream)・PS(Program Stream)処理を実行するTS・PS処理手段922、各種の暗号処理を実行する暗号処理手段905、ハードディスクなどローカルストレージとしての記憶手段930を有し、バス901に各ブロックが接続されている。
【0239】
情報処理装置900において、情報記録媒体910からMPEG−TSデータからなるAVストリームデータの再生を行う場合、ドライブ909において情報記録媒体910から読み出されたデータは必用に応じて暗号処理手段905で暗号を解きTS・PS処理手段922によってVideo、Audio、字幕などの各データに分けられる。
【0240】
さらに、MPEGコーデック921において復号されたデジタルデータは入出力I/F903内のD/Aコンバータ904によってアナログ信号に変換され出力される。またデジタル出力を行う場合、暗号処理手段905で復号されたMPEG−TSデータは入出力IF902を通してデジタルデータとして出力される。この場合の出力は例えばIEEE1394やイーサネットケーブル、無線LANなどのデジタルインターフェースに対して行われる。なお、ネットワーク接続機能に対応する場合入出力I/F902はネットワーク接続の機能を備える。
【0241】
また、情報処理装置900内で出力先機器が受信可能な形式にデータ変換をして出力を行う場合、一旦TS処理手段922で分離したVideo、Audio、字幕などに対してMPEGコーデック921においてレート変換、コーデック変換処理を加え、TS・PS処理手段922で再度MPEG−TSやMPEG−PSなどに多重化を行ったデータをデジタル用入出力I/F902から出力する。または、CPU907の制御の下にMPEG以外のコーデック、多重化ファイルに変換をしてデジタル用入出力I/F902から出力することも可能である。
【0242】
CPSユニット管理情報としての使用許諾情報等の管理データは、情報記録媒体910から読み出された後メモリ908に保管される。再生を行う際に必要なCPSユニットごとの鍵情報は、メモリ上に保管されたデータから取得することができる。
【0243】
ハードディスクなどの記憶手段930には、情報処理装置900が、生成したデータや取得したデータなどの後発データのデータが記録され、マージ処理によって、仮想ファイルシステムが構築されて、記録媒体からの読み出しコンテンツと併せて再生処理が実行されることになる。
【0244】
次に、情報処理装置900が、生成したデータや取得したデータなどの後発データのデータを記録する際の動作について説明する。記録を行うデータとしてデジタル信号入力とアナログ信号入力の2つのケースが想定される。デジタル信号の場合、デジタル信号用入出力I/F902から入力され、必要に応じて暗号処理手段905によって適切な暗号化処理を施したデータを記録媒体910あるいは記憶手段930に保存する。
【0245】
ハードディスクなどの記憶手段930には、情報処理装置900が、生成したデータや取得した後発データなどが記録される。記憶手段930には、さらに暗号化バインドユニット鍵、使用許諾情報などが記録される。
【0246】
入力されたデジタル信号のデータ形式を変換して保存する場合、MPEGコーデック921およびCPU907、TS・PS処理手段922によって保存用のデータ形式に変換を行い、その後、暗号処理手段905で適切な暗号化処理を施して記録媒体910に保存する。アナログ信号の場合、入出力I/F903へ入力されたアナログ信号はA/Dコンバータ904によってデジタル信号に変換され、MPEGコーデック921によって記録時に使用されるコーデックへと変換される。
【0247】
その後、TS・PS処理手段により、記録データの形式であるAV多重化データへ変換され、必要に応じて暗号処理手段905によって適切な暗号化処理を施したデータが記録媒体910に保存される。
【0248】
情報処理装置900において必用な情報を装置外部のネットワーク経由で取得する場合、取得したデータは情報処理装置900内部のメモリ908に一時的に保存される。保存されるデータとしてはコンテンツ再生に必用な鍵情報、コンテンツ再生時に合わせて再生するための字幕、Audio、静止画などのデータ、コンテンツ管理情報などが存在する。
【0249】
後発的に生成または取得したデータは、一旦メモリ908に保持され、ユーザの選択、あるいは予め定められた制御シーケンスに従ってハードディスク等の記憶手段930に格納される。
【0250】
なお、再生処理、記録処理を実行するプログラムはROM906内に保管されており、プログラムの実行処理中は必要に応じて、パラメータ、データの保管、ワーク領域としてメモリ908を使用する。なお、図21では、データ記録、再生の可能な装置構成を示して説明したが、再生機能のみの装置、記録機能のみを有する装置も構成可能であり、これらの装置においても本発明の適用が可能である。
【0251】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【0252】
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【0253】
例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【0254】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【0255】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【0256】
以上、説明したように、本発明の一実施例の構成によれば、情報記録媒体に格納された情報を適用して後発的にユーザが生成した情報やダウンロードした情報などの後発データを、ハードディスクやリムーバブルメディアなどのローカルストレージに記録する際に、後発データの暗号化鍵としてのユニット鍵を、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報とのバインドデータとし、暗号化して記録する構成とした。これによって、ローカルストレージに記録された後発データを利用する際、バインド解除処理が必須となる。このバインド解除処理は、例えばデバイスバインドタイプの後発データであれば、記録を実行した情報処理装置と同一であることが必要であり、また、例えばディスクバインドタイプの後発データであれば、後発データ記録の際に適用したディスクと同一ディスクが情報処理装置に装着されていることが必要であり、また、例えばパッケージバインドタイプの後発データであれば、後発データ記録の際に適用したディスクと同一のパッケージIDを持つディスクが情報処理装置に装着されていることが必要となる。従って、後発データの利用制限を様々な態様で実現することが可能となる。
【図面の簡単な説明】
【0257】
【図1】情報記録媒体の格納データおよび情報処理装置の構成および処理について説明する図である。
【図2】情報記録媒体の格納コンテンツに対して設定するコンテンツ管理ユニットの設定例について説明する図である。
【図3】情報記録媒体の格納コンテンツに対して設定するコンテンツ管理ユニットとユニット鍵との対応について説明する図である。
【図4】情報記録媒体に格納される暗号化コンテンツ(CPSユニット)およびCPSユニット鍵の暗号化構成および対応について説明する図である。
【図5】後発データのバインドタイプおよびバインドタイプの記録データ例について説明する図である。
【図6】デバイスバインドタイプの後発データの取得処理シーケンスについて説明する図である。
【図7】デバイスバインドタイプの後発データのローカルストレージに対する記録に際して、情報処理装置の実行する処理シーケンスについて説明する図である。
【図8】AES暗号アルゴリズムについて説明する図である。
【図9】情報記録媒体に格納されたコンテンツの再生処理シーケンスについて説明する図である。
【図10】デバイスバインドタイプの後発データの再生処理シーケンスについて説明する図である。
【図11】ディスクバインドタイプの後発データの取得処理シーケンスについて説明する図である。
【図12】ディスクバインドタイプの後発データのローカルストレージに対する記録に際して、情報処理装置の実行する処理シーケンスについて説明する図である。
【図13】ディスクバインドタイプの後発データの再生処理シーケンスについて説明する図である。
【図14】パッケージバインドタイプの後発データの取得処理シーケンスについて説明する図である。
【図15】パッケージバインドタイプの後発データのローカルストレージに対する記録に際して、情報処理装置の実行する処理シーケンスについて説明する図である。
【図16】パッケージバインドタイプの後発データの再生処理シーケンスについて説明する図である。
【図17】情報記録媒体に格納されたCPSユニット鍵を適用可能な後発データの取得処理シーケンスについて説明する図である。
【図18】情報記録媒体に格納されたCPSユニット鍵を適用可能な後発データの再生処理シーケンスについて説明する図である。
【図19】後発データの取得および記録処理シーケンスについて説明するフローチャートを示す図である。
【図20】後発データの再生処理シーケンスについて説明するフローチャートを示す図である。
【図21】情報記録媒体を装着して再生処理または記録処理を実行する情報処理装置の構成例について説明する図である。
【符号の説明】
【0258】
100 情報記録媒体
111 暗号化コンテンツ
112 MKB
113 ボリュームID
114 パッケージID
115 使用許諾情報
116 CPSユニット鍵ファイル
117 シリアル番号
118 ダウンロード情報
120 ドライブ
130 サーバ
131 後発データ
132 使用許諾情報
133 CPSユニット鍵ファイル
150 情報処理装置
151 再生処理実行LSI
152 復号処理部
153 デコード処理部
154 メモリ
155 ローカルストレージ
210 インデックス
220 ムービーオブジェクト
230 プレイリスト
240 クリップ
261,262,263 AVストリーム
271,272 コンテンツ管理ユニット(CPSユニット)
281 データ部
300 情報処理装置
301 デバイス鍵
311 CPSユニット鍵ファイル
320 ローカルストレージ
321 使用許諾情報
322 暗号化サブコンテンツ
323 暗号化バインドユニット鍵
324 暗号化バインドユニット鍵
325 暗号化バインドユニット鍵
350 コンテンツ
400 サーバ
401 CPSユニット鍵ファイル
402 使用許諾情報
403 暗号化サプコンテンツ
900 情報処理装置
901 バス
902 入出力I/F
903 入出力I/F
904 A/D,D/Aコンバータ
905 暗号処理手段
906 ROM
907 CPU
908 メモリ
909 ドライブ
910 情報記録媒体
921 MPEGコーデック
922 TS・PS処理手段
930 記憶手段

【特許請求の範囲】
【請求項1】
情報処理装置であり、
情報記録媒体からの読み取り情報を適用して後発的に生成または取得した後発データを記憶手段に格納する処理を実行するデータ処理部を有し、
前記データ処理部は、
前記後発データの属するコンテンツ管理ユニットに対応する暗号鍵であるユニット鍵による暗号化データとしての暗号化後発データを前記記憶手段に格納する処理を実行するとともに、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成して前記記憶手段に格納する処理を実行する構成であることを特徴とする情報処理装置。
【請求項2】
前記データ処理部は、
前記後発データの属するコンテンツ管理ユニットに対応する使用許諾情報を前記バインドユニット鍵に含めた暗号化バインドユニット鍵を生成して前記記憶手段に格納する処理を実行する構成であることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記データ処理部は、
情報処理装置に格納された情報処理装置固有のデバイス鍵と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成する構成であることを特徴とする請求項1に記載の情報処理装置。
【請求項4】
前記データ処理部は、
情報記録媒体に格納された情報記録媒体固有の識別情報と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成する構成であることを特徴とする請求項1に記載の情報処理装置。
【請求項5】
前記データ処理部は、
情報記録媒体に格納された所定数の情報記録媒体集合に固有の識別情報と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成する構成であることを特徴とする請求項1に記載の情報処理装置。
【請求項6】
前記データ処理部は、
情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報と、前記ユニット鍵に基づく演算処理によってバインドユニット鍵を生成する構成であることを特徴とする請求項1に記載の情報処理装置。
【請求項7】
前記演算処理は排他論理和演算であることを特徴とする請求項6に記載の情報処理装置。
【請求項8】
前記情報処理装置は、
後発データ提供サーバから取得した後発データを前記記憶手段に格納するとともに、該後発データ提供サーバから取得した取得後発データに対応する暗号化ユニット鍵を復号し、前記暗号化バインドユニット鍵を生成する構成であることを特徴とする請求項1に記載の情報処理装置。
【請求項9】
情報処理装置であり、
暗号化コンテンツの復号処理を実行するデータ処理部を有し、
前記データ処理部は、
暗号化コンテンツの暗号化に適用したユニット鍵を含む暗号化データとしての暗号化バインドユニット鍵を記憶手段から取得し、取得した暗号化バインドユニット鍵の復号処理、およびバインド解除処理によりユニット鍵を算出する処理を実行する構成であり、
前記バインドユニット鍵に対するバインド解除処理は、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報を適用したデータ処理として行なう構成であることを特徴とする情報処理装置。
【請求項10】
前記バインドユニット鍵は、前記後発データの属するコンテンツ管理ユニットに対応する使用許諾情報を構成データとして含み、
前記データ処理部は、
前記バインド解除処理を、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報と、前記使用許諾情報を適用したデータ処理として行なう構成であることを特徴とする請求項9に記載の情報処理装置。
【請求項11】
前記バインドユニット鍵は、情報処理装置に格納された情報処理装置固有のデバイス鍵を構成データとして含み、
前記データ処理部は、
前記バインド解除処理を、情報処理装置に格納された情報処理装置固有のデバイス鍵を適用したデータ処理として行なう構成であることを特徴とする請求項9に記載の情報処理装置。
【請求項12】
前記バインドユニット鍵は、情報記録媒体に格納された情報記録媒体固有の識別情報を構成データとして含み、
前記データ処理部は、
前記バインド解除処理を、情報記録媒体に格納された情報記録媒体固有の識別情報を適用したデータ処理として行なう構成であることを特徴とする請求項9に記載の情報処理装置。
【請求項13】
前記バインドユニット鍵は、情報記録媒体に格納された所定数の情報記録媒体集合に固有の識別情報を構成データとして含み、
前記データ処理部は、
前記バインド解除処理を、情報記録媒体に格納された所定数の情報記録媒体集合に固有の識別情報を適用したデータ処理として行なう構成であることを特徴とする請求項9に記載の情報処理装置。
【請求項14】
前記データ処理部は、
前記バインドユニット鍵に対して、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報の排他論理和演算により、前記バインド解除処理を実行する構成であることを特徴とする請求項9に記載の情報処理装置。
【請求項15】
前記データ処理部は、
前記後発データのバインドタイプを該後発データに対応する使用許諾情報またはその他のデータファイルから取得し、該取得情報に従ってバインド解除処理の実行に適用するデータを決定する構成であることを特徴とする請求項9に記載の情報処理装置。
【請求項16】
情報処理方法であり、
情報記録媒体からの読み取り情報を適用して後発的に生成または取得した後発データを記憶手段に格納する処理を実行するデータ処理ステップを有し、
前記データ処理ステップは、
前記後発データの属するコンテンツ管理ユニットに対応する暗号鍵であるユニット鍵による暗号化データとしての暗号化後発データを前記記憶手段に格納するステップと、
情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成する暗号化バインドユニット鍵生成ステップと、
前記暗号化バインドユニット鍵を前記記憶手段に格納する処理を実行するステップと、
を有することを特徴とする情報処理方法。
【請求項17】
前記暗号化バインドユニット鍵生成ステップは、
前記後発データの属するコンテンツ管理ユニットに対応する使用許諾情報を前記バインドユニット鍵に含めた暗号化バインドユニット鍵を生成する処理を実行する構成であることを特徴とする請求項16に記載の情報処理方法。
【請求項18】
前記暗号化バインドユニット鍵生成ステップは、
情報処理装置に格納された情報処理装置固有のデバイス鍵と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成するステップであることを特徴とする請求項16に記載の情報処理方法。
【請求項19】
前記暗号化バインドユニット鍵生成ステップは、
情報記録媒体に格納された情報記録媒体固有の識別情報と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成するステップであることを特徴とする請求項16に記載の情報処理方法。
【請求項20】
前記暗号化バインドユニット鍵生成ステップは、
情報記録媒体に格納された所定数の情報記録媒体集合に固有の識別情報と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成するステップであることを特徴とする請求項16に記載の情報処理方法。
【請求項21】
前記暗号化バインドユニット鍵生成ステップは、
情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報と、前記ユニット鍵に基づく演算処理によってバインドユニット鍵を生成するステップであることを特徴とする請求項16に記載の情報処理方法。
【請求項22】
前記演算処理は排他論理和演算であることを特徴とする請求項21に記載の情報処理方法。
【請求項23】
前記情報処理方法は、さらに、
後発データ提供サーバから取得した後発データを前記記憶手段に格納するとともに、該後発データ提供サーバから取得した取得後発データに対応する暗号化ユニット鍵を復号し、前記暗号化バインドユニット鍵を生成するステップを有することを特徴とする請求項16に記載の情報処理方法。
【請求項24】
情報処理方法であり、
暗号化コンテンツの復号処理を実行するデータ処理ステップを有し、
前記データ処理ステップは、
暗号化コンテンツの暗号化に適用したユニット鍵を含む暗号化データとしての暗号化バインドユニット鍵を記憶手段から取得するステップと、
取得した暗号化バインドユニット鍵の復号処理を実行する復号ステップと、
バインド解除処理によりユニット鍵を算出するバインド解除処理ステップとを有し、
前記バインド解除処理ステップは、
情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報を適用したデータ処理として実行することを特徴とする情報処理方法。
【請求項25】
前記バインドユニット鍵は、前記後発データの属するコンテンツ管理ユニットに対応する使用許諾情報を構成データとして含み、
前記バインド解除処理ステップは、
情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報と、前記使用許諾情報を適用したデータ処理として行なうステップであることを特徴とする請求項24に記載の情報処理方法。
【請求項26】
前記バインドユニット鍵は、情報処理装置に格納された情報処理装置固有のデバイス鍵を構成データとして含み、
前記バインド解除処理ステップは、
情報処理装置に格納された情報処理装置固有のデバイス鍵を適用したデータ処理として行なうステップであることを特徴とする請求項24に記載の情報処理方法。
【請求項27】
前記バインドユニット鍵は、情報記録媒体に格納された情報記録媒体固有の識別情報を構成データとして含み、
前記バインド解除処理ステップは、
情報記録媒体に格納された情報記録媒体固有の識別情報を適用したデータ処理として行なうステップであることを特徴とする請求項24に記載の情報処理方法。
【請求項28】
前記バインドユニット鍵は、情報記録媒体に格納された所定数の情報記録媒体集合に固有の識別情報を構成データとして含み、
前記バインド解除処理ステップは、
情報記録媒体に格納された所定数の情報記録媒体集合に固有の識別情報を適用したデータ処理として行なうステップであることを特徴とする請求項24に記載の情報処理方法。
【請求項29】
前記バインド解除処理ステップは、
前記バインドユニット鍵に対して、情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報の排他論理和演算により、前記バインド解除処理を実行するステップであることを特徴とする請求項24に記載の情報処理方法。
【請求項30】
前記バインド解除処理ステップは、
前記後発データのバインドタイプを該後発データに対応する使用許諾情報またはその他のデータファイルから取得し、該取得情報に従ってバインド解除処理の実行に適用するデータを決定するステップを含むことを特徴とする請求項24に記載の情報処理方法。
【請求項31】
情報処理をコンピュータ上において実行するコンピュータ・プログラムであり、
情報記録媒体からの読み取り情報を適用して後発的に生成または取得した後発データを記憶手段に格納する処理を実行するデータ処理ステップを有し、
前記データ処理ステップは、
前記後発データの属するコンテンツ管理ユニットに対応する暗号鍵であるユニット鍵による暗号化データとしての暗号化後発データを前記記憶手段に格納するステップと、
情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報と、前記ユニット鍵を構成データとして含むバインドユニット鍵の暗号化データである暗号化バインドユニット鍵を生成する暗号化バインドユニット鍵生成ステップと、
前記暗号化バインドユニット鍵を前記記憶手段に格納する処理を実行するステップと、
を有することを特徴とするコンピュータ・プログラム。
【請求項32】
情報処理をコンピュータ上において実行するコンピュータ・プログラムであり、
暗号化コンテンツの復号処理を実行するデータ処理ステップを有し、
前記データ処理ステップは、
暗号化コンテンツの暗号化に適用したユニット鍵を含む暗号化データとしての暗号化バインドユニット鍵を記憶手段から取得するステップと、
取得した暗号化バインドユニット鍵の復号処理を実行する復号ステップと、
バインド解除処理によりユニット鍵を算出するバインド解除処理ステップとを有し、
前記バインド解除処理ステップは、
情報処理装置から取得する鍵情報または情報記録媒体から取得する識別情報を適用したデータ処理として実行することを特徴とするコンピュータ・プログラム。

【図1】
image rotate

【図2】
image rotate

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


【公開番号】特開2006−295518(P2006−295518A)
【公開日】平成18年10月26日(2006.10.26)
【国際特許分類】
【出願番号】特願2005−113035(P2005−113035)
【出願日】平成17年4月11日(2005.4.11)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVA
2.イーサネット
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】