説明

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

【課題】 情報記録媒体を適用した記録再生コンテンツの厳格な利用管理を実現する。
【解決手段】 ユニット鍵を適用した暗号化処理により、コンテンツ管理ユニット対応の暗号化データを生成し、さらにユニット鍵を格納したユニット鍵ファイルを有する構成において、ユニット鍵ファイルに含まれるユニット鍵の構成変更に従って値を更新するシードを適用して生成する暗号鍵に基づいて、ユニット鍵ファイルまたは該ファイル構成データの暗号化処理を実行する。コンテンツ管理ユニットの移動などの格納コンテンツの変動に応じてシード情報が変更されることになり、情報記録媒体に格納されたコンテンツに対する対応関係を維持したユニット鍵の管理、不正なユニット鍵利用による不正なコンテンツ利用を防止できる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、例えばデジタル放送などのコンテンツを情報記録媒体に記録し、記録コンテンツの利用を行なう構成において、区分されたユニットとしてコンテンツの利用制御を実現する情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムに関する。
【背景技術】
【0002】
音楽等のオーディオデータ、映画等の画像データ、ゲームプログラム、各種アプリケーションプログラム等、様々なソフトウエアデータ(以下、これらをコンテンツ(Content)と呼ぶ)は、記録メディア、例えば、青色レーザを適用したBlu−rayディスク、あるいはDVD(Digital Versatile Disc)、MD(Mini Disc)、CD(Compact Disc)にデジタルデータとして格納することができる。特に、青色レーザを利用したBlu−rayディスクは、高密度記録可能なディスクであり大容量の映像コンテンツなどを高画質データとして記録することができる。
【0003】
これら様々な情報記録媒体(記録メディア)には、予めデータが記録され、新たなデータ書き込みを許容しないROM型の媒体と、データ書き込み可能な媒体とがある。ユーザは、データ書き込み可能な情報記録媒体を利用することで、例えばデジタルデータ放送を受信し、受信コンテンツを情報記録媒体に書き込み、これを再生して利用するこが可能となる。
【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に記載されている。
【0010】
しかし、情報記録媒体に記録されるコンテンツには、様々な種類のコンテンツがあり、例えば、コンテンツの提供者に応じた異なる利用管理など、コンテンツ毎の独立した利用管理構成が望まれている。また、コンテンツのムーブ(移動)など格納コンテンツが変化した際の暗号鍵の処理などについても管理構成が確立されているとは言い難く、現行のシステムにおいては、コンテンツ管理、鍵管理においてまだ不十分な点がある。
【特許文献1】特開2003−116100号公報
【発明の開示】
【発明が解決しようとする課題】
【0011】
本発明は、このような状況に鑑みてなされたものであり、情報記録媒体に格納されたコンテンツ、あるいはユーザが記録するコンテンツなど、各コンテンツ個別の利用制御を実現可能とし、コンテンツのムーブ(移動)など格納コンテンツが変化した際の暗号鍵についても厳格な管理を実現する情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明の第1の側面は、
情報記録媒体に対する情報記録処理を実行する情報処理装置であり、
コンテンツの利用制御単位であるコンテンツ管理ユニットに対応するユニット鍵を適用した暗号化処理により暗号化コンテンツを生成するコンテンツ暗号処理部と、
前記ユニット鍵を格納した鍵ファイルであり、該鍵ファイルに含まれるユニット鍵の構成変更に従って値を更新するシードを適用して生成する暗号鍵に基づいて、前記ユニット鍵ファイルまたは該ファイル構成データの暗号化処理を実行してユニット鍵ファイルの生成を行なうユニット鍵ファイル処理部と、
前記暗号化コンテンツを構成データとするコンテンツ管理ユニット、および前記ユニット鍵ファイルを予め設定された記録データフォーマットに従って情報記録媒体に記録するデータ記録部と、
を有することを特徴とする情報処理装置にある。
【0013】
さらに、本発明の情報処理装置の一実施態様において、前記ユニット鍵ファイル処理部は、前記情報記録媒体に記録済みの既存のユニット鍵ファイルに含まれるユニット鍵の増加または削除に応じて、新たな値を持つ新規シードを設定し、該新規シードに基づく新規暗号鍵に基づく暗号化処理を施した更新ユニット鍵ファイルを生成する構成であることを特徴とする。
【0014】
さらに、本発明の情報処理装置の一実施態様において、前記ユニット鍵ファイル処理部は、前記情報記録媒体に対する新たなコンテンツ管理ユニットの記録処理に応じて新たに設定された新規ユニット鍵を前記ユニット鍵ファイルに格納するとともに、該新規ユニット鍵の追加に応じて、新たな値を持つ新規シードを設定し、該新規シードに基づく新規暗号鍵に基づく暗号化処理を施した更新ユニット鍵ファイルを生成する構成であることを特徴とする。
【0015】
さらに、本発明の情報処理装置の一実施態様において、前記ユニット鍵ファイル処理部は、前記情報記録媒体からのコンテンツ管理ユニットの移動または削除処理に応じて、移動または削除対象のコンテンツ管理ユニット対応のユニット鍵をユニット鍵ファイルから削除するとともに、該ユニット鍵の削除に応じて、新たな値を持つ新規シードを設定し、該新規シードに基づく新規暗号鍵に基づく暗号化処理を施した更新ユニット鍵ファイルを生成する構成であることを特徴とする。
【0016】
さらに、本発明の情報処理装置の一実施態様において、前記ユニット鍵ファイル処理部は、情報処理装置に格納されたデバイス鍵を適用した暗号鍵ブロックの処理によって取得されるメディア鍵による前記シードの暗号処理によって生成する暗号鍵を適用して、前記ユニット鍵ファイルまたは該ファイル構成データの暗号化処理を実行する構成であることを特徴とする。
【0017】
さらに、本発明の情報処理装置の一実施態様において、前記データ記録部は、前記シードを、前記ユニット鍵ファイルを格納するユーザデータ部とは異なる記録位置に設定される制御情報格納部としてのユーザコントロールデータ部に記録する処理を実行する構成であることを特徴とする。
【0018】
さらに、本発明の情報処理装置の一実施態様において、前記データ記録部は、前記ユニット鍵ファイルの書き込み領域を情報記録媒体に対するデータアクセス単位としてのECCブロックを単位として設定した記録フォーマットに従って、前記ユニット鍵ファイルの書き込み処理を実行する構成であることを特徴とする。
【0019】
さらに、本発明の情報処理装置の一実施態様において、前記データ記録部は、前記ユニット鍵ファイルの書き込み処理に際して、前記ユニット鍵ファイルの書き込み数またはアクセス数に応じて情報記録媒体における書き込み位置の変更を行なう構成であることを特徴とする。
【0020】
さらに、本発明の情報処理装置の一実施態様において、前記データ記録部は、前記ユニット鍵ファイルの書き込み処理に際して、前記ユニット鍵ファイルの書き込み数またはアクセス数に応じて情報記録媒体における書き込み位置の変更を行なうとともに、該書き込み位置変更処理に際して、変更前の位置に書き込まれたデータの少なくとも一部データを消去する処理を実行する構成であることを特徴とする。
【0021】
さらに、本発明の情報処理装置の一実施態様において、前記消去対象とするデータは、シード情報を含むことを特徴とする。
【0022】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、情報記録媒体に対するアクセスを実行するドライブと、前記ドライブを介して情報記録媒体に対するアクセス処理を実行するホストを有し、前記ドライブは、前記シードの生成処理を実行し、前記ホストは、前記ドライブの生成したシードを適用して暗号鍵を生成して、該暗号鍵に基づく暗号化処理を施したユニット鍵ファイルの生成処理を実行する構成であることを特徴とする。
【0023】
さらに、本発明の第2の側面は、
情報記録媒体に記録されたコンテンツの再生処理を実行する情報処理装置であり、
情報記録媒体に記録されたデータの読み取りを実行するデータ取得部と、
コンテンツの利用制御単位として設定されるコンテンツ管理ユニットに対応するユニット鍵を、前記情報記録媒体に記録されたユニット鍵ファイルから取得するユニット鍵ファイル処理部と、
前記ユニット鍵を適用して、情報記録媒体に記録された暗号化コンテンツの復号処理を実行するコンテンツ暗号処理部とを有し、
前記ユニット鍵ファイル処理部は、
情報記録媒体から取得される鍵生成情報としてのシードを適用した暗号鍵生成処理を実行し、生成暗号鍵に基づく前記ユニット鍵ファイルまたは該ファイル構成データの復号処理によりユニット鍵の取得処理を実行する構成であることを特徴とする情報処理装置にある。
【0024】
さらに、本発明の情報処理装置の一実施態様において、前記ユニット鍵ファイル処理部は、情報処理装置に格納されたデバイス鍵を適用した暗号鍵ブロックの処理によって取得されるメディア鍵による前記シードの暗号処理によって生成する暗号鍵を適用して、前記ユニット鍵ファイルまたは該ファイル構成データの復号処理を実行する構成であることを特徴とする。
【0025】
さらに、本発明の情報処理装置の一実施態様において、前記データ取得部は、前記シードを、前記ユニット鍵ファイルを格納するユーザデータ部とは異なる記録位置に設定される制御情報格納部としてのユーザコントロールデータ部から取得する処理を実行する構成であることを特徴とする。
【0026】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、情報記録媒体に対するアクセスを実行するドライブと、前記ドライブを介して情報記録媒体に対するアクセス処理を実行するホストを有し、前記ドライブは、前記シードの生成処理を実行し、前記ホストは、前記ドライブの生成したシードを適用して暗号鍵を生成して、該暗号鍵に基づく前記ユニット鍵ファイルまたは該ファイルの構成データの復号処理を実行しユニット鍵を取得する構成であることを特徴とする。
【0027】
さらに、本発明の第3の側面は、
情報記録媒体であり、
コンテンツの利用制御単位として設定されるユニットに区分され、該ユニットに対応するユニット鍵を適用した暗号化データを構成データとして含むコンテンツ管理ユニットと、
前記ユニット鍵を格納した鍵ファイルであり、該鍵ファイルに含まれるユニット鍵の構成変更に従って値を更新するシードを適用して生成する暗号鍵に基づいて、前記ユニット鍵ファイルまたは該ファイル構成データの暗号化処理が施されたユニット鍵ファイルと、
前記シードと、
を格納した構成を有することを特徴とする情報記録媒体にある。
【0028】
さらに、本発明の情報記録媒体の一実施態様において、前記シードは、前記ユニット鍵ファイルを格納するユーザデータ部とは異なる記録位置に設定される制御情報格納部としてのユーザコントロールデータ部に記録した構成を有することを特徴とする。
【0029】
さらに、本発明の情報記録媒体の一実施態様において、前記ユニット鍵ファイルの書き込み領域は、情報記録媒体に対するデータアクセス単位としてのECCブロックを単位として設定されていることを特徴とする。
【0030】
さらに、本発明の第4の側面は、
情報記録媒体に対する情報記録処理を実行する情報処理方法であり、
コンテンツの利用制御単位であるコンテンツ管理ユニットに対応するユニット鍵を適用した暗号化処理により暗号化コンテンツを生成するコンテンツ暗号処理ステップと、
前記ユニット鍵を格納した鍵ファイルの生成ステップであり、該鍵ファイルに含まれるユニット鍵の構成変更に従って値を更新するシードを適用して生成する暗号鍵に基づいて、前記ユニット鍵ファイルまたは該ファイル構成データの暗号化処理を実行してユニット鍵ファイルの生成を行なうユニット鍵ファイル処理ステップと、
前記暗号化コンテンツを構成データとするコンテンツ管理ユニット、および前記ユニット鍵ファイルを予め設定された記録データフォーマットに従って情報記録媒体に記録するデータ記録ステップと、
を有することを特徴とする情報処理方法にある。
【0031】
さらに、本発明の情報処理方法の一実施態様において、前記ユニット鍵ファイル処理ステップは、前記情報記録媒体に記録済みの既存のユニット鍵ファイルに含まれるユニット鍵の増加または削除に応じて、新たな値を持つ新規シードを設定し、該新規シードに基づく新規暗号鍵に基づく暗号化処理を施した更新ユニット鍵ファイルを生成するステップであることを特徴とする。
【0032】
さらに、本発明の情報処理方法の一実施態様において、前記ユニット鍵ファイル処理ステップは、前記情報記録媒体に対する新たなコンテンツ管理ユニットの記録処理に応じて新たに設定された新規ユニット鍵を前記ユニット鍵ファイルに格納するとともに、該新規ユニット鍵の追加に応じて、新たな値を持つ新規シードを設定し、該新規シードに基づく新規暗号鍵に基づく暗号化処理を施した更新ユニット鍵ファイルを生成するステップであることを特徴とする。
【0033】
さらに、本発明の情報処理方法の一実施態様において、前記ユニット鍵ファイル処理ステップは、前記情報記録媒体からのコンテンツ管理ユニットの移動または削除処理に応じて、移動または削除対象のコンテンツ管理ユニット対応のユニット鍵をユニット鍵ファイルから削除するとともに、該ユニット鍵の削除に応じて、新たな値を持つ新規シードを設定し、該新規シードに基づく新規暗号鍵に基づく暗号化処理を施した更新ユニット鍵ファイルを生成するステップであることを特徴とする。
【0034】
さらに、本発明の情報処理方法の一実施態様において、前記ユニット鍵ファイル処理ステップは、情報処理装置に格納されたデバイス鍵を適用した暗号鍵ブロックの処理によって取得されるメディア鍵による前記シードの暗号処理によって生成する暗号鍵を適用して、前記ユニット鍵ファイルまたは該ファイル構成データの暗号化処理を実行するステップを含むことを特徴とする。
【0035】
さらに、本発明の情報処理方法の一実施態様において、前記データ記録ステップは、前記シードを、前記ユニット鍵ファイルを格納するユーザデータ部とは異なる記録位置に設定される制御情報格納部としてのユーザコントロールデータ部に記録する処理を実行するステップを含むことを特徴とする。
【0036】
さらに、本発明の情報処理方法の一実施態様において、前記データ記録ステップは、前記ユニット鍵ファイルの書き込み領域を情報記録媒体に対するデータアクセス単位としてのECCブロックを単位として設定した記録フォーマットに従って、前記ユニット鍵ファイルの書き込み処理を実行するステップを含むことを特徴とする。
【0037】
さらに、本発明の情報処理方法の一実施態様において、前記データ記録ステップは、前記ユニット鍵ファイルの書き込み処理に際して、前記ユニット鍵ファイルの書き込み数またはアクセス数に応じて情報記録媒体における書き込み位置の変更を行なうステップを含むことを特徴とする。
【0038】
さらに、本発明の情報処理方法の一実施態様において、前記データ記録ステップは、前記ユニット鍵ファイルの書き込み処理に際して、前記ユニット鍵ファイルの書き込み数またはアクセス数に応じて情報記録媒体における書き込み位置の変更を行なうとともに、該書き込み位置変更処理に際して、変更前の位置に書き込まれたデータの少なくとも一部データを消去する処理を実行するステップを含むことを特徴とする。
【0039】
さらに、本発明の情報処理方法の一実施態様において、前記消去対象とするデータは、シード情報を含むことを特徴とする。
【0040】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、情報記録媒体に対するアクセスを実行するドライブと、前記ドライブを介して情報記録媒体に対するアクセス処理を実行するホストによって実行され、前記ドライブによる前記シードの生成処理ステップと、前記ドライブから前記ホストに対するシードの送信ステップと、前記ホストによる、前記シードを適用した暗号鍵の生成、該暗号鍵に基づく暗号化処理を施したユニット鍵ファイルの生成処理を実行するステップと、前記ホストから前記ドライブに対する前記ユニット鍵ファイルの送信ステップと、前記ドライブによる前記ユニット鍵ファイルの情報記録媒体に対する記録処理ステップと、を有することを特徴とする。
【0041】
さらに、本発明の第5の側面は、
情報記録媒体に記録されたコンテンツの再生処理を実行する情報処理方法であり、
情報記録媒体に記録されたデータの読み取りを実行するデータ取得ステップと、
コンテンツの利用制御単位として設定されるコンテンツ管理ユニットに対応するユニット鍵を、前記情報記録媒体に記録されたユニット鍵ファイルから取得するユニット鍵ファイル処理ステップと、
前記ユニット鍵を適用して、情報記録媒体に記録された暗号化コンテンツの復号処理を実行するコンテンツ暗号処理ステップとを有し、
前記ユニット鍵ファイル処理ステップは、
情報記録媒体から取得される鍵生成情報としてのシードを適用した暗号鍵生成処理を実行し、生成暗号鍵に基づく前記ユニット鍵ファイルまたは該ファイル構成データの復号処理によりユニット鍵の取得処理を実行するステップであることを特徴とする情報処理方法にある。
【0042】
さらに、本発明の情報処理方法の一実施態様において、前記ユニット鍵ファイル処理ステップは、情報処理装置に格納されたデバイス鍵を適用した暗号鍵ブロックの処理によって取得されるメディア鍵による前記シードの暗号処理によって生成する暗号鍵を適用して、前記ユニット鍵ファイルまたは該ファイル構成データの復号処理を実行するステップを含むことを特徴とする。
【0043】
さらに、本発明の情報処理方法の一実施態様において、前記データ取得ステップは、前記シードを、前記ユニット鍵ファイルを格納するユーザデータ部とは異なる記録位置に設定される制御情報格納部としてのユーザコントロールデータ部から取得する処理を実行するステップを含むことを特徴とする。
【0044】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、情報記録媒体に対するアクセスを実行するドライブと、前記ドライブを介して情報記録媒体に対するアクセス処理を実行するホストによって実行され、前記ドライブによる前記シードの生成処理ステップと、前記ドライブから前記ホストに対するシードの送信ステップと、前記ドライブによる前記ユニット鍵ファイルの情報記録媒体からの取得処理ステップと、前記ドライブから前記ホストに対する前記ユニット鍵ファイルの送信ステップと、前記ホストによる、前記シードを適用した暗号鍵の生成、該暗号鍵に基づく前記ユニット鍵ファイルまたは該ファイルの構成データの復号処理によるユニット鍵取得ステップと、を有することを特徴とする。
【0045】
さらに、本発明の第6の側面は、
情報記録媒体に対する情報記録処理をコンピュータ上において実行させるコンピュータ・プログラムであり、
コンテンツの利用制御単位であるコンテンツ管理ユニットに対応するユニット鍵を適用した暗号化処理により暗号化コンテンツを生成するコンテンツ暗号処理ステップと、
前記ユニット鍵を格納した鍵ファイルの生成ステップであり、該鍵ファイルに含まれるユニット鍵の構成変更に従って値を更新するシードを適用して生成する暗号鍵に基づいて、前記ユニット鍵ファイルまたは該ファイル構成データの暗号化処理を実行してユニット鍵ファイルの生成を行なうユニット鍵ファイル処理ステップと、
前記暗号化コンテンツを構成データとするコンテンツ管理ユニット、および前記ユニット鍵ファイルを予め設定された記録データフォーマットに従って情報記録媒体に記録するデータ記録ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【0046】
さらに、本発明の第7の側面は、
情報記録媒体に記録されたコンテンツの再生処理をコンピュータ上において実行させるコンピュータ・プログラムであり、
情報記録媒体に記録されたデータの読み取りを実行するデータ取得ステップと、
コンテンツの利用制御単位として設定されるコンテンツ管理ユニットに対応するユニット鍵を、前記情報記録媒体に記録されたユニット鍵ファイルから取得するユニット鍵ファイル処理ステップと、
前記ユニット鍵を適用して、情報記録媒体に記録された暗号化コンテンツの復号処理を実行するコンテンツ暗号処理ステップとを有し、
前記ユニット鍵ファイル処理ステップは、
情報記録媒体から取得される鍵生成情報としてのシードを適用した暗号鍵生成処理を実行し、生成暗号鍵に基づく前記ユニット鍵ファイルまたは該ファイル構成データの復号処理によりユニット鍵の取得処理を実行するステップであることを特徴とするコンピュータ・プログラムにある。
【0047】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、DVD、CD、MOなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【0048】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【0049】
本発明の一実施例の構成によれば、コンテンツの利用制御単位として設定されるコンテンツ管理ユニット(CPSユニット)に対応するユニット鍵を適用した暗号化処理により、コンテンツ管理ユニット対応の暗号化データを生成し、さらに管理情報として、ユニット鍵を格納したユニット鍵ファイルの生成または更新を行なって情報記録媒体に記録し、コンテンツの再生利用に際しては、ユニット鍵ファイルからの鍵取得を行なう構成とした。ユニット鍵ファイルに含まれるユニット鍵の構成変更に従って値を更新するシードを適用して生成する暗号鍵に基づいて、ユニット鍵ファイルまたは該ファイル構成データの暗号化処理を実行したユニット鍵ファイルを設定する構成としたので、コンテンツ管理ユニットの移動などの格納コンテンツの変動に応じてシード情報が変更されることになり、情報記録媒体に格納されたコンテンツに対する対応関係を維持したユニット鍵の管理が可能となり、不正なユニット鍵利用による不正なコンテンツ利用を防止することが可能となる。
【0050】
さらに、本発明の一実施例構成によれば、ユニット鍵ファイルの書き込み領域をECCブロック単位で設定したので、ユニット鍵ファイルの読み書き処理を効率的に実行することができる。また、本発明の一実施例では、ユニット鍵ファイルの書き込み領域を、適宜変更する構成としたので、書き込みエラーが複数回に渡って発生し、スペア領域に複数のユニット鍵ファイルの記録データが残存してしまうといったことが防止される。
【発明を実施するための最良の形態】
【0051】
以下、図面を参照しながら本発明の情報処理装置、および情報処理方法、並びにコンピュータ・プログラムの詳細について説明する。なお、説明は以下の項目に従って行なう。
1.コンテンツ格納フォーマットの概要
2.コンテンツ管理構成
(2.1)個別データ対応の暗号化構成
(2.2)コンテンツ管理ユニット(CPSユニット)による管理構成
(2.3)プレイリスト間の編集を可能にする場合のコンテンツ管理ユニット(CPSユニット)による管理構成
3.ユニット鍵ファイルの構成
4.利用制御情報(CCI)の構成
5.コンテンツの記録、編集、再生処理
6.情報処理装置の構成例
【0052】
[1.コンテンツ格納フォーマットの概要]
図1は、本発明の情報処理装置に装着され、データ記録再生に用いる情報記録媒体上のコンテンツ格納フォーマット構成を示す図である。例えば放送コンテンツなどをデータ記録用のアプリケーションプログラムを適用して情報記録媒体に記録した場合のコンテンツ格納フォーマット構成を示す図である。
【0053】
図1に示すように、コンテンツは、動画コンテンツと静止画コンテンツに区分され、動画コンテンツは、(A)インデックス情報ファイル110、(B)プレイリスト120、(C)クリップ130の階層構成を有する。(B)プレイリスト120の層には、複数のプレイリスト121〜123が含まれ、(C)クリップ130の層には、複数のクリップ情報とコンテンツ実データとしてのAVストリームからなるクリップAVストリームファイル131〜133が含まれる。
【0054】
情報記録媒体を装着した情報処理装置において実行される再生アプリケーションによってインデックス情報110が呼び出され、インデックス情報110から、ユーザの指定により、プレイリスト121〜123、あるいは静止画コンテンツのメニューサムネイルインデックス141、またはマークサムネイルインデックス142のいずれかが選択される。
【0055】
動画コンテンツの再生に際しては、プレイリスト121〜123のいずれかが選択される。プレイリストには、再生対象データ情報としてのプレイアイテムが含まれる。プレイリストに含まれるプレイアイテムによって規定される再生区間としてのクリップ情報によって、コンテンツ実データとしてのAVストリームが選択的に読み出されて、AVストリームの再生が行われる。なお、プレイリスト、プレイアイテムは多数、存在し、それぞれに識別情報としてのプレイリストID、プレイアイテムIDが対応付けられている。
【0056】
一般に、コンピュータ等で用いるデータファイルは、バイト列として扱われるが、クリップAVストリームファイル131〜133のコンテンツは、時間軸上に展開され、プレイリストは、クリップの中のアクセスポイントを主にタイムスタンプで指定する。プレイリストが、クリップの中へのアクセスポイントをタイムスタンプで指し示している時、クリップ情報ファイルは、クリップAVストリームファイルの中でストリームのデコードを開始すべきアドレス情報を見つけるために適用される。
【0057】
プレイリスト120を適用することで、ユーザは、クリップ130の中から見たい再生区間を選択し、それを簡単に編集することができる。1つのプレイリストは、クリップの中の再生区間の集まりである。あるクリップの中の1つの再生区間は、プレイアイテムと呼ばれ、これは、時間軸上のIN点とOUT点のペアで表される。プレイリストは、プレイアイテムの集合として設定される。
【0058】
図1に示すように、情報記録媒体には、動画コンテンツの他に、静止画コンテンツが記録される。静止画コンテンツには、サムネイルが含まれる。サムネイルは、例えば、各動画コンテンツに対応する静止画である。サムネイルには、図1に示すように2つの種類がある。1つは、各コンテンツ内容を表す代表画としてのメニューサムネイルである。これは主としてユーザがカーソルを操作して見たいものを選択するためのメニュー画面で使われる。もう1つは、マークが指しているシーンを表す画像であり、例えばユーザの選択したシーンのサムネイル画像によって構成されるマークサムネイルである。
【0059】
これらのサムネイルは、例えばJPEGの画像ファイル143,144として設定され、メニューサムネイルインデックス141、またはマークサムネイルインデックス142のいずれかを適用して表示する静止画像を選択することができる。
【0060】
[2.コンテンツ管理構成]
このようなファイルフォーマットを適用して情報記録媒体に格納されるコンテンツの利用制御構成の複数の態様について、以下順次説明する。
【0061】
(2.1)個別データ対応の暗号化構成
まず、図2を参照して、個別データ対応の暗号化構成について説明する。本構成例では、図2に示すように、暗号化処理対象のデータは、動画コンテンツ中のAVストリーム、静止画コンテンツ中の静止画像ファイルであり、これらのコンテンツ実データを個別に暗号化する。
【0062】
動画コンテンツのAVストリームの暗号化処理に適用する暗号鍵は、暗号化対象であるAVストリームに対応して設定されるクリップ情報に含まれるデータを適用した暗号鍵生成処理によって生成する。例えばクリップ情報に記録された「記録シード(Rec Seed)」、コンテンツの利用制御情報である「CCI(CopyControl Information)シーケンス」、「モード情報」、データ改竄検証値としての「ICV(Integrity Check Value)」などのデータを入力として暗号鍵を生成し、生成した暗号鍵に基づいて例えば6KBブロック暗号に基づくAVストリームの暗号化を行なう。
【0063】
一方、サムネイル画像によって構成される静止画像ファイルの暗号化に適用する暗号鍵は、暗号化対象であるサムネイル画像に対応して設定されるメニューサムネイルインデックスあるいはマークサムネイルインデックスに含まれる情報から取得した記録シード(Rec Seed)などのデータを入力として暗号鍵を生成し、生成した暗号鍵に基づいて例えば2KBブロック暗号に基づく画像ファイルの暗号化を行なう。
【0064】
図2では、それぞれ1つのAVストリームと1つの静止画像ファイルの暗号化態様を説明したが、その他のAVストリームもそれぞれ対応するクリップ情報の構成データに基づく暗号鍵で暗号化がなされ、サムネイルを含む画像ファイルもそれぞれメニューサムネイルインデックスあるいはマークサムネイルインデックスに含まれる情報から生成した鍵による暗号化がなされる。このような構成とすることで、例えばあるAVストリームに対応する暗号鍵が漏洩した場合でも、他のAVストリームの暗号鍵には適用することができず、各コンテンツの個別管理が可能であり、より強固なデータの保護が実現される。
【0065】
(2.2)コンテンツ管理ユニット(CPSユニット)による管理構成
次に、コンテンツ管理ユニット(CPSユニット)の設定に基づくコンテンツ管理構成について、図3を参照して説明する。本構成例において、情報記録媒体に格納されるコンテンツは、ユニット毎の異なる利用制御を実現するため、ユニット毎に異なる鍵が割り当てられ暗号化処理がなされて格納される。すなわち、コンテンツはコンテンツ管理ユニット(CPSユニット)に区分されて、個別の鍵(ユニット鍵(CPSユニット鍵))による暗号化処理がなされ、個別の利用管理がなされる。
【0066】
コンテンツ利用に際しては、まず、各ユニットに割り当てられたCPSユニット鍵を取得することが必要であり、さらに、その他の必要な鍵、鍵生成情報等を適用して予め定められた復号処理シーケンスに基づくデータ処理を実行して再生を行う。
【0067】
コンテンツ管理ユニット(CPSユニット)の設定態様は、様々な設定が可能である。図3を参照してコンテンツ管理ユニット(CPSユニット)の1つの設定態様について説明する。
【0068】
図3に示す例では、動画コンテンツについては、1つ以上のプレイリストに対応するコンテンツ管理ユニット(CPSユニット)を設定し、静止画コンテンツについては、メニューサムネイル、マークサムネイルの種別毎にコンテンツ管理ユニット(CPSユニット)を設定した例である。
【0069】
静止画コンテンツでは、メニューサムネイルの画像ファイルの集合をCPSユニット1(コンテンツ管理ユニット1)として、CPSユニット1に対応するユニット鍵[Ku1]で暗号化する。なお、この例では暗号化の対象データは、画像ファイルである。また、マークサムネイルの画像ファイルの集合をCPSユニット2として、CPSユニット2に対応するユニット鍵[Ku2]で暗号化する。
【0070】
さらに、動画コンテンツでは、プレイリスト121とプレイリスト122によって指定されるクリップファイルを含むデータをCPSユニット3として、CPSユニット3に対応するユニット鍵[Ku3]で暗号化する。なお、この例では暗号化の対象データは、AVストリームである。また、プレイリスト123によって指定されるクリップファイルを含むデータをCPSユニット4として、CPSユニット4に対応するユニット鍵[Ku4]で暗号化する。
【0071】
例えば、ユーザがCPSユニット3に対応するコンテンツ再生処理を実行するためには、CPSユニット3に対応付けて設定された暗号鍵としてのユニット鍵:Ku3を取得して復号処理を実行することが必要となる。CPSユニット4に対応するコンテンツ再生処理を実行するためには、CPSユニット4に対応付けて設定された暗号鍵としてのユニット鍵:Ku4を取得して復号処理を実行することが必要となる。
【0072】
このような設定とした場合、コンテンツのユニット毎の異なる利用制御が実現される。各コンテンツ管理ユニット(CPSユニット)に対する個別の利用管理のために、各コンテンツ管理ユニット(CPSユニット)に対するコンテンツ利用制御情報(CCI)が設定され、各CPSユニットについて、対応するコンテンツ利用制御情報(CCI)に従った利用制御が可能となる。
【0073】
コンテンツ管理ユニット(CPSユニット)による管理構成を持つコンテンツを記録した情報記録媒体からのコンテンツの再生利用処理について、図4を参照して説明する。まず、情報処理装置180は、メモリに格納しているデバイス鍵[Kd]181を読み出す。デバイス鍵181は、コンテンツ利用に関するライセンスを受けた情報処理装置に格納された秘密キーである。
【0074】
次に、情報処理装置180は、ステップS11において、デバイス鍵181を適用して情報記録媒体170に格納されたメディア鍵Kmを格納した暗号鍵ブロックであるMKB171の復号処理を実行して、メディア鍵Kmを取得する。MKB(Media Key Block)171は、ブロードキャストエンクリプション方式の一態様として知られる木構造の鍵配信方式に基づいて生成される暗号鍵ブロックである。MKB171は有効なライセンスを持つユーザの情報処理装置に格納されたデバイス鍵[Kd]に基づく処理(復号)によってのみ、コンテンツの復号に必要なキーであるメディア鍵[Km]の取得を可能とした鍵情報ブロックである。これはいわゆる階層型木構造に従った情報配信方式を適用したものであり、ユーザデバイス(情報処理装置)が有効なライセンスを持つ場合にのみ、メディア鍵[Km]の取得を可能とし、無効化(リボーク処理)されたユーザデバイスにおいては、メディア鍵[Km]の取得が不可能となる。
【0075】
次に、ステップS12において、ステップS11におけるMKB処理で取得したメディア鍵Kmと、情報記録媒体170から読み取ったバインドシード172とに基づく暗号処理によって、暗号鍵としてのバインド鍵Kbを生成する。この鍵生成処理は、例えば、AES暗号アルゴリズムに従った処理として実行される。バインドシードについては、後段で詳細に説明する。
【0076】
次に、ステップS13において、バインド鍵Kbによって、情報記録媒体170から読み取ったCPSユニット鍵ファイル173の復号処理を行なう。CPSユニット鍵ファイル173は、各CPSユニットに対応して設定されるユニット鍵[Kun]の暗号化データを格納したファイルである。ユニット鍵ファイルの具体的構成については後述する。例えば、[Enc(Kb,f(Ku_n,CCI))]のような暗号化データとしてユニット鍵を格納している。Enc(a,b)はデータbの鍵aによる暗号化データを示している。
【0077】
ステップS13におけるCPSユニット鍵ファイル173の復号処理によって、
データ[Kt]=f(Ku_n,CCI)
を取得し、ステップS14において、
データ[Kt]=f(Ku_n,CCI)、
に対して、情報記録媒体170から読み取った利用制御情報(CCI)174を適用した演算処理を実行して、ユニット鍵[Ku_n]を得る。
例えば、データ[Kt]=f(Ku_n,CCI)が、ユニット鍵[Ku_n]と、利用制御情報[CCI]との排他論理和(XOR)結果データである場合、再度、この演算結果に対して、情報記録媒体から読み取った利用制御情報[CCI]の排他論理和(XOR)演算を実行することで、ユニット鍵[Ku_n]を取得することができる。
【0078】
次に、ステップS15において、情報記録媒体170から読み取った暗号化コンテンツ175に対して、ユニット鍵[Ku_n]を適用した復号処理(例えばAES_D)を実行し、ステップS16において、例えばMPEGデコード、圧縮解除、スクランブル解除等、必要なデコード処理を実行して、コンテンツ182を取得する。
【0079】
この処理によって、情報記録媒体170に格納されたCPSユニットとして管理される暗号化コンテンツが復号されて利用、すなわち再生することができる。
【0080】
(2.3)プレイリスト間の編集を可能にする場合のコンテンツ管理ユニット(CPSユニット)による管理構成
次に、図5以下を参照して、バーチャルプレイリストを有する場合のコンテンツ管理ユニット(CPSユニット)による管理構成について説明する。
【0081】
図5に示すようにプレイリストには、2つのタイプがある。1つは、リアルプレイリスト125,126であり、もう1つは、バーチャルプレイリスト127である。リアルプレイリスト125,126は、それが参照しているクリップのストリーム部分を共有しているとみなされる。すなわち、リアルプレイリスト125,126は、それの参照しているクリップのストリーム部分に相当するデータ容量をディスクの中で占める。AVストリームが新しいクリップとして記録される場合、そのクリップ全体の再生可能範囲を参照するリアルプレイリストが自動的に作られる。リアルプレイリスト125,126の再生範囲の一部分が消去された場合、それが参照しているクリップのストリーム部分もまたデータが消去される。一方、バーチャルプレイリスト127は、クリップのデータを共有していないとみなされる。バーチャルプレイリスト127が変更または消去されたとしても、クリップは何も変化しない。すなわち、バーチャルプレイリスト127は、クリップを仮想的に参照するプレイリストであり、任意のクリップを自在に参照可能となる。
【0082】
プレイリストは、異なるクリップストリームファイルを参照可能であるが、先に、図3を参照して説明したコンテンツ管理ユニット(CPSユニット)を設定する場合、いくつかの問題が発生する。例えば、図6は図3の状態からプレイリスト126とプレイリスト127の結合編集(2つのプレイリストを1つのプレイリストにする処理)を行った結果を示しており、結合編集によりプレイリスト127が存在しなくなり、動画コンテンツに対応するリアルプレイリスト125,126を含む1つのCPSユニット3が設定された状態となっている。しかし、リアルプレイリスト126が、CPSユニット3に含まれるクリップのみならず、もともとCPSユニット4に含まれていたクリップを参照する構成となっているため、プレイリスト126が再生対象とするクリップAVストリームのうち、クリップ133の部分の暗号鍵(Ku4)を指定することができなくなってしまう問題がある。
【0083】
この問題を解決する構成例について以下、説明する。図7は、この問題を解決する1つの例であり、以下の条件設定の下でコンテンツ管理ユニット(CPSユニット)を設定する構成としたものである。
(条件1)リアルプレイリストの結合編集を禁止(異なるCPSユニットに属するクリップの参照を禁止)
【0084】
上記の条件は、リアルプレイリストは、自己の属するCPSユニットに設定されたクリップのみを参照する設定とするものであり、この構成によって、編集操作で矛盾が発生することなく、CPSユニットの割り当て、プレイリストに基づくCPSユニット判別が可能となる。なお、バーチャルプレイリストには、CPSユニットを割り当てない設定とすることにより、バーチャルプレイリストの編集の自由度を高めることが可能となる。
【0085】
図8は、クリップ単位でCPSユニットを設定した構成例である。図8の構成において、CPSユニット3は、クリップ131,132を含む構成であり、CPSユニット4は、クリップ133を含む構成として設定される。プレイリストは、CPSユニットには属さないデータとして設定される。
【0086】
このように、プレイリストをCPSユニットと独立した構成とすることで、プレイリストのレイヤにおいて実行される編集処理において、CPSユニットと暗号化データとの対応に影響を与えることがなく、自由な編集処理が可能となる。
【0087】
図9は、1つのリアルプレイリストに1つのCPSユニットを割り当てる構成例である。この場合、プレイリストとCPSユニットは1対1の対応が保証され、プレイリストの管理情報に、プレイリストとCPSユニットとの対応関係に関する複雑な記述が不要であり、各プレイリストに1つのユニット鍵が設定される単純な管理構成となる。
【0088】
図10は、1つのクリップに1つのCPSユニットを割り当てる構成例である。この場合、クリップとCPSユニットは1対1の対応が保証され、プレイリストの管理情報に、クリップとCPSユニットとの対応関係に関する複雑な記述が不要であり、各クリップに1つのユニット鍵が設定される単純な管理構成となる。
【0089】
図11は、図10と同様、1つのクリップに1つのCPSユニットを割り当てる構成例であり、さらに、静止画コンテンツについても、実データとしての画像ファイルに対応してCPSユニットを設定した構成例である。この場合も、クリップとCPSユニットは1対1の対応が保証され、プレイリストの管理情報に、クリップとCPSユニットとの対応関係に関する複雑な記述が不要であり、各クリップに1つのユニット鍵が設定される単純な管理構成となる。
【0090】
[3.ユニット鍵ファイルの構成]
次に、情報記録媒体に格納されるコンテンツ管理ユニット(CPSユニット)に対応して設定されるユニット鍵[Kun]を格納したユニット鍵ファイルの複数の構成例について説明する。
【0091】
前述したように、情報記録媒体に格納されるコンテンツ管理ユニット(CPSユニット)の各々に対して、それぞれコンテンツの暗号処理に適用するユニット鍵が設定される。このユニット鍵は、暗号化されてユニット鍵ファイルに格納される。まず、CPSユニットの設定構成、およびユニット鍵の対応例を図12に示す。図12には、情報記録媒体に格納される暗号化コンテンツの利用管理単位としてのCPSユニット設定単位と、各CPSユニットに適用するCPSユニット鍵の対応を示している。
【0092】
CPSユニット設定単位は、上述したように、様々な態様が可能である。図12(a)は、プレイリストに対応するCPSユニットを設定した場合のユニット鍵ファイルの設定例である。
【0093】
図12(b)は、クリップに対応するCPSユニットを設定した場合のユニット鍵設定例である。この例は、先に図10、図11を参照して説明したCPSユニットの設定構成に対応するユニット鍵ファイルの設定例である。
【0094】
図12に示す例は、CPSユニット鍵ファイルの概念を説明する図である。実際のCPSユニット鍵ファイルのデータ構成例について図13以下を参照して説明する。
【0095】
図13は、CPSユニット鍵ファイルの一構成例に対応するシンタックスを示す図である。図13に示すように、CPSユニット鍵ファイルには、ヘッダ情報を格納したユニット鍵ファイルヘッダ201と、ユニット鍵の暗号化データを格納したユニット鍵ブロック202が設定される。ユニット鍵ファイルヘッダ201の前には、ユニット鍵ブロックのスタートアドレス(Unit_Key_Block_start_address)が設定される。
【0096】
ユニット鍵ファイルヘッダ201の詳細、および、ユニット鍵ブロック202の詳細を図14に示す。図14(a)は、ユニット鍵ファイルヘッダの詳細であり、図14(b)は、ユニット鍵ブロックの詳細を示すシンタックスである。なお、図13、図14に示すCPSユニット鍵ファイルは、クリップ対応のCPSユニットを設定した場合のCPSユニット鍵ファイルの構成を示すものであり、先に図10、図11、を参照して説明したCPSユニットの設定構成に対応するユニット鍵ファイルの設定例である。また、これは図12(b)に示すユニット鍵ファイル構成に対応する。
【0097】
図14(a)に示すように、CPSユニット鍵ファイルのヘッダ部には、以下のデータが含まれる。
(1)アプリケーションタイプ(Application_Type):アプリケーションフォーマットの識別情報(例えば再生専用ディスク用フォーマット(BDMV)の場合1、記録再生ディスク用フォーマット(BDAV)の場合2)。なお、記録再生ディスクであっても、再生専用ディスクフォーマットのフォーマットで記録ができるが、その場合には、アプリケーションタイプは再生専用ディスクフォーマット(BDMV)として記録する。
(2)ディレクトリ数(Num_of_BD_Directory):ディレクトリ数(再生専用ディスク(BDMV)の場合は1のみ、記録再生ディスク(BDAV)の場合は1〜5)
(3)メニューサムネイル#1対応CPSユニット番号(CPS_Unit_number for Menu Thumbnail#I):メニューサムネイル用のCPSユニット番号
(4)マークサムネイル#1対応CPSユニット番号(CPS_Unit_number for Mark Thumbnail#I):マークサムネイル用のCPSユニット番号
(5)ディレクトリIのクリップ数(Num_of_Clip#I):ディレクトリIの中に設定されたクリップ数
(6)ディレクトリIに設定されたクリップのID#J(Clip_ID#J in Directory #I):クリップのID(ファイル名XXXXX.clpiのXXXXXに当たる10進5桁の数字)
ただし、このデータは、再生専用ディスク(BDMV)には設定しない構成としてもよい。
(7)ディレクトリ#I、タイトル#Jに対応するCPSユニット番号(CPS_Unit_number for Title#J in Directory #I):クリップのID(タイトル)に対応するCPSユニット番号
【0098】
これらのデータがヘッダ情報として格納される。図13、図14に示す構成を持つユニット鍵ファイルは、
各メニューサムネイル毎にCPSユニット番号が対応付けられ、
各マークサムネイル毎にCPSユニット番号が対応付けられ、
さらに、
各ディレクトリの各クリップ(=タイトル)毎にCPSユニット番号が対応付けられた構成である。
【0099】
図14(b)に示すCPSユニット鍵ファイルのユニット鍵ブロックには、以下のデータが含まれる。
(1)CPSユニット数(Num_of_CPS_Unit)ディスク上のCPSユニット数
(2)利用制御情報のMAC(MAC of Usage Rules#I):CPSユニットに対応する利用制御情報(CCI)ファイルデータの改竄検証用データとしてのMAC(Message Authentication Code)値
(3)メディアIDのMAC(MAC of Media ID#I):メディアID[MediaID(記録型Discのシリアル番号)]の改竄検証用データとしてのMAC値
(4)各CPSユニット対応の暗号化CPSユニット鍵(Encrypted CPS Unit Key for CPS Unit#I):CPSユニットごとに割り当てられるユニット鍵の暗号化データ
【0100】
なお、情報記録媒体が再生専用ディスク(BDMV)である場合のBDMVフォーマットと、記録再生ディスク(BDAV)である場合のBDAVフォーマットでは、データの記録処理あるいは再生処理を実行するアプリケーションが利用するディレクトリ構造が異なるが、図13および図14に示すCPSユニット鍵ファイルは、いずれのディスク、いずれのアプリケーションにも対応可能な構成となっている。なお、図13、図14に示すCPSユニット鍵ファイルのデータ構成は一例であり、必要に応じて、多少の構成データの変更は可能である。例えば、上述したように図14(a)に示すユニット鍵ファイルヘッダ中、上述した(6)ディレクトリIに設定されたクリップのID#J(Clip_ID#J in Directory #I):クリップのID(ファイル名XXXXX.clpiのXXXXXに当たる10進5桁の数字)については、再生専用ディスク(BDMV)には設定しない構成としてもよい。
【0101】
情報記録媒体が記録再生ディスク(BDAV)である場合のBDAVフォーマットに対応するディレクトリ構造と、再生専用ディスク(BDMV)である場合のBDMVフォーマットに対応するディレクトリ構造を図15、図16に示す。
【0102】
図15は、BDAVフォーマットに対応するディレクトリ構造を示している。データ部221は、各種の付加的な情報や制御情報の格納部であり、前述した暗号鍵ブロックとしてのMKBと、上述したユニット鍵ファイルと、さらに、各CPSユニットに対応するコンテンツの利用制御情報(CCI:Copy Control Information)が設定される。
【0103】
データ部223は、BDAVフォーマットに従ったデータ、すなわち、先に図1を参照して説明したインデックス情報(info.bdav)、静止画コンテンツを構成するメニューサムネイル(Menu.tidx, Menu.tidx1)、マークサムネイル(Mark.tidx, Mark.tidx1)、さらに、動画コンテンツを構成するプレイリスト(PLAYLISTにある0001.mpls等)、クリップ(CLIPINFにある01001.clpi等)、ストリームデータファイル(STREAMにある01001.m2ts等)が設定される。
【0104】
図16は、BDMVフォーマットに対応するディレクトリ構造を示している。データ部231は、各種の付加的な情報や制御情報の格納部であり、前述した暗号鍵ブロックとしてのMKBと、上述したユニット鍵ファイルと、さらに、各CPSユニットに対応するコンテンツの利用制御情報(CCI:Copy Control Information)が設定される。
【0105】
データ部232は、データ部231の設定データのバックアップデータファイルが設定される。なお、バックアップデータファイルは、必須ではなく必要に応じて設定する。データ部233は、BDMVフォーマットに従ったデータが設定される。BDAVフォーマットには、プログラムファイルとしてのムービオブジェクト(MovieObject)が設定される。さらに、動画コンテンツを構成するプレイリスト、クリップ、ストリームデータファイルが設定される点は、BDAVフォーマットと同様である。
【0106】
図13、図14を参照して説明したCPSユニット鍵ファイルは、図15、図16のBDAVフォーマット、BDMVフォーマットのいずれにも対応可能であり、いずれのフォーマットに対しても共通の鍵ファイルとして利用できる。
【0107】
情報記録媒体を利用する情報処理装置で実行するアプリケーションは、図14(a)に示すCPSユニット鍵ファイルのヘッダ部のアプリケーションタイプ(Application_Type)を参照して、BDMV、BDAVのいずれの設定に従った鍵ファイルであるかを判別して、図14(b)に示す鍵ブロックから利用する鍵を取得する。
【0108】
図13、図14を参照して説明したユニット鍵ファイル構成では、前述したように、
各メニューサムネイル毎にCPSユニット番号が対応付けられ、
各マークサムネイル毎にCPSユニット番号が対応付けられ、
さらに、
各ディレクトリの各クリップ(=タイトル)毎にCPSユニット番号が対応付けられた構成を持っており、
例えばコンテンツ再生を実行する情報処理装置のアプリケーションプログラムが、コンテンツの復号に適用するユニット鍵を取得する場合、再生対象コンテンツとしてのサムネイルまたはクリップを特定し、各サムネイルまたはクリップに対応するCPSユニット番号を図14(a)に示すCPSユニット鍵ファイルヘッダから取得し、CPSユニット番号に対応するユニット鍵を図14(b)に示すCPSユニット鍵ブロックから取得する処理を行なうことになる。
【0109】
次に、図17以下を参照して、ユニット鍵ファイルの様々な設定例について説明する。
(1)プレイリスト対応のCPSユニット設定例1
図17に、プレイリスト対応のCPSユニットを設定した場合のユニット鍵ファイル構成を示す。図17に示すCPSユニット鍵ファイルは、CPSユニット鍵ファイルヘッダ301に、メニューサムネイル、マークサムネイル、プレイリスト=#1〜#npに対応するCPSユニット番号が記録され、CPSユニット鍵ブロック302に各CPSユニット番号に対応する暗号化されたユニット鍵が格納された構成である。このCPSユニット鍵ファイルは、先に図3、図7を参照して説明したCPSユニットの設定例に対応して利用可能なCPSユニット鍵ファイルである。
【0110】
(2)プレイリスト対応のCPSユニット設定例2
図18も、プレイリスト対応のCPSユニットを設定した場合のユニット鍵ファイル構成である。図18に示すCPSユニット鍵ファイルは、CPSユニット鍵ファイルヘッダ311に、メニューサムネイル、マークサムネイルに対応するCPSユニット番号が記録され、プレイリストについては、プレイリストIDが直接記述されて、各プリイリストIDに対応するCPSユニット番号を記録した構成を持つ。CPSユニット鍵ブロック312には、各CPSユニット番号に対応する暗号化されたユニット鍵が格納されている。このCPSユニット鍵ファイルも、先に図3、図7を参照して説明したCPSユニットの設定例に対応して利用可能なCPSユニット鍵ファイルである。
【0111】
(3)クリップ対応のCPSユニット設定例1
図19は、クリップ対応のCPSユニットを設定した場合のユニット鍵ファイル構成を示す。図19に示すCPSユニット鍵ファイルは、CPSユニット鍵ファイルヘッダ321に、メニューサムネイル、マークサムネイル、クリップ=#1〜#ncに対応するCPSユニット番号が記録され、CPSユニット鍵ブロック302に各CPSユニット番号に対応する暗号化されたユニット鍵が格納された構成である。このCPSユニット鍵ファイルは、先に図8を参照して説明したクリップ対応のCPSユニットの設定例に対応して利用可能なCPSユニット鍵ファイルである。
【0112】
(4)クリップ対応のCPSユニット設定例2
図20も、クリップ対応のCPSユニットを設定した場合のユニット鍵ファイル構成である。図20に示すCPSユニット鍵ファイルは、CPSユニット鍵ファイルヘッダ331に、メニューサムネイル、マークサムネイルに対応するCPSユニット番号が記録され、クリップについては、クリップDが直接記述されて、各クリップIDに対応するCPSユニット番号を記録した構成を持つ。CPSユニット鍵ブロック332には、各CPSユニット番号に対応する暗号化されたユニット鍵が格納されている。このCPSユニット鍵ファイルも、先に図8を参照して説明したクリップ対応のCPSユニットの設定例に対応して利用可能なCPSユニット鍵ファイルである。
【0113】
(5)1つのプレイリストに1つのCPSユニットを設定した例1
図21は、プレイリスト対応のCPSユニットを設定した場合のユニット鍵ファイル構成を示す。図21に示すCPSユニット鍵ファイルは、プレイリストに対応するCPSユニット番号を示すヘッダ情報が含まれない構成であり、メニューサムネイル、マークサムネイル、プレイリスト=#1〜#npに対応する暗号化されたユニット鍵を格納したCPSユニット鍵ブロック341のみを設定した構成である。1つのプレイリストに対応してCPSユニット鍵が設定される構成であるので、各プレイリスト対応のCPSユニット番号を記録する必要がなく、簡略化された構成を持つ。このCPSユニット鍵ファイルは、先に図9を参照して説明したプレイリスト対応のCPSユニットの設定例に対応して利用可能なCPSユニット鍵ファイルである。
【0114】
(6)1つのプレイリストに1つのCPSユニットを設定した例2
図22も、プレイリスト対応のCPSユニットを設定した場合のユニット鍵ファイル構成を示す。図22に示すCPSユニット鍵ファイルも、プレイリストに対応するCPSユニット番号を示すヘッダ情報が含まれない構成であり、メニューサムネイル、マークサムネイル、プリイリストIDに対応する暗号化されたユニット鍵を格納したCPSユニット鍵ブロック351のみを設定した構成である。1つのプレイリストに対応してCPSユニット鍵が設定される構成であるので、各プレイリスト対応のCPSユニット番号を記録する必要がなく、簡略化された構成を持つ。このCPSユニット鍵ファイルも、先に図9を参照して説明したプレイリスト対応のCPSユニットの設定例に対応して利用可能なCPSユニット鍵ファイルである。
【0115】
(7)1つのクリップに1つのCPSユニットを設定した例1
図23は、クリップ対応のCPSユニットを設定した場合のユニット鍵ファイル構成を示す。図23に示すCPSユニット鍵ファイルは、クリップに対応するCPSユニット番号を示すヘッダ情報が含まれない構成であり、メニューサムネイル、マークサムネイル、クリップ=#1〜#ncに対応する暗号化されたユニット鍵を格納したCPSユニット鍵ブロック361のみを設定した構成である。1つのクリップに対応してCPSユニット鍵が設定される構成であるので、各クリップ対応のCPSユニット番号を記録する必要がなく、簡略化された構成を持つ。このCPSユニット鍵ファイルは、先に図10を参照して説明したプレイリスト対応のCPSユニットの設定例に対応して利用可能なCPSユニット鍵ファイルである。
【0116】
(8)1つのクリップに1つのCPSユニットを設定した例2
図24も、クリップ対応のCPSユニットを設定した場合のユニット鍵ファイル構成を示す。図24に示すCPSユニット鍵ファイルも、クリップに対応するCPSユニット番号を示すヘッダ情報が含まれない構成であり、メニューサムネイル、マークサムネイル、クリップIDに対応する暗号化されたユニット鍵を格納したCPSユニット鍵ブロック371のみを設定した構成である。1つのクリップに対応してCPSユニット鍵が設定される構成であるので、各クリップ対応のCPSユニット番号を記録する必要がなく、簡略化された構成を持つ。このCPSユニット鍵ファイルも、先に図10を参照して説明したプレイリスト対応のCPSユニットの設定例に対応して利用可能なCPSユニット鍵ファイルである。
【0117】
上述したように、CPSユニットの設定構成は様々な設定が可能であり、また、CPSユニット鍵ファイルの構成も、各CPSユニットの設定に応じた構成として様々なファイル構成が可能となる。
【0118】
[4.バインドシードを適用したユニット鍵ファイルの暗号化構成]
次に、情報記録媒体に格納されるユニット鍵ファイルの暗号化構成について説明する。
【0119】
上述したように、情報記録媒体に格納されるコンテンツは、コンテンツ管理ユニット(CPSユニット)に属するデータとされ、CPSユニット鍵を適用した暗号化データとして格納される。また、CPSユニット鍵についても、CPSユニット鍵ファイルに暗号化された鍵データとして格納されて情報記録媒体に記録される。
【0120】
具体的なCPSユニット鍵の暗号化態様について、図を参照して説明する。図25は、データ記録可能な情報記録媒体400に対して、CPSユニット対応コンテンツの記録処理を行なった場合におけるCPSユニットおよびユニット鍵ファイルの変遷を説明する図である。
【0121】
まず、CPSユニット対応コンテンツの記録されていないブランクメディアとしての情報記録媒体400aに、例えばあるAVストリームを含むCPSユニット#1,411を記録する。このCPSユニット#1,411に含まれるデータ、例えばクリップに含まれるAVストリームは、CPSユニット#1,411に対応して設定されるCPSユニット鍵#1を適用した暗号化データとして記録される。この暗号化処理に適用したCPSユニット鍵#1は、ユニット鍵ファイル421として暗号化されて、情報記録媒体400bに記録される。なお、400a〜cは同じ記録媒体である。
【0122】
このとき、CPSユニット鍵#1を含むCPSユニット鍵ファイルの暗号化に適用する暗号鍵はバインド鍵[Kb]であり、このバインド鍵[Kb]に適用する暗号鍵生成情報がバインドシードA422となる。バインドシードに基づくバインド鍵[Kb]の生成処理については、後段で詳細に説明するが、例えば情報処理装置の保有するデバイス鍵[Kd]による暗号鍵ブロックMKBの処理によって取得するメディア鍵[Km]を適用したバインドシードの暗号化処理、すなわち、
Kb=AES(Km,バインドシード)
によってバインド鍵[Kb]が生成される。AES(a,b)はデータbの鍵aによるAES暗号化データを示している。
【0123】
CPSユニット#1,411の記録された情報記録媒体400bには、バインドシードA422によって生成されたバインド鍵[Kb]によって暗号化されたユニット鍵ファイル421が記録される。
【0124】
バインドシードは固定データではなく、ユニット鍵ファイルに格納されるユニット鍵構成の変更に応じて、随時変更される。例えば、図25に示すように、CPSユニット#1,411の記録された情報記録媒体400bに対して、さらに、CPSユニット#2,412を記録する(図に示す情報記録媒体400c)。このCPSユニットの追加記録を行なう場合、CPSユニット鍵ファイル423は、CPSユニット鍵#1とCPSユニット鍵#2を含むファイルとして更新される。この更新処理に際して、バインドシードも変更される。
【0125】
図に示す例では、CPSユニット#1,411の記録された情報記録媒体400bではバインドシードA422がユニット鍵ファイル421の暗号化に適用したバインド鍵の生成情報である。CPSユニット#1,411およびCPSユニット#2,412の記録された情報記録媒体400cではバインドシードB424がユニット鍵ファイル423の暗号化に適用したバインド鍵の生成情報である。
ここで、
バインドシードA≠バインドシードB
である。
【0126】
従って、情報記録媒体400bのCPSユニット鍵#1を構成要素とするユニット鍵ファイル421の暗号鍵としてのバインド鍵[Kb−a]と、情報記録媒体400cのCPSユニット鍵#1とCPSユニット鍵#2を構成要素とするユニット鍵ファイル423の暗号鍵としてのバインド鍵[Kb−b]とは異なる鍵である。
【0127】
CPSユニット#1,411が記録された情報記録媒体400bの格納コンテンツ、すなわちCPSユニット#1,411に属する暗号化コンテンツを再生する場合、ユニット鍵ファイル421を復号することが必要であり、この場合、バインドシードA422を適用して暗号鍵(バインド鍵[Kb−a])を生成して、ユニット鍵ファイル421を復号してユニット鍵#1を得る。その後、ユニット鍵#1を適用してCPSユニット#1,411に含まれる暗号化コンテンツの復号を行なう。
【0128】
また、CPSユニット#1,411およびCPSユニット#2,412の記録された情報記録媒体400cの格納コンテンツ、すなわちCPSユニット#1,411またはCPSユニット#2,412に属する暗号化コンテンツを再生する場合、CPSユニット鍵#1またはCPSユニット鍵#2をユニット鍵ファイル423から取得することが必要であり、この場合、バインドシードB424を適用して暗号鍵(バインド鍵[Kb−b])を生成して、ユニット鍵ファイル423を復号してユニット鍵#1またはユニット鍵#2を得る。その後、ユニット鍵#1またはユニット鍵#2を適用してCPSユニット#1,411またはCPSユニット#2に含まれる暗号化コンテンツの復号を行なう。
【0129】
このように、ユニット鍵ファイルの構成に応じて、逐次バインドシードを変更することで、情報記録媒体に正規に格納されたCPSユニットと適用可能なCPSユニット鍵との対応を厳格に管理することが可能となる。
【0130】
CPSユニットとCPSユニット鍵との厳格な管理構成例について、図26を参照して説明する。図26は、情報記録媒体からのコンテンツ(CPSユニット)のムーブ処理を行なう場合のバインドシードの変更処理について説明する図である。ムーブ処理とは、情報記録媒体に格納されたコンテンツを他の媒体などへ移動させる処理である。図の例では、情報記録媒体400cに格納されたCPSユニット#2,412を他の情報記録媒体431に移動したものとする。このようなムーブ処理において、CPSユニット#2,412は、ムーブ先としての情報記録媒体431に記録されるが、ムーブ元である情報記録媒体400cのCPSユニット#2,412は、データ消去処理がなされるわけではなく、データ実体は残存し、物理的にはCPSユニット#2,412は情報記録媒体400cに残存する場合がある。
【0131】
このような場合、情報記録媒体400cを装着しムーブ処理を実行した情報処理装置およびドライブ装置は、ユニット鍵ファイル423の更新を実行する。このユニット鍵ファイルの更新処理に際して、元のバインドシードB424を変更し、新たなバインドシードC426を生成して、バインドシードC426を適用して生成する暗号鍵(バインド鍵[Kb−c])によって、ユニット鍵#1を構成要素とするユニット鍵ファイル425の暗号化を実行して、ユニット鍵#1を格納したユニット鍵ファイル425を情報記録媒体404に再記録する処理を行なう。
【0132】
情報処理装置の実行する処理の具体的なシーケンスは以下の通りである。
(ステップ1)
ユニット鍵ファイル423をバインドシードB424を適用して生成する暗号鍵B(バインド鍵B)で復号し、ユニット鍵#1を取得する。
(ステップ2)
乱数生成などによって新たなバインドシードC426を生成する。
(ステップ3)
生成したバインドシードCを用いて新たな暗号鍵C(バインド鍵C)を生成し、生成した暗号鍵C(バインド鍵C)を適用して、ユニット鍵#1を含むユニット鍵ファイル425の暗号化を実行して情報記録媒体404に再記録する。
これらの処理を実行することになる。
【0133】
この処理によって、図26に示す情報記録媒体400cと情報記録媒体400dに記録されたユニット鍵ファイル423,425は、異なるバインドシード、すなわち、バインドシードB424を適用して生成されるバインド鍵[Kb−b]、バインドシードC426を適用して生成されるバイント鍵[Kb−c]、これらの異なるバインド鍵によって暗号化された鍵ファイルデータとなる。
【0134】
なお、図には示していないが、CPSユニット#2のムーブ先となった情報記録媒体431がムーブ元である情報記録媒体400と同種の記録媒体、または同様の機能を持っている記録媒体の場合には、CPSユニット鍵#2を格納したユニット鍵ファイルが記録され、やはり、独自のバインドシードxを適用して生成される暗号鍵x(バインド鍵x)で暗号化されたCPSユニット鍵#2を格納したユニット鍵ファイルを情報記録媒体431に記録することになる。
【0135】
このような構成とすることで、各情報記録媒体に格納されるユニット鍵ファイルは、全て異なる暗号鍵で暗号化されたデータとなり、ユニット鍵ファイルを情報記録媒体間でコピー処理を実行しても、正しい対応するバインドシードを取得することができないことになり、コピーされた鍵ファイルの復号が実行できず、情報記録媒体に記録されたCPSユニットとCPSユニット鍵ファイルに記録されたユニット鍵との対応を厳格に管理することが可能となる。
【0136】
次に、図27を参照して、バインドシードおよびユニット鍵ファイルの記録領域の構成例について説明する。図27にはケース(1)〜(3)の3つの記録構成例を示してある。
【0137】
情報記録媒体に記録されるデータは、2048バイトのユーザデータ(User Data)領域と、18バイトのユーザコントロールデータ(UCD:User Control Data)領域とが交互に記録される構成となる。ユーザコントロールデータ領域は様々な制御情報を記録する領域であってドライブからのアクセスのみが可能で直接エンドユーザからはアクセスできない領域であり、ユーザデータ領域は、コンテンツ他の様々なデータファイルを記録する領域として利用される。
【0138】
図27のケース(1)に示す例は、ユニット鍵ファイルが2K(2048)バイト以下の場合のバインドシードおよびユニット鍵ファイルの記録例であり、バインドシード441を18バイトUCD領域の16バイトを利用して記録し、バインドシード441を記録したUCD領域に続く2Kバイトユーザデータ領域にユニット鍵ファイル442を記録した構成例である。
【0139】
図27のケース(2)に示す例は、ユニット鍵ファイルが2K(2048)バイト以上である場合のバインドシードおよびユニット鍵ファイルの記録例であり、バインドシード443を18バイトUCD領域の16バイトを利用して記録し、バインドシード443を記録したUCD領域に続く2つの2Kバイトユーザデータ領域にユニット鍵ファイルの分割データをそれぞれユニット鍵ファイル_0,444と、ユニット鍵ファイル_1,445として記録した構成例である。
【0140】
図27のケース(3)に示す例は、ユニット鍵ファイルが2K(2048)バイト以上である場合のバインドシードおよびユニット鍵ファイルの記録例であり、バインドシード446を18バイトUCD領域の16バイトを利用して記録し、バインドシード446を記録したUCD領域以後の離間した2つの2Kバイトユーザデータ領域にユニット鍵ファイルの分割データをそれぞれユニット鍵ファイル_0,447と、ユニット鍵ファイル_1,448として記録した構成例である。
【0141】
このようにバインドシードはユーザコントロールデータ(UCD)の構成データとして記録され、ユニット鍵ファイルは、データ長に応じて1つまたは複数の2KBユーザデータ領域を利用して記録されることになる。このようにバインドシードをユーザからは直接アクセスできないユーザコントロール領域に記録し、ユニット鍵ファイルから分離させたことにより更に厳格なコンテンツ管理が可能となる。
【0142】
ユーザコントロールデータ(UCD)領域のバインドシードのデータ記録構成例について、図28を参照して説明する。図28は、18バイトUCD領域を示している。各8ビット記録可能なバイト列0〜17を有する。これらのUCD領域中、バイト列0〜15の16バイト領域をバインドシード記録領域として設定する。
【0143】
情報記録媒体に記録するユニット鍵ファイルの生成、更新時には、例えば乱数に基づくバインドシードデータをこの16バイト領域に新たに書き込む、あるいは更新する処理を実行する。これらの処理を実行するのは、情報記録媒体を装着したドライブまたは情報処理装置において実行される。
【0144】
[5.ユニット鍵ファイルの記録、読み取り、およびコンテンツの記録、再生処理]
次に、ユニット鍵ファイルの記録、読み取り、およびコンテンツの記録、再生処理について説明する。まず、図29を参照して、情報記録媒体に対するCPSユニット対応のコンテンツ書き込み処理と、情報記録媒体に格納されたCPSユニット対応コンテンツの再生処理、それぞれの処理シーケンスについて説明する。
【0145】
図29において、情報処理装置450は、CPSユニット対応コンテンツを情報記録媒体470に記録する処理、情報処理装置460は、情報記録媒体470に記録されたCPSユニット対応コンテンツを読み取り復号、再生する処理を実行する装置として示している。なお、情報処理装置450,460は同一の装置であってもよい。
【0146】
まず、CPSユニット対応コンテンツを情報記録媒体470に記録する処理について、情報処理装置450側のシーケンスに沿って説明する。CPSユニットを新たに情報記録媒体470に記録する際、まず、情報処理装置470は、ステップS31において、自装置のメモリに格納されたデバイス鍵451を取得し、メディア鍵を格納した暗号鍵ブロックであるMKBの処理によってメディア鍵を取得する。
【0147】
デバイス鍵451は、先に図4を参照して説明したように、コンテンツ利用に関するライセンスを受けた情報処理装置に格納された秘密キーである。MKB(Media Key Block)452は、ブロードキャストエンクリプション方式の一態様として知られる木構造の鍵配信方式に基づいて生成される暗号鍵ブロックであり、有効なライセンスを持つユーザの情報処理装置に格納されたデバイス鍵[Kd]に基づく処理(復号)によってのみ、コンテンツの復号に必要なキーであるメディア鍵[Km]の取得を可能とした鍵情報ブロックである。これはいわゆる階層型木構造に従った情報配信方式を適用したものであり、ユーザデバイス(情報処理装置)が有効なライセンスを持つ場合にのみ、メディア鍵[Km]の取得を可能とし、無効化(リボーク処理)されたユーザデバイスにおいては、メディア鍵[Km]の取得が不可能となる。
【0148】
なお、MKB452は、情報記録媒体470に予め記録されたMKB471を読み取って利用することが可能である。あるいはその他の記録媒体等のメディア、あるいはネットワークを介してサーバから取得するなどの処理によって取得することも可能である。
【0149】
次に、ステップS32において、バインドシード453を適用したバインドシード処理、すなわち、例えばメディア鍵[Km]を適用したバインドシードのAES暗号化処理によって、バインド鍵、すなわちCPSユニット鍵を暗号化するための暗号鍵(バインド鍵)を生成する。バインドシード453は、例えば乱数生成処理によってドライブにおいて生成される。なお、ドライブホスト間の処理シーケンスについては、図30、図31を参照して後段で説明する。なお、情報記録媒体470にはバインドシード472が、先に図27等を参照して説明したように、ユーザコンントロールデータ領域に記録される。
【0150】
ステップS33は、ユニット鍵455の暗号化処理実行ステップである。ユニット鍵455は、記録対象とするコンテンツ456の属するCPSユニットに対応するCPSユニット鍵であり、例えば乱数に基づいて生成される。ユニット鍵455は、ステップS32においてバインドシードに基づいて生成した暗号鍵で暗号化される。なお、本例では、CPSユニットに対応する利用制御情報(CCI)を利用して、暗号化ユニット鍵が生成される。具体的には、先に図4を参照して説明したように、
例えば、
[Enc(Kb,f(Ku_n,CCI))]
上記式によって示される暗号化データとして暗号化ユニット鍵が生成される。ここで、暗号鍵[Kb]は、バインドシードに基づいて生成した暗号鍵である。Enc(a,b)はデータbの鍵aによる暗号化データを示している。また、f(a,b)はデータaとデータbとに基づく演算結果データであり、例えばaとbとの排他論理和演算結果である。
【0151】
なお、[Enc(Kb,f(Ku_n,CCI))]
は、例えばCPSユニット#nに対応するユニット鍵#nと、CPSユニット#nに対応する利用制御情報(CCI#n)との排他論理和結果に対して、バインドシードに基づいて生成した暗号鍵[Kb]を適用して暗号化したデータを示している。このようにして生成した暗号化されたユニット鍵を格納したCPSユニット鍵ファイル473を情報記録媒体470に記録する。なお、情報記録媒体には、利用制御情報(CCI)474も記録される。
【0152】
なお、複数のユニット鍵を構成要素とするユニット鍵ファイルを設定する場合は、各ユニット鍵の連結データから構成される1つのユニット鍵ファイルに対してバインド鍵による暗号化する構成、あるいは各CPSユニット鍵と各CPSユニット対応の利用制御情報(CCI)との連結データから構成される1つのユニット鍵ファイルに対してバインド鍵による暗号化を実行する構成としてもよい。
【0153】
情報処理装置450は、さらに、ステップS34において、ユニット鍵455を適用して、コンテンツ456を暗号化する。コンテンツ456は、例えばCPSユニットに含まれるAVストリームデータである。ステップS34における暗号化結果としての暗号化コンテンツ475が情報記録媒体470に記録される。なお、情報記録媒体470の記録データとして示している暗号化コンテンツ476は、CPSユニットに相当する。
【0154】
次に、情報記録媒体470に格納されたコンテンツの再生処理について、情報処理装置470側のシーケンスに従って説明する。この処理は、基本的に、先に図4を参照して説明した処理と同様の処理である。情報処理装置470は、ステップS51において、デバイス鍵461を適用して情報記録媒体470に格納されたメディア鍵Kmを格納した暗号鍵ブロックであるMKB471の復号処理を実行して、メディア鍵Kmを取得する。
【0155】
次に、ステップS52において、ステップS51におけるMKB処理で取得したメディア鍵Kmと、情報記録媒体470から読み取ったバインドシード472とに基づく暗号処理によって、暗号鍵(バインド鍵)Kbを生成する。この鍵生成処理は、例えば、AES暗号アルゴリズムに従った処理として実行される。
【0156】
次に、ステップS53において、バインド鍵Kbによって、情報記録媒体470から読み取ったCPSユニット鍵ファイル473の復号処理を行なう。CPSユニット鍵ファイル473は、各CPSユニットに対応して設定されるユニット鍵[Kun]の暗号化データを格納したファイルである。ユニット鍵ファイルは、前述したように、例えば、[Enc(Kb,f(Ku_n,CCI))]の構成を持つ暗号化データとしてユニット鍵を格納している。この暗号化データに対して、バインド鍵Kbによる復号、利用制御情報(CCI)による演算、例えば排他論理和演算を実行して、CPSユニット鍵を取得する。
【0157】
すなわち、バインド鍵Kbによる、下記の暗号化ユニット鍵、
[Enc(Kb,f(Ku_n,CCI))]
を復号して、データ[Kt]=f(Ku_n,CCI)
を取得し、データ[Kt]=f(Ku_n,CCI)に対して、情報記録媒体470から読み取った利用制御情報(CCI)474を適用した演算処理を実行して、ユニット鍵[Ku_n]を得る。データ[Kt]=f(Ku_n,CCI)が、ユニット鍵[Ku_n]と、利用制御情報[CCI]との排他論理和(XOR)結果データである場合、再度、この演算結果に対して、情報記録媒体から読み取った利用制御情報[CCI]の排他論理和(XOR)演算を実行することで、ユニット鍵[Ku_n]を取得することができる。
【0158】
次に、ステップS54において、情報記録媒体470から読み取った暗号化コンテンツ475に対して、ユニット鍵[Ku_n]を適用した復号処理(例えばAES_D)を実行し、コンテンツ482を取得する。
【0159】
図29には、CPSユニット対応コンテンツの記録、再生処理のシーケンスを1つの情報処理装置の実行シーケンスとして示してあるが、例えば情報記録媒体に対するアクセスを行うドライブ装置を備えた、または接続したPCなどの情報処理装置によってコンテンツの記録や再生を行なう場合のCPSユニット鍵ファイルの記録や、CPSユニット鍵ファイルからのCPSユニット鍵の取得処理は、PC等の情報処理装置側のホストと、情報記録媒体に対するデータ記録読み取りを実行するドライブとの両者間のデータ送受信を介して行なわれる。
【0160】
CPSユニット鍵ファイルの記録処理と、CPSユニット鍵ファイルからのCPSユニット鍵の取得処理を実行する際のホストとドライブ間の処理シーケンスについて、それぞれ図30、図31を参照して説明する。
【0161】
まず、図30を参照してCPSユニット鍵ファイルを情報記録媒体に対して記録する処理を行なう際のホストとドライブ間の処理シーケンスについて説明する。この処理シーケンスは、新たなCPSユニット鍵ファイルを情報記録媒体に記録する際のみならず、例えば既存のCPSユニット鍵ファイルに新たなCPSユニット鍵を追加する場合、CPSユニット鍵ファイルからCPSユニット鍵を削除する場合などにも実行される処理であり、前述したようにCPSユニット鍵ファイルの格納鍵が更新され、変更される場合は、いずれの場合においても新たなバインドシードが設定され、新たなバインドシードによって、CPSユニット鍵ファイルの暗号化が実行されて情報記録媒体に書き込まれる。
【0162】
図30において、右側にホスト、左側にドライブの処理を示している。ドライブには、情報書き込み可能な情報記録媒体が装着されている。まず、ホストは、ステップS71において、乱数aを生成し、ステップS72において、ホストはドライブに対して、CPSユニット鍵ファイルの書き込み領域を示す論理ブロックアドレス(LBA extent)情報と、生成乱数a(nonce)を送信する。
【0163】
ステップS73において、ドライブは、新たなバインドシードとして適用する乱数を生成し、この乱数を自己のメモリにキャッシュする。さらに、ステップS74において、ドライブの秘密鍵(Ks)を適用して、生成した[バインドシード]と、ホストから指定されたCPSユニット鍵ファイルの書き込み領域を示す論理ブロックアドレス(LBA extent)の先頭アドレスである[スタートLBA]と、ホストから受信した[乱数a]の連結データに対して電子署名を行なう。
【0164】
電子署名(S)は、
S=署名(ドライブ秘密鍵(Ks),バインドシード|スタートLBA|乱数a)
として示される。なお、署名(K,a|b|c)は、鍵[K]によるデータa,b,cの連結データに対する署名データを示す。
【0165】
ドライブは、ステップS75において、ドライブの生成したバインドシードと、署名(S)と、ドライブの公開鍵証明書(PKC)をホストに送信する。ホストは、ステップS76において、ドライブから受信した公開鍵証明書(PKC)の署名検証を行い、公開鍵証明書(PKC)の正当性を確認し、さらに、PKCに対応するリボケーションリスト、すなわち無効化されたPKCリストとの照合を行い、ドライブの公開鍵証明書(PKC)の正当性を確認した後、PKCからドライブの公開鍵(Kp)を取得する。
【0166】
その後、ドライブの公開鍵(Kp)を適用して、ドライブから受信した署名(S)、すなわち、
S=署名(ドライブ秘密鍵(Ks),バインドシード|スタートLBA|乱数a)
についての署名検証処理を実行する。
【0167】
次に、バインドシードを適用して、CPSユニット鍵の暗号化に適用する暗号鍵(バインド鍵(Kb)を生成する。バインド鍵(Kb)は、例えば、
Kb=AES_E(Km,バインドシード)
すなわち、メディア鍵[Km]を適用したバインドシードのAES暗号化処理によって生成する。なお、メディア鍵[Km]は、先に図29を参照して説明したようにホストの保有するデバイス鍵[Kd]に基づくMKBの処理によってMKBから取得される鍵データである。
【0168】
次に、ホストは、乱数によって生成した新たなCPSユニット鍵を含むCPSユニット鍵ファイル、あるいは、更新するCPSユニット鍵ファイルに対して、バインド鍵(Kb)を適用して暗号化を実行する。なお、CPSユニット鍵ファイルの更新処理に際しては、予め、ドライブを介して情報記録媒体に記録済みのCPSユニット鍵ファイルを取得しておくことが必要であるが、この処理は、図31を参照して説明するCPSユニット鍵ファイルの読み取り処理に従って行なわれることになる。この処理については後述する。
【0169】
ホストは、新たなバインドシードを適用したバインド鍵(Kb)で暗号化したCPSユニット鍵ファイルを生成すると、ステップS77において、生成または更新したCPSユニット鍵ファイルをドライブに送信する。
【0170】
ドライブは、ステップS78において、ホストから受領したCPSユニット鍵ファイルと、バインドシードを情報記録媒体に記録する。先に、図27、図28を参照して説明したように、バインドシードは、ユーザコントロールデータ(UCD)領域に書き込み、CPSユニット鍵ファイルはユーザデータ領域に書き込まれる。
【0171】
次に、図31を参照して、情報記録媒体に記録済みのCPSユニット鍵ファイルから、CPSユニット鍵の取得を実行する際のホストとドライブ間の処理シーケンスについて説明する。この処理シーケンスは、CPSユニット対応のコンテンツ再生時にCPSユニット鍵を取得する際に実行される。なお、上述したように、CPSユニット鍵ファイルを更新する場合にも実行される。
【0172】
図31において、右側にホスト、左側にドライブの処理を示している。ドライブには、CPSユニット鍵ファイルが記録された情報記録媒体が装着されている。まず、ホストは、ステップS81において、乱数aを生成し、ステップS82において、ホストはドライブに対して、CPSユニット鍵ファイルの書き込み領域を示す論理ブロックアドレス(LBA extent)情報と、生成乱数a(nonce)を送信する。
【0173】
ステップS83において、ドライブは、情報記録媒体からバインドシードを読み取る。さらに、ステップS84において、ドライブの秘密鍵(Ks)を適用して、読み取った[バインドシード]と、ホストから指定されたCPSユニット鍵ファイルの書き込み領域を示す論理ブロックアドレス(LBA extent)の先頭アドレスである[スタートLBA]と、ホストから受信した[乱数a]の連結データに対して電子署名を行なう。電子署名(S)は、
S=署名(ドライブ秘密鍵(Ks),バインドシード|スタートLBA|乱数a)
として示される。
【0174】
ドライブは、ステップS85において、ドライブが情報記録媒体から読み取ったバインドシードと、署名(S)と、ドライブの公開鍵証明書(PKC)をホストに送信する。ホストは、ステップS86において、ドライブから受信した公開鍵証明書(PKC)の署名検証を行い、公開鍵証明書(PKC)の正当性を確認し、さらに、PKCに対応するリボケーションリスト、すなわち無効化されたPKCリストとの照合を行い、ドライブの公開鍵証明書(PKC)の正当性を確認した後、PKCからドライブの公開鍵(Kp)を取得する。
【0175】
その後、ドライブの公開鍵(Kp)を適用して、ドライブから受信した署名(S)、すなわち、
S=署名(ドライブ秘密鍵(Ks),バインドシード|スタートLBA|乱数a)
についての署名検証処理を実行する。
【0176】
次に、バインドシードを適用して、CPSユニット鍵の復号に適用する暗号鍵(バインド鍵(Kb)を生成する。バインド鍵(Kb)は、例えば、
Kb=AES_E(Kmu,バインドシード)
すなわち、メディア鍵[Km]を適用したバインドシードのAES暗号化処理によって生成する。なお、メディア鍵[Km]は、先に図29を参照して説明したようにホストの保有するデバイス鍵[Kd]に基づくMKBの処理によってMKBから取得される鍵データである。
【0177】
次に、ステップS87において、ドライブは、情報記録媒体からCPSユニット鍵ファイルを読み取り、ステップS88において、CPSユニット鍵ファイルをホストに送信する。
【0178】
ホストはステップS89において、ドライブからCPSユニット鍵ファイルを受信し、先に生成したバインド鍵(Kb)を適用して、CPSユニット鍵ファイルを復号してCPSユニット鍵を取得する。
【0179】
CPSユニット対応の暗号化コンテンツを復号、再生する場合は、ここで取得したCPSユニット鍵を適用して復号する。また、CPSユニット鍵ファイルの更新を実行する場合は、先に図30を参照して説明したシーケンスに従って、新たなバインドシードの生成、CPSユニット鍵の暗号化を実行する。
【0180】
[6.情報記録媒体に対するユニット鍵ファイルの記録構成]
次に、情報記録媒体に対するユニット鍵ファイルの記録構成について、説明する。上述したように、ユニット鍵ファイルは、コンテンツの再生の際に読み出しが行なわれるばかりでなく、ファイル内のユニット鍵の追加や削除などの更新の際にも読み取り、再書き込みが実行される。すなわち、他のデータに比較してより頻繁な読み取り書き込みが行われるファイルである。
【0181】
情報記録媒体からのデータ読み取りおよびデータ書き込みは、ECCブロック単位で実行される。ECCブロックは、例えば64Kバイトであり先に図27を参照して説明した18バイトのユーザコントロールデータと2KBのユーザデータ領域を複数含むブロックである。ECCブロックには所定のエラー訂正コードが付与されており、ECCブロック単位で読み取られた後、エラー訂正コードによるエラー訂正処理が実行され、その後、ECCブロックから必要なデータが取得される。データ更新や書き込みに際しても、新たなECCブロックの構成データに基づいてエラー訂正コードを計算し記録することが必要となる。
【0182】
この処理は、ECCブロック単位で実行されることになるため、特定のファイルのデータ読み取り、書き込みに必要なECCブロックの数が増加する場合、さらには読み書きの対象となるECCブロックが複数でかつ物理的に離れた位置にある場合などに、ファイルの読み出し・書き込み処理の時間が増大することになる。また、ECCブロックのサイズが例えば64KBであるのに対し、ファイルの最小書き込み単位であるセクタは2KBであるため、ECCブロック内の一部のセクタだけを対象にしたデータの書き込みが発生する場合がある。この場合、ドライブは一旦ECCブロックに記録されている全てのセクタの情報を読み取り、ホストから書き込み命令を受けている一部のセクタの情報を書き込むべき値に変更し、再度ECCブロック単位で情報をひとまとめにしてECCブロックへの記録を行う。この部分的なECCブロックの書き換え処理をRMW(Read Modify Write)と呼ぶ。このRMW処理は、複数のファイルが1つのECCブロックに記録されている場合に発生する可能性が高く、例えば2KBのサイズを持つユニット鍵ファイルと他のファイル(ファイルA)が1つのECCブロックに記録されている場合、ユニット鍵ファイルの更新、ファイルAの更新のどちらにおいてもRMW処理が発生する。
【0183】
一般的なコンテンツ再生や記録処理におけるデータ読み取り、書き込み処理におけるデータアクセス処理について、図32を参照して説明する。図32は、情報記録媒体(ディスク)におけるトラック方向に沿ったデータ記録構成を示している。
【0184】
トラック方向に沿って64KBのECCブロック単位でデータが記録されている。64KBECCブロックは2KBのセクタデータの集合である。このデータ記録領域には、CPSユニットに対応するCPSユニット鍵を暗号化データとして記録したCPSユニット鍵ファイル501、CPSユニット対応コンテンツのインデックス情報などのタイトル一覧、タイトル情報などを格納したデータベースファイル502、CPSユニット対応のAVストリーム等の一般ファイル503が記録される。また、CPSユニット鍵ファイルが2KBを超える場合、ユニット鍵ファイル504として分割記録される。
【0185】
図32に示す例では、CPSユニット鍵ファイルは、複数の異なるECCブロックに分割されて記録されている。このような記録構成において、コンテンツ再生や、CPSユニット鍵ファイルの更新処理を実行する場合、複数のECCブロックの書き換え処理を複数回行なわなくてはならない。頻繁にアクセスが発生することが予測されるCPSユニット鍵ファイルをこのように複数のECCブロックに分割記録することは、処理時間の増大を招くことになる。また、データベースファイル502や一般ファイル503が更新された場合においても、上述のRMW処理が発生し、CPSユニット鍵ファイルが記録されたECCブロック全体が記録媒体上で再度上書きされることになる。データベースファイル502の書き換え頻度は、CPSユニット鍵ファイルの書き換え頻度と同様に高く、また一般ファイル503の書き換え頻度は、そのファイルの用途に依存し、場合によっては非常に頻繁に書き換えられる可能性もある。そのため、CPSユニット鍵ファイルが記録されたECCブロックにデータベースファイル502や一般ファイル503が記録されている場合、ECCブロック内にCPSユニット鍵ファイルのみが記録されている場合に比べてECCブロックの上書き頻度が高く、物理的な書き換え回数に限界のある光ディスク記録媒体においては、ECCブロックにおける誤り訂正能力の劣化や書き込みエラーの発生によるデータの欠損の可能性が高まってしまう。
【0186】
そこで、CPSユニット鍵ファイルの記録領域として、図33に示すようにECCブロック単位で領域を割り当てる。本実施例においてECCブロックは64KBであり、データ量から鑑みて、CPSユニット鍵ファイルの書き込み領域としては十分なデータ記録領域となる。ただし、さらにCPSユニット鍵ファイルのデータ量が増加する場合は、2つ以上のECCブロックをCPSユニット鍵ファイル用の記録領域として割り当ててもよい。
【0187】
図33の構成では、CPSユニット鍵ファイル511の書き込み領域として、1つのECCブロック510の全体領域が割り当てられる。なお、図33の構成において、CPSユニット鍵ファイル511には、先に説明したバインドシードも含まれている。すなわち、ECCブロックには、先に図27において説明したユーザコントロールデータ(UCD)とユーザデータ領域とが複数、含まれており、CPSユニット鍵ファイル511の書き込み領域として選択されたECCブロック510を構成するユーザコントロールデータ(UCD)の一部にバインドシードが記録され、ECCブロック510を構成するユーザデータ領域の一部にCPSユニット鍵ファイルが記録されている。
【0188】
データベースファイル512、その他の一般ファイル513は、CPSユニット鍵ファイル511の書き込み領域として設定されたECCブロック510以外のECCブロックに書き込まれる。
【0189】
この構成とすれば、CPSユニット鍵ファイル511が、64KB以下のサイズである限り、CPSユニット鍵ファイルの読み取り、更新処理において、1つのECCブロック510の書き換えのみで処理が完了し、処理時間が短縮され効率を高めることが可能となる。また、CPSユニット鍵ファイル以外のファイルの書き込み、更新によってCPSユニット鍵ファイルが記録されたECCブロックにおけるRMW処理が発生する可能性がなくなり、上述したECCブロックの誤り訂正能力の劣化や書き込みエラーの発生によるユニット鍵データの喪失の可能性を低くすることができる。
【0190】
次に、CPSユニット鍵ファイルに対する頻繁なアクセスによって、CPSユニット鍵ファイルの書き込み領域に不良が発生し、データの読み書きが不能になってしまう事態や、エラー発生時にスペア領域に書き込まれた古いCPSユニット鍵ファイルデータが残存してしまい、不正に利用される可能性を排除するための構成について、図34、図35を参照して説明する。
【0191】
まず、一般的に行なわれる書き込みエラー発生時のスペア領域に対する書き込み処理について図34を参照して説明する。図34には、(1)1回目の書き込みエラー、(2)2回目の書き込みエラーの2つの図を示している。(1)1回目の書き込みエラーのデータ構成にあるように、情報記録媒体のデータ記録領域には、通常のデータ読み書きを実行するユーザ領域520とスペア領域530を有する。スペア領域530は、ユーザ領域におけるデータ書き込みに際してエラーが発生し、データ書き込みができなかった場合、そのエラーECCブロックの代替領域として利用される。
【0192】
例えばCPSユニット鍵ファイルの書き込み領域として設定されたECCブロック521がエラーブロックとなってしまった場合には、スペア領域530に代替ECCブロック531が設定されて、この代替ECCブロック531にCPSユニット鍵ファイルのデータ書き込みが行なわれることになる。
【0193】
次に、(2)2回目の書き込みエラーに示すように、ユーザ領域520に設定されたCPSユニット鍵ファイルの書き込み領域として設定されたECCブロック521において、再度、書き込みエラーが発生すると、さらに、スペア領域530の未使用領域から、代替ECCブロック532が設定されて、この代替ECCブロック532にCPSユニット鍵ファイルのデータ書き込みが行なわれることになる。
【0194】
ユーザ領域520にCPSユニット鍵ファイルの書き込み領域として設定されたECCブロック521は、アクセス数が多く、書き込み読み取り回数が増加するにつれ、エラー発生率も高くなることが予想される。その結果として、複数の世代のCPSユニット鍵ファイルがスペア領域530に記録されたまま残存してしまう場合が発生し得る。
【0195】
このような事態の発生を防止するための構成について、図35を参照して説明する。図35に示すデータ記録構成は、CPSユニット鍵ファイルを予め設定された回数以上、同じ領域に書き込まず、同じECCブロックに対するデータ書き込みまたはアクセス数が予め設定された回数に達した場合、他のECCブロックをCPSユニット鍵ファイルの書き込み領域として設定する構成としたものである。
【0196】
例えば、図35に示すユーザ領域540に設定されたユニット鍵ファイル対応ECCブロックA541を、1〜n回のアクセスまたは書き込み回数に至るまで利用し、n+1回目以降は、ユーザ領域540に設定された新たなユニット鍵ファイル対応ECCブロックB542を利用してユニット鍵ファイルを書き込む構成とするものである。
【0197】
なお、ユニット鍵ファイル対応ECCブロックA541、ユニット鍵ファイル対応ECCブロックB542のいずれのECCブロックも、先に図27において説明したユーザコントロールデータ(UCD)とユーザデータ領域とが複数、含まれており、各ECCブロックを構成するユーザコントロールデータ(UCD)の一部にバインドシードが記録され、ECCブロックを構成するユーザデータ領域の一部にCPSユニット鍵ファイルが記録される。
【0198】
このように、1つのECCブロックに一定回数以上のデータ書き込みを行なわないようにすることで、同じ領域に対するデータ書き換え処理回数に上限が設定されることになり、複数回の書き込みエラーの発生や、エラー発生に伴うスペア領域へのデータ書き込みを防止することが可能となり、スペア領域に数世代のCPSユニット鍵ファイルが記録されるといった事態を防止することが可能となる。
【0199】
なお、CPSユニット鍵ファイルの記録領域を変更する場合、前の記録領域のデータは消去する。例えば、使用の終了したECCブロック領域に書き込まれているCPSユニット鍵ファイルの書き込み領域にダミーデータを上書きする処理を行なう。あるいは、バインドシードのみクリアする処理を行なってもよい。
【0200】
なお、CPSユニット鍵ファイルの削除、記録処理の双方の処理において、ホストとドライブの間に不正なプログラムが介入し、実際には削除・記録していないのにホストに削除・記録が完了したと偽装する行為が想定されるため、ホストは削除・記録後に再度対象領域の読み取りを行って、正しく処理が行われたかを確認する処理を行なうシーケンスとすることが好ましい。
【0201】
[7.コンテンツの記録、編集、再生処理]
次に、コンテンツ管理ユニット(CPSユニット)による利用制御がなされるコンテンツの記録処理の実行シーケンスについて、図36に示すフローチャートを参照して説明する。この処理は、データ記録可能な情報記録媒体を装着した情報処理装置において実行するデータ記録処理プログラムによる制御の下で実行される。記録対象コンテンツは、例えば放送コンテンツ、あるいはインターネット、LANなどのネットワークを介して入力するコンテンツなどである。
【0202】
まず、ステップS101において、記録コンテンツに対応するCPSユニットを新たに追加する必要があるか否かを判定する。情報記録媒体に設定済みのCPSユニットを適用し、このCPSユニットに含まれるコンテンツとする設定の場合は、CPSユニット追加は行なわず、ステップS102において、情報記録媒体に記録されたCPSユニット鍵からユニット鍵を読み取る。一方、記録コンテンツに対応する新たなCPSユニットを設定する場合は、ステップS103において新たなCPSユニットに対応するCPSユニット鍵を生成する。例えば乱数生成による鍵生成を行なう。
【0203】
次に、ステップS104において、記録対象コンテンツの暗号化ニットを取得する。コンテンツは、所定データ量のユニットに分割されており、各ユニットに対応する暗号化要否フラグが制御情報に付与されている。例えば、
ユニット暗号化要=1
ユニット暗号化不要=0
などのフラグが設定され、ステップS105において、記録処理を実行するアプリケーションは、ユニットに対応するフラグを確認して、暗号化の要否を判定する。
暗号化ユニットは放送やインターネットからの入力における、制御情報の切り替えが可能な単位であり、特定のサイズや時間長に限定されるものではない。また、暗号化フラグとは特定のフラグに限らず、例えば入力信号に付属しているCCI情報に記載されたコピー制御情報の変化に対応して記録装置が暗号化の有無を判断する処理も含んだ暗号化の有無を判断するための情報を指している。
【0204】
暗号化ユニットの暗号化フラグが1でない場合は、そのユニットの暗号化は不要であるので、ステップS107に進む。暗号化ユニットの暗号化フラグが1の場合は、そのユニットの暗号化は必要であるので、ステップS106において、CPSユニット鍵を適用した暗号化処理を実行した後、ステップS107に進む。
【0205】
ステップS107において、記録コンテンツの最終暗号化ユニットに至ったか否かを判定し、残りユニットがある場合は、ステップS104に戻り、同様の処理を繰り返し実行する。ステップS107において、記録コンテンツの最終暗号化ユニットに至ったと判定した場合は、ステップS108に進み、ユニット鍵ファイルの更新が必要か否かを判定する。CPSユニット鍵の追加、削除がある場合は、更新要と判定する。CPSユニット鍵の追加、削除がない場合は、更新不要と判定し、処理を終了する。
【0206】
CPSユニット鍵の追加、削除があり、更新要と判定した場合は、ステップS109に進みバインドシードを生成し、ステップS110において、バインドシードに基づくバインド鍵を生成し、ステップS111において、ユニット鍵ファイルを生成して、ステップS112において、バインド鍵を適用してCPSユニット鍵ファイルの暗号化を施し、ステップS113において、ユニット鍵ファイルを情報記録媒体に記録し、さらに、ステップS114においてバインドシードを記録した処理を終了する。ステップS109〜S114の処理は、ホストドライブ間の処理として実行される場合は、先に図30を参照して説明したシーケンスに従って実行される。
【0207】
図37にコンテンツの暗号化および情報記録媒体に対する記録処理と、情報記録媒体に記録されたコンテンツの復号、再生、利用処理を実行する情報処理装置の機能を説明するブロック図を示す。
【0208】
コンテンツの情報記録媒体810に対する記録処理に際して、コンテンツ暗号処理部801は、コンテンツの利用制御単位として設定されるコンテンツ管理ユニット(CPSユニット)に対応するユニット鍵を適用した暗号化処理により、コンテンツ管理ユニット対応の暗号化データを生成する。
【0209】
CPSユニット鍵ファイル処理部802は、バインドシードに基づくバインド鍵の生成、バインド鍵に基づくユニット鍵ファイルの暗号化などの処理を実行する。すなわち、ユニット鍵ファイルに含まれるユニット鍵の構成変更に従って値を更新するシードを適用して生成する暗号鍵に基づいて、ユニット鍵ファイルまたはファイル構成データの暗号化処理を実行してユニット鍵ファイルの生成を行なう。
【0210】
管理情報制御部802は、コンテンツ管理ユニット、ユニット鍵ファイル、およびコンテンツ管理ユニットに対応する利用制御情報ファイルなどの対応判定、各種ファイルの生成または更新必要性判断などの処理を実行する。データ記録取得部804は、暗号化データ、ユニット鍵ファイル、および利用制御情報ファイルなどを予め設定された記録データフォーマットに従って情報記録媒体810に記録し、また読み取る処理を実行する。情報記録媒体810に対する記録データは、インデックス情報、プレイリスト、およびAVストリームを含むクリップを有する階層構成データによって構成される動画コンテンツを含む。
【0211】
CPSユニット鍵ファイル処理部802は、情報記録媒体810に記録済みの既存のユニット鍵ファイルに含まれるユニット鍵の増加または削除に応じて、新たな値を持つ新規バインドシードを設定し、新規バインドシードに基づく新規バインド鍵に基づく暗号化処理を施した更新ユニット鍵ファイルを生成する。
【0212】
すなわち、CPSユニット鍵ファイル処理部802は、情報記録媒体810に対する新たなコンテンツ管理ユニットの記録処理に応じて新たに設定された新規ユニット鍵をユニット鍵ファイルに格納するとともに、新規ユニット鍵の追加に応じて、新たな値を持つ新規バインドシードを設定し、新規バインドシードに基づく新規バインド鍵に基づく暗号化処理を施した更新ユニット鍵ファイルを生成する。また、情報記録媒体810からのコンテンツ管理ユニットの移動または削除処理に応じて、移動または削除対象のコンテンツ管理ユニット対応のユニット鍵をユニット鍵ファイルから削除するとともに、ユニット鍵の削除に応じて、新たな値を持つ新規バインドシードを設定し、該新規バインドシードによって生成する新規バインド鍵に基づく暗号化処理を施した更新ユニット鍵ファイルを生成する。
【0213】
なお、CPSユニット鍵ファイル処理部802は、先に、図29を参照して説明したように、情報処理装置に格納されたデバイス鍵を適用した暗号鍵ブロックの処理によって取得されるメディア鍵によるバインドシードの暗号処理によって生成する暗号鍵を適用して、ユニット鍵ファイルまたは該ファイル構成データの暗号化処理を実行する。
【0214】
データ記録取得部804は、先に図27を参照して説明したように、バインドシードを、ユニット鍵ファイルを格納するユーザデータ部とは異なる記録位置に設定される制御情報格納部としてのユーザコントロールデータ部に記録する処理を実行する。また、データ記録取得部804は、先に、図33を参照して説明したように、ユニット鍵ファイルの書き込み領域を情報記録媒体810に対するデータアクセス単位としてのECCブロックを単位として設定した記録フォーマットに従って、ユニット鍵ファイルの書き込み処理を実行する。
【0215】
さらに、データ記録取得部804は、ユニット鍵ファイルの書き込み処理に際して、ユニット鍵ファイルの書き込み数またはアクセス数に応じて情報記録媒体810における書き込み位置の変更を行ない、変更前の位置に書き込まれたデータ、例えばバインドシードなど、少なくとも一部データを消去する処理を実行する。
【0216】
また、情報記録媒体810に記録されたコンテンツの再生処理を実行する場合、コンテンツ暗号処理部801は、コンテンツの利用制御単位として設定されるコンテンツ管理ユニットに対応するユニット鍵に基づいてデータ記録取得部804が情報記録媒体810から読み取った暗号化コンテンツの復号処理を実行する。
【0217】
CPSユニット鍵ファイル処理部802は、コンテンツ管理ユニットに対応するユニット鍵を、情報記録媒体810に記録されたユニット鍵ファイルから取得する。この際、情報記録媒体から取得される鍵生成情報としてのシードを適用した暗号鍵生成処理を実行し、生成暗号鍵に基づいて、ユニット鍵ファイルまたはファイル構成データの復号処理を行なってユニット鍵の取得処理を実行する。
【0218】
CPSユニット鍵ファイル処理部802は、先に図29を参照して説明したように、情報処理装置に格納されたデバイス鍵を適用した暗号鍵ブロックの処理によって取得されるメディア鍵によるバインドシードの暗号処理によって生成する暗号鍵を適用して、ユニット鍵ファイルまたは該ファイル構成データの復号処理を実行する。
【0219】
なお、データ記録取得部804は、先に図27を参照して説明したようにバインドシードを、ユニット鍵ファイルを格納するユーザデータ部とは異なる記録位置に設定される制御情報格納部としてのユーザコントロールデータ部から取得する処理を実行する。
【0220】
データ入力部805は、記録コンテンツの入力の他、ユーザからのコンテンツ指定情報や編集処理情報の入力に適用される。データ出力部806は、例えば再生コンテンツの出力に適用される。
【0221】
[8.情報処理装置の構成例]
次に、図38を参照して、上述のコンテンツの記録、再生処理を行う情報処理装置のハードウェア構成例について説明する。
【0222】
図38に示す情報処理装置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に各ブロックが接続されている。
【0223】
情報処理装置900において、情報記録媒体910に格納された例えばMPEG−TSデータからなるAVストリームデータの再生を行う場合、ドライブ909において情報記録媒体910から読み出されたデータは必要に応じて暗号処理手段905で暗号を解きTS・PS処理手段922によってVideo、Audio、字幕などの各データに分けられる。
【0224】
さらに、MPEGコーデック921において復号されたデジタルデータは入出力I/F903内のD/Aコンバータ904によってアナログ信号に変換され出力される。またデジタル出力を行う場合、暗号処理手段905で復号されたMPEG−TSデータは入出力IF902を通してデジタルデータとして出力される。この場合の出力は例えばIEEE1394やイーサネットケーブル、無線LANなどのデジタルインターフェースに対して行われる。なお、ネットワーク接続機能に対応する場合入出力I/F902はネットワーク接続の機能を備える。
【0225】
また、情報処理装置900内で出力先機器が受信可能な形式にデータ変換をして出力を行う場合、一旦TS処理手段922で分離したVideo、Audio、字幕などに対してMPEGコーデック921においてレート変換、コーデック変換処理を加え、TS・PS処理手段922で再度MPEG−TSやMPEG−PSなどに多重化を行ったデータをデジタル用入出力I/F902から出力する。または、CPU907の制御の下にMPEG以外のコーデック、多重化ファイルに変換をしてデジタル用入出力I/F902から出力することも可能である。
【0226】
CPSユニットに対応する管理情報、例えば利用制御情報やCPSユニット鍵ファイル等の管理データは、情報記録媒体910から読み出された後メモリ908に保管され、CPSユニット鍵ファイルについては、前述した処理によって、バインド鍵を生成した上で復号が実行されてCPSユニット鍵が取得される。
【0227】
次に、情報処理装置900が、例えば放送信号受信などによって取得したデータを記録する際の動作について説明する。記録を行うデータとしてデジタル信号入力とアナログ信号入力の2つのケースが想定される。デジタル信号の場合、デジタル信号用入出力I/F902から入力され、必要に応じて暗号処理手段905によって適切な暗号化処理を施したデータを記録媒体910に保存する。
【0228】
入力されたデジタル信号のデータ形式を変換して保存する場合、MPEGコーデック921およびCPU907、TS・PS処理手段922によって保存用のデータ形式に変換を行い、その後、暗号処理手段905で前述したCPSユニット鍵を適用した暗号処理など、適切な暗号化処理を施して記録媒体910に保存する。アナログ信号の場合、入出力I/F903へ入力されたアナログ信号はA/Dコンバータ904によってデジタル信号に変換され、MPEGコーデック921によって記録時に使用されるコーデックへと変換される。
【0229】
その後、TS・PS処理手段により、記録データの形式であるAV多重化データへ変換され、必要に応じて暗号処理手段905によって適切な暗号化処理を施したデータが記録媒体910に保存される。
【0230】
情報処理装置900において必用な情報を装置外部のネットワーク経由で取得する場合、取得したデータは情報処理装置900内部のメモリ908に一時的に保存される。保存されるデータとしてはコンテンツ再生に必用な鍵情報、コンテンツ再生時に合わせて再生するための字幕、Audio、静止画などのデータ、さらに、コンテンツ利用制御情報(CCI)などのコンテンツ管理情報などが存在する。
【0231】
なお、再生処理、記録処理を実行するプログラムはROM906内に保管されており、プログラムの実行処理中は必要に応じて、パラメータ、データの保管、ワーク領域としてメモリ908を使用する。なお、図38では、データ記録、再生の可能な装置構成を示して説明したが、再生機能のみの装置、記録機能のみを有する装置も構成可能であり、これらの装置においても本発明の適用が可能である。
【0232】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【0233】
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【0234】
例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【0235】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【0236】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【0237】
以上、説明したように、本発明の一実施例の構成によれば、コンテンツの利用制御単位として設定されるコンテンツ管理ユニット(CPSユニット)に対応するユニット鍵を適用した暗号化処理により、コンテンツ管理ユニット対応の暗号化データを生成し、さらに管理情報として、ユニット鍵を格納したユニット鍵ファイルの生成または更新を行なって情報記録媒体に記録し、コンテンツの再生利用に際しては、ユニット鍵ファイルからの鍵取得を行なう構成とした。ユニット鍵ファイルに含まれるユニット鍵の構成変更に従って値を更新するシードを適用して生成する暗号鍵に基づいて、ユニット鍵ファイルまたは該ファイル構成データの暗号化処理を実行したユニット鍵ファイルを設定する構成としたので、コンテンツ管理ユニットの移動などの格納コンテンツの変動に応じてシード情報が変更されることになり、情報記録媒体に格納されたコンテンツに対する対応関係を維持したユニット鍵の管理が可能となり、不正なユニット鍵利用による不正なコンテンツ利用を防止することが可能となる。
【0238】
さらに、本発明の一実施例構成によれば、ユニット鍵ファイルの書き込み領域をECCブロック単位で設定したので、ユニット鍵ファイルの読み書き処理を効率的に実行することができる。また、本発明の一実施例では、ユニット鍵ファイルの書き込み領域を、適宜変更する構成としたので、書き込みエラーが複数回に渡って発生し、スペア領域に複数のユニット鍵ファイルの記録データが残存してしまうといったことが防止される。
【図面の簡単な説明】
【0239】
【図1】情報記録媒体の格納データの記録フォーマットについて説明する図である。
【図2】情報記録媒体の格納データの暗号化処理の一構成例について説明する図である。
【図3】情報記録媒体の格納データに対応するコンテンツ管理ユニット(CPSユニット)の一設定例を示す図である。
【図4】コンテンツ管理ユニット(CPSユニット)として記録されたコンテンツの再生シーケンスについて説明する図である。
【図5】バーチャルプレイリストを含む情報記録媒体の格納データの記録フォーマットについて説明する図である。
【図6】バーチャルプレイリストを含むデータに対応するコンテンツ管理ユニット(CPSユニット)の設定における問題点を説明する図である。
【図7】コンテンツ管理ユニット(CPSユニット)の一設定例について説明する図である。
【図8】コンテンツ管理ユニット(CPSユニット)の一設定例について説明する図である。
【図9】コンテンツ管理ユニット(CPSユニット)の一設定例について説明する図である。
【図10】コンテンツ管理ユニット(CPSユニット)の一設定例について説明する図である。
【図11】コンテンツ管理ユニット(CPSユニット)の一設定例について説明する図である。
【図12】コンテンツ管理ユニット(CPSユニット)とCPSユニット鍵との対応について説明する図である。
【図13】コンテンツ管理ユニット(CPSユニット)に対応するCPSユニット鍵を格納するCPSユニット鍵ファイルの構成例について説明する図である。
【図14】コンテンツ管理ユニット(CPSユニット)に対応するCPSユニット鍵を格納するCPSユニット鍵ファイルの構成例について説明する図である。
【図15】情報記録媒体が記録再生ディスク(BDAV)である場合のBDAVフォーマットに対応するディレクトリ構造を示す図である。
【図16】情報記録媒体が再生専用ディスク(BDMV)である場合のBDMVフォーマットに対応するディレクトリ構造を示す図である。
【図17】CPSユニット鍵ファイルの一構成例について説明する図である。
【図18】CPSユニット鍵ファイルの一構成例について説明する図である。
【図19】CPSユニット鍵ファイルの一構成例について説明する図である。
【図20】CPSユニット鍵ファイルの一構成例について説明する図である。
【図21】CPSユニット鍵ファイルの一構成例について説明する図である。
【図22】CPSユニット鍵ファイルの一構成例について説明する図である。
【図23】CPSユニット鍵ファイルの一構成例について説明する図である。
【図24】CPSユニット鍵ファイルの一構成例について説明する図である。
【図25】CPSユニット鍵ファイルの暗号化構成について説明する図である。
【図26】CPSユニット鍵ファイルの暗号化構成について説明する図である。
【図27】バインドシードおよびCPSユニット鍵ファイルの記録構成について説明する図である。
【図28】バインドシードを含むユーザコントロールデータのフォーマットについて説明する図である。
【図29】ユニット鍵ファイルおよびコンテンツの暗号化、記録処理、および復号、再生処理シーケンスについて説明する図である。
【図30】ホスト−ドライブ間のユニット鍵ファイルの記録処理シーケンスについて説明するシーケンス図である。
【図31】ホスト−ドライブ間のユニット鍵ファイルの読み取り処理シーケンスについて説明するシーケンス図である。
【図32】ユニット鍵ファイルの記録構成例について説明する図である。
【図33】ECCブロックを単位としてユニット鍵ファイルの記録領域を設定したユニット鍵ファイルの記録構成例について説明する図である。
【図34】ユニット鍵ファイルの書き込みエラー発生時の問題点について説明する図である。
【図35】書き込みエラーの発生によるユニット鍵ファイルの残存を防止したユニット鍵ファイルの記録構成例について説明する図である。
【図36】コンテンツ管理ユニット(CPSユニット)構成を持つデータの記録処理シーケンスについて説明するフローチャートを示す図である。
【図37】コンテンツの暗号化および情報記録媒体に対する記録処理と、情報記録媒体に記録されたコンテンツの復号、再生、利用処理を実行する情報処理装置の機能を説明するブロック図である。
【図38】情報記録媒体を装着して再生処理または記録処理を実行する情報処理装置の構成例について説明する図である。
【符号の説明】
【0240】
110 インデックス情報
120〜123 プレイリスト
125,126 リアルプレイリスト
127 バーチャルプレイリスト
130〜133 クリップ
141 メニューサムネイルインデックス
142 マークサムネイルインデックス
143,144 画像ファイル
170 情報記録媒体
171 MKB
172 バインドシード
173 CPSユニット鍵ファイル
174 利用制御情報
175 暗号化コンテンツ
181 デバイス鍵
182 コンテンツ
201 ユニット鍵ファイルヘッダ
202 ユニット鍵ブロック
400 情報記録媒体
411,412 CPSユニット
421 CPSユニット鍵ファイル
422 バインドシード
423 CPSユニット鍵ファイル
424 バインドシード
425 CPSユニット鍵ファイル
426 バインドシード
431 情報記録媒体
441 バインドシード
442 CPSユニット鍵ファイル
443 バインドシード
444,445 CPSユニット鍵ファイル
446 バインドシード
447,448 CPSユニット鍵ファイル
450 情報処理装置
451 デバイス鍵
452 MKB
453 バインドシード
454 利用制御情報
455 ユニット鍵
456 コンテンツ
460 情報処理装置
461 デバイス鍵
462 コンテンツ
470 情報記録媒体
471 MKB
472 バインドシード
473 CPSユニット鍵ファイル
474 利用制御情報
475 暗号化コンテンツ
500 ECCブロック
501 CPSユニット鍵ファイル
502 データベースファイル
503 一般ファイル
504 CPSユニット鍵ファイル
510 ECCブロック
511 CPSユニット鍵ファイル
512 データベースファイル
513 一般ファイル
520 ユーザ領域
521 CPSユニット鍵ファイル
530 スペア領域
531 代替ECCブロック
532 代替ECCブロック
540 ユーザ領域
541 CPSユニット鍵ファイル
542 CPSユニット鍵ファイル
801 コンテンツ暗号処理部
802 CPSユニット鍵ファイル処理部
803 管理情報制御部
804 記録再生部
805 入力部
806 出力部
810 情報記録媒体
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】
前記データ記録部は、
前記ユニット鍵ファイルの書き込み領域を情報記録媒体に対するデータアクセス単位としてのECCブロックを単位として設定した記録フォーマットに従って、前記ユニット鍵ファイルの書き込み処理を実行する構成であることを特徴とする請求項1に記載の情報処理装置。
【請求項8】
前記データ記録部は、
前記ユニット鍵ファイルの書き込み処理に際して、前記ユニット鍵ファイルの書き込み数またはアクセス数に応じて情報記録媒体における書き込み位置の変更を行なう構成であることを特徴とする請求項1に記載の情報処理装置。
【請求項9】
前記データ記録部は、
前記ユニット鍵ファイルの書き込み処理に際して、前記ユニット鍵ファイルの書き込み数またはアクセス数に応じて情報記録媒体における書き込み位置の変更を行なうとともに、該書き込み位置変更処理に際して、変更前の位置に書き込まれたデータの少なくとも一部データを消去する処理を実行する構成であることを特徴とする請求項1に記載の情報処理装置。
【請求項10】
前記消去対象とするデータは、シード情報を含むことを特徴とする請求項9に記載の情報処理装置。
【請求項11】
前記情報処理装置は、
情報記録媒体に対するアクセスを実行するドライブと、前記ドライブを介して情報記録媒体に対するアクセス処理を実行するホストを有し、
前記ドライブは、前記シードの生成処理を実行し、
前記ホストは、前記ドライブの生成したシードを適用して暗号鍵を生成して、該暗号鍵に基づく暗号化処理を施したユニット鍵ファイルの生成処理を実行する構成であることを特徴とする請求項1に記載の情報処理装置。
【請求項12】
情報記録媒体に記録されたコンテンツの再生処理を実行する情報処理装置であり、
情報記録媒体に記録されたデータの読み取りを実行するデータ取得部と、
コンテンツの利用制御単位として設定されるコンテンツ管理ユニットに対応するユニット鍵を、前記情報記録媒体に記録されたユニット鍵ファイルから取得するユニット鍵ファイル処理部と、
前記ユニット鍵を適用して、情報記録媒体に記録された暗号化コンテンツの復号処理を実行するコンテンツ暗号処理部とを有し、
前記ユニット鍵ファイル処理部は、
情報記録媒体から取得される鍵生成情報としてのシードを適用した暗号鍵生成処理を実行し、生成暗号鍵に基づく前記ユニット鍵ファイルまたは該ファイル構成データの復号処理によりユニット鍵の取得処理を実行する構成であることを特徴とする情報処理装置。
【請求項13】
前記ユニット鍵ファイル処理部は、
情報処理装置に格納されたデバイス鍵を適用した暗号鍵ブロックの処理によって取得されるメディア鍵による前記シードの暗号処理によって生成する暗号鍵を適用して、前記ユニット鍵ファイルまたは該ファイル構成データの復号処理を実行する構成であることを特徴とする請求項12に記載の情報処理装置。
【請求項14】
前記データ取得部は、
前記シードを、前記ユニット鍵ファイルを格納するユーザデータ部とは異なる記録位置に設定される制御情報格納部としてのユーザコントロールデータ部から取得する処理を実行する構成であることを特徴とする請求項12に記載の情報処理装置。
【請求項15】
前記情報処理装置は、
情報記録媒体に対するアクセスを実行するドライブと、前記ドライブを介して情報記録媒体に対するアクセス処理を実行するホストを有し、
前記ドライブは、前記シードの生成処理を実行し、
前記ホストは、前記ドライブの生成したシードを適用して暗号鍵を生成して、該暗号鍵に基づく前記ユニット鍵ファイルまたは該ファイルの構成データの復号処理を実行しユニット鍵を取得する構成であることを特徴とする請求項12に記載の情報処理装置。
【請求項16】
情報記録媒体であり、
コンテンツの利用制御単位として設定されるユニットに区分され、該ユニットに対応するユニット鍵を適用した暗号化データを構成データとして含むコンテンツ管理ユニットと、
前記ユニット鍵を格納した鍵ファイルであり、該鍵ファイルに含まれるユニット鍵の構成変更に従って値を更新するシードを適用して生成する暗号鍵に基づいて、前記ユニット鍵ファイルまたは該ファイル構成データの暗号化処理が施されたユニット鍵ファイルと、
前記シードと、
を格納した構成を有することを特徴とする情報記録媒体。
【請求項17】
前記シードは、前記ユニット鍵ファイルを格納するユーザデータ部とは異なる記録位置に設定される制御情報格納部としてのユーザコントロールデータ部に記録した構成を有することを特徴とする請求項16に記載の情報記録媒体。
【請求項18】
前記ユニット鍵ファイルの書き込み領域は、情報記録媒体に対するデータアクセス単位としてのECCブロックを単位として設定されていることを特徴とする請求項16に記載の情報記録媒体。
【請求項19】
情報記録媒体に対する情報記録処理を実行する情報処理方法であり、
コンテンツの利用制御単位であるコンテンツ管理ユニットに対応するユニット鍵を適用した暗号化処理により暗号化コンテンツを生成するコンテンツ暗号処理ステップと、
前記ユニット鍵を格納した鍵ファイルの生成ステップであり、該鍵ファイルに含まれるユニット鍵の構成変更に従って値を更新するシードを適用して生成する暗号鍵に基づいて、前記ユニット鍵ファイルまたは該ファイル構成データの暗号化処理を実行してユニット鍵ファイルの生成を行なうユニット鍵ファイル処理ステップと、
前記暗号化コンテンツを構成データとするコンテンツ管理ユニット、および前記ユニット鍵ファイルを予め設定された記録データフォーマットに従って情報記録媒体に記録するデータ記録ステップと、
を有することを特徴とする情報処理方法。
【請求項20】
前記ユニット鍵ファイル処理ステップは、
前記情報記録媒体に記録済みの既存のユニット鍵ファイルに含まれるユニット鍵の増加または削除に応じて、新たな値を持つ新規シードを設定し、該新規シードに基づく新規暗号鍵に基づく暗号化処理を施した更新ユニット鍵ファイルを生成するステップであることを特徴とする請求項19に記載の情報処理方法。
【請求項21】
前記ユニット鍵ファイル処理ステップは、
前記情報記録媒体に対する新たなコンテンツ管理ユニットの記録処理に応じて新たに設定された新規ユニット鍵を前記ユニット鍵ファイルに格納するとともに、該新規ユニット鍵の追加に応じて、新たな値を持つ新規シードを設定し、該新規シードに基づく新規暗号鍵に基づく暗号化処理を施した更新ユニット鍵ファイルを生成するステップであることを特徴とする請求項19に記載の情報処理方法。
【請求項22】
前記ユニット鍵ファイル処理ステップは、
前記情報記録媒体からのコンテンツ管理ユニットの移動または削除処理に応じて、移動または削除対象のコンテンツ管理ユニット対応のユニット鍵をユニット鍵ファイルから削除するとともに、該ユニット鍵の削除に応じて、新たな値を持つ新規シードを設定し、該新規シードに基づく新規暗号鍵に基づく暗号化処理を施した更新ユニット鍵ファイルを生成するステップであることを特徴とする請求項19に記載の情報処理方法。
【請求項23】
前記ユニット鍵ファイル処理ステップは、
情報処理装置に格納されたデバイス鍵を適用した暗号鍵ブロックの処理によって取得されるメディア鍵による前記シードの暗号処理によって生成する暗号鍵を適用して、前記ユニット鍵ファイルまたは該ファイル構成データの暗号化処理を実行するステップを含むことを特徴とする請求項19に記載の情報処理方法。
【請求項24】
前記データ記録ステップは、
前記シードを、前記ユニット鍵ファイルを格納するユーザデータ部とは異なる記録位置に設定される制御情報格納部としてのユーザコントロールデータ部に記録する処理を実行するステップを含むことを特徴とする請求項19に記載の情報処理方法。
【請求項25】
前記データ記録ステップは、
前記ユニット鍵ファイルの書き込み領域を情報記録媒体に対するデータアクセス単位としてのECCブロックを単位として設定した記録フォーマットに従って、前記ユニット鍵ファイルの書き込み処理を実行するステップを含むことを特徴とする請求項19に記載の情報処理方法。
【請求項26】
前記データ記録ステップは、
前記ユニット鍵ファイルの書き込み処理に際して、前記ユニット鍵ファイルの書き込み数またはアクセス数に応じて情報記録媒体における書き込み位置の変更を行なうステップを含むことを特徴とする請求項19に記載の情報処理方法。
【請求項27】
前記データ記録ステップは、
前記ユニット鍵ファイルの書き込み処理に際して、前記ユニット鍵ファイルの書き込み数またはアクセス数に応じて情報記録媒体における書き込み位置の変更を行なうとともに、該書き込み位置変更処理に際して、変更前の位置に書き込まれたデータの少なくとも一部データを消去する処理を実行するステップを含むことを特徴とする請求項19に記載の情報処理方法。
【請求項28】
前記消去対象とするデータは、シード情報を含むことを特徴とする請求項27に記載の情報処理方法。
【請求項29】
前記情報処理方法は、
情報記録媒体に対するアクセスを実行するドライブと、前記ドライブを介して情報記録媒体に対するアクセス処理を実行するホストによって実行され、
前記ドライブによる前記シードの生成処理ステップと、
前記ドライブから前記ホストに対するシードの送信ステップと、
前記ホストによる、前記シードを適用した暗号鍵の生成、該暗号鍵に基づく暗号化処理を施したユニット鍵ファイルの生成処理を実行するステップと、
前記ホストから前記ドライブに対する前記ユニット鍵ファイルの送信ステップと、
前記ドライブによる前記ユニット鍵ファイルの情報記録媒体に対する記録処理ステップと、
を有することを特徴とする請求項19に記載の情報処理方法。
【請求項30】
情報記録媒体に記録されたコンテンツの再生処理を実行する情報処理方法であり、
情報記録媒体に記録されたデータの読み取りを実行するデータ取得ステップと、
コンテンツの利用制御単位として設定されるコンテンツ管理ユニットに対応するユニット鍵を、前記情報記録媒体に記録されたユニット鍵ファイルから取得するユニット鍵ファイル処理ステップと、
前記ユニット鍵を適用して、情報記録媒体に記録された暗号化コンテンツの復号処理を実行するコンテンツ暗号処理ステップとを有し、
前記ユニット鍵ファイル処理ステップは、
情報記録媒体から取得される鍵生成情報としてのシードを適用した暗号鍵生成処理を実行し、生成暗号鍵に基づく前記ユニット鍵ファイルまたは該ファイル構成データの復号処理によりユニット鍵の取得処理を実行するステップであることを特徴とする情報処理方法。
【請求項31】
前記ユニット鍵ファイル処理ステップは、
情報処理装置に格納されたデバイス鍵を適用した暗号鍵ブロックの処理によって取得されるメディア鍵による前記シードの暗号処理によって生成する暗号鍵を適用して、前記ユニット鍵ファイルまたは該ファイル構成データの復号処理を実行するステップを含むことを特徴とする請求項30に記載の情報処理方法。
【請求項32】
前記データ取得ステップは、
前記シードを、前記ユニット鍵ファイルを格納するユーザデータ部とは異なる記録位置に設定される制御情報格納部としてのユーザコントロールデータ部から取得する処理を実行するステップを含むことを特徴とする請求項30に記載の情報処理方法。
【請求項33】
前記情報処理方法は、
情報記録媒体に対するアクセスを実行するドライブと、前記ドライブを介して情報記録媒体に対するアクセス処理を実行するホストによって実行され、
前記ドライブによる前記シードの生成処理ステップと、
前記ドライブから前記ホストに対するシードの送信ステップと、
前記ドライブによる前記ユニット鍵ファイルの情報記録媒体からの取得処理ステップと、
前記ドライブから前記ホストに対する前記ユニット鍵ファイルの送信ステップと、
前記ホストによる、前記シードを適用した暗号鍵の生成、該暗号鍵に基づく前記ユニット鍵ファイルまたは該ファイルの構成データの復号処理によるユニット鍵取得ステップと、
を有することを特徴とする請求項30に記載の情報処理方法。
【請求項34】
情報記録媒体に対する情報記録処理をコンピュータ上において実行させるコンピュータ・プログラムであり、
コンテンツの利用制御単位であるコンテンツ管理ユニットに対応するユニット鍵を適用した暗号化処理により暗号化コンテンツを生成するコンテンツ暗号処理ステップと、
前記ユニット鍵を格納した鍵ファイルの生成ステップであり、該鍵ファイルに含まれるユニット鍵の構成変更に従って値を更新するシードを適用して生成する暗号鍵に基づいて、前記ユニット鍵ファイルまたは該ファイル構成データの暗号化処理を実行してユニット鍵ファイルの生成を行なうユニット鍵ファイル処理ステップと、
前記暗号化コンテンツを構成データとするコンテンツ管理ユニット、および前記ユニット鍵ファイルを予め設定された記録データフォーマットに従って情報記録媒体に記録するデータ記録ステップと、
を有することを特徴とするコンピュータ・プログラム。
【請求項35】
情報記録媒体に記録されたコンテンツの再生処理をコンピュータ上において実行させるコンピュータ・プログラムであり、
情報記録媒体に記録されたデータの読み取りを実行するデータ取得ステップと、
コンテンツの利用制御単位として設定されるコンテンツ管理ユニットに対応するユニット鍵を、前記情報記録媒体に記録されたユニット鍵ファイルから取得するユニット鍵ファイル処理ステップと、
前記ユニット鍵を適用して、情報記録媒体に記録された暗号化コンテンツの復号処理を実行するコンテンツ暗号処理ステップとを有し、
前記ユニット鍵ファイル処理ステップは、
情報記録媒体から取得される鍵生成情報としてのシードを適用した暗号鍵生成処理を実行し、生成暗号鍵に基づく前記ユニット鍵ファイルまたは該ファイル構成データの復号処理によりユニット鍵の取得処理を実行するステップであることを特徴とするコンピュータ・プログラム。

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

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate


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