(57)【特許請求の範囲】
【請求項１】
情報記録媒体からのデータ読み取りおよび出力を実行するドライブ装置であり、
情報記録媒体を装着しデータ読み取りを実行する記録媒体インタフェースと、
データ再生プログラムとしてのホストアプリケーションを実行する再生処理装置との通信を実行する入出力インタフェースと、
前記再生処理装置に対する情報記録媒体からの読み取りデータの出力制御を実行するデータ処理部とを有し、
前記情報記録媒体は、ユニット単位で異なる暗号鍵による暗号化を施すことでユニット単位の再生許容アプリケーションを設定した暗号化ユニットを記録した構成であり、
前記データ処理部は、
前記ホストアプリケーションに対応して設定されたアプリケーション属性値と、前記情報記録媒体に記録された鍵生成情報を取得し、取得したアプリケーション属性値と前記鍵生成情報とを適用した演算処理を含むデータ処理によってユニット単位の暗号鍵を生成し、生成した暗号鍵と、前記ユニット単位の暗号鍵の適用によって復号可能な暗号化ユニットを含むコンテンツとを再生処理装置に出力する構成を有することを特徴とするドライブ装置。
【請求項２】
前記データ処理部は、
前記ホストアプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書に記録されたアプリケーションＩＤを取得し、該アプリケーションＩＤまたはアプリケーションＩＤに対応するアプリケーションＩＤ対応値を、前記アプリケーション属性値として適用し、前記暗号鍵の生成処理を実行する構成であることを特徴とする請求項１に記載のドライブ装置。
【請求項３】
前記データ処理部は、
前記ホストアプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書に記録されたアプリケーションＩＤを取得し、情報記録媒体から読み出したアプリケーションＩＤまたはアプリケーションＩＤ対応値データの検索処理により、前記アプリケーション公開鍵証明書に記録されたアプリケーションＩＤに対応するアプリケーションＩＤまたはアプリケーションＩＤ対応値を取得し、取得したアプリケーションＩＤまたはアプリケーションＩＤ対応値を前記アプリケーション属性値として適用し、前記暗号鍵の生成処理を実行する構成であることを特徴とする請求項１に記載のドライブ装置。
【請求項４】
前記データ処理部は、
情報記録媒体から読み出したアプリケーションＩＤまたはアプリケーションＩＤ対応値データの検索処理により、前記アプリケーション公開鍵証明書に記録されたアプリケーションＩＤに対応するアプリケーションＩＤまたはアプリケーションＩＤ対応値を取得出来なかった場合は、ホストアプリケーションを実行する再生処理装置に対してエラー通知処理を実行する構成であることを特徴とする請求項３に記載のドライブ装置。
【請求項５】
前記データ処理部は、
ドライブ装置と前記ホストアプリケーション間の相互認証処理を実行し、該相互認証処理において、前記ホストアプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書を取得し、取得したアプリケーション公開鍵証明書の署名検証による正当性確認の後、該アプリケーション公開鍵証明書からアプリケーションＩＤを取得し、該アプリケーションＩＤまたはアプリケーションＩＤに対応するアプリケーションＩＤ対応値を、前記アプリケーション属性値として適用する構成であることを特徴とする請求項１に記載のドライブ装置。
【請求項６】
前記アプリケーション属性値を適用した演算処理は、情報記録媒体から取得可能なデータとの排他論理和演算処理またはハッシュ演算処理であることを特徴とする請求項１に記載のドライブ装置。
【請求項７】
前記アプリケーション属性値を適用した演算処理を含むデータ処理は、情報記録媒体から取得可能なデータとの演算処理と、該演算処理結果と情報記録媒体から取得可能なデータとの暗号処理による暗号鍵生成処理を含む構成であることを特徴とする請求項１に記載のドライブ装置。
【請求項８】
前記データ処理部は、
情報記録媒体からの読み取りデータに含まれる出力制御フラグの値に応じて、前記暗号鍵に基づく暗号化処理の実行の有無を判定する処理を行なう構成であることを特徴とする請求項１に記載のドライブ装置。
【請求項９】
情報記録媒体を装着したドライブ装置から情報記録媒体格納データを入力し再生処理を実行する再生処理装置であり、
データ再生プログラムとしてのホストアプリケーションを実行するデータ処理部と、
前記ホストアプリケーションに対応するアプリケーションＩＤを記録した証明書を格納した記憶部と、
ドライブ装置との通信を実行する入出力インタフェースとを有し、
前記情報記録媒体は、ユニット単位で異なる暗号鍵による暗号化を施すことでユニット単位の再生許容アプリケーションを設定した暗号化ユニットを記録した構成であり、
前記データ処理部は、
前記ドライブ装置に対して前記アプリケーションＩＤを記録した証明書を出力し、前記ドライブ装置において前記アプリケーションＩＤ、またはアプリケーションＩＤ対応値と、前記情報記録媒体に記録された鍵生成情報を適用して生成したユニット単位の暗号鍵を入力し、前記ドライブ装置からの入力データに含まれる暗号化ユニットに対して前記ユニット単位の暗号鍵を適用した復号処理を実行してデータ再生を行なう構成であることを特徴とする再生処理装置。
【請求項１０】
前記証明書は公開鍵証明書であり、
前記データ処理部は、
前記ドライブ装置との相互認証処理を実行し、該相互認証処理に際して前記公開鍵証明書を前記ドライブ装置に対して出力する構成であることを特徴とする請求項９に記載の再生処理装置。
【請求項１１】
情報記録媒体に対するコンツテンツ記録処理を実行する情報処理装置であり、
コンテンツ再生権利を持つアプリケーションに対応して設定されたアプリケーション属性値と、前記情報記録媒体に記録する鍵生成情報を適用した演算処理を含むデータ処理によって、ユニット単位の異なる暗号鍵を生成し、生成したユニット単位の異なる暗号鍵を適用したユニットの暗号化処理により、再生許容アプリケーションをユニット単位で設定した暗号化ユニットを生成して、生成した暗号化ユニットを含むコンテンツを情報記録媒体に記録する処理を実行する構成を有することを特徴とする情報処理装置。
【請求項１２】
前記アプリケーション属性値は、前記アプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書に記録されたアプリケーションＩＤまたはアプリケーションＩＤに対応するアプリケーションＩＤ対応値であることを特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
前記アプリケーション属性値を適用した演算処理は、情報記録媒体に記録するデータとの排他論理和演算処理またはハッシュ演算処理であることを特徴とする請求項１１に記載の情報処理装置。
【請求項１４】
前記アプリケーション属性値を適用した演算処理を含むデータ処理は、情報記録媒体の記録データとの演算処理と、該演算処理結果と情報記録媒体の記録データとの暗号処理による暗号鍵生成処理を含む構成であることを特徴とする請求項１１に記載の情報処理装置。
【請求項１５】
情報記録媒体であり、
コンテンツ再生権利を持つアプリケーションに対応して設定されたアプリケーション属性値を適用した演算処理を含むデータ処理によって生成される暗号鍵により暗号化された暗号化コンテンツを格納し、
ユニット単位で異なる暗号鍵による暗号化を施すことでユニット単位の再生許容アプリケーションを設定した暗号化ユニットを記録した構成を有することを特徴とする情報記録媒体。
【請求項１６】
前記アプリケーション属性値を適用した演算処理は、情報記録媒体に記録するデータとの排他論理和演算処理またはハッシュ演算処理であることを特徴とする請求項１５に記載の情報記録媒体。
【請求項１７】
前記アプリケーション属性値を適用した演算処理を含むデータ処理は、情報記録媒体の記録データとの演算処理と、該演算処理結果と情報記録媒体の記録データとの暗号処理による暗号鍵生成処理を含むことを特徴とする請求項１５に記載の情報記録媒体。
【請求項１８】
前記情報記録媒体は、さらに、
アプリケーションＩＤデータを格納した構成であることを特徴とする請求項１５に記載の情報記録媒体。
【請求項１９】
前記情報記録媒体は、さらに、
アプリケーションＩＤと、アプリケーションＩＤ対応値との対応データを格納した構成であることを特徴とする請求項１５に記載の情報記録媒体。
【請求項２０】
情報記録媒体からのデータ読み取りおよび再生処理装置に対する出力処理を実行するドライブ装置における情報処理方法であり、
前記情報記録媒体は、ユニット単位で異なる暗号鍵による暗号化を施すことでユニット単位の再生許容アプリケーションを設定した暗号化ユニットを記録した構成であり、
前記再生処理装置において実行されるホストアプリケーションに対応して設定されたアプリケーション属性値を取得するアプリケーション属性値取得ステップと、
前記アプリケーション属性値と、前記情報記録媒体に記録された鍵生成情報を適用した演算処理を含むデータ処理によってユニット単位の暗号鍵を生成する暗号鍵生成ステップと、
生成した暗号鍵と、前記ユニット単位の暗号鍵の適用によって復号可能な暗号化ユニットを含むコンテンツとを再生処理装置に出力するステップと、
を有することを特徴とする情報処理方法。
【請求項２１】
前記情報処理方法は、さらに、
前記ホストアプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書に記録されたアプリケーションＩＤを取得し、該アプリケーションＩＤまたはアプリケーションＩＤに対応するアプリケーションＩＤ対応値を、前記アプリケーション属性値として適用し、前記暗号鍵の生成処理を実行するステップを含むことを特徴とする請求項２０に記載の情報処理方法。
【請求項２２】
前記情報処理方法は、さらに、
前記ホストアプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書に記録されたアプリケーションＩＤを取得し、情報記録媒体から読み出したアプリケーションＩＤまたはアプリケーションＩＤ対応値データの検索処理により、前記アプリケーション公開鍵証明書に記録されたアプリケーションＩＤに対応するアプリケーションＩＤまたはアプリケーションＩＤ対応値を取得し、取得したアプリケーションＩＤまたはアプリケーションＩＤ対応値を前記アプリケーション属性値として適用し、前記暗号鍵の生成処理を実行するステップを含むことを特徴とする請求項２０に記載の情報処理方法。
【請求項２３】
前記情報処理方法は、さらに、
情報記録媒体から読み出したアプリケーションＩＤまたはアプリケーションＩＤ対応値データの検索処理により、前記アプリケーション公開鍵証明書に記録されたアプリケーションＩＤに対応するアプリケーションＩＤまたはアプリケーションＩＤ対応値を取得出来なかった場合は、ホストアプリケーションを実行する再生処理装置に対してエラー通知処理を実行するステップを含むことを特徴とする請求項２２に記載の情報処理方法。
【請求項２４】
前記情報処理方法は、さらに、
ドライブ装置と前記ホストアプリケーション間の相互認証処理を実行し、該相互認証処理において、前記ホストアプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書を取得し、取得したアプリケーション公開鍵証明書の署名検証による正当性確認の後、該アプリケーション公開鍵証明書からアプリケーションＩＤを取得し、該アプリケーションＩＤまたはアプリケーションＩＤに対応するアプリケーションＩＤ対応値を、前記アプリケーション属性値として適用するステップを含むことを特徴とする請求項２０に記載の情報処理方法。
【請求項２５】
前記アプリケーション属性値を適用した演算処理は、情報記録媒体から取得可能なデータとの排他論理和演算処理またはハッシュ演算処理であることを特徴とする請求項２０に記載の情報処理方法。
【請求項２６】
前記アプリケーション属性値を適用した演算処理を含むデータ処理は、情報記録媒体から取得可能なデータとの演算処理と、該演算処理結果と情報記録媒体から取得可能なデータとの暗号処理による暗号鍵生成処理を含むことを特徴とする請求項２０に記載の情報処理方法。
【請求項２７】
前記情報処理方法は、さらに、
情報記録媒体からの読み取りデータに含まれる出力制御フラグの値に応じて、前記暗号鍵に基づく暗号化処理の実行の有無を判定する処理を行なうステップを有することを特徴とする請求項２０に記載の情報処理方法。
【請求項２８】
情報記録媒体を装着したドライブ装置から情報記録媒体格納データを入力し再生処理を実行する再生処理装置における情報処理方法であり、
前記情報記録媒体は、ユニット単位で異なる暗号鍵による暗号化を施すことでユニット単位の再生許容アプリケーションを設定した暗号化ユニットを記録した構成であり、
前記ドライブ装置に対して前記アプリケーションＩＤを記録した証明書を出力する証明書出力ステップと、
前記ドライブ装置において前記アプリケーションＩＤ、またはアプリケーションＩＤ対応値と、前記情報記録媒体に記録された鍵生成情報を適用して生成したユニット単位の暗号鍵を入力する暗号鍵入力ステップと、
前記ドライブ装置からの入力データに含まれる暗号化ユニットに対して前記ユニット単位の暗号鍵を適用した復号処理を実行する復号ステップと、
を有することを特徴とする情報処理方法。
【請求項２９】
前記証明書は公開鍵証明書であり、
前記証明書出力ステップは、
前記ドライブ装置との相互認証処理を実行し、該相互認証処理に際して前記公開鍵証明書を前記ドライブ装置に対して出力するステップであることを特徴とする請求項２８に記載の情報処理方法。
【請求項３０】
情報記録媒体に対するコンツテンツ記録処理を実行する情報処理方法であり、
コンテンツ再生権利を持つアプリケーションに対応して設定されたアプリケーション属性値と、前記情報記録媒体に記録する鍵生成情報を適用した演算処理を含むデータ処理によって、ユニット単位の異なる暗号鍵を生成するステップと、
生成したユニット単位の異なる暗号鍵を適用したユニットの暗号化処理により、再生許容アプリケーションをユニット単位で設定した暗号化ユニットを生成して、生成した暗号化ユニットを含むコンテンツを情報記録媒体に記録する処理を実行するステップと、
を有することを特徴とする情報処理方法。
【請求項３１】
前記アプリケーション属性値は、前記アプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書に記録されたアプリケーションＩＤまたはアプリケーションＩＤに対応するアプリケーションＩＤ対応値であることを特徴とする請求項３０に記載の情報処理方法。
【請求項３２】
前記アプリケーション属性値を適用した演算処理は、情報記録媒体に記録するデータとの排他論理和演算処理またはハッシュ演算処理であることを特徴とする請求項３０に記載の情報処理方法。
【請求項３３】
前記アプリケーション属性値を適用した演算処理を含むデータ処理は、情報記録媒体の記録データとの演算処理と、該演算処理結果と情報記録媒体の記録データとの暗号処理による暗号鍵生成処理を含むことを特徴とする請求項３０に記載の情報処理方法。
【請求項３４】
情報記録媒体からのデータ読み取りおよび再生処理装置に対する出力処理をドライブ装置に実行させるコンピュータ・プログラムであり、
前記情報記録媒体は、ユニット単位で異なる暗号鍵による暗号化を施すことでユニット単位の再生許容アプリケーションを設定した暗号化ユニットを記録した構成であり、
前記再生処理装置において実行されるホストアプリケーションに対応して設定されたアプリケーション属性値を取得するアプリケーション属性値取得ステップと、
前記アプリケーション属性値と、前記情報記録媒体に記録された鍵生成情報を適用した演算処理を含むデータ処理によってユニット単位の暗号鍵を生成する暗号鍵生成ステップと、
生成した暗号鍵と、前記ユニット単位の暗号鍵の適用によって復号可能な暗号化ユニットを含むコンテンツとを再生処理装置に出力するステップと、
をドライブ装置に実行させることを特徴とするコンピュータ・プログラム。
【請求項３５】
情報記録媒体を装着したドライブ装置から情報記録媒体格納データを入力し再生処理を再生処理装置に実行させるコンピュータ・プログラムであり、
前記情報記録媒体は、ユニット単位で異なる暗号鍵による暗号化を施すことでユニット単位の再生許容アプリケーションを設定した暗号化ユニットを記録した構成であり、
前記ドライブ装置に対して前記アプリケーションＩＤを記録した証明書を出力する証明書出力ステップと、
前記ドライブ装置において前記アプリケーションＩＤ、またはアプリケーションＩＤ対応値と、前記情報記録媒体に記録された鍵生成情報を適用して生成したユニット単位の暗号鍵を入力する暗号鍵入力ステップと、
前記ドライブ装置からの入力データに含まれる暗号化ユニットに対して前記ユニット単位の暗号鍵を適用した復号処理を実行する復号ステップと、
を再生処理装置に実行させることを特徴とするコンピュータ・プログラム。
【請求項３６】
情報記録媒体に対するコンツテンツ記録処理を情報処理装置に実行させるコンピュータ・プログラムであり、
コンテンツ再生権利を持つアプリケーションに対応して設定されたアプリケーション属性値と、前記情報記録媒体に記録する鍵生成情報を適用した演算処理を含むデータ処理によって、ユニット単位の異なる暗号鍵を生成するステップと、
生成したユニット単位の異なる暗号鍵を適用したユニットの暗号化処理により、再生許容アプリケーションをユニット単位で設定した暗号化ユニットを生成して、生成した暗号化ユニットを含むコンテンツを情報記録媒体に記録する処理を実行するステップと、
を情報処理装置に実行させることを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ドライブ装置、再生処理装置、情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、情報記録媒体に格納されたコンテンツの不正利用の防止を実現するドライブ装置、再生処理装置、情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムに関する。
【背景技術】
【０００２】
近年、ＤＶＤや、青紫レーザディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ）など、大容量のデータを格納可能なディスクが利用、開発されており、大容量データである高精細画像、高品質音声の保存、再生が可能となっている。また、これらの大容量記録媒体の再生環境として、従来のコンシューマ用記録再生装置だけでなく、高性能なＣＰＵやビデオカードを搭載したパーソナルコンピュータ（ＰＣ）、その他の情報再生装置も、様々開発され、利用が進んでいる。      
【０００３】
例えば、ＰＣにおいてコンテンツ再生を行う際の問題として、コンテンツの著作権保護が挙げられる。音楽データ、画像データ等、多くのコンテンツは、一般的にその作成者あるいは販売者に頒布権等が保有されている。従って、これらのコンテンツの配布に際しては、一定の利用制限、すなわち、正規なユーザに対してのみ、コンテンツの利用を許諾し、許可のない複製等が行われないようにする構成をとるのが一般的となっている。
【０００４】
特に、デジタル記録装置および記録媒体によれば、画像や音声を劣化させることなく記録、再生を繰り返すことが可能であり、不正コピーされたコンテンツのインターネットを介した配信や、ＣＤ−Ｒ、ＤＶＤ等の記録媒体にコンテンツをコピーした海賊版ディスクの流通という問題が発生している。
【０００５】
ＤＶＤや青色レーザディスク等の大容量型記録媒体には、著作権の保護対象となる様々な映像情報、音楽情報がデジタルデータとして格納されて市場に流通する。このようなデジタルデータを記録した媒体を市場に流通させる場合には、不正コピーを防止し著作権者の保護を図る構成が必須となる。昨今では、このようなデジタルデータの不正なコピーを防ぐため、デジタル記録装置および記録媒体に違法なコピーを防止するための様々な技術が実用化されている。
【０００６】
例えば、ＤＶＤプレーヤでは、コンテンツ・スクランブルシステム（ＣＳＳ：Ｃｏｎｔｅｎｔ  Ｓｃｒａｍｂｌｅ  Ｓｙｓｔｅｍ）が採用されている。コンテンツ・スクランブルシステムでは、記録媒体、例えばＤＶＤ−ＲＯＭ(Read Only Memory)に、ビデオデータやオーディオデータ等が暗号化されて記録されており、その暗号化されたデータの復号に用いる鍵をライセンスを受けたプレーヤのみに与える。ライセンスは、不正コピーを行わない等の所定の動作規定に従うように設計されたプレーヤに対してのみ与えられる。従って、ライセンスを受けたプレーヤでは、与えられたキーを利用して、情報記録媒体に記録された暗号化データを復号することにより画像や音声を再生することができる。
【０００７】
一方、ライセンスを受けていないプレーヤは、暗号化されたデータを復号するための鍵を有していないため、情報記録媒体に記録された暗号化データの復号を行うことができない。このように、コンテンツ・スクランブルシステム（ＣＳＳ）は、正規のライセンスを持つプレーヤのみのコンテンツ利用を許容するシステムを提供している。
【０００８】
しかし、このコンテンツ・スクランブルシステム（ＣＳＳ）は、確実なコンテンツの不正利用の排除ができないという問題がある。特に、情報記録媒体を装着したドライブからコンテンツをＰＣなどの情報処理装置に出力して再生する処理において、コンテンツの不正利用が行われ得るという問題点が発生する。以下、この問題点について図面を参照して説明する。
【０００９】
図１にコンテンツ・スクランブルシステム（ＣＳＳ）を採用したコンテンツを格納した情報記録媒体の格納データ例と、再生機器（プレーヤ）の処理を示す。
【００１０】
図１に示す情報記録媒体１０は、例えばＤＶＤビデオディスクであり、情報記録媒体１０には、暗号化ディスクキー（Ｓｅｃｕｒｅｄ  Ｄｉｓｃ  Ｋｅｙ）１１、情報記録媒体１０に格納されたコンテンツのタイトル対応の暗号化タイトルキー１２、ＣＳＳ方式に基づくスクランブル処理のなされたコンテンツとしてスクランブルＭＰＥＧデータ１３が格納されている。
【００１１】
情報記録媒体１０を装着してコンテンツ再生を実行する再生機器２０、例えばＤＶＤプレーヤは、再生機器２０に格納されたマスターキーを適用し、ステップＳ１１において、情報記録媒体１０から取得した暗号化ディスクキー（Ｓｅｃｕｒｅｄ  Ｄｉｓｃ  Ｋｅｙ）１１の復号処理を実行し、ディスクキーを取得し、ステップＳ１２において取得したディスクキーを適用して情報記録媒体１０から取得した暗号化タイトルキー１２の復号処理を実行してタイトルキーを取得し、取得したタイトルキーを適用してステップＳ１３において、スクランブルＭＰＥＧデータ１３のスクランブル解除処理を実行した後、ステップＳ１４においてＭＰＥＧデコード処理を実行して音声／映像データ２５を再生する。
【００１２】
次に、ＰＣ等のドライブからコンテンツをＰＣ側に入力し、ＰＣ側のプレーヤアプリケーションによってコンテンツ再生を行なう処理シーケンスについて図２を参照して説明する。
【００１３】
図２に示すように、情報記録媒体を装着したドライブ３０とＰＣ側のプレーヤアプリケーション４０間で、図に示すステップＳ３１，Ｓ４１において、相互認証および鍵共有（ＡＫＥ：Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ａｎｄ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）を実行する。相互認証処理は、例えば公開鍵暗号方式または共通鍵暗号方式に従ったアルゴリズムに従って実行される。相互認証においてセッションキーが生成され、ドライブ３０とＰＣ側のプレーヤアプリケーション４０がセッションキーを共有する。
【００１４】
ドライブ３０は、ステップＳ３２において、セッションキーを適用して情報記録媒体１０から取得した暗号化ディスクキー１１の再暗号化を実行して、プレーヤアプリケーション４０に送信し、また、ステップＳ３３においてセッションキーを適用して情報記録媒体から取得した暗号化タイトルキー１２の再暗号化を実行して、プレーヤアプリケーション４０に送信する。ドライブ３０と、プレーヤアプリケーション４０の実行装置としてのＰＣは接続バス、例えばＡＴＡＰＩ−ＢＵＳによって接続されており、接続バスを介してこれらの暗号化鍵情報がＰＣのプレーヤアプリケーション４０側に送信される。
【００１５】
さらに、ドライブ３０は、情報記録媒体から取得し、ＣＳＳ方式に基づくスクランブル処理のなされたコンテンツであるスクランブルＭＰＥＧデータ１３を、ドライブとＰＣ間の接続バスを介してＰＣ側に出力する。
【００１６】
ＰＣ側のプレーヤアプリケーション４０は、ステップＳ４２において、セッションキーを用いて、ドライブ３０から受領した暗号化ディスクキー１１のセッションキーによる再暗号化データを復号して暗号化ディスクキー１１を取得し、さらに、ステプＳ４３において、ドライブ３０から受領した暗号化タイトルキー１２のセッションキーによる再暗号化データを復号して暗号化タイトルキー１２を取得する。
【００１７】
その後のステップＳ５１〜Ｓ５５の処理は、先に図１を参照して説明した処理（Ｓ１１〜Ｓ１４）と同様の処理となる。
【００１８】
この図２に示す処理におけるドライブ側の処理をフローで示した図を図３に示す。ステップＳ６１において情報記録媒体（ディスク）が挿入されたと判定されると、ステップＳ６２において、ホスト、すなわち図２に示すプレーヤアプリケーション４０を実行するＰＣと相互認証および鍵共有（ＡＫＥ：Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ａｎｄ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）を実行する。
【００１９】
相互認証および鍵共有（ＡＫＥ）に成功（ステップＳ６３：Ｙｅｓ）すると、ドライブに装着した情報記録媒体の格納コンテンツであるＣＳＳスクランブルデータの出力が許可された状態に移行し、このＣＳＳスクランブルデータの出力許可状態が、情報記録媒体が排出されるまで、あるいは電源がオフされるまで継続されることになる。
【００２０】
このように、ドライブは、コンテンツ出力先の機器との相互認証が成立する前は、ＣＳＳスクランブルデータの出力が許可されない状態に設定され、コンテンツ出力先の機器との相互認証が成立した以降は、ＣＳＳスクランブルデータの出力が許可された状態に設定され、この出力許可状態は情報記録媒体が排出されるまであるいは電源がオフされるまで継続される。
【００２１】
このようなドライブからのコンテンツ出力の許容状態により、図４に示すコンテンツの不正利用が発生し得る。
【００２２】
図４（１）は、ドライブからのコンテンツ出力先であるＰＣ等のホスト側のアプリケーションの切り替えによるコンテンツの迂回利用例を示している。
【００２３】
ホスト（ＰＣ）６０側の処理（ステップＳ７１〜Ｓ７３）について説明する。ステップＳ７１において、情報記録媒体を装着したドライブ５０とホスト（ＰＣ）６０の正規のプレーヤアプリケーション間で相互認証を実行する。この相互認証の成立により、ドライブ５０は、ＣＳＳスクランブルデータの出力許可状態に設定される。
【００２４】
ステップＳ７２において、ドライブ５０からＣＳＳスクランブルデータを含む音声／映像（Audio/Video）データを読み出し、ハードディスクに格納する。
【００２５】
ステップＳ７３において、アプリケーションを切り替えて、ＣＳＳ解除ソフトウェアを適用して、ハードディスクに格納されたＣＳＳスクランブルデータのスクランブル解除処理を実行する。
【００２６】
このような処理によってスクランブル解除が可能であり、スクランブル解除のなされた平文コンテンツは無制限に利用され得る。
【００２７】
図４（２）に示す処理は、ホスト（ＰＣ）とドライブ間の接続バス、例えばＡＴＡＰＩ−ＢＵＳの盗聴処理によるコンテンツの不正利用例を示している。
【００２８】
ホスト（ＰＣ）６０側の処理（ステップＳ８１〜Ｓ８３）について説明する。ステップＳ８１において、情報記録媒体を装着したドライブ５０とホスト（ＰＣ）６０の正規のプレーヤアプリケーション間で相互認証を実行し、コンテンツの取得、再生を実行する。
【００２９】
コンテンツは、ＣＳＳスクランブルデータとして、ホスト（ＰＣ）とドライブ間の接続バス、例えばＡＴＡＰＩ−ＢＵＳを介して入力される。
【００３０】
ホスト６０は、ステップＳ８２において、ホスト（ＰＣ）とドライブ間の接続バスのモニタリングを実行し、モニタリングによって取得したデータ、すなわち、ＣＳＳスクランブルデータをハードディスクに格納する。
【００３１】
ステップＳ６３において、ＣＳＳ解除ソフトウェアを適用して、ハードディスクに格納されたＣＳＳスクランブルデータのスクランブル解除処理を実行する。
【００３２】
このような処理によってスクランブル解除されたコンテンツの取得が可能であり、スクランブル解除のなされた平文コンテンツは無制限に利用され得る。
【００３３】
このように、現行のコンテンツ・スクランブルシステム（ＣＳＳ）は、確実なコンテンツの不正利用の排除ができない。特に、上述したように情報記録媒体を装着したドライブからコンテンツをＰＣなどの情報処理装置に出力して再生する際のコンテンツの不正利用が発生しやすいという問題点が存在する。
【００３４】
しかし、すでに広く利用されているＣＳＳの仕組みを変えて問題に対処することはユーザの所有するＤＶＤプレーヤやＤＶＤ再生アプリケーションとの互換性を失うことにつながることから、現実的な対処法としては好ましくない。また、ＤＶＤなどで扱うビデオ信号はＮＴＳＣなどの標準画質のものであり、これを２時間記録することを目標として記憶容量を１層ＤＶＤの場合で４．７ＧＢとして規格化されたものである。
【００３５】
Ｂｌｕ−ｒａｙのような青紫レーザーを利用した新規格のディスク・フォーマットはＨＤ（High Definition）といった高品位ビデオ信号を記録することを目標としており、光ディスクメディアの容量も約５０ＧＢへ拡大する。容量の増大、データ品質の向上に伴い記録コンテンツの価値はＤＶＤ以上に高くなることから、ＣＳＳ方式の抱える問題の深刻さもＤＶＤ以上に高くなり、コンテンツの不正利用を排除することの重要性はさらに高くなる。
【００３６】
Ｂｌｕ−ｒａｙディスクのような大容量の記録媒体では、例えば１つの映画を１つのフォーマットで記録するだけではなく、様々なビデオコーデックを利用して異なる符号化データとして記録して、ユーザのＰＣなどで利用する様々な再生アプリケーション、コーデックに対応可能とするなどのデータ記録構成を採用することができる。
例えば、ディスクに同一映画の異なる符号化データとしての記録データ１，２を記録し、
記録データ１は、再生アプリケーション１対応のデータ
記録データ２は、再生アプリケーション２対応のデータ
とするなどである。
【００３７】
さらに、ディスクにゲームアプリケーションによって再生可能なゲームコンテンツを格納し、ＨＤ（High Definition）再生可能なＨＤムービーデータを格納し、
ＰＣにおいて実行するアプリケーションがＨＤ再生アプリケーションである場合には、ディスクからＨＤデータを読み取ってＨＤを再生し、ＰＣにおいて実行するアプリケーションがゲームアプリケーションである場合には、ディスクからゲームコンテンツを読み取って再生するなどの処理が可能である。
【００３８】
しかし、このように様々なアプリケーション対応のデータを記録媒体に格納し、アプリケーションに応じた再生処理を行なう構成とした場合、先に図４を参照して説明したように、再生処理を行なうＰＣ等において不正なアプリケーションが存在すると、コンテンツが不正アプリケーションに提供され、不正に利用されるという問題が発生する。
【発明の開示】
【発明が解決しようとする課題】
【００３９】
本発明は、上述の問題点に鑑みてなされたものであり、ドライブからのコンテンツ出力条件を厳格に設定して、コンテンツの不正利用を排除することを可能としたドライブ装置、再生処理装置、情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
【００４０】
さらに、詳細には、コンテンツ再生を実行するアプリケーションに対応して設定される値であるアプリケーション属性値を適用して生成される鍵情報を用いてコンテンツを暗号化して情報記録媒体に格納するとともに、ドライブからアプリケーション側へコンテンツを出力する場合、ドライブが相互認証時にアプリケーションから取得したアプリケーションＩＤに基づいてアプリケーション属性値を取得し、このアプリケーション属性値を適用した暗号鍵生成を行い、生成した暗号鍵をコンテンツ再生を実行するアプリケーション側に提供する構成とすることで、正当アプリケーションのみによるコンテンツ利用を許容し、不正アプリケーションによるコンテンツ利用の排除を可能としたドライブ装置、再生処理装置、情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
【課題を解決するための手段】
【００４１】
本発明の第１の側面は、
情報記録媒体からのデータ読み取りおよび出力を実行するドライブ装置であり、
情報記録媒体を装着しデータ読み取りを実行する記録媒体インタフェースと、
データ再生プログラムとしてのホストアプリケーションを実行する再生処理装置との通信を実行する入出力インタフェースと、
前記再生処理装置に対する情報記録媒体からの読み取りデータの出力制御を実行するデータ処理部とを有し、
前記データ処理部は、
前記ホストアプリケーションに対応して設定されたアプリケーション属性値を取得し、該アプリケーション属性値を適用した演算処理を含むデータ処理によって暗号鍵を生成し、生成した暗号鍵と、前記暗号鍵の適用によって復号可能な暗号化コンテンツとを再生処理装置に出力する構成を有することを特徴とするドライブ装置にある。
【００４２】
さらに、本発明のドライブ装置の一実施態様において、前記データ処理部は、前記ホストアプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書に記録されたアプリケーションＩＤを取得し、該アプリケーションＩＤまたはアプリケーションＩＤに対応するアプリケーションＩＤ対応値を、前記アプリケーション属性値として適用し、前記暗号鍵の生成処理を実行する構成であることを特徴とする。
【００４３】
さらに、本発明のドライブ装置の一実施態様において、前記データ処理部は、前記ホストアプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書に記録されたアプリケーションＩＤを取得し、情報記録媒体から読み出したアプリケーションＩＤまたはアプリケーションＩＤ対応値データの検索処理により、前記アプリケーションＩＤに対応するアプリケーションＩＤまたはアプリケーションＩＤ対応値を取得し、取得したアプリケーションＩＤまたはアプリケーションＩＤ対応値を前記アプリケーション属性値として適用し、前記暗号鍵の生成処理を実行する構成であることを特徴とする。
【００４４】
さらに、本発明のドライブ装置の一実施態様において、前記データ処理部は、情報記録媒体から読み出したアプリケーションＩＤまたはアプリケーションＩＤ対応値データの検索処理により、前記アプリケーションＩＤに対応するアプリケーションＩＤまたはアプリケーションＩＤ対応値を取得出来なかった場合は、ホストアプリケーションを実行する再生処理装置に対してエラー通知処理を実行する構成であることを特徴とする。
【００４５】
さらに、本発明のドライブ装置の一実施態様において、前記データ処理部は、ドライブ装置と前記ホストアプリケーション間の相互認証処理を実行し、該相互認証処理において、前記ホストアプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書を取得し、取得したアプリケーション公開鍵証明書の署名検証による正当性確認の後、該アプリケーション公開鍵証明書からアプリケーションＩＤを取得し、該アプリケーションＩＤまたはアプリケーションＩＤに対応するアプリケーションＩＤ対応値を、前記アプリケーション属性値として適用する構成であることを特徴とする。
【００４６】
さらに、本発明のドライブ装置の一実施態様において、前記アプリケーション属性値を適用した演算処理は、情報記録媒体から取得可能なデータとの排他論理和演算処理またはハッシュ演算処理であることを特徴とする。
【００４７】
さらに、本発明のドライブ装置の一実施態様において、前記アプリケーション属性値を適用した演算処理を含むデータ処理は、情報記録媒体から取得可能なデータとの演算処理と、該演算処理結果と情報記録媒体から取得可能なデータとの暗号処理による暗号鍵生成処理を含む構成であることを特徴とする。
【００４８】
さらに、本発明のドライブ装置の一実施態様において、前記データ処理部は、情報記録媒体からの読み取りデータに含まれる出力制御フラグの値に応じて、前記暗号鍵に基づく暗号化処理の実行の有無を判定する処理を行なう構成であることを特徴とする。
【００４９】
さらに、本発明の第２の側面は、
情報記録媒体を装着したドライブ装置から情報記録媒体格納データを入力し再生処理を実行する再生処理装置であり、
データ再生プログラムとしてのホストアプリケーションを実行するデータ処理部と、
前記ホストアプリケーションに対応するアプリケーションＩＤを記録した証明書を格納した記憶部と、
ドライブ装置との通信を実行する入出力インタフェースとを有し、
前記データ処理部は、
前記ドライブ装置に対して前記アプリケーションＩＤを記録した証明書を出力し、前記ドライブ装置において前記アプリケーションＩＤ、またはアプリケーションＩＤ対応値を適用して生成した暗号鍵を入力し、前記ドライブ装置からの入力データに対して前記暗号鍵を適用した復号処理を実行してデータ再生を行なう構成であることを特徴とする再生処理装置にある。
【００５０】
さらに、本発明の再生処理装置の一実施態様において、前記証明書は公開鍵証明書であり、前記データ処理部は、前記ドライブ装置との相互認証処理を実行し、該相互認証処理に際して前記公開鍵証明書を前記ドライブ装置に対して出力する構成であることを特徴とする。
【００５１】
さらに、本発明の第３の側面は、
情報記録媒体に対するコンツテンツ記録処理を実行する情報処理装置であり、
コンテンツ再生権利を持つアプリケーションに対応して設定されたアプリケーション属性値を適用した演算処理を含むデータ処理によって暗号鍵を生成し、生成した暗号鍵を適用してコンテンツの暗号化を実行し、生成した暗号化コンテンツを情報記録媒体に記録する処理を実行する構成を有することを特徴とする情報処理装置にある。
【００５２】
さらに、本発明の情報処理装置の一実施態様において、前記アプリケーション属性値は、前記アプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書に記録されたアプリケーションＩＤまたはアプリケーションＩＤに対応するアプリケーションＩＤ対応値であることを特徴とする。
【００５３】
さらに、本発明の情報処理装置の一実施態様において、前記アプリケーション属性値を適用した演算処理は、情報記録媒体に記録するデータとの排他論理和演算処理またはハッシュ演算処理であることを特徴とする。
【００５４】
さらに、本発明の情報処理装置の一実施態様において、前記アプリケーション属性値を適用した演算処理を含むデータ処理は、情報記録媒体の記録データとの演算処理と、該演算処理結果と情報記録媒体の記録データとの暗号処理による暗号鍵生成処理を含む構成であることを特徴とする。
【００５５】
さらに、本発明の第４の側面は、
情報記録媒体であり、
コンテンツ再生権利を持つアプリケーションに対応して設定されたアプリケーション属性値を適用した演算処理を含むデータ処理によって生成される暗号鍵により暗号化された暗号化コンテンツを格納した構成を有することを特徴とする情報記録媒体にある。
【００５６】
さらに、本発明の情報記録媒体の一実施態様において、前記アプリケーション属性値を適用した演算処理は、情報記録媒体に記録するデータとの排他論理和演算処理またはハッシュ演算処理であることを特徴とする。
【００５７】
さらに、本発明の情報記録媒体の一実施態様において、前記アプリケーション属性値を適用した演算処理を含むデータ処理は、情報記録媒体の記録データとの演算処理と、該演算処理結果と情報記録媒体の記録データとの暗号処理による暗号鍵生成処理を含むことを特徴とする。
【００５８】
さらに、本発明の情報記録媒体の一実施態様において、前記情報記録媒体は、さらに、アプリケーションＩＤデータを格納した構成であることを特徴とする。
【００５９】
さらに、本発明の情報記録媒体の一実施態様において、前記情報記録媒体は、さらに、アプリケーションＩＤと、アプリケーションＩＤ対応値との対応データを格納した構成であることを特徴とする。
【００６０】
さらに、本発明の第５の側面は、
情報記録媒体からのデータ読み取りおよび再生処理装置に対する出力処理を実行するドライブ装置における情報処理方法であり、
前記再生処理装置において実行されるホストアプリケーションに対応して設定されたアプリケーション属性値を取得するアプリケーション属性値取得ステップと、
前記アプリケーション属性値を適用した演算処理を含むデータ処理によって暗号鍵を生成する暗号鍵生成ステップと、
生成した暗号鍵と、前記暗号鍵の適用によって復号可能な暗号化コンテンツとを再生処理装置に出力するステップと、
を有することを特徴とする情報処理方法にある。
【００６１】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、前記ホストアプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書に記録されたアプリケーションＩＤを取得し、該アプリケーションＩＤまたはアプリケーションＩＤに対応するアプリケーションＩＤ対応値を、前記アプリケーション属性値として適用し、前記暗号鍵の生成処理を実行するステップを含むことを特徴とする。
【００６２】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、前記ホストアプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書に記録されたアプリケーションＩＤを取得し、情報記録媒体から読み出したアプリケーションＩＤまたはアプリケーションＩＤ対応値データの検索処理により、前記アプリケーションＩＤに対応するアプリケーションＩＤまたはアプリケーションＩＤ対応値を取得し、取得したアプリケーションＩＤまたはアプリケーションＩＤ対応値を前記アプリケーション属性値として適用し、前記暗号鍵の生成処理を実行するステップを含むことを特徴とする。
【００６３】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、情報記録媒体から読み出したアプリケーションＩＤまたはアプリケーションＩＤ対応値データの検索処理により、前記アプリケーションＩＤに対応するアプリケーションＩＤまたはアプリケーションＩＤ対応値を取得出来なかった場合は、ホストアプリケーションを実行する再生処理装置に対してエラー通知処理を実行するステップを含むことを特徴とする。
【００６４】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、ドライブ装置と前記ホストアプリケーション間の相互認証処理を実行し、該相互認証処理において、前記ホストアプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書を取得し、取得したアプリケーション公開鍵証明書の署名検証による正当性確認の後、該アプリケーション公開鍵証明書からアプリケーションＩＤを取得し、該アプリケーションＩＤまたはアプリケーションＩＤに対応するアプリケーションＩＤ対応値を、前記アプリケーション属性値として適用するステップを含むことを特徴とする。
【００６５】
さらに、本発明の情報処理方法の一実施態様において、前記アプリケーション属性値を適用した演算処理は、情報記録媒体から取得可能なデータとの排他論理和演算処理またはハッシュ演算処理であることを特徴とする。
【００６６】
さらに、本発明の情報処理方法の一実施態様において、前記アプリケーション属性値を適用した演算処理を含むデータ処理は、情報記録媒体から取得可能なデータとの演算処理と、該演算処理結果と情報記録媒体から取得可能なデータとの暗号処理による暗号鍵生成処理を含むことを特徴とする。
【００６７】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、情報記録媒体からの読み取りデータに含まれる出力制御フラグの値に応じて、前記暗号鍵に基づく暗号化処理の実行の有無を判定する処理を行なうステップを有することを特徴とする。
【００６８】
さらに、本発明の第６の側面は、
情報記録媒体を装着したドライブ装置から情報記録媒体格納データを入力し再生処理を実行する再生処理装置における情報処理方法であり、
前記ドライブ装置に対して前記アプリケーションＩＤを記録した証明書を出力する証明書出力ステップと、
前記ドライブ装置において前記アプリケーションＩＤ、またはアプリケーションＩＤ対応値を適用して生成した暗号鍵を入力する暗号鍵入力ステップと、
前記ドライブ装置からの入力データに対して前記暗号鍵を適用した復号処理を実行する復号ステップと、
を有することを特徴とする情報処理方法にある。
【００６９】
さらに、本発明の情報処理方法の一実施態様において、前記証明書は公開鍵証明書であり、前記証明書出力ステップは、前記ドライブ装置との相互認証処理を実行し、該相互認証処理に際して前記公開鍵証明書を前記ドライブ装置に対して出力するステップであることを特徴とする。
【００７０】
さらに、本発明の第７の側面は、
情報記録媒体に対するコンツテンツ記録処理を実行する情報処理方法であり、
コンテンツ再生権利を持つアプリケーションに対応して設定されたアプリケーション属性値を適用した演算処理を含むデータ処理によって暗号鍵を生成するステップと、
生成した暗号鍵を適用してコンテンツの暗号化を実行し、生成した暗号化コンテンツを情報記録媒体に記録する処理を実行するステップと、
を有することを特徴とする情報処理方法にある。
【００７１】
さらに、本発明の情報処理方法の一実施態様において、前記アプリケーション属性値は、前記アプリケーションに対応して設定された公開鍵証明書であるアプリケーション公開鍵証明書に記録されたアプリケーションＩＤまたはアプリケーションＩＤに対応するアプリケーションＩＤ対応値であることを特徴とする。
【００７２】
さらに、本発明の情報処理方法の一実施態様において、前記アプリケーション属性値を適用した演算処理は、情報記録媒体に記録するデータとの排他論理和演算処理またはハッシュ演算処理であることを特徴とする。
【００７３】
さらに、本発明の情報処理方法の一実施態様において、前記アプリケーション属性値を適用した演算処理を含むデータ処理は、情報記録媒体の記録データとの演算処理と、該演算処理結果と情報記録媒体の記録データとの暗号処理による暗号鍵生成処理を含むことを特徴とする。
【００７４】
さらに、本発明の第８の側面は、
情報記録媒体からのデータ読み取りおよび再生処理装置に対する出力処理を実行するコンピュータ・プログラムであり、
前記再生処理装置において実行されるホストアプリケーションに対応して設定されたアプリケーション属性値を取得するアプリケーション属性値取得ステップと、
前記アプリケーション属性値を適用した演算処理を含むデータ処理によって暗号鍵を生成する暗号鍵生成ステップと、
生成した暗号鍵と、前記暗号鍵の適用によって復号可能な暗号化コンテンツとを再生処理装置に出力するステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【００７５】
さらに、本発明の第９の側面は、
情報記録媒体を装着したドライブ装置から情報記録媒体格納データを入力し再生処理を実行するコンピュータ・プログラムであり、
前記ドライブ装置に対して前記アプリケーションＩＤを記録した証明書を出力する証明書出力ステップと、
前記ドライブ装置において前記アプリケーションＩＤ、またはアプリケーションＩＤ対応値を適用して生成した暗号鍵を入力する暗号鍵入力ステップと、
前記ドライブ装置からの入力データに対して前記暗号鍵を適用した復号処理を実行する復号ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【００７６】
さらに、本発明の第１０の側面は、
情報記録媒体に対するコンツテンツ記録処理を実行するコンピュータ・プログラムであり、
コンテンツ再生権利を持つアプリケーションに対応して設定されたアプリケーション属性値を適用した演算処理を含むデータ処理によって暗号鍵を生成するステップと、
生成した暗号鍵を適用してコンテンツの暗号化を実行し、生成した暗号化コンテンツを情報記録媒体に記録する処理を実行するステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【００７７】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータ・システムに対して、コンピュータ可読な形式で提供する記録媒体、通信媒体、例えば、ＣＤやＦＤ、ＭＯなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【００７８】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００７９】
本発明の構成によれば、再生処理装置において実行されるホストアプリケーションに対応して設定されたアプリケーション対応公開鍵証明書から取得するアプリケーションＩＤに基づいてアプリケーション属性値を取得し、取得したアプリケーション属性値を適用した演算処理を含むデータ処理によって暗号鍵を生成し、生成した暗号鍵と、暗号鍵の適用によって復号可能な暗号化コンテンツとをホストアプリケーション側に出力する構成としたので、特定のアプリケーション属性値の対応付けられた正当なコンテンツ利用権を持つ、アプリケーションにおいてのみ、コンテンツの復号に適用可能な正しい暗号鍵を取得することが可能となり、コンテンツ再生が許容され、特定のアプリケーション属性値の対応付けられていないその他のアプリケーションによるコンテンツ復号、利用を排除することが可能となる。
【００８０】
本発明の構成では、情報記録媒体に記録するコンテンツの暗号化に適用する鍵の生成情報として記録コンテンツの再生権利を持つ正当なアプリケーションのＩＤ情報、あるいはアプリケーションＩＤ対応値等のアプリケーション属性値を適用した構成とし、ドライブからホストアプリケーションに対するコンテンツ出力の際に、ドライブがホストアプリケーションから取得した公開鍵証明書から取得するアプリケーションＩＤに基づいて取得するアプリケーション属性値を適用して、コンテンツ記録時に実行すると同様の演算および暗号処理を実行して、コンテンツの復号に適用する鍵を生成してホストアプリケーションに提供する構成としたので、コンテンツの記録時に適用したアプリケーションＩＤと、ホスト（再生処理装置）側で実行中のアプリケーションのＩＤとが一致する場合にのみ、コンテンツの復号に成功することとなり、異なるＩＤを持つアプリケーションによるコンテンツ復号は不可能となり、不正なアプリケーションによるコンテンツ利用が防止される。
【００８１】
さらに、本発明の構成によれば、アプリケーションのＩＤに対応するアプリケーションＩＤ対応値データを情報記録媒体に記録する構成例では、ドライブはアプリケーションＩＤ対応値データに基づく検索処理により、ホストアプリケーションが正当なアプリケーションか否かを事前に知ることが可能となり、正当なアプリケーションでない場合には、アプリケーション対応の暗号鍵の生成処理を実行することなく処理を終了することが可能となる。また、この時点で処理を中止にすることにより、情報記録媒体からの暗号化コンテンツの読み出しや、コンテンツの転送処理などを一切実行する必要がなくなり、コンテンツの読み出し処理や転送に伴うコンテンツ漏洩の可能性を低減でき、より安全性を高めることが可能となる。
【発明を実施するための最良の形態】
【００８２】
以下、図面を参照しながら本発明のドライブ装置、再生処理装置、情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムの詳細について説明する。なお、説明は、以下の記載項目に従って行う。
１．情報記録媒体の格納データ構成
２．コンテンツの記録および再生処理
３．その他の実施例
４．再生処理装置、情報処理装置、およびドライブ装置の構成
【００８３】
［１．情報記録媒体の格納データ構成］
まず、情報記録媒体の格納データ構成について説明する。図５にコンテンツの格納された情報記録媒体の一例を示す。ここでは、コンテンツ格納済みディスクとしてのＲＯＭディスクの情報格納例を示す。
【００８４】
このＲＯＭディスクは、例えば、Ｂｌｕ−ｒａｙディスク、ＤＶＤなどの情報記録媒体であり、正当なコンテンツ著作権、あるいは頒布権を持ついわゆるコンテンツ権利者の許可の下にディスク製造工場において製造された正当なコンテンツを格納した情報記録媒体である。なお、以下の実施例では、情報記録媒体の例としてディスク型の媒体を例として説明するが、本発明は様々な態様の情報記録媒体の適用が可能である。なお、以下の説明において、参考文献"Content Protection System for Blu-ray Disc ROM Specification Informational Version, version 0.9a, April 2004" が参照されている。
【００８５】
図５に示すように、情報記録媒体１００は、コンテンツ等のデータを格納するデータ格納領域１０１と、ディスクおよび格納コンテンツに対応する付帯情報、コンテンツの復号処理に適用する鍵情報などを格納するリードイン領域１０２を持つ。
【００８６】
データ格納領域１０１には、暗号化（スクランブル）コンテンツ１１１と、暗号化コンテンツの復号処理に適用する鍵の生成に必要となる情報としての記録シード（ＲＥＣ  ＳＥＥＤ）であるユニットキー生成情報：Ｖｕ１１２、リボーク情報１１３が格納される。なお、スクランブル処理は、暗号化処理の一態様であり、本明細書ではスクランブルコンテンツの上位概念として、暗号化コンテンツという表現を用いる。暗号化コンテンツ１１１は、所定のユニット単位に区分され、ユニットに対応付けられたユニットキーを適用した暗号化がなされた状態で、情報記録媒体１００のデータ格納領域１０１に格納される。ユニットキー生成情報：Ｖｕ１１２は、これらの各ユニットキーの生成に適用する情報でありシード情報とも呼ばれる。リボーク情報１１３については後述する。
【００８７】
リードイン領域１０２には、暗号化コンテンツ１１１の復号処理に適用する鍵の生成に必要となる各種情報が格納される。その１つは、ＲＯＭマーク：Ｖｅ１１４である。ＲＯＭマーク：Ｖｅ１１４は物理インデックス（Ｐｈｙｓｉｃａｌ  Ｉｎｄｅｘ）とも呼ばれ、書き換えの不可能な固定情報である。リードイン領域１０２には、さらに、暗号鍵情報１２０が格納される。なお、ＲＯＭマーク：Ｖｅ１１４、暗号鍵情報１２０は必ずしもリードイン領域１０２に格納されることが必須ではなく、データ領域１０１に格納してもよい。
【００８８】
暗号鍵情報１２０は、前述のユニットキー生成情報：Ｖｕ１１２、ＲＯＭマーク：Ｖｅ１１４と同様、情報記録媒体のデータ格納領域１０１に格納された暗号化コンテンツ１１１の復号処理に適用する鍵を生成するための鍵情報（鍵生成情報）によって構成される。
【００８９】
すなわち、暗号化コンテンツ１１１の復号処理に適用する鍵として、例えば情報記録媒体に格納されたコンテンツに対応する鍵として設定されるメディアキー：Ｋｍを取得するために必要となる暗号鍵ブロックであるＲＫＢ（Renewal Key Block）１２１と、暗号化コンテンツ１１１の復号処理に適用する鍵としてのディスクキー：Ｋｄを、メディアキー：Ｋｍを適用して暗号化した暗号化ディスクキーＥＫｍ（Ｋｄ）１２２とを含む情報である。なお、ＥＫａ（ｂ）は、データ：ｂを鍵：Ｋａで暗号化したデータを示すものとする。
【００９０】
ＲＫＢ（Renewal Key Block）１２１は、ブロードキャストエンクリプション方式の一態様として知られる木構造の鍵配信方式に基づいて生成される暗号鍵ブロックであり、情報記録媒体の再生を実行する正当なライセンスを保有するユーザ機器としての情報処理装置に配布されたデバイスキーを適用した復号処理によってメディアキー：Ｋｍを取得可能とした暗号鍵ブロックである。暗号鍵ブロック：ＲＫＢの構成データを変更することにより、メディアキー：Ｋｍを取得可能なユーザ機器を選別することが可能となる。
【００９１】
管理センタが、特定のユーザ機器あるいは再生アプリケーションを不正であると判定した場合は、ＲＫＢの構成を変更して、不正機器によるメディアキー：Ｋｍの取得を不可能とすることが可能となる。なお、不正と判定されたユーザ機器あるいは再生アプリケーションはリボーク（排除）機器として管理センタに登録される。管理センタは、リボークされたユーザ機器あるいは再生アプリケーションの識別情報をリスト化したリボケーションリストを保持し、適宜更新する。ユーザは、最新のリボケーションリストを含むリボーク情報を情報記録媒体あるいはネットワークを介して入手することができる。
【００９２】
図５に示すリボーク情報１１３は、リボークされたユーザ機器あるいは再生アプリケーションの識別情報をリスト化したリボケーションリストを含む情報である。ユーザ機器は、例えばコンテンツを出力する機器が不正機器であるか否かを、機器から入力した機器識別子（ＩＤ）がリボークリストに記録されていないかを検証することにより判定することが可能であり、リボークリストに掲載された不正機器である場合は、コンテンツの出力を中止する処理を行なう。
【００９３】
次に、情報記録媒体１００に格納される暗号化コンテンツ１１１の記録構成の詳細について、図６〜図８を参照して説明する。図６（ａ）が情報記録媒体に格納されるデータ記録構成である。１８バイトのユーザ制御データ（ＵＣＤ：User Control Data）と、実際のＡＶコンテンツデータなどを含む２０４８バイトのユーザデータ(User Data)が１つのセクタデータとして構成される。
【００９４】
図６（ｂ）に示すように、例えばユーザデータ３セクタ分６１４４バイトのデータが１つのブロック暗号処理単位としての１ユニット（１ＡＵ：Aligned Unit）、すなわちブロックとして設定される。６１４４バイトのデータは、３２ＴＳ（トランスポートストリーム）パケットに相当する。なお、ブロックの設定単位は、３セクタ分６１４４バイトのデータとする方式に限らず、１セクタ分２０４８バイトのデータを１つの暗号処理単位、すなわちブロックとして設定する方式など、様々な設定が可能である。
【００９５】
図６（ｃ）に示すように、コンテンツに対応するコピー制御情報ＣＣＩ（Copy Control Information）を格納したユーザデータは、２Ｋ（２０４８）バイト単位で暗号化されて記録される。
【００９６】
なお、１８バイトのユーザ制御データ（User Control Data）は暗号化対象から除去され、ユーザデータのみが、暗号化されて記録される。
【００９７】
図７は、１つのセクタデータの構成を示している。１つのセクタデータは、１８バイトのユーザ制御データ（ＵＣＤ：User Control Data）と２０４８バイトのユーザデータ(User Data)からなる。
【００９８】
ユーザ制御データ（ＵＣＤ：User Control Data）はセクタヘッダとも呼ばれ、その一部に、セクタ単位の出力制御情報（Output Control Information）１５１が記録される。
【００９９】
出力制御情報１５１は、対応するセクタデータ（ユーザデータ）の転送制御情報、例えば情報記録媒体を装着したドライブからホスト（ＰＣ）等の情報処理装置に対する出力の制御情報であるバスプロテクションフラグ（Bus Protection Flag）を含む情報として設定される。
【０１００】
図８にユーザ制御データ（ＵＣＤ：User Control Data）中に記録される出力制御情報１５１の詳細構成を示す。出力制御情報１５１は、ユーザ制御データ（ＵＣＤ：User Control Data）の１バイト（８ビット）データに記録される。
【０１０１】
ビット６〜０のビットはリザーブ領域であり、
ビット７の１ビットがバスプロテクションフラグ（Bus Protection Flag）として設定される。バスプロテクションフラグ（Bus Protection Flag）は、情報記録媒体の読み出しコンテンツの制御を実行するか否かの判定情報として利用される。具体的には、例えば、
バスプロテクションフラグ（Bus Protection Flag）＝１：出力制限、およびバス暗号化あり
バスプロテクションフラグ（Bus Protection Flag）＝０：出力制限なし
として設定される。なお、バス暗号化は、ドライブとホスト間のコンテンツ転送時に実行する暗号化処理であり、詳細については後述する。
【０１０２】
［２．コンテンツの記録および再生処理］
次に、上述した情報記録媒体に格納されるコンテンツの記録および再生処理について説明する。
【０１０３】
まず、基本的なコンテンツ再生処理例について説明する。情報記録媒体に格納されたコンテンツの再生態様には２つの態様がある。第１の態様は、情報記録媒体を装着し、情報記録媒体からのデータ読み取りを実行する機器自体が再生処理を実行する態様であり、第２の態様は、情報記録媒体からのデータ読み取りを実行するドライブと、再生処理を実行するホスト（ＰＣ）等の再生処理装置とが別の機器として構成され、ドライブ装置と再生処理装置間がデータ転送用バスによって接続され、接続バスを介したデータ転送を実行して再生処理を行なう態様である。
【０１０４】
まず、情報記録媒体を装着し、情報記録媒体からのデータ読み取りを実行する機器自体が再生処理を実行する処理シーケンスについて図９を参照して説明する。
【０１０５】
ドライブ兼用再生機器３００が、暗号化コンテンツ２０６を格納した情報記録媒体２００をセットしてデータの読み取り、鍵生成、コンテンツ復号などの各種の暗号処理を実行してコンテンツを出力する。
【０１０６】
情報記録媒体２００には、先に、図５を参照して説明した各種の情報、すなわち不正機器リストとしてのリボケーションリストを含むリボーク情報（Ｒｅｖｏｃａｔｉｏｎ  ｉｎｆｏ  ｆｏｒ  ＡＫＥ）２０１、メディアキー：Ｋｍを格納した暗号鍵ブロックとしてのＲＫＢ２０２、ディスクキー：Ｋｄをメディアキー：Ｋｍで暗号化した暗号化ディスクキー：ＥＫｍ（Ｋｄ）２０３、ＲＯＭマーク：Ｖｅ２０４、ユニットキー生成情報：Ｖｕ２０５、暗号化コンテンツ２０６が格納されている。
【０１０７】
ドライブ兼用再生機器３００の処理について説明する。ドライブ兼用再生機器３００は、ステップＳ１０１において、予め機器内に格納されているデバイスキー：Ｋｄｅｖ３０１を適用して暗号鍵ブロックとしてのＲＫＢ２０２の復号処理を実行して、ＲＫＢ２０２からメディアキー：Ｋｍを取得する。なお、ＲＫＢ２０２からメディアキー：Ｋｍを取得できるのは、コンテンツの利用を認められた機器のみであり、前述したように不正機器としてリボークされた機器の持つデバイスキーではＲＫＢの復号が出来ず、メディアキー：Ｋｍを取得することができない。
【０１０８】
ステップＳ１０１においてメディアキー：Ｋｍの取得に成功すると、次に、ステップＳ１０２において、取得したメディアキー：Ｋｍを適用して、情報記録媒体２００から取得した暗号化ディスクキー：ＥＫｍ（Ｋｄ）２０３の復号処理を実行し、ディスクキー：Ｋｄを取得する。
【０１０９】
次にステップＳ１０３において、取得したディスクキー：Ｋｄと、情報記録媒体２００から取得したＲＯＭマーク：Ｖｅ２０４に基づく鍵生成処理、例えばＡＥＳ暗号アルゴリズムに従った鍵生成処理を実行してエンベデッドキー：Ｋｅを生成する。
【０１１０】
ＡＥＳ暗号アルゴリズムに従った鍵生成処理の詳細について、図１０を参照して説明する。図１０に示すように、ＡＥＳ暗号アルゴリズムに従った鍵生成は、ＡＥＳ暗号処理ブロック３１１において、入力値に対して暗号鍵を適用したＡＥＳ暗号処理を実行し、その出力と入力値の排他論理和（ＸＯＲ）演算結果を出力とする処理である。図９のステップＳ１０３においては、入力値を情報記録媒体２００から取得したＲＯＭマーク：Ｖｅ２０４とし、適用鍵をディスクキー：Ｋｄとした鍵生成処理を実行して、出力値としてのエンベデッドキー：Ｋｅを得る。
【０１１１】
次に、ステップＳ１０４において、取得したエンベデッドキー：Ｋｅと、情報記録媒体２００から取得したユニットキー生成情報：Ｖｕ２０５に基づく鍵生成処理を実行してユニットキー：Ｋｕを生成する。この鍵生成処理も、図１０を参照して説明したＡＥＳ暗号アルゴリズムに従った鍵生成処理として実行される。Ｖｕ２０５はファイル"Ｕｎｉｔ＿Ｋｅｙ＿Ｇｅｎ＿Ｖａｌｕｅ．ｉｎｆ"によって複数のユニットの個々のユニットに対して個別の値を定義することができるが、ここではその中の一つのユニットに対する説明を続ける。
【０１１２】
次に、ステップＳ１０５において、生成したユニットキーＫｕを適用した暗号化コンテンツ２０６の復号処理が実行されて、コンテンツが出力される。
【０１１３】
ステップＳ１０５におけるユニットキーＫｕを適用した暗号化コンテンツ２０６の復号処理の詳細について、図１１を参照して説明する。
【０１１４】
暗号化コンテンツ２０６は、所定データ単位のブロック単位での暗号化がなされて情報記録媒体２００に格納されている。図１１に示すように例えば６１４４バイトのセクタデータは、１６バイトのブロックごとの暗号化がなされている。
【０１１５】
復号処理の手順について説明する。まず、６１４４バイトのセクタデータから先頭の１６バイトデータを取得し、ＡＥＳ鍵生成処理ブロック［ＡＥＳ＿Ｇ］３２１において、ＡＥＳ暗号アルゴリズムに従った鍵生成処理を実行する。これは、先に図１０を参照して説明した処理と同様である。ＡＥＳ鍵生成処理ブロック３２１の出力をブロックキー：Ｋｂとし、このブロックキー：Ｋｂを適用して次の１６バイトデータの復号処理をＡＥＳ復号処理ブロック［ＡＥＳ＿Ｄ］３２２において実行する。
【０１１６】
ＡＥＳ復号処理ブロック［ＡＥＳ＿Ｄ］３２２では、セクタデータの第２番目の１６バイトデータと初期値：ＩＶａとの排他論理和（ＸＯＲ）結果を入力としてブロックキー：Ｋｂを適用したＡＥＳ暗号アルゴリズムに従った復号処理を実行して、１６バイトブロックデータの復号データを取得するとともに、次のブロックの復号に適用する入力値とする。以下、同様の処理を繰り返し実行して、復号セクタデータ３２３を得ることができる。なお、初期値：ＩＶａは、予め設定された定数である。ＩＶａは、例えばセクタデータに対応するユーザ制御データあるいはユーザデータから取得することができる値として設定されるという場合もある。
【０１１７】
図９のステップＳ１０５では、このように、ユニットキー：Ｋｕを適用して、ブロック単位の復号処理を実行し、復号されたコンテンツを出力する。
【０１１８】
このように、情報記録媒体からの情報読み取りと再生処理を１つの機器内で実行する場合には、コンテンツの漏洩の可能性は少なく、コンテンツの著作権の侵害といった問題が発生する可能性は少ない。しかし、先に、図２〜４を参照して説明したように、情報記録媒体を装着したドライブからバスを介してＰＣ等の機器にコンテンツ出力を行なう構成の場合には、様々な問題が発生し得る。
【０１１９】
本発明の構成では、このような情報記録媒体を装着したドライブからバスを介してＰＣ等の機器にコンテンツ出力を行なう構成においてもセキュアなデータ転送を実現しコンテンツの不正利用の防止を可能としている。以下、ドライブとＰＣ等の情報処理装置によって構成される再生機器とをバス接続し、コンテンツの転送を伴う再生処理の詳細について説明する。
【０１２０】
図１２以下を参照して、情報記録媒体に対するデータ記録処理を実行するディスク製造エンティテイの処理と、情報記録媒体の格納コンテンツをドライブにおいて読み取り、再生アプリケーションを実行するＰＣなどのホストに転送して再生する処理の詳細について説明する。
【０１２１】
まず、図１２を参照して、ディスク製造エンティテイの処理、すなわちコンテンツを情報記録媒体に記録する処理について説明する。図１２には、左からディスク製造エンティテイ３５０、情報記録媒体２００、ドライブ４００、再生処理装置５００を示している。
【０１２２】
情報記録媒体２００には、先に図９を参照して説明したと同様、図５に示す各種の情報、すなわち不正機器リストとしてのリボケーションリストを含むリボーク情報（Ｒｅｖｏｃａｔｉｏｎ  ｉｎｆｏ  ｆｏｒ  ＡＫＥ）２０１、メディアキー：Ｋｍを格納した暗号鍵ブロックとしてのＲＫＢ２０２、ディスクキー：Ｋｄをメディアキー：Ｋｍで暗号化した暗号化ディスクキー：ＥＫｍ（Ｋｄ）２０３、ＲＯＭマーク：Ｖｅ２０４、ユニットキー生成情報：Ｖｕ２０５、暗号化コンテンツ２０６が格納される。
【０１２３】
これらの情報格納処理を行なうのが、ディスク製造エンティテイ３５０である。ディスク製造エンティテイ３５０は図示しない管理センタからの受領情報としてのリボーク情報３５１を情報記録媒体２００に記録する。
【０１２４】
さらに、リボークされていないデバイスキー［Ｋｄｅｖ］３５２での復号処理によりメディアキー：Ｋｍ３５３を取得可能とした暗号化データからなる暗号鍵ブロックとしてのＲＫＢをステップＳ１５１において生成して情報記録媒体２００に記録する。さらに、ステップＳ１５２において、ディスクキー：Ｋｄ３５４をメディアキー：Ｋｍで暗号化した暗号化ディスクキー：ＥＫｍ（Ｋｄ）を生成して情報記録媒体２００に記録する。さらに、ユニットキー生成情報：Ｖｕ３５５、ＲＯＭマーク：Ｖｅ３５８を記録する。
【０１２５】
さらに、ステップＳ１５３において、ディスクキー：Ｋｄ３５４と、情報記録媒体に格納されるコンテンツ毎に設定されたコンテンツ再生権利を持つ正当なアプリケーションに対応するアプリケーション属性値、具体的にはアプリケーションＩＤ３５７との演算処理を実行し、ステップＳ１５４において、演算結果と、ＲＯＭマーク：Ｖｅ３５８とに基づくＡＥＳ鍵生成処理（図１０参照）を実行し、エンベデッドキー：Ｋｅを生成する。なお、ステップＳ１５３の演算処理は、排他論理和（ＸＯＲ）演やハッシュ演算など、各種の演算処理が適用可能である。演算処理例については後段で図１６を参照して説明する。
【０１２６】
なお、ここでは、ｎ個の再生権利区分としてのｎ個のユニットに分割されたコンテンツが情報記録媒体に格納されるものとし、それぞれのユニットに対応する正当な再生アプリケーションがＡＰＰＩＤ１〜ＡＰＰＩＤｎのアプリケーションＩＤを持つものとする。この場合、それぞれのアプリケーションＩＤ１〜ｎとＲＯＭマーク：Ｖｅ３５８とのｎ個の排他論理和結果とエンベデッドキー：ＫｅとのＡＥＳ鍵生成処理（図１０参照）によってｎ個のエンベデッドキー：Ｋｅ１〜Ｋｅｎを生成する。ただし、情報記録媒体に格納される１つのユニットが複数のアプリケーションによって再生されることを許容している場合には、例えば、１つのユニットＡに対して、２つ以上のアプリケーション属性値、すなわちアプリケーションＩＤを対応付けて、１つのユニットに対応して複数のエンベデッドキーを生成してもよい。
【０１２７】
次に、ステップＳ１５５において、ｎ個のエンベデッドキー：Ｋｅ１〜Ｋｅｎのそれぞれと、ユニットキー生成情報：Ｖｕ２０５とに基づくＡＥＳ鍵生成処理（図１０参照）により、ｎ個のユニットキーＫｕ１〜Ｋｕｎを生成する。これらは情報記録媒体２００に記録される各ユニットに対応するユニットキーである。
【０１２８】
次にステップＳ１５６において、各ユニットに属するコンテンツに対して順次、コンテンツの属するユニット対応のユニットキー（Ｋｕ１〜Ｋｕｎのいずれか）を適用して暗号化処理を実行し、情報記録媒体２００に暗号化コンテンツ２０６として記録する。暗号化処理は、所定データ単位のブロック単位での暗号化がなされて情報記録媒体２００に格納される。例えばＡＥＳ−ＥＣＢＣモードでのブロック暗号化がなされ、先に図１１を参照して説明したように１６バイトのブロック暗号化データからなる６１４４バイトのセクタデータ単位で記録する。
【０１２９】
このようにして、情報記録媒体２００には、正当な再生アプリケーションのアプリケーションＩＤに基づいて生成したユニットキーによる暗号化コンテンツ２０６が記録されることになる。
【０１３０】
次に、図１２、図１３を参照して、情報記録媒体２００に記録された暗号化コンテンツ２０６を再生する処理について説明する。図１２、図１３において、再生処理装置５００には、アプリケーション属性値としてのアプリケーションＩＤ＝ｊが設定されたアプリケーションによるデータ処理が実行されているものとする。アプリケーションＩＤ＝ｊのアプリケーションは、情報記録媒体２００に格納された暗号化コンテンツを含むユニットｊに対応する正当な再生アプリケーションである。図１２は、ドライブ４００と再生処理装置（アプリケーション）５００との処理におけるアプリケーションＩＤに関する処理のみを中心として簡略化して示す図であり、図１３は、全体処理を示している。
【０１３１】
図１３に従って、ドライブ４００と、再生処理装置（アプリケーション）５００の処理について説明する。図１３は、情報記録媒体２００と、情報記録媒体２００をセットし、情報記録媒体２００からのデータ読み取りを実行するドライブ装置４００と、ドライブ装置４００からコンテンツ他のデータを接続バスを介して入力し、アプリケーション・プログラム（アプリケーションＩＤ＝ｊ）に従ったコンテンツ再生処理を実行するホスト機器であるＰＣ等の再生処理装置５００の処理を示している。なお、ドライブ装置４００と、再生処理装置５００とを接続するバスは、例えばＡＴＡＰＩ−ＢＵＳによって構成される接続バスである。なお、ＵＳＢその他の接続バスとしてもよい。
【０１３２】
情報記録媒体２００には、先に説明したように、不正機器リストとしてのリボケーションリストを含むリボーク情報（Ｒｅｖｏｃａｔｉｏｎ  ｉｎｆｏ  ｆｏｒ  ＡＫＥ）２０１、メディアキー：Ｋｍを格納した暗号鍵ブロックとしてのＲＫＢ２０２、ディスクキー：Ｋｄをメディアキー：Ｋｍで暗号化した暗号化ディスクキー：ＥＫｍ（Ｋｄ）２０３、ＲＯＭマーク：Ｖｅ２０４、ユニットキー生成情報：Ｖｕ２０５、暗号化コンテンツ２０６が格納されている。暗号化コンテンツ２０６は、前述したようにアプリケーションＩＤを適用して生成したユニットキーによって暗号化されたコンテンツである。
【０１３３】
ドライブ装置４００は、公開鍵暗号方式に従った管理センタの公開鍵［Ｋｐ＿ｋｉｃ］４０１、公開鍵暗号方式に従ったドライブ対応の秘密鍵［Ｋｓ＿ｄｒｉｖｅ］４０２、公開鍵暗号方式に従ったドライブ対応の公開鍵を格納した公開鍵証明書［Ｃｅｒｔ＿ｄｒｉｖｅ］４０３、およびデバイスキー［Ｋｄｅｖ］４０４が格納されている。
【０１３４】
一方、コンテンツ再生アプリケーションを実行するホストとしての再生処理装置５００には、公開鍵暗号方式に従った管理センタの公開鍵［Ｋｐ＿ｋｉｃ］５０１、アプリケーション対応の公開鍵暗号方式に従ったアプリケーション秘密鍵［Ｋｓ＿ｈｏｓｔ］５０２、アプリケーション対応の公開鍵暗号方式に従った公開鍵を格納したアプリケーション公開鍵証明書［Ｃｅｒｔ＿ｈｏｓｔ］５０３を格納している。
【０１３５】
ドライブ対応の公開鍵証明書［Ｃｅｒｔ＿ｄｒｉｖｅ］４０３と、ホストアプリケーション対応の公開鍵証明書［Ｃｅｒｔ＿ｈｏｓｔ］５０３の詳細について、図１４を参照して説明する。
【０１３６】
図１４（ａ）がドライブ対応の公開鍵証明書［Ｃｅｒｔ＿ｄｒｉｖｅ］のデータ構成であり、図１４（ｂ）がホストアプリケーション対応の公開鍵証明書［Ｃｅｒｔ＿ｈｏｓｔ］のデータ構成である。
【０１３７】
ドライブ対応の公開鍵証明書［Ｃｅｒｔ＿ｄｒｉｖｅ］のデータ構成は、従来からの公開鍵証明書と同様の構成であり、証明書タイプ、証明書識別子、公開鍵、署名データから構成される。
【０１３８】
ホストアプリケーション対応の公開鍵証明書［Ｃｅｒｔ＿ｈｏｓｔ］は、証明書タイプ、証明書識別子、公開鍵、署名データに加え、アプリケーション属性値としてのアプリケーションＩＤ［ＡｐｐＩＤ］５１２が追加データとして設定される。
【０１３９】
ホストアプリケーション対応の公開鍵証明書に格納されるアプリケーションＩＤ［ＡｐｐＩＤ］５１２は、例えば１６ビット情報であり、公開鍵証明書の設定されたアプリケーションの識別情報である。例えば、特定コーデックに従ったＨＤムービー再生アプリケーションに対して設定された公開鍵証明書であれば、特定コーデックに従ったＨＤムービー再生アプリケーションであることを判別可能な識別情報としてのアプリケーションＩＤが格納され、特定のゲーム再生アプリケーションに対して設定された公開鍵証明書であれば、特定のゲーム再生アプリケーションであることを判別可能な識別情報としてのアプリケーションＩＤが格納される。アプリケーションＩＤは署名の対象とされることから改竄は困難であり、相互認証を通じて公開鍵証明書を与えられたホストアプリケーションだけが利用可能である。
【０１４０】
このアプリケーションＩＤは、先に、図１２を参照して説明したディスク製造エンティテイ３５０がコンテンツの暗号化に適用する鍵の生成に適用したアプリケーション属性値としてのアプリケーションＩＤ３５７（図１２参照）に対応するデータである。
【０１４１】
図１３戻り、ドライブ装置４００が情報記録媒体から取得したコンテンツ等のデータを接続バスを介して再生処理装置（ホスト）５００に転送して再生する処理シーケンスについて説明する。
【０１４２】
まず、ステップＳ２０１，Ｓ３０１において、ドライブ装置４００と再生処理装置（ホスト）５００のホストアプリケーション間で相互認証および鍵交換（ＡＫＥ：Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ａｎｄ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）処理が実行される。相互認証および鍵交換（ＡＫＥ：Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ａｎｄ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）処理の詳細シーケンスについて、図１５を参照して説明する。この処理は、例えば、ＩＳＯ／ＩＥＣ９７９８−３に規定された公開鍵アルゴリズムを利用した相互認証、ＩＳＯ／ＩＥＣ１１７７０−３に規定された公開鍵アルゴリズムを利用した鍵生成処理方式を適用して実行可能である。なお、公開鍵を利用した相互認証方式として実用化された方式としては、例えば、ＤＴＣＰ(Digital Transmission Content Protection) Specification Volume 1 (Informational Version)に記載される方法がある。
【０１４３】
図１５に示す処理シーケンスについて説明する。ステップＳ４０１において、ホストアプリケーションは、ドライブに対して乱数生成処理によって生成したチャレンジデータ［Ｃ＿ｈｏｓｔ］と、公開鍵証明書［Ｃｅｒｔ＿Ｈｏｓｔ］を送信する。公開鍵証明書［Ｃｅｒｔ＿Ｈｏｓｔ］は、図１４（ｂ）に示す公開鍵証明書であり、セキュリティレベルと、アプリケーションＩＤの各情報が格納された公開鍵証明書である。
【０１４４】
このデータを受け取ったドライブ側は、公開鍵証明書［Ｃｅｒｔ＿Ｈｏｓｔ］の署名検証処理により、公開鍵証明書［Ｃｅｒｔ＿Ｈｏｓｔ］の正当性を検証する。署名検証処理は、ドライブの保持する管理センタの公開鍵［Ｋｐ＿ｋｉｃ］４０１（図１３参照）を適用して実行される。
【０１４５】
公開鍵証明書［Ｃｅｒｔ＿Ｈｏｓｔ］の正当性が検証されると、公開鍵証明書［Ｃｅｒｔ＿Ｈｏｓｔ］からアプリケーションＩＤを取得して、情報記録媒体から取得したリボーク情報２０１に含まれるリボケーションリストに基づくリボーク確認を実行する。
【０１４６】
公開鍵証明書［Ｃｅｒｔ＿Ｈｏｓｔ］の正当性が確認されなかったり、あるいは、アプリケーションＩＤに基づいて、ホストアプリケーションがリボークされていることが判明した場合にはエラーメッセージの通知などを実行し、処理を終了する。以後のコンテンツ、出力、再生処理は中止される。
【０１４７】
公開鍵証明書［Ｃｅｒｔ＿Ｈｏｓｔ］の正当性が確認され、ホストアプリケーションがリボークされていない正当なアプリケーションであることが確認されると、ステップＳ４０２において、ドライブは、ホストアプリケーションに対して乱数生成処理によって生成したチャレンジデータ［Ｃ＿ｄｒｉｖｅ］と、ドライブ側の公開鍵証明書［Ｃｅｒｔ＿ｄｒｉｖｅ］を送信する。
【０１４８】
ホストアプリケーション側では、ドライブ側の公開鍵証明書［Ｃｅｒｔ＿ｄｒｉｖｅ］の署名検証を実行する。署名検証処理は、ホスト側で保持する管理センタの公開鍵［Ｋｐ＿ｋｉｃ］５０１（図１３参照）を適用して実行される。
【０１４９】
公開鍵証明書［Ｃｅｒｔ＿ｄｒｉｖｅ］の正当性が確認されなかった場合にはエラーメッセージの通知などを実行し、処理を終了する。以後のコンテンツ、出力、再生処理は中止される。
【０１５０】
公開鍵証明書［Ｃｅｒｔ＿ｄｒｉｖｅ］の正当性が確認された場合には、ホストアプリケーションは、ドライブから受信したチャレンジデータ［Ｃ＿ｄｒｉｖｅ］に基づく演算を実行しパラメータ［Ａ＿ｈｏｓｔ］を算出し、新たに生成した乱数［Ｒ＿ｈｏｓｔ］とともに、ドライブに送信（ステップＳ４０３）する。
【０１５１】
一方、ドライブは、ホストアプリケーションから受信したチャレンジデータ［Ｃ＿ｈｏｓｔ］に基づく演算を実行しパラメータ［Ａ＿ｄｒｉｖｅ］を算出し、新たに生成した乱数［Ｒ＿ｄｒｉｖｅ］とともに、ホストアプリケーションに送信（ステップＳ４０４）する。
【０１５２】
この処理により、ドライブ、ホストアプリケーションの双方は、乱数[Ｒ_ｈｏｓｔ]、［Ｒ＿ｄｒｉｖｅ］、パラメータ［Ａ＿ｈｏｓｔ］、［Ａ＿ｄｒｉｖｅ］を共有することになり、ドライブと、ホストアプリケーションの双方は、これらの共有データに基づいて共通のセッションキーＫｓを生成（ステップＳ４０５）する。
【０１５３】
ドライブは、さらに、ステップＳ４０６において、乱数に基づいて生成したバスキー：Ｋｂｕｓ、およびバスキーのシーケンス番号：ＳＥＱとの連結データ：［Ｋｂｕｓ‖ＳＥＱ］に、この連結データの改竄検証用データとして算出したハッシュ値［ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］をセッションキー：Ｋｓを用いて暗号化したデータ：ＥＫｓ［（Ｋｂｕｓ‖ＳＥＱ），ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］をホストアプリケーションに送信する。なお、このステップＳ４０６の処理は、図１３において、ステップＳ２０６のバスキー生成処理（Ｇｅｎａｒａｔｅ＿Ｋｂｕｓ）と、ステップＳ２０７のセッションキー：Ｋｓによるバスキーの暗号化処理（ＡＥＳ＿Ｅ）の処理に相当する。
【０１５４】
バスキー：Ｋｂｕｓは、暗号化コンテンツのドライブからホスト側への接続バスを介した転送処理の際の暗号化キーとして用いられる鍵であり、ドライブにおいて乱数に基づいて生成される。バスキーは、例えばディスク挿入検出後の最初の相互認証において乱数生成され、ディスクが排出される、または電源停止まで同じ値が利用される場合や、例えば相互認証のたびに異なるバスキーへ切り替える場合がある。これらの各々の相互認証において、バスキーのすり替え防止を目的として、各バスキー転送に応じたシーケンス番号が対応付けられる。
【０１５５】
図１３に戻り、ドライブ装置４００が情報記録媒体から取得したコンテンツ等のデータを接続バスを介して再生処理装置（ホスト）５００に転送して再生する処理シーケンスについて説明を続ける。
【０１５６】
ドライブ装置４００は、再生処理装置（ホスト）５００との相互認証および鍵交換（ＡＫＥ）が終了すると、ドライブ内に保持するデバイスキー：Ｋｄｅｖ４０４を適用し、ステップＳ２０２において、情報記録媒体２００から読み出した暗号鍵ブロックとしてのＲＫＢ２０２の復号処理を実行して、ＲＫＢ２０２からメディアキー：Ｋｍを取得する。なお、ＲＫＢ２０２からメディアキー：Ｋｍを取得できるのは、コンテンツの利用を認められた機器のみであり、前述したように不正機器としてリボークされた機器の持つデバイスキーではＲＫＢの復号が出来ず、メディアキー：Ｋｍを取得することができない。
【０１５７】
ステップＳ２０２においてメディアキー：Ｋｍの取得に成功すると、次に、ステップＳ２０３において、取得したメディアキー：Ｋｍを適用して、情報記録媒体２００から取得した暗号化ディスクキー：ＥＫｍ（Ｋｄ）２０３の復号処理を実行し、ディスクキー：Ｋｄを取得する。
【０１５８】
次にステップＳ２０４において、取得したディスクキー：Ｋｄと、先にステップＳ２０１において実行した相互認証処理において、再生処理装置（ホスト）５００から取得したアプリケーション対応の公開鍵証明書から取得したアプリケーションＩＤ（ＡＰＰＩＤｊ）との演算を実行し、さらに、演算結果と、情報記録媒体２００から取得したＲＯＭマーク：Ｖｅ２０４とに基づく鍵生成処理、例えばＡＥＳ暗号アルゴリズムに従った鍵生成処理を実行してアプリケーション（ＡＰＰＩＤｊ）対応のエンベデッドキー：Ｋｅｊを生成する。ＡＥＳ暗号アルゴリズムに従った鍵生成処理は、先に図１０を参照して説明した通りである。
【０１５９】
ステップＳ２０４において実行するディスクキー：ＫｄとアプリケーションＩＤ（ＡＰＰＩＤｊ）との演算処理の具体例について、図１６を参照して説明する。図１６（ａ）は、排他論理和演算例であり、図１６（ｂ）はハッシュ演算処理例を示している。図１６（ａ）の排他論理和演算例では、アプリケーションＩＤ（ＡＰＰＩＤｊ）とディスクキー：Ｋｄとの排他論理和演算、あるいはアプリケーションＩＤ（ＡＰＰＩＤｊ）とＲＯＭマーク：Ｖｅとの排他論理和演算処理手順を説明するフロー図である。アプリケーションＩＤ（ＡＰＰＩＤｊ）とＲＯＭマーク：Ｖｅとの演算処理構成については後段で説明する。
【０１６０】
図１６（ａ）の排他論理和演算例でディスクキーを適用した処理の場合の入力値は、
２バイトのアプリケーションＩＤ（ＡＰＰＩＤｊ）
１６バイトのディスクキー：Ｋｄ
である。
ステップＳ４５１において、２バイトのアプリケーションＩＤ（ＡＰＰＩＤｊ）のバイト拡張処理を実行する。たとえば図１６（ｃ）に示すように、２バイトのアプリケーションＩＤ（ＡＰＰＩＤｊ）を８個連結して１６バイトデータを生成する。２バイトデータを１６バイトデータへ拡張可能な処理であれば任意のデータ処理が適用可能である。
【０１６１】
次にステップＳ４５２において、拡張されたアプリケーションＩＤ（ＡＰＰＩＤｊ）と、１６バイトのディスクキー：Ｋｄとの排他論理和演算を実行して、出力値（１６バイトデータ）を得る。
【０１６２】
図１６（ｂ）はハッシュ演算処理例を示している。図１６（ｂ）のハッシュ演算処理例においても、アプリケーションＩＤ（ＡＰＰＩＤｊ）とディスクキー：Ｋｄとのハッシュ演算、あるいはアプリケーションＩＤ（ＡＰＰＩＤｊ）とＲＯＭマーク：Ｖｅとのハッシュ演算処理手順を説明している。アプリケーションＩＤ（ＡＰＰＩＤｊ）とＲＯＭマーク：Ｖｅとの演算処理構成については後段で説明する。
【０１６３】
図１６（ｂ）のハッシュ演算処理例においてディスクキーを適用した処理の場合、入力値は、
２バイトのアプリケーションＩＤ（ＡＰＰＩＤｊ）
１６バイトのディスクキー：Ｋｄ
である。
ステップＳ４６１において、２バイトのアプリケーションＩＤ（ＡＰＰＩＤｊ）のバイト拡張処理を実行する。たとえば図１６（ｃ）に示すように、２バイトのアプリケーションＩＤ（ＡＰＰＩＤｊ）を８個連結して１６バイトデータを生成する。２バイトデータを１６バイトデータへ拡張可能な処理であれば任意のデータ処理が適用可能である。
【０１６４】
次にステップＳ４６２において、拡張されたアプリケーションＩＤ（ＡＰＰＩＤｊ）と、１６バイトのディスクキー：Ｋｄとを入力とするＡＥＳ暗号アルゴリズムに従った鍵生成処理を実行して、出力値（１６バイトデータ）を得る。ＡＥＳ暗号アルゴリズムに従った鍵生成処理は、先に図１０を参照して説明した処理である。
【０１６５】
図１３に戻り、ドライブ装置４００が情報記録媒体から取得したコンテンツ等のデータを接続バスを介して再生処理装置（ホスト）５００に転送して再生する処理シーケンスについて説明を続ける。
【０１６６】
ステップＳ２０４では、ディスクキー：Ｋｄと、アプリケーションＩＤ（ＡＰＰＩＤｊ）とに基づいて、例えば上述した排他論理和あるいはハッシュ演算などの演算を実行し、さらに、演算結果と、情報記録媒体２００から取得したＲＯＭマーク：Ｖｅ２０４とに基づく鍵生成処理、例えばＡＥＳ暗号アルゴリズムに従った鍵生成処理を実行してアプリケーション（ＡＰＰＩＤｊ）対応のエンベデッドキー：Ｋｅｊを生成する。ここで、生成されるアプリケーション（ＡＰＰＩＤｊ）対応のエンベデッドキー：Ｋｅｊは、図１２を参照して説明したディスク製造エンティテイ３５０におけるエンベデッドキー：Ｋｅ生成ステップ、すなわちステップＳ１５４において生成されるエンベデッドキーに対応する。
【０１６７】
ディスク製造エンティテイ３５０が、ステップＳ１５４におけるエンベデッドキー生成ステップにおいて使用したアプリケーションＩＤがＡＰＰＩＤｊである場合は、図１３においてドライブ４００が、再生処理装置（ホスト）５００から取得したアプリケーション対応の公開鍵証明書から取得したアプリケーションＩＤ（ＡＰＰＩＤｊ）に基づいて生成したアプリケーション（ＡＰＰＩＤｊ）対応のエンベデッドキー：Ｋｅｊは、ディスク製造エンティテイ３５０において使用されたエンベデッドキーと一致するが、ディスク製造エンティテイ３５０が使用したアプリケーションＩＤがＡＰＰＩＤｊでない場合は、ドライブの生成するアプリケーション（ＡＰＰＩＤｊ）対応のエンベデッドキー：Ｋｅｊは、ディスク製造エンティテイ３５０がコンテンツ暗号化に適用していないエンベッデッドキーとなる。
【０１６８】
ドライブは、ステップＳ２０５において、エンベデッドキー：Ｋｅｊを先の相互認証および鍵交換処理（ＡＫＥ）において生成したセッションキー：Ｋｓで暗号化して再生処理装置（ホスト）５００に対して接続バスを介して送信する。
【０１６９】
ステップＳ２０６、およびステップＳ２０７の処理は、先に図１５を参照して説明した相互認証および鍵交換処理（ＡＫＥ）のステップＳ４０６の処理に相当し、乱数に基づいて、バスキー：Ｋｂｕｓを生成（ステップＳ２０６）し、セッションキー：Ｋｓでバスキー：Ｋｂｕｓを含むデータを暗号化（ステップＳ２０７）して生成したデータを再生処理装置（ホスト）５００に対して接続バスを介して送信する処理である。送信データは、先に図１５を参照して説明したように、乱数に基づいて生成したバスキー：Ｋｂｕｓ、およびバスキーのシーケンス番号：ＳＥＱとの連結データ：［Ｋｂｕｓ‖ＳＥＱ］と、この連結データの改竄検証用データとして算出したハッシュ値［ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］とをセッションキー：Ｋｓを用いて暗号化したデータ：ＥＫｓ［（Ｋｂｕｓ‖ＳＥＱ），ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］である。
【０１７０】
さらに、ドライブ装置４００は、ステップＳ２０８において、情報記録媒体２００から読み出した暗号化コンテンツ２０６のユーザ制御データ（ＵＣＤ）に含まれる出力制御情報と、相互認証および鍵交換処理（ＡＫＥ）処理において、再生処理装置（ホスト）５００から取得した再生処理装置（ホスト）の公開鍵証明書の格納データとに基づく出力制御を実行し、ステップＳ２０９において、暗号化コンテンツ２０６を制御態様に応じてバスキー：Ｋｂｕｓを用いて暗号化し、生成した暗号化データを接続バスを介して再生処理装置（ホスト）５００に対して出力する。
【０１７１】
情報記録媒体２００から読み出される暗号化コンテンツ３５０は、例えばスクランブル処理のなされた暗号化データであり、ドライブは、このスクランブル処理されたデータをバスキー：Ｋｂｕｓを適用して再暗号化してホスト側に出力する。このバスキー：Ｋｂｕｓを適用した再暗号化処理によるデータ出力を実行することにより、バスキー：Ｋｂｕｓを保持している認証のなされたホスト側の唯一のアプリケーションのみが、バスキー：Ｋｂｕｓを適用した復号が可能となり、復号処理によって暗号化コンテンツ３５０を取得することが可能となる。
【０１７２】
すなわち、先に、図４を参照して説明したように、コンテンツを入力するＰＣ（ホスト）側でのアプリケーションの切り替えによるコンテンツの迂回取得や、ドライブとホストとの接続バスの転送データを盗聴することによるコンテンツ取得を行なっても、取得されるコンテンツは、バスキー：Ｋｂｕｓによって暗号化されたデータであり、バスキー：Ｋｂｕｓを保有しているのは、ドライブとの認証の成立した特定のアプリケーションのみであり、その特定のアプリケーションを適用しない限り、入力コンテンツの復号は実行できない。ＣＳＳスクランブルの解除プログラムのみではバスキー：Ｋｂｕｓによって暗号化されたデータの復号は実行できず、コンテンツの不正利用が防止可能となる。
【０１７３】
バスキー：Ｋｂｕｓを適用した暗号化コンテンツ２０６の暗号化処理態様について、図１７を参照して説明する。バスキー：Ｋｂｕｓを適用した暗号化コンテンツ２０６の暗号化処理は、例えば図１７に示すように、ＡＥＳ−ＣＢＣモードを適用したブロック暗号化処理によって実行される。
【０１７４】
ドライブ装置４００は、情報記録媒体２００から読み出される暗号化コンテンツに対して、ドライブにおいて生成したバスキー：Ｋｂｕｓを適用して、所定データブロック単位（１６バイト）で暗号化する処理を実行する。
【０１７５】
まず、情報記録媒体２００から読み出される暗号化コンテンツの構成データである２０４８バイトのセクタデータ５５０から先頭の１６バイトデータを取得し、初期値：ＩＶｂとの排他論理和（ＸＯＲ）結果を、ＡＥＳ暗号処理部［ＡＥＳ＿Ｅ］５５１に入力し、バスキー：Ｋｂｕｓを適用したＡＥＳ暗号アルゴリズムに従った暗号処理を実行して１６バイトブロックデータの暗号化データを生成する。初期値：ＩＶｂは、予め設定された定数である。ＩＶｂは、例えば、セクタデータ５５０に対応するユーザ制御データ（ＵＣＤ）から取得されるという場合もある。
【０１７６】
さらに、この生成データは、次のブロックの暗号化に適用する入力値として適用される。以下、各１６バイトのブロックデータ毎に排他論理和（ＸＯＲ）およびＡＥＳ暗号処理を同様に繰り返し実行して、バスキーによる暗号化セクタデータ５５２を生成し、このデータをＡＴＡＰＩ−ＢＵＳなどの接続バスを介して再生処理装置（ホスト）５００側のアプリケーションに向けて送信する。再生処理装置（ホスト）５００側の再生アプリケーションではこの入力暗号化データを復号して再生処理を行なう。
【０１７７】
図１３に戻り、再生処理装置（ホスト）５００側の再生アプリケーションの実行する処理シーケンスについて説明する。再生処理装置（ホスト）５００の再生アプリケーションは、まず、前述したようにステップＳ３０１においてドライブ装置４００との相互認証および鍵交換（ＡＫＥ）を実行し、セッションキー：Ｋｓを取得する。
【０１７８】
次に、ステップＳ３０２において、ドライブから接続バスを介して入力したセッションキー：Ｋｓによって暗号化されたアプリケーションＩＤ＝ｊのアプリケーション対応のエンベデッドキー：Ｋｅｊ、すなわち［ＥＫｓ（Ｋｅｊ）］に対して、セッションキー：Ｋｓを適用した復号処理を実行しアプリケーション対応エンベデッドキー：Ｋｅｊを取得する。鍵交換（ＡＫＥ）において、公開鍵証明書に格納されるアプリケーションＩＤは公開鍵証明書の署名確認によって改竄がないことが確認されることから、適切な再生アプリケーションだけがアプリケーション対応エンベデッドキー：Ｋｅｊを取得することができる。
【０１７９】
さらに、ステップＳ３０３において、ドライブから接続バスを介して入力したユニットキー生成情報：Ｖｕに対してアプリケーション対応エンベデッドキー：Ｋｅｊを適用したＡＥＳ鍵生成処理（図１０参照）を実行し、アプリケーション対応ユニットキー：Ｋｕｊを生成する。
【０１８０】
ここで生成されるアプリケーション対応ユニットキー：Ｋｕｊは、図１２を参照して説明したディスク製造エンティテイ３５０におけるユニットキー：Ｋｕ生成ステップ、すなわちステップＳ１５５において生成されるユニットキーに対応する。
【０１８１】
ディスク製造エンティテイ３５０が、ステップＳ１５５におけるユニットキー生成ステップにおいて使用したエンベデッドキー：ＫｅがアプリケーションＩＤ＝ＡＰＰＩＤｊを適用したものである場合には、図１３においてホストアプリケーションが、ステップＳ３０３において生成するアプリケーション対応ユニットキー：Ｋｕｊと同じものとなり、このユニットキーによってステップＳ３０７におけるコンテンツ復号が可能となる。しかし、ディスク製造エンティテイ３５０が、ステップＳ１５５におけるユニットキー生成ステップにおいて使用したエンベデッドキー：ＫｅがアプリケーションＩＤ＝ＡＰＰＩＤｊを適用していない場合には、図１３においてホストアプリケーションが、ステップＳ３０３において生成するアプリケーション対応ユニットキー：Ｋｕｊは、情報記録媒体２００に格納された暗号化コンテンツの暗号化処理に適用したユニットキーと異なることになり、ステップＳ３０７におけるコンテンツ復号が不可能となる。
【０１８２】
再生処理装置（ホスト）５００側のアプリケーションの処理についての説明を続ける。再生処理装置（ホスト）５００側のアプリケーションは、ステップＳ３０４において、ドライブから接続バスを介して入力したセッションキー：Ｋｓによって暗号化されたバスキー：Ｋｂｕｓ、すなわち［ＥＫｓ（Ｋｂｕｓ）］に対して、セッションキー：Ｋｓを適用した復号処理を実行しバスキー：Ｋｂｕｓを取得する。
【０１８３】
なお、先に、図１５を参照して説明したように、ドライブから送信されるバスキー：Ｋｂｕｓを含むデータは、バスキー：Ｋｂｕｓおよびバスキーのシーケンス番号：ＳＥＱとの連結データ：［Ｋｂｕｓ‖ＳＥＱ］と、この連結データの改竄検証用データとして算出したハッシュ値［ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］とをセッションキー：Ｋｓを用いて暗号化したデータ：ＥＫｓ［（Ｋｂｕｓ‖ＳＥＱ），ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］である。
【０１８４】
再生処理装置（ホスト）５００のアプリケーションは、ステップＳ３０４において、データ：ＥＫｓ［（Ｋｂｕｓ‖ＳＥＱ），ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］をセッションキー：Ｋｓで復号し、バスキー：Ｋｂｕｓおよびバスキーのシーケンス番号：ＳＥＱとの連結データ：［Ｋｂｕｓ‖ＳＥＱ］と、この連結データの改竄検証用データとして算出したハッシュ値［ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］とを取得する。
【０１８５】
次に、ステップＳ３０５において、連結データ：［Ｋｂｕｓ‖ＳＥＱ］のハッシュ値を算出し、ドライブからの入力データ中に含まれるハッシュ値［ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］と比較を実行する。両ハッシュ値が一致していれば、連結データ：［Ｋｂｕｓ‖ＳＥＱ］が改竄されていないものと判定し、ステップＳ３０６におけるバスキー：Ｋｂｕｓを適用したコンテンツ復号処理に以降する。
【０１８６】
ステップＳ３０６では、ドライブ装置４００から入力するバスキー：Ｋｂｕｓによって再暗号化された暗号化コンテンツの復号処理を実行する。
【０１８７】
バスキー：Ｋｂｕｓによって再暗号化された暗号化コンテンツの復号処理の詳細について、図１８を参照して説明する。バスキー：Ｋｂｕｓを適用した暗号化コンテンツの復号処理は、例えば図１８に示すように、ＡＥＳ−ＣＢＣモードを適用したブロック復号処理によって実行される。
【０１８８】
再生処理装置（ホスト）５００のアプリケーションは、ドライブ装置４００から接続バスを介して入力する暗号化コンテンツに対して、ドライブから入力したバスキー：Ｋｂｕｓを適用して、所定データブロック単位（１６バイト）で復号する処理を実行する。
【０１８９】
まず、ドライブ装置４００から接続バスを介して入力する暗号化コンテンツの構成データである２０４８バイトのセクタデータ３７０から先頭の１６バイトデータを取得し、ＡＥＳ復号処理部［ＡＥＳ＿Ｄ］３７１に入力し、バスキー：Ｋｂｕｓを適用したＡＥＳ暗号アルゴリズムに従った復号処理を実行し、さらに、初期値：ＩＶｂとの排他論理和（ＸＯＲ）演算を実行して復号結果を得る。初期値：ＩＶｂは、予め設定された定数である。ＩＶｂは、例えば、セクタデータ３７０に対応するユーザ制御データ（ＵＣＤ）から取得されるという場合もある。
【０１９０】
さらに、１６バイト単位の復号結果データは、次のブロックの復号処理に適用する入力値として適用される。以下、各１６バイトのブロックデータ毎にＡＥＳ復号処理および排他論理和（ＸＯＲ）を同様に繰り返し実行して、バスキーによる暗号化を解除したセクタデータ、すなわち、情報記録媒体２００に格納されたデータ状態としての暗号化（スクランブル）セクタデータ３７２を取得する。
【０１９１】
さらに、再生処理装置（ホスト）５００のホストアプリケーションは、図１３に示すステップＳ３０７において、アプリケーション対応のユニットキー：Ｋｕｊを適用して、情報記録媒体２００に格納されたデータ状態としての暗号化コンテンツの復号処理を実行する。
【０１９２】
この復号処理について、図１９を参照して説明する。暗号化コンテンツは、所定データ単位のブロック単位での暗号化がなされて情報記録媒体２００に格納されている。図１９に示すように例えば６１４４バイトのセクタデータは、１６バイトのブロックごとの暗号化がなされている。
【０１９３】
復号処理の手順について説明する。まず、６１４４バイトのセクタデータから先頭の１６バイトデータを取得し、ＡＥＳ鍵生成処理ブロック［ＡＥＳ＿Ｇ］５８１において、ＡＥＳ暗号アルゴリズムに従った鍵生成処理を実行する。これは、アプリケーション対応のユニットキーＫｕｊを入力キーとして、先頭の１６バイトデータを入力値として、先に図１０を参照して説明したＡＥＳ鍵生成処理を実行する。ＡＥＳ鍵生成処理ブロック３２１の出力をブロックキー：Ｋｂとし、このブロックキー：Ｋｂを適用して次の１６バイトデータの復号処理をＡＥＳ復号処理ブロック［ＡＥＳ＿Ｄ］５８２において実行する。
【０１９４】
ＡＥＳ復号処理ブロック［ＡＥＳ＿Ｄ］５８２では、セクタデータの第２番目の１６バイトデータと初期値：ＩＶａとの排他論理和（ＸＯＲ）結果を入力としてブロックキー：Ｋｂを適用したＡＥＳ暗号アルゴリズムに従った復号処理を実行して、１６バイトブロックデータの復号データを取得するとともに、次のブロックの復号に適用する入力値とする。以下、同様の処理を繰り返し実行して、復号セクタデータ３２３を得ることができる。なお、初期値：ＩＶａは、予め設定された定数である。ＩＶａは、例えばセクタデータに対応するユーザ制御データあるいはユーザデータから取得することができる値として設定されるという場合もある。
【０１９５】
図９のステップＳ１０５では、このように、ユニットキー：Ｋｕを適用して、ブロック単位の復号処理を実行し、復号セクタデータ５８３から構成されるコンテンツ５２０を出力する。
【０１９６】
以上の処理により、再生処理装置（ホスト）５００のホストアプリケーションは、復号コンテンツ５２０を取得し、スピーカ、ディスプレイ等の出力部に対する出力処理を行いコンテンツ再生を実行する。
【０１９７】
このように、本発明の構成では、情報記録媒体に記録するコンテンツの暗号化に適用する鍵の生成情報として記録コンテンツの再生権利を持つ正当なアプリケーションのＩＤ情報を適用した鍵（エンベテッドキー）を利用した構成とし、ドライブからホストアプリケーションに対するコンテンツ出力の際に、ドライブがホストアプリケーションから取得した公開鍵証明書から取得するアプリケーションＩＤを適用して、コンテンツ記録時に実行すると同様の演算および暗号処理を実行して、コンテンツの復号に適用する鍵（エンベテッドキー）を生成してホストアプリケーションに提供する構成としたので、コンテンツの記録時に適用したアプリケーションＩＤと、ホスト（再生処理装置）側で実行中のアプリケーションのＩＤとが一致する場合にのみ、コンテンツの復号に成功することとなり、異なるＩＤを持つアプリケーションによるコンテンツ復号は不可能となり、不正なアプリケーションによるコンテンツ利用が防止される。
【０１９８】
次に、図２０、図２１を参照して、コンテンツ再生処理におけるドライブとホスト各々の処理シーケンスについて説明する。まず、図２０を参照して、ドライブからホストに対するコンテンツ出力を制御するシーケンスについて説明する。
【０１９９】
図２０のフローの各ステップについて説明する。まず、ステップＳ５１１においてドライブに対する情報記録媒体（ディスク）の挿入を検知し、ステップＳ５１２において、バス接続されたホスト側でのコンテンツ再生処理を実行するホストアプリケーションの起動を検知する。これらが検知されたことを条件として、ステップＳ５１３に進み、ホスト側からの相互認証要求を待機し、相互認証要求を受信すると、ステップＳ５１４において、公開鍵暗号方式に従った相互認証および鍵交換（ＡＫＥ）処理を実行する。なお、この時点で、ドライブはホストアプリケーションからアプリケーションＩＤの登録された公開鍵証明書（図１４（ｂ）参照）を受領する。
【０２００】
ステップＳ５１５において、相互認証および鍵交換（ＡＫＥ）処理の完了が確認されると、ステップＳ５１６に進み、ドライブは、ホストアプリケーションから受領したアプリケーションＩＤの登録された公開鍵証明書（図１４（ｂ）参照）からアプリケーションＩＤを適用した演算および暗号処理によりアプリケーション対応のエンベテッドキー［Ｋｅｊ］を生成する。この処理は、図１３のステップＳ２０４の処理に相当する。
【０２０１】
ステップＳ５１７において、ホストアプリケーション側からアプリケーション対応エンベテッドキー［Ｋｅｊ］の転送要求を受領すると、ステップＳ５１８において、アプリケーション対応エンベテッドキー［Ｋｅｊ］をセッションキー：Ｋｓで暗号化して送信する。この処理は、図１３のステップＳ２０５の処理に相当する。
【０２０２】
次にドライブは、ステップＳ５１９において、ディスクの挿入後、初めてのバスキー：Ｋｂｕｓの生成を行なうか否かを判定し、初めてのバスキー：Ｋｂｕｓ生成である場合は、ドライブは、ステップＳ５２０において、バスキー：Ｋｂに対応する乱数Ｒの生成処理を実行し、この生成乱数Ｒをバスキー：Ｋｂとする。この処理は、図１３におけるステップＳ２０６の処理に相当する。なお、バスキー：Ｋｂには、シーケンス番号が対応付けられ、バスキーのすり替えを防止する。
【０２０３】
ステップＳ５２１において、ホスト側からバスキーの転送要求を受領すると、ステップＳ５２２において、バスキー：Ｋｂをホスト側に転送する。この処理は、図１３におけるステップＳ２０７の処理に相当する。なお、このバスキー転送は、図１５の相互認証および鍵交換（ＡＫＥ）処理の最終ステップＳ４０６に相当する処理であり、ドライブは、バスキー：Ｋｂｕｓおよびバスキーのシーケンス番号：ＳＥＱとの連結データ：［Ｋｂｕｓ‖ＳＥＱ］と、この連結データの改竄検証用データとして算出したハッシュ値［ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］とをセッションキー：Ｋｓを用いて暗号化したデータ：ＥＫｓ［（Ｋｂｕｓ‖ＳＥＱ），ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］を生成してホスト側に送信する。
【０２０４】
次に、ステップＳ５２３では、新たな相互認証要求がないことを確認し、また、ステップＳ５２４では、情報記録媒体の排出がなされないことを確認して、ステップＳ５２５において、ホスト側のコンテンツ取得要求、すなわちセクタデータの読み取り要求がなされるまで待機する。
【０２０５】
なお、ステップＳ５２３において、新たな相互認証要求があった場合は、ステップＳ５１４に戻り相互認証および鍵交換（ＡＫＥ）処理を実行し、新たなセッションキーの生成、バスキーの送信を実行する。この際に生成するバスキーは、シーケンス番号：２のバスキーであり、先に生成したバスキー（シーケンス番号１）とは同じバスキーとなる。
【０２０６】
なお、ステップＳ５２４において、ドライブからのディスク排出があったと判定した場合は、ステップＳ５１１に戻り、初期状態に設定され、生成済みのバスキー、セッションキー等のすべてのデータはリセット、すなわち消去される。
【０２０７】
ステップＳ５２５において、ホスト側からセクタデータの読み出し要求があると、ドライブは、ステップＳ５２２において、読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）から出力制御情報を読み取り、［バスプロテクションフラグ：ＢＰＦ］の値を判定する。この処理は、図１３のステップＳ２０８の処理に相当する。
【０２０８】
バスプロテクションフラグ：ＢＰＦは、先に図８を参照して説明したように、
ＢＰＦ＝１：出力制限あり、バス暗号化あり、
ＢＰＦ＝０：出力制限なし、
の設定情報である。
【０２０９】
ステップＳ５２６において、読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）の出力制御情報中のバスプロテクションフラグ：ＢＰＦが［１］に設定されていると判定した場合は、ステップＳ５２７に進み、情報記録媒体から読出したセクタデータをバスキー：Ｋｂｕｓで暗号化して、ステップＳ５２８においてホスト側に出力する。なお、ステップＳ５２７におけるセクタデータの暗号化処理は、例えば、先に図１７を参照して説明したＡＥＳ−ＣＢＣモードを適用した暗号化処理として実行される。
【０２１０】
ステップＳ５２２において、読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）の出力制御情報中のバスプロテクションフラグ：ＢＰＦが［０］に設定されていると判定した場合は、ステップＳ５２７をスキップし、情報記録媒体から読出したセクタデータのバスキー：Ｋｂｕｓによる暗号化処理を実行することなく、ステップＳ５２８において、情報記録媒体からの読出しコンテンツをそのままホスト側に出力する。なお、この読出しコンテンツは、例えばプレイリストやファイルシステム情報などである。
【０２１１】
このように、ドライブは、ホストアプリケーションとの相互認証時にアプリケーションから受領した公開鍵証明書からアプリケーションＩＤを取得し、アプリケーションＩＤを適用した演算および暗号化処理によってアプリケーション対応のエンベデッドキー：Ｋｅｊをホストアプリケーションに対して出力する処理を実行する。また、ドライブは、情報記録媒体からの読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）の出力制御情報中のバスプロテクションフラグ：ＢＰＦが［０］か［１］かに基づいてバスキーによる暗号化の要否を判定し、バスキーによる暗号化の必要なデータである場合に、出力コンテンツのバスキーによる暗号化を実行して出力する。
【０２１２】
次に、図２１を参照して、ホスト側の処理について説明する。ステップＳ５５１において、再生アプリケーションを起動し、ステップＳ５５２においてディスクがドライブに挿入されたことの通知を受領すると、ステップＳ５５３においてドライブとの相互認証、セッションキーの共有処理を実行する。
【０２１３】
ステップＳ５５３における相互認証においては、ドライブに対してアプリケーションＩＤを格納したアプリケーション対応の公開鍵証明書（図１４（ｂ）参照）が提供される。ステップＳ５５４において、相互認証および鍵交換（ＡＫＥ）処理の完了が確認されると、ステップＳ５５５に進み、ホストは、ドライブに対して、アプリケーション対応エンベデッドキー：Ｋｅｊを要求する。アプリケーション対応エンベデッドキー：Ｋｅｊは、アプリケーションＩＤ＝ｊと、ディスクキー：Ｋｄと、情報記録媒体から取得したＲＯＭマーク：Ｖｅに基づく演算および鍵生成処理、例えばＡＥＳ暗号アルゴリズムに従った鍵生成処理によってドライブで生成される鍵であり、セッションキーＫｓによって暗号化されてホストに送信される。
【０２１４】
ステップＳ５５６において、暗号化されたアプリケーション対応エンベデッドキー：Ｋｅｊをドライブから受信すると、ステップＳ５５７において、セッションキーＫｓを適用して復号を実行し、アプリケーション対応エンベデッドキー：Ｋｅｊを取得する。さらに、ホストはステップＳ５５８において、暗号化コンテンツの復号処理に適用する鍵の生成に必要となる情報としての記録シード（ＲＥＣ  ＳＥＥＤ）であるユニットキー生成情報：Ｖｕの転送をドライブに要求し、ステップＳ５５９においてユニットキー生成情報：Ｖｕを受信すると、ステップＳ５６０において、アプリケーション対応エンベデッドキー：Ｋｅｊとユニットキー生成情報：Ｖｕとに基づいてアプリケーション対応ユニットキー：Ｋｕｊを生成する。この処理は、図１３のステップＳ３０３の処理に相当する。
【０２１５】
次にホストは、ステップＳ５６１においてバスキー：Ｋｂｕｓの送信要求をドライブに出力し、ステップＳ５６２において、接続バスを介して入力したセッションキー：Ｋｓによって暗号化されたバスキー：Ｋｂｕｓを取得すると、ステップＳ５６３において、セッションキー：Ｋｓを適用した復号処理を実行しバスキー：Ｋｂｕｓを取得する。この処理は、図１３のステップＳ３０５の処理に相当する。
【０２１６】
次に、ＰＣの再生ソフトウェアの完了（Ｓ５６４）がなされておらず、ディスク排出がない（Ｓ５６５）ことの確認の後、ユーザの指示などによりセクタデータの読み出しを行うと判定した場合（Ｓ５６６：Ｙｅｓ）は、ステップＳ５６７においてドライブに対してセクタデータの転送要求を出力する。
【０２１７】
ドライブからセクタデータを受信（Ｓ５６８）し、データが暗号化データである場合（Ｓ５６９：Ｙｅｓ）は、ステップＳ５７０でバスキー：Ｋｂｕｓによって暗号化された暗号化コンテンツの復号処理を実行する。
【０２１８】
バスキー：Ｋｂｕｓによって暗号化された暗号化コンテンツの復号処理は、先に図１８を参照して説明した通り、例えば、ＡＥＳ−ＣＢＣモードを適用したブロック復号処理によって実行される。
【０２１９】
さらに、ホストは、ステップＳ５７１において、アプリケーション対応ユニットキー：Ｋｕｊを適用して暗号化コンテンツの復号処理を実行する。この復号処理は、先に図１９を参照して説明した処理として実行される。以上の処理により、正当なコンテンツ利用権を有するホストアプリケーション（アプリケーションＩＤ＝ｊ）は、復号コンテンツを取得し、コンテンツ再生を実行することができる。
【０２２０】
このように、本発明の構成によれば、情報記録媒体に格納するコンテンツの暗号化に適用する鍵の生成情報として、正当なコンテンツ利用権を持つアプリケーションのアプリケーションＩＤを適用する構成とし、ドライブからホストアプリケーションに対するコンテンツの転送時に、ドライブが、相互認証時にアプリケーションから受領した公開鍵証明書からアプリケーションＩＤを取得し、アプリケーションＩＤを適用した演算および暗号化処理によってアプリケーション対応のエンベデッドキー：Ｋｅｊを生成してアプリケーションに提供する構成としたので、正当なコンテンツ利用権を持つアプリケーションのみが正しいエンベデッドキー：Ｋｅｊを取得することができ、コンテンツの利用が可能となる。
【０２２１】
正当なアプリケーション以外のアプリケーションがドライブに提供する公開鍵証明書には、異なるアプリケーションＩＤが格納され、このＩＤを適用して生成したエンベデッドキーは、ディスクに対するコンテンツ記録時に適用されたエンベデッドキーとは異なることになり、コンテンツの復号が不可能となり、コンテンツの不正利用が防止される。
【０２２２】
［３．その他の実施例］
次に、本発明のその他の実施例について図２２以下を参照して説明する。図２２は、先に説明した図１２と同様、ディスク製造エンティテイ３５０、情報記録媒体２００、ドライブ４００、再生処理装置（ホストアプリケーション）５００の構成、処理について説明する図である。
【０２２３】
図１２の処理と異なる点は、ディスク製造エンティテイ３５０におけるアプリケーションＩＤ３５７を適用した演算および暗号処理によるアプリケーション対応エンベデッドキー：Ｋｅｊの生成プロセスである。
【０２２４】
図２２の実施例では、ディスク製造エンティテイ３５０は、ステップＳ１７１において、情報記録媒体に格納されるコンテンツ毎に設定されたコンテンツ再生権利を持つ正当なアプリケーションに対応するアプリケーションＩＤ３５７（ＡｐｐＩＤ１〜ｎ）と、ＲＯＭマーク：Ｖｅ３５８との演算処理、例えば図１６を参照して説明した排他論理和演算やハッシュ演算などの各種の演算を実行し、ステップＳ１７２において、演算結果と、ディスクキー：Ｋｄ３５４とに基づくＡＥＳ鍵生成処理（図１０参照）を実行し、アプリケーション対応のエンベデッドキー：Ｋｅ１〜Ｋｅｎを生成する構成としている。なお、ステップＳ１５３の演算は排他論理和演算やハッシュ演算に限られることなくその他の演算処理を適用してもよい。
【０２２５】
以下、ステップＳ１５５におけるアプリケーション対応のエンベデッドキー：Ｋｅ１〜Ｋｅｎに基づくアプリケーション対応ユニットキー：Ｋｕ１〜Ｋｕｎの生成、ステップＳ１５６におけるユニットキーによるコンテンツ暗号化処理、暗号化コンテンツの記録は図１２の処理と同様である。
【０２２６】
さらに、ドライブ４００におけるアプリケーションＩＤを適用したアプリケーション対応エンベデッドキー：Ｋｅｊの生成処理も、図１２の処理構成とは異なり、上述したディスク製造エンティテイの処理と同様の処理をステップＳ２０４において実行する構成となっている。
【０２２７】
ドライブ４００はステップＳ２０４において、相互認証処理において、再生処理装置（ホスト）５００から取得したアプリケーション対応の公開鍵証明書から取得したアプリケーションＩＤ（ＡＰＰＩＤｊ）と、情報記録媒体２００から読み出したＲＯＭマーク：Ｖｅ２０４との演算処理、例えば図１６を参照して説明した排他論理和演算やハッシュ演算などの各種の演算を実行し、演算結果と、情報記録媒体２００から取得した暗号化ディスクキー［Ｅｍ（Ｋｄ）］の復号処理（Ｓ２０３）によって取得したディスクキー：Ｋｄとに基づく鍵生成処理、例えばＡＥＳ暗号アルゴリズムに従った鍵生成処理を実行してアプリケーション（ＡＰＰＩＤｊ）対応のエンベデッドキー：Ｋｅｊを生成する。ＡＥＳ暗号アルゴリズムに従った鍵生成処理は、先に図１０を参照して説明した通りである。
【０２２８】
ここで、生成されるアプリケーション（ＡＰＰＩＤｊ）対応のエンベデッドキー：Ｋｅｊは、ディスク製造エンティテイ３５０におけるエンベデッドキー：Ｋｅ生成処理において生成されるエンベデッドキーに対応する。
【０２２９】
ドライブ４００が、再生処理装置（ホスト）５００から取得したアプリケーション対応の公開鍵証明書から取得したアプリケーションＩＤ（ＡＰＰＩＤｊ）に基づいて生成したアプリケーション（ＡＰＰＩＤｊ）対応エンベデッドキー：Ｋｅｊは、ディスク製造エンティテイ３５０が、エンベデッドキー生成において使用したアプリケーションＩＤがＡＰＰＩＤｊである場合にのみ、ディスク製造エンティテイ３５０が生成したエンベデッドキー：Ｋｅと一致し、ドライブ４００からアプリケーション（ＡＰＰＩＤｊ）対応エンベデッドキー：Ｋｅｊを受領する再生処理装置５００のアプリケーションは、アプリケーション（ＡＰＰＩＤｊ）対応エンベデッドキー：Ｋｅｊに基づいて、コンテンツの復号に適用するアプリケーション（ＡＰＰＩＤｊ）対応ユニットキー：Ｋｕｊを生成することができ、アプリケーション（ＡＰＰＩＤｊ）対応ユニットキー：Ｋｕｊを適用した復号処理（ステップＳ３０７）においてコンテンツ復号に成功する。
【０２３０】
ディスク製造エンティテイ３５０が、エンベデッドキー生成において使用したアプリケーションＩＤがＡＰＰＩＤｊでない場合は、ドライブの生成するアプリケーション（ＡＰＰＩＤｊ）対応エンベデッドキー：Ｋｅｊに基づいて生成されるアプリケーション（ＡＰＰＩＤｊ）対応ユニットキー：Ｋｕｊを適用した復号処理（ステップＳ３０７）を実行しても、コンテンツ復号に成功することはなく、コンテンツを利用することはできない。このように、正当なコンテンツ利用アプリケーションのみがコンテンツの復号に成功し、コンテンツを利用することができる。
【０２３１】
次に、図２３、図２４を参照して、アプリケーションＩＤ自体ではなくアプリケーションＩＤに１対１対応の値、アプリケーションＩＤ対応値を設定し、このアプリケーションＩＤ対応値を適用した演算、暗号処理によってアプリケーション対応エンベデッドキーを生成する処理構成について説明する。
【０２３２】
図２３は、先に説明した図１２の構成に対応する図であり、ディスク製造エンティテイ３５０、情報記録媒体２００、ドライブ４００、再生処理装置（ホストアプリケーション）５００の構成、処理について説明する図である。
【０２３３】
図１２の処理と異なる点は、ディスク製造エンティテイ３５０において、アプリケーションＩＤ自体ではなくアプリケーションＩＤに１対１対応の値、アプリケーションＩＤ対応値：Ｖａｉｄ１〜Ｖａｉｄｎをアプリケーション属性値として設定し、アプリケーションＩＤ対応値：Ｖａｉｄ１〜Ｖａｉｄｎに基づく演算および暗号処理を実行してアプリケーション対応エンベデッドキー：Ｋｅｊの生成する構成とした点である。
【０２３４】
アプリケーションＩＤ対応値データ３５９は、例えばディスク製造エンティテイ３５０、あるいはコンテンツ管理センタなどが各アプリケーションＩＤに対応する値：Ｖａｉｄ１〜Ｖａｉｄｎを生成し、これを適用する。ディスク製造エンティテイ３５０は、ステップＳ１８１において、ディスクキー：Ｋｄ３５４と、情報記録媒体に格納されるコンテンツ毎に設定されたコンテンツ再生権利を持つ正当なアプリケーションに対応するアプリケーションＩＤに対応する値であるアプリケーションＩＤ対応値：Ｖａｉｄ１〜Ｖａｉｄｎとの演算処理、例えば図１６を参照して説明した排他論理和演算やハッシュ演算などの各種の演算を実行し、ステップＳ１８２において、演算結果と、ＲＯＭマーク：Ｖｅ３５８とに基づくＡＥＳ鍵生成処理（図１０参照）を実行し、アプリケーション対応エンベデッドキー：Ｋｅ１〜Ｋｅｎを生成する。なお、ステップＳ１８１の演算は排他論理和演算やハッシュ演算に限られることなくその他の演算処理を適用してもよい。
【０２３５】
以下のステップＳ１５５におけるアプリケーション対応のエンベデッドキー：Ｋｅ１〜Ｋｅｎに基づくアプリケーション対応ユニットキー：Ｋｕ１〜Ｋｕｎの生成、ステップＳ１５６におけるユニットキーによるコンテンツ暗号化処理、暗号化コンテンツの記録は図１２の処理と同様である。
【０２３６】
ディスク製造エンティテイ３５０は、さらに、アプリケーションＩＤ対応値データ３５９、すなわち各アプリケーションＩＤとアプリケーションＩＤ対応値との対応表からなるアプリケーションＩＤ対応値データ３５９を情報記録媒体２００に格納する。
【０２３７】
次に、ドライブ４００の処理について説明する。ドライブ４００は、まずステップＳ２０４ａにおいて、再生処理装置（ホストアプリケーション）５００から受領した公開鍵証明書から取得したアプリケーションＩＤに基づいて、情報記録媒体２００から読み取ったアプリケーションＩＤ対応値データ２０７の検索を実行して、再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤ対応値を抽出する。
【０２３８】
このステップＳ２０４ａにおける検索処理において、再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤ対応値が見つからない場合は、再生処理装置（ホストアプリケーション）５００のアプリケーションはコンテンツの利用権を持つ正当なアプリケーションではないと判定し、ドライブ４００は、ホスト５００に対してエラーメッセージを出力する。
【０２３９】
このステップＳ２０４ａにおける検索処理において、再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤ対応値が見つかった場合にのみ、ステップＳ２０４ｂのアプリケーション対応エンベデッドキー：Ｋｅｊの生成処理に移行する。
【０２４０】
ステップＳ２０４ｂでは、ステップＳ２０３において取得したディスクキー：Ｋｄと、情報記録媒体２００から読み取ったアプリケーションＩＤ対応値データ２０７の検索によって抽出した再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤ対応値：Ｖａｉｄｊとの演算処理、例えば図１６を参照して説明した排他論理和演算やハッシュ演算などの各種の演算を実行し、演算結果と、情報記録媒体２００から取得したＲＯＭマーク：Ｖｅ２０４とに基づく鍵生成処理、例えばＡＥＳ暗号アルゴリズムに従った鍵生成処理を実行してアプリケーション（ＡＰＰＩＤｊ）対応のエンベデッドキー：Ｋｅｊを生成する。ＡＥＳ暗号アルゴリズムに従った鍵生成処理は、先に図１０を参照して説明した通りである。
【０２４１】
以下の処理は、図１２において説明した処理と同様の処理となる。本処理例では、ドライブはステップＳ２０４ａの検索処理により、ホストアプリケーションが正当なアプリケーションか否かを事前に知ることが可能となり、正当なアプリケーションでない場合には、アプリケーション対応のエンベデッドキーの生成処理を実行することなく処理を終了することが可能となる。また、この時点で処理を中止にすることにより、暗号化コンテンツの読み出しや、バスキー生成処理、コンテンツの転送処理などを一切実行する必要がなくなり、コンテンツの読み出し処理や転送に伴うコンテンツ漏洩の可能性を低減でき、より安全性を高めることが可能となる。
【０２４２】
図２４は、図２３と同様、アプリケーションＩＤ自体ではなくアプリケーションＩＤに１対１対応の値、アプリケーションＩＤ対応値：Ｖａｉｄ１〜Ｖａｉｄｎを適用した処理構成であり、アプリケーションＩＤ対応値：Ｖａｉｄ１〜Ｖａｉｄｎを適用した演算および暗号化処理によるエンベデッドキーの生成処理を先に説明した図２２の処理に対応させた構成である。
【０２４３】
図２４の実施例では、ディスク製造エンティテイ３５０は、ステップＳ１９１において、情報記録媒体に格納されるコンテンツ毎に設定されたコンテンツ再生権利を持つ正当なアプリケーションに対応するアプリケーションＩＤの対応値：Ｖａｉｄ１〜ｎと、ＲＯＭマーク：Ｖｅ３５８との演算処理、例えば図１６を参照して説明した排他論理和演算やハッシュ演算などの各種の演算を実行し、ステップＳ１９２において、演算結果と、ディスクキー：Ｋｄ３５４とに基づくＡＥＳ鍵生成処理（図１０参照）を実行し、アプリケーション対応のエンベデッドキー：Ｋｅ１〜Ｋｅｎを生成する構成としている。なお、ステップＳ１９１の演算は排他論理和演算やハッシュ演算に限られることなくその他の演算処理を適用してもよい。
【０２４４】
以下、ステップＳ１５５におけるアプリケーション対応のエンベデッドキー：Ｋｅ１〜Ｋｅｎに基づくアプリケーション対応ユニットキー：Ｋｕ１〜Ｋｕｎの生成、ステップＳ１５６におけるユニットキーによるコンテンツ暗号化処理、暗号化コンテンツの記録は図１２の処理と同様である。
【０２４５】
ディスク製造エンティテイ３５０は、さらに、アプリケーションＩＤ対応値データ３５９、すなわち各アプリケーションＩＤとアプリケーションＩＤ対応値との対応表からなるアプリケーションＩＤ対応値データ３５９を情報記録媒体２００に格納する。
【０２４６】
ドライブ４００におけるアプリケーションＩＤ対応値を適用したアプリケーション対応エンベデッドキー：Ｋｅｊの生成処理においては、まず、ステップＳ２０４ａにおいて、再生処理装置（ホストアプリケーション）５００から受領した公開鍵証明書から取得したアプリケーションＩＤに基づいて、情報記録媒体２００から読み取ったアプリケーションＩＤ対応値データ２０７の検索を実行して、再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤ対応値を抽出する。
【０２４７】
このステップＳ２０４ａにおける検索処理において、再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤ対応値が見つからない場合は、再生処理装置（ホストアプリケーション）５００のアプリケーションはコンテンツの利用権を持つ正当なアプリケーションではないと判定し、ドライブ４００は、ホスト５００に対してエラーメッセージを出力する。
【０２４８】
このステップＳ２０４ａにおける検索処理において、再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤ対応値が見つかった場合にのみ、ステップＳ２０４ｂのアプリケーション対応エンベデッドキー：Ｋｅｊの生成処理に移行する。
【０２４９】
ドライブ４００はステップＳ２０４ｂにおいて、情報記録媒体２００のアプリケーションＩＤ対応値データ２０７から抽出した再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤ対応値：Ｖａｉｄｊと、情報記録媒体２００から読み出したＲＯＭマーク：Ｖｅ２０４との演算処理、例えば図１６を参照して説明した排他論理和演算やハッシュ演算などの各種の演算を実行し、演算結果と、情報記録媒体２００から取得した暗号化ディスクキー［Ｅｍ（Ｋｄ）］の復号処理（Ｓ２０３）によって取得したディスクキー：Ｋｄとに基づく鍵生成処理、例えばＡＥＳ暗号アルゴリズムに従った鍵生成処理を実行してアプリケーション（ＡＰＰＩＤｊ）対応のエンベデッドキー：Ｋｅｊを生成する。ＡＥＳ暗号アルゴリズムに従った鍵生成処理は、先に図１０を参照して説明した通りである。
【０２５０】
ここで、生成されるアプリケーション（ＡＰＰＩＤｊ）対応のエンベデッドキー：Ｋｅｊは、ディスク製造エンティテイ３５０におけるエンベデッドキー：Ｋｅ生成処理において生成されるエンベデッドキーに対応する。
【０２５１】
以下の処理は、図２２において説明した処理と同様の処理となる。本処理例では、図２３の構成と同様、ドライブはステップＳ２０４ａの検索処理により、ホストアプリケーションが正当なアプリケーションか否かを事前に知ることが可能となり、正当なアプリケーションでない場合には、アプリケーション対応のエンベデッドキーの生成処理を実行することなく処理を終了することが可能となる。また、この時点で処理を中止にすることにより、暗号化コンテンツの読み出しや、バスキー生成処理、コンテンツの転送処理などを一切実行する必要がなくなり、コンテンツの読み出し処理や転送に伴うコンテンツ漏洩の可能性を低減でき、より安全性を高めることが可能となる。
【０２５２】
次に、図２５〜図２８を参照して、図２３、図２４を参照して説明したアプリケーションＩＤ対応値：Ｖａｉｄ１〜Ｖａｉｄｎをエンベデッドキー生成に適用した場合のドライブの処理およびホストとしての再生処理装置の処理の詳細について説明する。
【０２５３】
まず、図２５、図２６を参照してドライブの処理の詳細について説明する。まず、ステップＳ６１１においてドライブに対する情報記録媒体（ディスク）の挿入を検知し、ステップＳ６１２において、バス接続されたホスト側でのコンテンツ再生処理を実行するホストアプリケーションの起動を検知する。これらが検知されたことを条件として、ステップＳ６１３に進み、ホスト側からの相互認証要求を待機し、相互認証要求を受信すると、ステップＳ６１４において、公開鍵暗号方式に従った相互認証および鍵交換（ＡＫＥ）処理を実行する。なお、この時点で、ドライブはホストアプリケーションからアプリケーションＩＤの登録された公開鍵証明書（図１４（ｂ）参照）を受領する。
【０２５４】
ステップＳ６１５において、相互認証および鍵交換（ＡＫＥ）処理の完了が確認されると、ステップＳ６１６に進み、ドライブは、情報記録媒体から読み取ったアプリケーションＩＤ対応値データの検索処理を実行し、ホストアプリケーションから受領した公開鍵証明書（図１４（ｂ）参照）から抽出したアプリケーションＩＤに対応するアプリケーションＩＤ対応値を抽出する。
【０２５５】
ステップＳ６１７において、ホストアプリケーション側からアプリケーション対応エンベテッドキー［Ｋｅｊ］の転送要求を受領すると、ステップＳ６１８において、情報記録媒体から読み取ったアプリケーションＩＤ対応値データの検索に成功したか否かを判定し、失敗した場合、すなわち、ホストアプリケーションから受領した公開鍵証明書（図１４（ｂ）参照）から抽出したアプリケーションＩＤに対応するアプリケーションＩＤ対応値が見つからなかった場合は、アプリケーションが正当なアプリケーションではないと判定し、ステップＳ６２４に進みホストに対してエラーメッセージを転送する。
【０２５６】
さらにステップＳ６２５において、例えばアプリケーションの切り替えなどによって再度相互認証の要求があった場合は、ステップＳ６１４以下の相互認証処理以下の処理を再度実行する。さらにステップＳ６２６においてディスク排出があった場合は、ステップＳ６１１の初期状態に戻る。
【０２５７】
一方、ステップＳ６１８において、情報記録媒体から読み取ったアプリケーションＩＤ対応値データの検索に成功した場合は、ステップＳ６１９に進み、ドライブは、ホストアプリケーションから受領したアプリケーションＩＤに対応する対応値：Ｖａｉｄｊを適用した演算および暗号処理によりアプリケーション対応のエンベテッドキー［Ｋｅｊ］を生成し、セッションキー：Ｋｓで暗号化して送信する。
【０２５８】
次にドライブは、ステップＳ６２０において、ディスクの挿入後、初めてのバスキー：Ｋｂｕｓの生成を行なうか否かを判定し、初めてのバスキー：Ｋｂｕｓ生成である場合は、ドライブは、ステップＳ６２１において、バスキー：Ｋｂに対応する乱数Ｒの生成処理を実行し、この生成乱数Ｒをバスキー：Ｋｂとする。
【０２５９】
ステップＳ６２２において、ホスト側からバスキーの転送要求を受領すると、ステップＳ６２３において、バスキー：Ｋｂをホスト側に転送する。なお、このバスキー転送は、図１５の相互認証および鍵交換（ＡＫＥ）処理の最終ステップＳ４０６に相当する処理であり、ドライブは、バスキー：Ｋｂｕｓおよびバスキーのシーケンス番号：ＳＥＱとの連結データ：［Ｋｂｕｓ‖ＳＥＱ］と、この連結データの改竄検証用データとして算出したハッシュ値［ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］とをセッションキー：Ｋｓを用いて暗号化したデータ：ＥＫｓ［（Ｋｂｕｓ‖ＳＥＱ），ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］を生成してホスト側に送信する。
【０２６０】
次に、図２６に示すステップＳ６３１で新たな相互認証要求がないことを確認し、また、ステップＳ６３２で情報記録媒体の排出がなされないことを確認して、ステップＳ６３３において、ホスト側のコンテンツ取得要求、すなわちセクタデータの読み取り要求がなされるまで待機する。
【０２６１】
なお、ステップＳ６３１において、新たな相互認証要求があった場合は、ステップＳ６１４に戻り相互認証および鍵交換（ＡＫＥ）処理を実行し、新たなセッションキーの生成、バスキーの送信を実行する。この際に生成するバスキーは、シーケンス番号：２のバスキーであり、先に生成したバスキー（シーケンス番号１）とは同じバスキーとなる。
【０２６２】
なお、ステップＳ６３２において、ドライブからのディスク排出があったと判定した場合は、ステップＳ６１１に戻り、初期状態に設定され、生成済みのバスキー、セッションキー等のすべてのデータはリセット、すなわち消去される。
【０２６３】
ステップＳ６３３において、ホスト側からセクタデータの読み出し要求があると、ドライブは、ステップＳ６３４において、読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）から出力制御情報を読み取り、［バスプロテクションフラグ：ＢＰＦ］の値を判定する。
【０２６４】
バスプロテクションフラグ：ＢＰＦは、先に図８を参照して説明したように、
ＢＰＦ＝１：出力制限あり、バス暗号化あり、
ＢＰＦ＝０：出力制限なし、
の設定情報である。
【０２６５】
ステップＳ６３４において、読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）の出力制御情報中のバスプロテクションフラグ：ＢＰＦが［１］に設定されていると判定した場合は、ステップＳ６３５に進み、情報記録媒体から読出したセクタデータをバスキー：Ｋｂｕｓで暗号化して、ステップＳ６３６においてホスト側に出力する。なお、ステップＳ６３５におけるセクタデータの暗号化処理は、例えば、先に図１７を参照して説明したＡＥＳ−ＣＢＣモードを適用した暗号化処理として実行される。
【０２６６】
ステップＳ６３４において、読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）の出力制御情報中のバスプロテクションフラグ：ＢＰＦが［０］に設定されていると判定した場合は、ステップＳ６３５をスキップし、情報記録媒体から読出したセクタデータのバスキー：Ｋｂｕｓによる暗号化処理を実行することなく、ステップＳ６３６において、情報記録媒体からの読出しコンテンツをそのままホスト側に出力する。なお、この読出しコンテンツは、例えばプレイリストやファイルシステム情報などである。
【０２６７】
このように、ドライブは、ホストアプリケーションとの相互認証時にアプリケーションから受領した公開鍵証明書からアプリケーションＩＤを取得し、アプリケーションＩＤを適用した演算および暗号化処理によってアプリケーション対応のエンベデッドキー：Ｋｅｊをホストアプリケーションに対して出力する処理を実行する。また、ドライブは、情報記録媒体からの読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）の出力制御情報中のバスプロテクションフラグ：ＢＰＦが［０］か［１］かに基づいてバスキーによる暗号化の要否を判定し、バスキーによる暗号化の必要なデータである場合に、出力コンテンツのバスキーによる暗号化を実行して出力する。
【０２６８】
次に、図２７、図２８を参照して、ホスト側の処理について説明する。ステップＳ６５１において、再生アプリケーションを起動し、ステップＳ６５２においてディスクがドライブに挿入されたことの通知を受領すると、ステップＳ６５３においてドライブとの相互認証、セッションキーの共有処理を実行する。
【０２６９】
ステップＳ６５３における相互認証においては、ドライブに対してアプリケーションＩＤを格納したアプリケーション対応の公開鍵証明書（図１４（ｂ）参照）が提供される。ステップＳ６５４において、相互認証および鍵交換（ＡＫＥ）処理の完了が確認されると、ステップＳ６５５に進み、ホストは、ドライブに対して、アプリケーション対応エンベデッドキー：Ｋｅｊを要求する。アプリケーション対応エンベデッドキー：Ｋｅｊは、アプリケーションＩＤ対応値：Ｖａｉｄｊと、ディスクキー：Ｋｄと、情報記録媒体から取得したＲＯＭマーク：Ｖｅに基づく演算および鍵生成処理、例えばＡＥＳ暗号アルゴリズムに従った鍵生成処理によってドライブで生成される鍵であり、セッションキーＫｓによって暗号化されてホストに送信される。
【０２７０】
ステップＳ６５６において、暗号化されたアプリケーション対応エンベデッドキー：Ｋｅｊをドライブから受信に成功したか否かを判定する。アプリケーション対応エンベデッドキー：Ｋｅｊを取得できない場合には、ステップＳ６５７においてエラーメッセージを取得したか否かを判定し、エラーメッセージを取得した場合は、コンテンツ利用権の認められていないアプリケーションであると判断し、図２８に示すステップＳ６７９に進み、アプリケーションの終了後初期状態に戻るかあるいはステップＳ６８０においてディスク排出を実行してステップＳ６５２に戻る。
【０２７１】
ステップＳ６５６において、暗号化されたアプリケーション対応エンベデッドキー：Ｋｅｊをドライブから受信に成功した場合は、ステップＳ６５８に進み、セッションキーＫｓを適用して復号を実行し、アプリケーション対応エンベデッドキー：Ｋｅｊを取得する。
【０２７２】
次に、ホストはステップＳ６５９において、暗号化コンテンツの復号処理に適用する鍵の生成に必要となる情報としての記録シード（ＲＥＣ  ＳＥＥＤ）であるユニットキー生成情報：Ｖｕの転送をドライブに要求し、ステップＳ６６０においてユニットキー生成情報：Ｖｕを受信すると、ステップＳ６６１において、アプリケーション対応エンベデッドキー：Ｋｅｊとユニットキー生成情報：Ｖｕとに基づいてアプリケーション対応ユニットキー：Ｋｕｊを生成する。
【０２７３】
次にホストは、ステップＳ６６２においてバスキー：Ｋｂｕｓの送信要求をドライブに出力し、ステップＳ６６３において、接続バスを介して入力したセッションキー：Ｋｓによって暗号化されたバスキー：Ｋｂｕｓを取得すると、ステップＳ６６４において、セッションキー：Ｋｓを適用した復号処理を実行しバスキー：Ｋｂｕｓを取得する。
【０２７４】
次に、図２８のステップＳ６７１において、ＰＣの再生ソフトウェアの完了がなされておらず、ディスク排出がない（Ｓ６７２）ことの確認の後、ユーザの指示などによりセクタデータの読み出しを行うと判定した場合（Ｓ６７３：Ｙｅｓ）は、ステップＳ６７４においてドライブに対してセクタデータの転送要求を出力する。
【０２７５】
ドライブからセクタデータを受信（Ｓ６７５：Ｙｅｓ）し、データが暗号化データである場合（Ｓ６７６：Ｙｅｓ）は、ステップＳ６７７でバスキー：Ｋｂｕｓによって暗号化された暗号化コンテンツの復号処理を実行する。
【０２７６】
バスキー：Ｋｂｕｓによって暗号化された暗号化コンテンツの復号処理は、先に図１８を参照して説明した通り、例えば、ＡＥＳ−ＣＢＣモードを適用したブロック復号処理によって実行される。
【０２７７】
さらに、ホストは、ステップＳ６７８において、アプリケーション対応ユニットキー：Ｋｕｊを適用して暗号化コンテンツの復号処理を実行する。この復号処理は、先に図１９を参照して説明した処理として実行される。以上の処理により、正当なコンテンツ利用権を有するホストアプリケーション（アプリケーションＩＤ＝ｊ）は、復号コンテンツを取得し、コンテンツ再生を実行することができる。
【０２７８】
図２３〜図２８を参照して説明した構成は、アプリケーションＩＤ自体ではなくアプリケーションＩＤに１対１に対応するアプリケーションＩＤ対応値を設定し、このアプリケーションＩＤ対応値を情報記録媒体２００に格納した構成例を説明した。次に、アプリケーションＩＤ自体を情報記録媒体２００に格納した構成および処理例について、図２９以下を参照して説明する。
【０２７９】
図２９は、ディスク製造エンティテイ３５０、情報記録媒体２００、ドライブ４００、再生処理装置（ホストアプリケーション）５００の構成、処理について説明する図である。アプリケーションＩＤ対応値を設定した構成例を説明した図２３に対応する。
【０２８０】
図２３の構成と異なる点は、ディスク製造エンティテイ３５０において、アプリケーションＩＤ自体をアプリケーション属性値として設定し、アプリケーションＩＤ自体に基づく演算および暗号処理を実行してアプリケーション対応エンベデッドキー：Ｋｅｊの生成を行い、アプリケーションＩＤを情報記録媒体２００に記録する構成とした点である。
【０２８１】
ディスク製造エンティテイ３５０は、ステップＳ１８１において、ディスクキー：Ｋｄ３５４と、情報記録媒体に格納されるコンテンツ毎に設定されたコンテンツ再生権利を持つ正当なアプリケーションに対応するアプリケーションＩＤ３６０との演算処理、例えば図１６を参照して説明した排他論理和演算やハッシュ演算などの各種の演算を実行し、ステップＳ１８２において、演算結果と、ＲＯＭマーク：Ｖｅ３５８とに基づくＡＥＳ鍵生成処理（図１０参照）を実行し、アプリケーション対応エンベデッドキー：Ｋｅ１〜Ｋｅｎを生成する。なお、ステップＳ１８１の演算は排他論理和演算やハッシュ演算に限られることなくその他の演算処理を適用してもよい。
【０２８２】
以下のステップＳ１５５におけるアプリケーション対応のエンベデッドキー：Ｋｅ１〜Ｋｅｎに基づくアプリケーション対応ユニットキー：Ｋｕ１〜Ｋｕｎの生成、ステップＳ１５６におけるユニットキーによるコンテンツ暗号化処理、暗号化コンテンツの記録は図１２の処理と同様である。
【０２８３】
ディスク製造エンティテイ３５０は、さらに、アプリケーションＩＤ３６０を情報記録媒体２００に格納する。
【０２８４】
次に、ドライブ４００の処理について説明する。ドライブ４００は、まずステップＳ２０４ａにおいて、再生処理装置（ホストアプリケーション）５００から受領した公開鍵証明書から取得したアプリケーションＩＤに基づいて、情報記録媒体２００から読み取ったアプリケーションＩＤデータ２０８の検索を実行して、再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤを抽出する。
【０２８５】
このステップＳ２０４ａにおける検索処理において、再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤが見つからない場合は、再生処理装置（ホストアプリケーション）５００のアプリケーションはコンテンツの利用権を持つ正当なアプリケーションではないと判定し、ドライブ４００は、ホスト５００に対してエラーメッセージを出力する。
【０２８６】
このステップＳ２０４ａにおける検索処理において、再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤが見つかった場合にのみ、ステップＳ２０４ｂのアプリケーション対応エンベデッドキー：Ｋｅｊの生成処理に移行する。
【０２８７】
ステップＳ２０４ｂでは、ステップＳ２０３において取得したディスクキー：Ｋｄと、情報記録媒体２００から読み取ったアプリケーションＩＤデータ２０８の検索によって抽出した再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤ：ＡｐｐＩＤｊとの演算処理、例えば図１６を参照して説明した排他論理和演算やハッシュ演算などの各種の演算を実行し、演算結果と、情報記録媒体２００から取得したＲＯＭマーク：Ｖｅ２０４とに基づく鍵生成処理、例えばＡＥＳ暗号アルゴリズムに従った鍵生成処理を実行してアプリケーション（ＡＰＰＩＤｊ）対応のエンベデッドキー：Ｋｅｊを生成する。ＡＥＳ暗号アルゴリズムに従った鍵生成処理は、先に図１０を参照して説明した通りである。
【０２８８】
以下の処理は、図１２において説明した処理と同様の処理となる。本処理例では、ドライブはステップＳ２０４ａの検索処理により、ホストアプリケーションが正当なアプリケーションか否かを事前に知ることが可能となり、正当なアプリケーションでない場合には、アプリケーション対応のエンベデッドキーの生成処理を実行することなく処理を終了することが可能となる。また、この時点で処理を中止にすることにより、暗号化コンテンツの読み出しや、バスキー生成処理、コンテンツの転送処理などを一切実行する必要がなくなり、コンテンツの読み出し処理や転送に伴うコンテンツ漏洩の可能性を低減でき、より安全性を高めることが可能となる。
【０２８９】
図３０は、図２９と同様、アプリケーションＩＤ：ＡｐｐＩＤ１〜ＡｐｐＩＤｎを適用した処理構成であり、アプリケーションＩＤ：ＡｐｐＩＤ１〜ＡｐｐＩＤｎを適用した演算および暗号化処理によるエンベデッドキーの生成処理を行なう構成である。
【０２９０】
図３０の実施例では、ディスク製造エンティテイ３５０は、ステップＳ１９１において、情報記録媒体に格納されるコンテンツ毎に設定されたコンテンツ再生権利を持つ正当なアプリケーションに対応するアプリケーションＩＤ：ＡｐｐＩＤ１〜ｎと、ＲＯＭマーク：Ｖｅ３５８との演算処理、例えば図１６を参照して説明した排他論理和演算やハッシュ演算などの各種の演算を実行し、ステップＳ１９２において、演算結果と、ディスクキー：Ｋｄ３５４とに基づくＡＥＳ鍵生成処理（図１０参照）を実行し、アプリケーション対応のエンベデッドキー：Ｋｅ１〜Ｋｅｎを生成する構成としている。なお、ステップＳ１９１の演算は排他論理和演算やハッシュ演算に限られることなくその他の演算処理を適用してもよい。
【０２９１】
以下、ステップＳ１５５におけるアプリケーション対応のエンベデッドキー：Ｋｅ１〜Ｋｅｎに基づくアプリケーション対応ユニットキー：Ｋｕ１〜Ｋｕｎの生成、ステップＳ１５６におけるユニットキーによるコンテンツ暗号化処理、暗号化コンテンツの記録は図１２の処理と同様である。
【０２９２】
ディスク製造エンティテイ３５０は、さらに、アプリケーションＩＤデータ３６０を情報記録媒体２００に格納する。
【０２９３】
ドライブ４００におけるアプリケーションＩＤを適用したアプリケーション対応エンベデッドキー：Ｋｅｊの生成処理においては、まず、ステップＳ２０４ａにおいて、再生処理装置（ホストアプリケーション）５００から受領した公開鍵証明書から取得したアプリケーションＩＤに基づいて、情報記録媒体２００から読み取ったアプリケーションＩＤデータ２０８の検索を実行して、再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤを抽出する。
【０２９４】
このステップＳ２０４ａにおける検索処理において、再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤが見つからない場合は、再生処理装置（ホストアプリケーション）５００のアプリケーションはコンテンツの利用権を持つ正当なアプリケーションではないと判定し、ドライブ４００は、ホスト５００に対してエラーメッセージを出力する。
【０２９５】
このステップＳ２０４ａにおける検索処理において、再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤが見つかった場合にのみ、ステップＳ２０４ｂのアプリケーション対応エンベデッドキー：Ｋｅｊの生成処理に移行する。
【０２９６】
ドライブ４００はステップＳ２０４ｂにおいて、情報記録媒体２００のアプリケーションＩＤデータ２０８から抽出した再生処理装置（ホストアプリケーション）５００のアプリケーションＩＤに対応するアプリケーションＩＤ：ＡｐｐＩＤｊと、情報記録媒体２００から読み出したＲＯＭマーク：Ｖｅ２０４との演算処理、例えば図１６を参照して説明した排他論理和演算やハッシュ演算などの各種の演算を実行し、演算結果と、情報記録媒体２００から取得した暗号化ディスクキー［Ｅｍ（Ｋｄ）］の復号処理（Ｓ２０３）によって取得したディスクキー：Ｋｄとに基づく鍵生成処理、例えばＡＥＳ暗号アルゴリズムに従った鍵生成処理を実行してアプリケーション（ＡＰＰＩＤｊ）対応のエンベデッドキー：Ｋｅｊを生成する。ＡＥＳ暗号アルゴリズムに従った鍵生成処理は、先に図１０を参照して説明した通りである。
【０２９７】
ここで、生成されるアプリケーション（ＡＰＰＩＤｊ）対応のエンベデッドキー：Ｋｅｊは、ディスク製造エンティテイ３５０におけるエンベデッドキー：Ｋｅ生成処理において生成されるエンベデッドキーに対応する。
【０２９８】
以下の処理は、図２２において説明した処理と同様の処理となる。本処理例では、図２９の構成と同様、ドライブはステップＳ２０４ａの検索処理により、ホストアプリケーションが正当なアプリケーションか否かを事前に知ることが可能となり、正当なアプリケーションでない場合には、アプリケーション対応のエンベデッドキーの生成処理を実行することなく処理を終了することが可能となる。また、この時点で処理を中止にすることにより、暗号化コンテンツの読み出しや、バスキー生成処理、コンテンツの転送処理などを一切実行する必要がなくなり、コンテンツの読み出し処理や転送に伴うコンテンツ漏洩の可能性を低減でき、より安全性を高めることが可能となる。
【０２９９】
次に、図３１〜図３４を参照して、図２９、図３０を参照して説明したアプリケーションＩＤ：ＡｐｐＩＤ１〜ＡｐｐＩＤｎをエンベデッドキー生成に適用した場合のドライブの処理およびホストとしての再生処理装置の処理の詳細について説明する。
【０３００】
まず、図３１、図３２を参照してドライブの処理の詳細について説明する。まず、ステップＳ７１１においてドライブに対する情報記録媒体（ディスク）の挿入を検知し、ステップＳ７１２において、バス接続されたホスト側でのコンテンツ再生処理を実行するホストアプリケーションの起動を検知する。これらが検知されたことを条件として、ステップＳ７１３に進み、ホスト側からの相互認証要求を待機し、相互認証要求を受信すると、ステップＳ７１４において、公開鍵暗号方式に従った相互認証および鍵交換（ＡＫＥ）処理を実行する。なお、この時点で、ドライブはホストアプリケーションからアプリケーションＩＤの登録された公開鍵証明書（図１４（ｂ）参照）を受領する。
【０３０１】
ステップＳ７１５において、相互認証および鍵交換（ＡＫＥ）処理の完了が確認されると、ステップＳ７１６に進み、ドライブは、情報記録媒体から読み取ったアプリケーションＩＤデータの検索処理を実行し、ホストアプリケーションから受領した公開鍵証明書（図１４（ｂ）参照）から抽出したアプリケーションＩＤに対応するアプリケーションＩＤを抽出する。
【０３０２】
ステップＳ７１７において、ホストアプリケーション側からアプリケーション対応エンベテッドキー［Ｋｅｊ］の転送要求を受領すると、ステップＳ７１８において、情報記録媒体から読み取ったアプリケーションＩＤデータの検索に成功したか否かを判定し、失敗した場合、すなわち、ホストアプリケーションから受領した公開鍵証明書（図１４（ｂ）参照）から抽出したアプリケーションＩＤ：ＡｐｐＩＤｊに対応するアプリケーションＩＤが見つからなかった場合は、アプリケーションが正当なアプリケーションではないと判定し、ステップＳ７２４に進みホストに対してエラーメッセージを転送する。
【０３０３】
さらにステップＳ７２５において、例えばアプリケーションの切り替えなどによって再度相互認証の要求があった場合は、ステップＳ７１４以下の相互認証処理以下の処理を再度実行する。さらにステップＳ７２６においてディスク排出があった場合は、ステップＳ７１１の初期状態に戻る。
【０３０４】
一方、ステップＳ７１８において、情報記録媒体から読み取ったアプリケーションＩＤデータの検索に成功した場合は、ステップＳ７１９に進み、ドライブは、ホストアプリケーションから受領したアプリケーションＩＤ：ＡｐｐＩＤｊを適用した演算および暗号処理によりアプリケーション対応のエンベテッドキー［Ｋｅｊ］を生成し、セッションキー：Ｋｓで暗号化して送信する。
【０３０５】
次にドライブは、ステップＳ７２０において、ディスクの挿入後、初めてのバスキー：Ｋｂｕｓの生成を行なうか否かを判定し、初めてのバスキー：Ｋｂｕｓ生成である場合は、ドライブは、ステップＳ７２１において、バスキー：Ｋｂに対応する乱数Ｒの生成処理を実行し、この生成乱数Ｒをバスキー：Ｋｂとする。
【０３０６】
ステップＳ７２２において、ホスト側からバスキーの転送要求を受領すると、ステップＳ７２３において、バスキー：Ｋｂをホスト側に転送する。なお、このバスキー転送は、図１５の相互認証および鍵交換（ＡＫＥ）処理の最終ステップＳ４０６に相当する処理であり、ドライブは、バスキー：Ｋｂｕｓおよびバスキーのシーケンス番号：ＳＥＱとの連結データ：［Ｋｂｕｓ‖ＳＥＱ］と、この連結データの改竄検証用データとして算出したハッシュ値［ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］とをセッションキー：Ｋｓを用いて暗号化したデータ：ＥＫｓ［（Ｋｂｕｓ‖ＳＥＱ），ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］を生成してホスト側に送信する。
【０３０７】
次に、図３２に示すステップＳ７３１で新たな相互認証要求がないことを確認し、また、ステップＳ７３２で情報記録媒体の排出がなされないことを確認して、ステップＳ７３３において、ホスト側のコンテンツ取得要求、すなわちセクタデータの読み取り要求がなされるまで待機する。
【０３０８】
なお、ステップＳ７３１において、新たな相互認証要求があった場合は、ステップＳ７１４に戻り相互認証および鍵交換（ＡＫＥ）処理を実行し、新たなセッションキーの生成、バスキーの送信を実行する。この際に生成するバスキーは、シーケンス番号：２のバスキーであり、先に生成したバスキー（シーケンス番号１）とは同じバスキーとなる。
【０３０９】
なお、ステップＳ７３２において、ドライブからのディスク排出があったと判定した場合は、ステップＳ７１１に戻り、初期状態に設定され、生成済みのバスキー、セッションキー等のすべてのデータはリセット、すなわち消去される。
【０３１０】
ステップＳ７３３において、ホスト側からセクタデータの読み出し要求があると、ドライブは、ステップＳ７３４において、読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）から出力制御情報を読み取り、［バスプロテクションフラグ：ＢＰＦ］の値を判定する。
【０３１１】
バスプロテクションフラグ：ＢＰＦは、先に図８を参照して説明したように、
ＢＰＦ＝１：出力制限あり、バス暗号化あり、
ＢＰＦ＝０：出力制限なし、
の設定情報である。
【０３１２】
ステップＳ７３４において、読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）の出力制御情報中のバスプロテクションフラグ：ＢＰＦが［１］に設定されていると判定した場合は、ステップＳ７３５に進み、情報記録媒体から読出したセクタデータをバスキー：Ｋｂｕｓで暗号化して、ステップＳ７３６においてホスト側に出力する。なお、ステップＳ７３５におけるセクタデータの暗号化処理は、例えば、先に図１７を参照して説明したＡＥＳ−ＣＢＣモードを適用した暗号化処理として実行される。
【０３１３】
ステップＳ７３４において、読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）の出力制御情報中のバスプロテクションフラグ：ＢＰＦが［０］に設定されていると判定した場合は、ステップＳ７３５をスキップし、情報記録媒体から読出したセクタデータのバスキー：Ｋｂｕｓによる暗号化処理を実行することなく、ステップＳ７３６において、情報記録媒体からの読出しコンテンツをそのままホスト側に出力する。なお、この読出しコンテンツは、例えばプレイリストやファイルシステム情報などである。
【０３１４】
このように、ドライブは、ホストアプリケーションとの相互認証時にアプリケーションから受領した公開鍵証明書からアプリケーションＩＤを取得し、アプリケーションＩＤを適用した演算および暗号化処理によってアプリケーション対応のエンベデッドキー：Ｋｅｊをホストアプリケーションに対して出力する処理を実行する。また、ドライブは、情報記録媒体からの読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）の出力制御情報中のバスプロテクションフラグ：ＢＰＦが［０］か［１］かに基づいてバスキーによる暗号化の要否を判定し、バスキーによる暗号化の必要なデータである場合に、出力コンテンツのバスキーによる暗号化を実行して出力する。
【０３１５】
次に、図３３、図３４を参照して、ホスト側の処理について説明する。ステップＳ７５１において、再生アプリケーションを起動し、ステップＳ７５２においてディスクがドライブに挿入されたことの通知を受領すると、ステップＳ７５３においてドライブとの相互認証、セッションキーの共有処理を実行する。
【０３１６】
ステップＳ７５３における相互認証においては、ドライブに対してアプリケーションＩＤを格納したアプリケーション対応の公開鍵証明書（図１４（ｂ）参照）が提供される。ステップＳ７５４において、相互認証および鍵交換（ＡＫＥ）処理の完了が確認されると、ステップＳ７５５に進み、ホストは、ドライブに対して、アプリケーション対応エンベデッドキー：Ｋｅｊを要求する。アプリケーション対応エンベデッドキー：Ｋｅｊは、アプリケーションＩＤ：ＡｐｐＩＤｊと、ディスクキー：Ｋｄと、情報記録媒体から取得したＲＯＭマーク：Ｖｅに基づく演算および鍵生成処理、例えばＡＥＳ暗号アルゴリズムに従った鍵生成処理によってドライブで生成される鍵であり、セッションキーＫｓによって暗号化されてホストに送信される。
【０３１７】
ステップＳ７５６において、暗号化されたアプリケーション対応エンベデッドキー：Ｋｅｊをドライブから受信に成功したか否かを判定する。アプリケーション対応エンベデッドキー：Ｋｅｊを取得できない場合には、ステップＳ７５７においてエラーメッセージを取得したか否かを判定し、エラーメッセージを取得した場合は、コンテンツ利用権の認められていないアプリケーションであると判断し、図３４に示すステップＳ７７９に進み、アプリケーションの終了後初期状態に戻るかあるいはステップＳ７８０においてディスク排出を実行してステップＳ７５２に戻る。
【０３１８】
ステップＳ７５６において、暗号化されたアプリケーション対応エンベデッドキー：Ｋｅｊをドライブから受信に成功した場合は、ステップＳ７５８に進み、セッションキーＫｓを適用して復号を実行し、アプリケーション対応エンベデッドキー：Ｋｅｊを取得する。
【０３１９】
次に、ホストはステップＳ７５９において、暗号化コンテンツの復号処理に適用する鍵の生成に必要となる情報としての記録シード（ＲＥＣ  ＳＥＥＤ）であるユニットキー生成情報：Ｖｕの転送をドライブに要求し、ステップＳ７６０においてユニットキー生成情報：Ｖｕを受信すると、ステップＳ７６１において、アプリケーション対応エンベデッドキー：Ｋｅｊとユニットキー生成情報：Ｖｕとに基づいてアプリケーション対応ユニットキー：Ｋｕｊを生成する。
【０３２０】
次にホストは、ステップＳ７６２においてバスキー：Ｋｂｕｓの送信要求をドライブに出力し、ステップＳ７６３において、接続バスを介して入力したセッションキー：Ｋｓによって暗号化されたバスキー：Ｋｂｕｓを取得すると、ステップＳ７６４において、セッションキー：Ｋｓを適用した復号処理を実行しバスキー：Ｋｂｕｓを取得する。
【０３２１】
次に、図３４のステップＳ７７１において、ＰＣの再生ソフトウェアの完了がなされておらず、ディスク排出がない（Ｓ７７２）ことの確認の後、ユーザの指示などによりセクタデータの読み出しを行うと判定した場合（Ｓ７７３：Ｙｅｓ）は、ステップＳ７７４においてドライブに対してセクタデータの転送要求を出力する。
【０３２２】
ドライブからセクタデータを受信（Ｓ７７５：Ｙｅｓ）し、データが暗号化データである場合（Ｓ７７６：Ｙｅｓ）は、ステップＳ７７７でバスキー：Ｋｂｕｓによって暗号化された暗号化コンテンツの復号処理を実行する。
【０３２３】
バスキー：Ｋｂｕｓによって暗号化された暗号化コンテンツの復号処理は、先に図１８を参照して説明した通り、例えば、ＡＥＳ−ＣＢＣモードを適用したブロック復号処理によって実行される。
【０３２４】
さらに、ホストは、ステップＳ７７８において、アプリケーション対応ユニットキー：Ｋｕｊを適用して暗号化コンテンツの復号処理を実行する。この復号処理は、先に図１９を参照して説明した処理として実行される。以上の処理により、正当なコンテンツ利用権を有するホストアプリケーション（アプリケーションＩＤ＝ｊ）は、復号コンテンツを取得し、コンテンツ再生を実行することができる。
【０３２５】
図２９〜図３４を参照して説明した構成例は、アプリケーションＩＤ自体を情報記録媒体２００に格納して、ドライブがホストから受領した公開鍵証明書から取得したＩＤとの照合を実行する構成であり、アプリケーションＩＤ対応値を用いた構成に比較して処理が軽減され、また情報記録媒体への記録データ量を減少することも可能となる。
【０３２６】
このように、本発明の構成によれば、情報記録媒体に格納するコンテンツの暗号化に適用する鍵の生成情報として、正当なコンテンツ利用権を持つアプリケーションのアプリケーションＩＤの対応値Ｖａｉｄｊを適用する構成とし、ドライブからホストアプリケーションに対するコンテンツの転送を行なう前に、ドライブが、相互認証時にアプリケーションから受領した公開鍵証明書からアプリケーションＩＤを取得し、アプリケーションＩＤに基づいて、情報記録媒体から読み取ったアプリケーションＩＤ対応値データの検索処理を実行して、対応値Ｖａｉｄｊの有無を判定する構成としたので、対応値Ｖａｉｄｊが見つからない場合、アプリケーションが正当なコンテンツ利用権を持つアプリケーションでないと事前に判定することが可能となり、ホストアプリケーションに対してエラー通知が出力可能となるとともに、コンテンツの読み取りや転送を一切行なうことなく処理を終了することが可能となりコンテンツ漏洩の可能性をさらに低減することが可能となる。
【０３２７】
［４．再生処理装置、情報処理装置、およびドライブ装置の構成］
次に、図３５、図３６を参照して、情報記録媒体の格納コンテンツの再生処理を行う再生処理装置および、情報記録媒体の格納コンテンツの読み取りおよび出力を実行するドライブ装置の構成例について説明する。
【０３２８】
まず、図３５を参照して、情報記録媒体の格納コンテンツの再生処理を行う再生処理装置の構成について説明する。再生処理装置６００は、ＯＳやコンテンツ再生アプリケーションプログラム、相互認証処理プログラムなどの各種プログラムに従ったデータ処理を実行するＣＰＵ６７０、プログラム、パラメータ等の記憶領域としてのＲＯＭ６６０、メモリ６８０、デジタル信号を入出力する入出力Ｉ／Ｆ６１０、アナログ信号を入出力し、Ａ／Ｄ，Ｄ／Ａコンバータ６４１を持つ入出力Ｉ／Ｆ６４０、ＭＰＥＧデータのエンコード、デコード処理を実行するＭＰＥＧコーデック６３０、ＴＳ（Transport Stream）・ＰＳ(Program Stream)処理を実行するＴＳ・ＰＳ処理手段６２０、相互認証、暗号化コンテンツの復号処理など各種の暗号処理を実行する暗号処理手段６５０、ハードディスクなどの記録媒体６９１、記録媒体６９１の駆動、データ記録再生信号の入出力を行なうドライブ６９０を有し、バス６０１に各ブロックが接続されている。
【０３２９】
再生処理装置（ホスト）６００は、例えばＡＴＡＰＩ−ＢＵＳ等の接続バスによってドライブと接続され、上述したバスキーによって暗号化されたコンテンツは、デジタル信号用入出力Ｉ／Ｆ６１０から入力され、必要に応じて暗号化処理手段６５０によって、例えば、図１８を参照して説明したＡＥＳ−ＣＢＣモードによる復号処理が実行される。
【０３３０】
なお、コンテンツ再生処理を実行するプログラムは例えばＲＯＭ６６０内に保管されており、プログラムの実行処理中は必要に応じて、パラメータ、データの保管、ワーク領域としてメモリ６８０を使用する。
【０３３１】
ＲＯＭ６６０または記録媒体６９１には、先に図１４を参照して説明したアプリケーションに対応する公開鍵証明書、すなわちアプリケーションＩＤの記録された公開鍵証明書が格納されている。さらに、アプリケーションに対応する秘密鍵、管理センタの公開鍵が格納されている。なお、複数のホストアプリケーションを保持している場合は、それぞれに対応する秘密鍵と公開鍵証明書が格納される。
【０３３２】
なお、この再生処理装置は、情報記録媒体６９１に対する情報記録処理を可能な情報記録処理装置としても適用可能であり、例えば、図１２、図２２〜図２４を参照して説明したディスク製造エンティテイに相当する処理、すなわち、情報記録媒体に対するデータ記録処理を実行する情報処理装置としても適用可能である。なお、この場合には、メモリ６８０には、ディスク製造エンティテイの保有する各情報が格納される。
【０３３３】
次に、図３６を参照して、情報記録媒体の格納コンテンツの読み取り、および再生処理装置（ホスト）に対する出力を実行するドライブ装置の構成について説明する。ドライブ装置７００は、コンテンツ読み取り、転送処理プログラム、相互認証処理プログラムなどの各種プログラムに従ったデータ処理を実行するＣＰＵ７０２、プログラム、パラメータ等の記憶領域としてのＲＯＭ７０５、メモリ７０６、デジタル信号を入出力する入出力Ｉ／Ｆ７０３、相互認証、バスキーの生成、出力データの暗号化処理など各種の暗号処理を実行する暗号処理手段７０４、ＤＶＤ，Ｂｌｕ−ｒａｙディスクなどの情報記録媒体７０８の駆動、データ記録再生信号の入出力を行なう記録媒体Ｉ／Ｆ７０７を有し、バス７０１に各ブロックが接続されている。
【０３３４】
ドライブ７００は、例えばＡＴＡＰＩ−ＢＵＳ等の接続バスによって再生処理装置（ホスト）と接続され、例えば情報記録媒体７０８に格納された暗号化（スクランブル）コンテンツをバスキー：Ｋｂｕｓで、再暗号化し入出力Ｉ／Ｆ７０３から出力する。バスキー：Ｋｂｕｓを適用したコンテンツの暗号化は、暗号化処理手段７０４によって、例えば、図１７を参照して説明したＡＥＳ−ＣＢＣモードで実行される。
【０３３５】
なお、ＲＯＭ７０５、またはメモリ７０６には、先に図１３を参照して説明した管理センタの公開鍵、ドライブに対応する秘密鍵、ドライブに対応する公開鍵証明書、および暗号鍵ブロックＲＫＢの処理に適用するためのデバイスキー：Ｋｄｅｖが格納されている。また、コンテンツの読み取り、取得、および相互認証処理を実行するプログラム等が格納されている。
【０３３６】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【０３３７】
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【０３３８】
例えば、プログラムは記録媒体としてのハードディスクやＲＯＭ（Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、ＣＤ−ＲＯＭ(Compact Disc Read Only Memory)，ＭＯ(Magneto optical)ディスク，ＤＶＤ(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【０３３９】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、ＬＡＮ(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０３４０】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０３４１】
以上、説明したように、本発明の構成によれば、再生処理装置において実行されるホストアプリケーションに対応して設定されたアプリケーション対応公開鍵証明書から取得するアプリケーションＩＤに基づいてアプリケーション属性値を取得し、取得したアプリケーション属性値を適用した演算処理を含むデータ処理によって暗号鍵を生成し、生成した暗号鍵と、暗号鍵の適用によって復号可能な暗号化コンテンツとをホストアプリケーション側に出力する構成としたので、特定のアプリケーション属性値の対応付けられた正当なコンテンツ利用権を持つ、アプリケーションにおいてのみ、コンテンツの復号に適用可能な正しい暗号鍵を取得することが可能となりコンテンツ再生が許容され、特定のアプリケーション属性値の対応付けられていないその他のアプリケーションによるコンテンツ復号、利用を排除することが可能となる。
【０３４２】
本発明の構成では、情報記録媒体に記録するコンテンツの暗号化に適用する鍵の生成情報として記録コンテンツの再生権利を持つ正当なアプリケーションのＩＤ情報、あるいはアプリケーションＩＤ対応値等のアプリケーション属性値を適用した構成とし、ドライブからホストアプリケーションに対するコンテンツ出力の際に、ドライブがホストアプリケーションから取得した公開鍵証明書から取得するアプリケーションＩＤに基づいて取得するアプリケーション属性値を適用して、コンテンツ記録時に実行すると同様の演算および暗号処理を実行して、コンテンツの復号に適用する鍵を生成してホストアプリケーションに提供する構成としたので、コンテンツの記録時に適用したアプリケーションＩＤと、ホスト（再生処理装置）側で実行中のアプリケーションのＩＤとが一致する場合にのみ、コンテンツの復号に成功することとなり、異なるＩＤを持つアプリケーションによるコンテンツ復号は不可能となり、不正なアプリケーションによるコンテンツ利用が防止される。
【０３４３】
さらに、本発明の構成によれば、アプリケーションのＩＤに対応するアプリケーションＩＤ対応値データを情報記録媒体に記録する構成例では、ドライブはアプリケーションＩＤ対応値データに基づく検索処理により、ホストアプリケーションが正当なアプリケーションか否かを事前に知ることが可能となり、正当なアプリケーションでない場合には、アプリケーション対応の暗号鍵の生成処理を実行することなく処理を終了することが可能となる。また、この時点で処理を中止にすることにより、情報記録媒体からの暗号化コンテンツの読み出しや、コンテンツの転送処理などを一切実行する必要がなくなり、コンテンツの読み出し処理や転送に伴うコンテンツ漏洩の可能性を低減でき、より安全性を高めることが可能となる。
【図面の簡単な説明】
【０３４４】
【図１】従来の情報記録媒体格納コンテンツの再生シーケンスを説明する図である。
【図２】従来の再生処理装置におけるドライブ出力コンテンツの再生シーケンスを説明する図である。
【図３】ドライブからのコンテンツ出力シーケンスを説明するフロー図である。
【図４】従来のホストドライブ間のコンテンツ転送を伴う処理構成におけるコンテンツの不正利用例を説明する図である。
【図５】本発明の情報記録媒体の格納データについて説明する図である。
【図６】本発明の情報記録媒体の格納データの構成について説明する図である。
【図７】本発明の情報記録媒体の格納データとしてのセクタデータおよびセクタヘッダの構成について説明する図である。
【図８】本発明の情報記録媒体のセクタヘッダに記録される出力制御情報の詳細について説明する図である。
【図９】情報記録媒体の格納コンテンツの読み取り、再生を実行する再生機器の処理シーケンスについて説明する図である。
【図１０】情報記録媒体の格納コンテンツの再生において実行するＡＥＳ暗号アルゴリズムに従った鍵生成処理について説明する図である。
【図１１】情報記録媒体の格納コンテンツの再生において実行するＡＥＳ暗号アルゴリズムに従ったデータ復号処理について説明する図である。
【図１２】情報記録媒体に対するコンテンツを含む各種のデータ記録処理およびドライブ装置と再生処理装置において実行するコンテンツ転送を伴う再生シーケンス（例１）を説明する図である。
【図１３】本発明のドライブ装置と再生処理装置において実行するコンテンツ転送を伴う再生シーケンスを説明する図である。
【図１４】ドライブ装置と再生処理装置に格納される公開鍵証明書のデータ構成について説明する図である。
【図１５】ドライブ装置と再生処理装置間で実行する相互認証および鍵交換（ＡＫＥ）処理シーケンスを説明する図である。
【図１６】アプリケーションＩＤ（ＡＰＰＩＤｊ）とディスクキー：Ｋｄ、あるいはアプリケーションＩＤ（ＡＰＰＩＤｊ）とＲＯＭマーク：Ｖｅとの演算処理手順を説明するフロー図である。
【図１７】ドライブ装置で実行するコンテンツのバスキー：Ｋｂｕｓに基づく暗号化処理構成を説明する図である。
【図１８】再生処理装置で実行するコンテンツのバスキー：Ｋｂｕｓに基づく復号処理構成を説明する図である。
【図１９】再生処理装置で実行するコンテンツのアプリケーション対応ユニットキー：Ｋｕｊに基づく復号処理構成を説明する図である。
【図２０】ドライブからホストに対するコンテンツ転送を伴う再生処理において、ドライブで実行する処理シーケンスを説明するフローチャートである。
【図２１】ドライブからホストに対するコンテンツ転送を伴う再生処理において、ホストで実行する処理シーケンスを説明するフローチャートである。
【図２２】情報記録媒体に対するコンテンツを含む各種のデータ記録処理およびドライブ装置と再生処理装置において実行するコンテンツ転送を伴う再生シーケンス（例２）を説明する図である。
【図２３】情報記録媒体に対するコンテンツを含む各種のデータ記録処理およびドライブ装置と再生処理装置において実行するコンテンツ転送を伴う再生シーケンス（例３）を説明する図である。
【図２４】情報記録媒体に対するコンテンツを含む各種のデータ記録処理およびドライブ装置と再生処理装置において実行するコンテンツ転送を伴う再生シーケンス（例４）を説明する図である。
【図２５】アプリケーションＩＤ対応値：Ｖａｉｄｊを適用した場合のドライブからホストに対するコンテンツ転送を伴う再生処理において、ドライブで実行する処理シーケンスを説明するフローチャートである。
【図２６】アプリケーションＩＤ対応値：Ｖａｉｄｊを適用した場合のドライブからホストに対するコンテンツ転送を伴う再生処理において、ドライブで実行する処理シーケンスを説明するフローチャートである。
【図２７】アプリケーションＩＤ対応値：Ｖａｉｄｊを適用した場合のドライブからホストに対するコンテンツ転送を伴う再生処理において、ホストで実行する処理シーケンスを説明するフローチャートである。
【図２８】アプリケーションＩＤ対応値：Ｖａｉｄｊを適用した場合のドライブからホストに対するコンテンツ転送を伴う再生処理において、ホストで実行する処理シーケンスを説明するフローチャートである。
【図２９】情報記録媒体に対するコンテンツを含む各種のデータ記録処理およびドライブ装置と再生処理装置において実行するコンテンツ転送を伴う再生シーケンス（例５）を説明する図である。
【図３０】情報記録媒体に対するコンテンツを含む各種のデータ記録処理およびドライブ装置と再生処理装置において実行するコンテンツ転送を伴う再生シーケンス（例６）を説明する図である。
【図３１】アプリケーションＩＤを情報記録媒体に記録した構成におけるドライブからホストに対するコンテンツ転送を伴う再生処理において、ドライブで実行する処理シーケンスを説明するフローチャートである。
【図３２】アプリケーションＩＤを情報記録媒体に記録した構成におけるドライブからホストに対するコンテンツ転送を伴う再生処理において、ドライブで実行する処理シーケンスを説明するフローチャートである。
【図３３】アプリケーションＩＤを情報記録媒体に記録した構成におけるドライブからホストに対するコンテンツ転送を伴う再生処理において、ホストで実行する処理シーケンスを説明するフローチャートである。
【図３４】アプリケーションＩＤを情報記録媒体に記録した構成におけるドライブからホストに対するコンテンツ転送を伴う再生処理において、ホストで実行する処理シーケンスを説明するフローチャートである。
【図３５】本発明の再生処理装置、情報処理装置の構成例を示す図である。
【図３６】本発明のドライブ装置の構成例を示す図である。
【符号の説明】
【０３４５】
１０  情報記録媒体
１１  暗号化ディスクキー
１２  暗号化タイトルキー
１３  スクランブルＭＰＥＧデータ
２０  再生機器
２５  音声／映像データ
３０  ドライブ
４０  プレーヤアプリケーション
４５  音声／映像データ
５０  ドライブ
６０  再生処理装置（ホスト）
１００  情報記録媒体
１０１  ユーザデータ領域
１０２  リードイン領域
１１１  暗号化コンテンツ
１１２  ユニットキー生成情報
１１３  リボーク情報
１１４  ＲＯＭマーク
１２０  暗号鍵情報
１２１  暗号鍵ブロック（ＲＫＢ）
１２２  暗号化ディスクキー
１５１  出力制御情報
２００  情報記録媒体
２０１  リボーク情報
２０２  暗号鍵ブロック（ＲＫＢ）
２０３  暗号化ディスクキー
２０４  ＲＯＭマーク
２０５  ユニットキー生成情報
２０６  暗号化コンテンツ
２０７  アプリケーションＩＤ対応値データ
２０８  アプリケーションＩＤデータ
３００  ドライブ兼用再生機器
３０１  デバイスキー
３１１  ＡＥＳ暗号処理部
３２１  ＡＥＳ鍵生成処理ブロック
３２２  ＡＥＳ復号処理ブロック
３２３  復号セクタデータ
３５１  リボーク情報
３５２  デバイスキー
３５３  メディアキー
３５４  ディスクキー
３５５  ユニットキー生成値
３５６  コンテンツ
３５７  アプリケーションＩＤ
３５８  ＲＯＭマーク
３５９  アプリケーションＩＤ対応値データ
３６０  アプリケーションＩＤ
４００  ドライブ
４０２  秘密鍵
４０３  公開鍵証明書
４０４  デバイスキー
５００  ホスト
５０２  秘密鍵
５０３  公開鍵証明書
５１２  アプリケーションＩＤ
５２０  コンテンツ
５５０  セクタデータ
５５１  ＡＥＳ暗号処理部
５５２  バスキーによる暗号化セクタデータ
５７０  バスキーによる暗号化セクタデータ
５７１  ＡＥＳ復号処理部
５７２  暗号化（スクランブル）セクタデータ
５８１  ＡＥＳ鍵生成処理ブロック
５８２  ＡＥＳ復号処理ブロック
５８３  復号セクタデータ
６００  再生処理装置
６０１  バス
６１０  入出力Ｉ／Ｆ
６２０  ＴＳ・ＰＳ処理手段
６３０  ＭＰＥＧコーデック
６４０  入出力Ｉ／Ｆ
６４１  Ａ／Ｄ，Ｄ／Ａコンバータ
６５０  暗号処理手段
６６０  ＲＯＭ
６７０  ＣＰＵ
６８０  メモリ
６９０  ドライブ
６９１  記録媒体
７００  ドライブ装置
７０１  バス
７０２  ＣＰＵ
７０３  入出力Ｉ／Ｆ
７０４  暗号処理手段
７０５  ＲＯＭ
７０６  メモリ
７０７  記録媒体Ｉ／Ｆ
７０８  情報記録媒体
【図１】
0004752198.tif 000002
【図２】
0004752198.tif 000003
【図３】
0004752198.tif 000004
【図４】
0004752198.tif 000005
【図５】
0004752198.tif 000006
【図６】
0004752198.tif 000007
【図７】
0004752198.tif 000008
【図８】
0004752198.tif 000009
【図９】
0004752198.tif 000010
【図１０】
0004752198.tif 000011
【図１１】
0004752198.tif 000012
【図１２】
0004752198.tif 000013
【図１３】
0004752198.tif 000014
【図１４】
0004752198.tif 000015
【図１５】
0004752198.tif 000016
【図１６】
0004752198.tif 000017
【図１７】
0004752198.tif 000018
【図１８】
0004752198.tif 000019
【図１９】
0004752198.tif 000020
【図２０】
0004752198.tif 000021
【図２１】
0004752198.tif 000022
【図２２】
0004752198.tif 000023
【図２３】
0004752198.tif 000024
【図２４】
0004752198.tif 000025
【図２５】
0004752198.tif 000026
【図２６】
0004752198.tif 000027
【図２７】
0004752198.tif 000028
【図２８】
0004752198.tif 000029
【図２９】
0004752198.tif 000030
【図３０】
0004752198.tif 000031
【図３１】
0004752198.tif 000032
【図３２】
0004752198.tif 000033
【図３３】
0004752198.tif 000034
【図３４】
0004752198.tif 000035
【図３５】
0004752198.tif 000036
【図３６】
0004752198.tif 000037