JP2005228432A - ドライブ装置、再生処理装置、情報記録媒体、およびデータ処理方法、並びにコンピュータ・プログラム - Google Patents

ドライブ装置、再生処理装置、情報記録媒体、およびデータ処理方法、並びにコンピュータ・プログラム Download PDF

Info

Publication number
JP2005228432A
JP2005228432A JP2004037432A JP2004037432A JP2005228432A JP 2005228432 A JP2005228432 A JP 2005228432A JP 2004037432 A JP2004037432 A JP 2004037432A JP 2004037432 A JP2004037432 A JP 2004037432A JP 2005228432 A JP2005228432 A JP 2005228432A
Authority
JP
Japan
Prior art keywords
data
recording medium
key
information recording
drive device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2004037432A
Other languages
English (en)
Other versions
JP2005228432A5 (ja
JP4367166B2 (ja
Inventor
Satoshi Kitani
聡 木谷
Katsumi Muramatsu
克美 村松
Yoshikazu Takashima
芳和 高島
Tomoyuki Asano
智之 浅野
Kenjiro Ueda
健二朗 上田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2004037432A priority Critical patent/JP4367166B2/ja
Publication of JP2005228432A publication Critical patent/JP2005228432A/ja
Publication of JP2005228432A5 publication Critical patent/JP2005228432A5/ja
Application granted granted Critical
Publication of JP4367166B2 publication Critical patent/JP4367166B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Television Signal Processing For Recording (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

【課題】 情報記録媒体から読み取られてドライブから出力されるデータの不正利用を防止可能とした構成を提供する。
【解決手段】 ディスク等の情報記録媒体に記録されたコンテンツの構成データに対応する出力制御情報として出力制御フラグおよびアプリケーション属性情報を定義し、これらの情報に基づく出力制御を行う。ドライブと再生処理実行アプリケーションとの認証処理を実行し、認証の成立を条件としてホストアプリケーション対応の暗号鍵としてのバスキーを生成して、ホストアプリケーションに提供するとともに、バスキーに基づくコンテンツの暗号化を実行して接続バスを介してドライブから再生処理装置に出力する構成とした。
【選択図】 図12

Description

本発明は、ドライブ装置、再生処理装置、情報記録媒体、およびデータ処理方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、情報記録媒体に格納されたコンテンツの不正利用の防止を実現するドライブ装置、再生処理装置、情報記録媒体、およびデータ処理方法、並びにコンピュータ・プログラムに関する。
近年、DVDや、青色レーザーディスク(Blu−ray Disc)など、大容量のデータを格納可能なディスクが利用、開発されており、大容量データである高精細画像、高品質音声の保存、再生が可能となっている。また、これらの大容量記録媒体の再生環境として、従来のコンシューマ用記録再生装置だけでなく、高性能なCPUやビデオカードを搭載したパーソナルコンピュータ(PC)、その他の情報再生装置も、様々開発され、利用が進んでいる。
例えば、PCにおいてコンテンツ再生を行う際の問題として、コンテンツの著作権保護が挙げられる。音楽データ、画像データ等、多くのコンテンツは、一般的にその作成者あるいは販売者に頒布権等が保有されている。従って、これらのコンテンツの配布に際しては、一定の利用制限、すなわち、正規なユーザに対してのみ、コンテンツの利用を許諾し、許可のない複製等が行われないようにする構成をとるのが一般的となっている。
特に、デジタル記録装置および記録媒体によれば、画像や音声を劣化させることなく記録、再生を繰り返すことが可能であり、不正コピーされたコンテンツのインターネットを介した配信や、CD−R、DVD等の記録媒体にコンテンツをコピーした海賊版ディスクの流通という問題が発生している。
DVDや青色レーザディスク等の大容量型記録媒体には、著作権の保護対象となる様々な映像情報、音楽情報がデジタルデータとして格納されて市場に流通する。このようなデジタルデータを記録した媒体を市場に流通させる場合には、不正コピーを防止し著作権者の保護を図る構成が必須となる。昨今では、このようなデジタルデータの不正なコピーを防ぐため、デジタル記録装置および記録媒体に違法なコピーを防止するための様々な技術が実用化されている。
例えば、DVDプレーヤでは、コンテンツ・スクランブルシステム(CSS:Content Scramble System)が採用されている。コンテンツ・スクランブルシステムでは、記録媒体、例えばDVD−ROM(Read Only Memory)に、ビデオデータやオーディオデータ等が暗号化されて記録されており、その暗号化されたデータの復号に用いる鍵をライセンスを受けたプレーヤのみに与える。ライセンスは、不正コピーを行わない等の所定の動作規定に従うように設計されたプレーヤに対してのみ与えられる。従って、ライセンスを受けたプレーヤでは、与えられたキーを利用して、情報記録媒体に記録された暗号化データを復号することにより画像や音声を再生することができる。
一方、ライセンスを受けていないプレーヤは、暗号化されたデータを復号するための鍵を有していないため、情報記録媒体に記録された暗号化データの復号を行うことができない。このように、コンテンツ・スクランブルシステム(CSS)は、正規のライセンスを持つプレーヤのみのコンテンツ利用を許容するシステムを提供している。
しかし、このコンテンツ・スクランブルシステム(CSS)は、確実なコンテンツの不正利用の排除ができないという問題がある。特に、情報記録媒体を装着したドライブからコンテンツをPCなどの情報処理装置に出力して再生する処理において、コンテンツの不正利用が行われ得るという問題点が発生する。以下、この問題点について図面を参照して説明する。
図1にコンテンツ・スクランブルシステム(CSS)を採用したコンテンツを格納した情報記録媒体の格納データ例と、再生機器(プレーヤ)の処理を示す。
図1に示す情報記録媒体10は、例えばDVDビデオディスクであり、情報記録媒体10には、暗号化ディスクキー(Secured Disc Key)11、情報記録媒体10に格納されたコンテンツのタイトル対応の暗号化タイトルキー12、CSS方式に基づくスクランブル処理のなされたコンテンツとしてスクランブルMPEGデータ13が格納されている。
情報記録媒体10を装着してコンテンツ再生を実行する再生機器20、例えばDVDプレーヤは、再生機器20に格納されたマスターキーを適用し、ステップS11において、情報記録媒体10から取得した暗号化ディスクキー(Secured Disc Key)11の復号処理を実行し、ディスクキーを取得し、ステップS12において取得したディスクキーを適用して情報記録媒体10から取得した暗号化タイトルキー12の復号処理を実行してタイトルキーを取得し、取得したタイトルキーを適用してステップS13において、スクランブルMPEGデータ13のスクランブル解除処理を実行した後、ステップS14においてMPEGデコード処理を実行して音声/映像データ25を再生する。
次に、PC等のドライブからコンテンツをPC側に入力し、PC側のプレーヤアプリケーションによってコンテンツ再生を行なう処理シーケンスについて図2を参照して説明する。
図2に示すように、情報記録媒体を装着したドライブ30とPC側のプレーヤアプリケーション40間で、図に示すステップS31,S41において、相互認証および鍵共有(AKE:Authentication and Key Exchange)を実行する。相互認証処理は、例えば公開鍵暗号方式または共通鍵暗号方式に従ったアルゴリズムに従って実行される。相互認証においてセッションキーが生成され、ドライブ30とPC側のプレーヤアプリケーション40がセッションキーを共有する。
ドライブ30は、ステップS32において、セッションキーを適用して情報記録媒体10から取得した暗号化ディスクキー11の再暗号化を実行して、プレーヤアプリケーション40に送信し、また、ステップS33においてセッションキーを適用して情報記録媒体から取得した暗号化タイトルキー12の再暗号化を実行して、プレーヤアプリケーション40に送信する。ドライブ30と、プレーヤアプリケーション40の実行装置としてのPCは接続バス、例えばATAPI BUSによって接続されており、接続バスを介してこれらの暗号化鍵情報がPCのプレーヤアプリケーション40側に送信される。
さらに、ドライブ30は、情報記録媒体から取得し、CSS方式に基づくスクランブル処理のなされたコンテンツであるスクランブルMPEGデータ13を、ドライブとPC間の接続バスを介してPC側に出力する。
PC側のプレーヤアプリケーション40は、ステップS42において、セッションキーを用いて、ドライブ30から受領した暗号化ディスクキー11のセッションキーによる再暗号化データを復号して暗号化ディスクキー11を取得し、さらに、ステプS43において、ドライブ30から受領した暗号化タイトルキー12のセッションキーによる再暗号化データを復号して暗号化タイトルキー12を取得する。
その後のステップS51〜S55の処理は、先に図1を参照して説明した処理(S11〜S14)と同様の処理となる。
この図2に示す処理におけるドライブ側の処理をフローで示した図を図3に示す。ステップS61において情報記録媒体(ディスク)が挿入されたと判定されると、ステップS62において、ホスト、すなわち図2に示すプレーヤアプリケーション40を実行するPCと相互認証および鍵共有(AKE:Authentication and Key Exchange)を実行する。
相互認証および鍵共有(AKE)に成功(ステップS63:Yes)すると、ドライブに装着した情報記録媒体の格納コンテンツであるCSSスクランブルデータの出力が許可された状態に移行し、このCSSスクランブルデータの出力許可状態が、情報記録媒体が排出されるまで、あるいは電源がオフされるまで継続されることになる。
このように、ドライブは、コンテンツ出力先の機器との相互認証が成立する前は、CSSスクランブルデータの出力が許可されない状態に設定され、コンテンツ出力先の機器との相互認証が成立した以降は、CSSスクランブルデータの出力が許可された状態に設定され、この出力許可状態は情報記録媒体が排出されるまであるいは電源がオフされるまで継続される。
このようなドライブからのコンテンツ出力の許容状態により、図4に示すコンテンツの不正利用が発生し得る。
図4(1)は、ドライブからのコンテンツ出力先であるPC等のホスト側のアプリケーションの切り替えによるコンテンツの迂回利用例を示している。
ホスト(PC)60側の処理(ステップS71〜S73)について説明する。ステップS71において、情報記録媒体を装着したドライブ50とホスト(PC)60の正規のプレーヤアプリケーション間で相互認証を実行する。この相互認証の成立により、ドライブ50は、CSSスクランブルデータの出力許可状態に設定される。
ステップS72において、ドライブ50からCSSスクランブルデータを含む音声/映像(Audio/Video)データを読み出し、ハードディスクに格納する。
ステップS73において、アプリケーションを切り替えて、CSS解除ソフトウェアを適用して、ハードディスクに格納されたCSSスクランブルデータのスクランブル解除処理を実行する。
このような処理によってスクランブル解除が可能であり、スクランブル解除のなされた平文コンテンツは無制限に利用され得る。
図4(2)に示す処理は、ホスト(PC)とドライブ間の接続バス、例えばATAPI−BUSの盗聴処理によるコンテンツの不正利用例を示している。
ホスト(PC)60側の処理(ステップS81〜S83)について説明する。ステップS81において、情報記録媒体を装着したドライブ50とホスト(PC)60の正規のプレーヤアプリケーション間で相互認証を実行し、コンテンツの取得、再生を実行する。
コンテンツは、CSSスクランブルデータとして、ホスト(PC)とドライブ間の接続バス、例えばATAPI−BUSを介して入力される。
ホスト60は、ステップS82において、ホスト(PC)とドライブ間の接続バスのモニタリングを実行し、モニタリングによって取得したデータ、すなわち、CSSスクランブルデータをハードディスクに格納する。
ステップS63において、CSS解除ソフトウェアを適用して、ハードディスクに格納されたCSSスクランブルデータのスクランブル解除処理を実行する。
このような処理によってスクランブル解除されたコンテンツの取得が可能であり、スクランブル解除のなされた平文コンテンツは無制限に利用され得る。
このように、現行のコンテンツ・スクランブルシステム(CSS)は、確実なコンテンツの不正利用の排除ができない。特に、上述したように情報記録媒体を装着したドライブからコンテンツをPCなどの情報処理装置に出力して再生する際のコンテンツの不正利用が発生しやすいという問題点が存在する。
本発明は、上述の問題点に鑑みてなされたものであり、ドライブからのコンテンツ出力条件を厳格に設定して、コンテンツの不正利用を排除することを可能としたドライブ装置、再生処理装置、情報記録媒体、およびデータ処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
さらに、詳細には、ディスク等の情報記録媒体に記録されたコンテンツの構成データとしてのセクタデータに対応するセクタヘッダにセクタデータの出力制御情報を設定し、出力制御情報として、出力制御フラグおよびアプリケーション属性情報を定義し、出力制御フラグおよびアプリケーション属性情報に基づくコンテンツの出力制御を実行する。例えば再生処理装置としてのホストPC側のコンテンツ再生アプリケーションに対応する公開鍵証明書にアプリケーション属性情報を定義し、PC側のコンテンツ再生アプリケーションとドライブの相互認証後、ホスト(PC)側のアプリケーションからドライブに出力されるセクタデータ読み出し要求をドライブ側で受領した際に、ドライブ側で、情報記録媒体から読み出したセクタヘッダのアプリケーション属性情報と、ホスト(PC)側から入力したアプリケーションの公開鍵証明書に記録されたアプリケーション属性情報を比較して、これらの情報が所定の出力許容条件を満足する場合にのみセクタデータを転送することで、コンテンツの不正利用を排除することを可能としたドライブ装置、再生処理装置、情報記録媒体、およびデータ処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
本発明の第1の側面は、
情報記録媒体からのデータ読み取りおよび出力を実行するドライブ装置であり、
情報記録媒体を装着しデータ読み取りを実行する記録媒体インタフェースと、
データ再生プログラムとしてのホストアプリケーションを実行する再生処理装置との通信を実行する入出力インタフェースと、
前記再生処理装置に対する情報記録媒体からの読み取りデータの出力制御を実行するデータ処理部とを有し、
前記データ処理部は、
ドライブ装置と前記ホストアプリケーション間の相互認証処理を実行し、相互認証の成立を条件として前記ホストアプリケーション対応の暗号鍵を生成し、該暗号鍵を適用して情報記録媒体からの読み取りデータの暗号化を行い再生処理装置に出力する構成を有することを特徴とするドライブ装置にある。
さらに、本発明のドライブ装置の一実施態様において、前記データ処理部は、情報記録媒体からの読み取りデータに含まれる出力制御フラグの値に応じて、前記暗号鍵に基づく暗号化処理の実行の有無を判定する処理を行なう構成であることを特徴とする。
さらに、本発明のドライブ装置の一実施態様において、前記データ処理部は、情報記録媒体からの読み取りデータに含まれるアプリケーション識別子と、前記ホストアプリケーションから取得したアプリケーション識別情報とを照合し、該照合結果に基づいて情報記録媒体からの読み取りデータの再生処理装置に対する出力の可否を決定する構成を有することを特徴とする。
さらに、本発明のドライブ装置の一実施態様において、前記データ処理部は、情報記録媒体からの読み取りデータに含まれるセキュリティレベル情報と、前記ホストアプリケーションから取得したアプリケーション対応のセキュリティレベル情報とを比較し、該比較結果に基づいて情報記録媒体からの読み取りデータの再生処理装置に対する出力の可否を決定する構成を有することを特徴とする。
さらに、本発明のドライブ装置の一実施態様において、前記ホストアプリケーションから取得するアプリケーション識別情報、またはセキュリティレベル情報は、前記ホストアプリケーションの公開鍵証明書に格納された情報であり、前記データ処理部は、該公開鍵証明書の署名検証による改竄検証を実行する構成であることを特徴とする。
さらに、本発明のドライブ装置の一実施態様において、前記データ処理部は、さらに、ドライブ装置と前記ホストアプリケーション間の相互認証処理において生成したセッションキーを適用して、前記ホストアプリケーション対応の暗号鍵を暗号化して再生処理装置に出力する処理を実行する構成であることを特徴とする。
さらに、本発明のドライブ装置の一実施態様において、前記データ処理部は、さらに、前記ホストアプリケーション対応の暗号鍵に対してシーケンス番号を付与し、複数のホストアプリケーションに応じて複数の異なる暗号鍵を生成し、各ホストアプリケーションに応じて暗号鍵を切り替えて適用する処理を実行する構成であることを特徴とする。
さらに、本発明の第2の側面は、
情報記録媒体を装着したドライブ装置から情報記録媒体格納データを入力し再生処理を実行する再生処理装置であり、
データ再生プログラムとしてのホストアプリケーションを実行するデータ処理部と、
前記ホストアプリケーションに対応するアプリケーション情報を記録した証明書を格納した記憶部と、
ドライブ装置との通信を実行する入出力インタフェースとを有し、
前記データ処理部は、
前記ドライブ装置に対して前記証明書を出力し、前記ドライブ装置においてホストアプリケーションに対応して生成した暗号鍵を入力し、前記ドライブ装置からの入力データに対して前記暗号鍵を適用した復号処理を実行してデータ再生を行なう構成であることを特徴とする再生処理装置にある。
さらに、本発明の再生処理装置の一実施態様において、前記証明書は公開鍵証明書であり、前記データ処理部は、前記ドライブ装置との相互認証処理を実行し、該相互認証処理に際して前記公開鍵証明書を出力し、該相互認証処理に際して生成したセッションキーによって暗号化された前記暗号鍵をドライブ装置から入力し、セッションキーによる復号処理を実行して前記暗号鍵を取得する処理を実行する構成であることを特徴とする。
さらに、本発明の再生処理装置の一実施態様において、前記証明書は、前記ホストアプリケーションに対応するアプリケーション識別情報を記録した公開鍵証明書であることを特徴とする。
さらに、本発明の再生処理装置の一実施態様において、前記証明書は、前記ホストアプリケーションに対応するセキュリティレベル情報を記録した公開鍵証明書であることを特徴とする。
さらに、本発明の第3の側面は、
情報記録媒体であり、
セクタデータに分割設定されたコンテンツと、
前記セクタデータに対応する出力制御情報とを格納し、
前記出力制御情報は、
情報記録媒体を装着したドライブ装置において生成した暗号鍵を適用した暗号化データとすることをドライブ装置からの出力条件とするか否かの出力制御フラグを含む構成であることを特徴とする情報記録媒体にある。
さらに、本発明の情報記録媒体の一実施態様において、前記出力制御情報は、さらに、情報記録媒体を装着したドライブ装置からのデータ出力先として許容するホストアプリケーションの識別情報を格納した構成であることを特徴とする。
さらに、本発明の情報記録媒体の一実施態様において、前記出力制御情報は、さらに、情報記録媒体を装着したドライブ装置からのデータ出力先として許容するホストアプリケーションのセキュリティレベル情報を格納した構成であることを特徴とする。
さらに、本発明の第4の側面は、
情報記録媒体からのデータ読み取りおよび出力を実行するドライブ装置におけるデータ処理方法であり、
ドライブ装置と、データ再生プログラムとしてのホストアプリケーションを実行する再生処理装置間において相互認証処理を実行する認証ステップと、
相互認証の成立を条件として前記ホストアプリケーション対応の暗号鍵を生成する暗合鍵生成ステップと、
前記暗号鍵を適用して情報記録媒体からの読み取りデータの暗号化を行い再生処理装置に出力するデータ出力ステップと、
を有することを特徴とするデータ処理方法にある。
さらに、本発明のデータ処理方法の一実施態様において、前記データ処理方法は、さらに、情報記録媒体からの読み取りデータに含まれる出力制御フラグの値に応じて、前記暗号鍵に基づく暗号化処理の実行の有無を判定する処理を実行するステップを有することを特徴とする。
さらに、本発明のデータ処理方法の一実施態様において、前記データ処理方法は、さらに、情報記録媒体からの読み取りデータに含まれるアプリケーション識別子と、前記ホストアプリケーションから取得したアプリケーション識別情報とを照合し、該照合結果に基づいて情報記録媒体からの読み取りデータの再生処理装置に対する出力の可否を決定するステップを有することを特徴とする。
さらに、本発明のデータ処理方法の一実施態様において、前記データ処理方法は、さらに、情報記録媒体からの読み取りデータに含まれるセキュリティレベル情報と、前記ホストアプリケーションから取得したアプリケーション対応のセキュリティレベル情報とを比較し、該比較結果に基づいて情報記録媒体からの読み取りデータの再生処理装置に対する出力の可否を決定するステップを有することを特徴とする。
さらに、本発明のデータ処理方法の一実施態様において、前記ホストアプリケーションから取得するアプリケーション識別情報、またはセキュリティレベル情報は、前記ホストアプリケーションの公開鍵証明書に格納された情報であり、前記データ処理方法は、さらに、前記公開鍵証明書の署名検証による改竄検証を実行するステップを有することを特徴とする。
さらに、本発明のデータ処理方法の一実施態様において、前記データ処理方法は、さらに、ドライブ装置と前記ホストアプリケーション間の相互認証処理において生成したセッションキーを適用して、前記ホストアプリケーション対応の暗号鍵を暗号化して再生処理装置に出力する処理を実行するステップを有することを特徴とする。
さらに、本発明のデータ処理方法の一実施態様において、前記データ処理方法は、さらに、前記ホストアプリケーション対応の暗号鍵に対してシーケンス番号を付与し、複数のホストアプリケーションに応じて複数の異なる暗号鍵を生成し、各ホストアプリケーションに応じて暗号鍵を切り替えて適用する処理を実行するステップを有することを特徴とする。
さらに、本発明の第5の側面は、
情報記録媒体を装着したドライブ装置から情報記録媒体格納データを入力し再生処理を実行する再生処理装置におけるデータ処理方法であり、
データ再生プログラムとしてのホストアプリケーションに対応するアプリケーション情報を記録した証明書をドライブ装置に対して出力する証明書出力ステップと、
前記ドライブ装置においてホストアプリケーションに対応して生成した暗号鍵を入力する暗合鍵入力ステップと、
前記ドライブ装置からの入力データに対して前記暗号鍵を適用した復号処理を実行するデータ復号ステップと、
を有することを特徴とするデータ処理方法にある。
さらに、本発明のデータ処理方法の一実施態様において、前記証明書出力ステップは、前記ドライブ装置との相互認証処理に際して前記証明書としての公開鍵証明書を出力するステップであり、前記暗合鍵入力ステップは、前記相互認証処理に際して生成したセッションキーによって暗号化された前記暗号鍵をドライブ装置から入力するステップであり、
前記データ復号ステップは、前記セッションキーによる復号処理を実行して前記暗号鍵を取得し、取得した暗号鍵を適用した復号処理を実行するステップであることを特徴とする。
さらに、本発明の第6の側面は、
情報記録媒体からのデータ読み取りおよび出力を実行するコンピュータ・プログラムであり、
情報記録媒体からのデータ読み取りおよび出力を実行するドライブ装置と、データ再生プログラムとしてのホストアプリケーションを実行する再生処理装置間において相互認証処理を実行する認証ステップと、
相互認証の成立を条件として前記ホストアプリケーション対応の暗号鍵を生成する暗合鍵生成ステップと、
前記暗号鍵を適用して情報記録媒体からの読み取りデータの暗号化を行い再生処理装置に出力するデータ出力ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
さらに、本発明の第7の側面は、
情報記録媒体を装着したドライブ装置から情報記録媒体格納データを入力し再生処理を実行するコンピュータ・プログラムであり、
データ再生プログラムとしてのホストアプリケーションに対応するアプリケーション情報を記録した証明書をドライブ装置に対して出力する証明書出力ステップと、
前記ドライブ装置においてホストアプリケーションに対応して生成した暗号鍵を入力する暗合鍵入力ステップと、
前記ドライブ装置からの入力データに対して前記暗号鍵を適用した復号処理を実行するデータ復号ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータ・システムに対して、コンピュータ可読な形式で提供する記録媒体、通信媒体、例えば、CDやFD、MOなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
本発明の構成によれば、ディスク等の情報記録媒体に記録されたコンテンツの構成データに出力制御情報として、出力制御フラグおよびアプリケーション属性情報を定義し、出力制御フラグおよびアプリケーション属性情報に基づいて出力許容条件を満足するか否かを判定し、満足する場合にのみデータを転送する構成とし、さらに、再生処理装置側で実行するホストアプリケーションとの認証処理を実行し、認証の成立を条件としてホストアプリケーション対応の暗号鍵としてのバスキーを生成して、ホストアプリケーションに提供するとともに、バスキーに基づくコンテンツの暗号化を実行して接続バスを介してドライブから再生処理装置に出力する構成としたので、バスキーを保持するホストアプリケーションにおいてのみコンテンツの利用が可能となり、アプリケーションの切り替えや、接続バス転送データの盗聴などによるコンテンツ入手を行なっても他のアプリケーションでのコンテンツ利用が不可能となり、コンテンツの不正利用が排除される。
また、本発明の構成によれば、アプリケーションの属性情報としてアプリケーション識別子、セキュリティレベルを設定する構成としたので、データ出力先として許容するアプリケーションについて、より細かなアプリケーション選別が可能となる。また、これらのアプリケーション属性情報は、公開鍵証明書の格納データとして構成したので、署名検証による改竄検証が可能であり、確実なアプリケーション属性情報の確認が可能となる。
以下、図面を参照しながら本発明のドライブ装置、再生処理装置、情報記録媒体、およびデータ処理方法、並びにコンピュータ・プログラムの詳細について説明する。なお、説明は、以下の記載項目に従って行う。
1.情報記録媒体の格納データ構成
2.コンテンツ再生処理
3.再生処理装置およびドライブ装置の構成
[1.情報記録媒体の格納データ構成]
まず、情報記録媒体の格納データ構成について説明する。図5にコンテンツの格納された情報記録媒体の一例を示す。ここでは、コンテンツ格納済みディスクとしてのROMディスクの情報格納例を示す。
このROMディスクは、例えば、Blu−rayディスク、DVDなどの情報記録媒体であり、正当なコンテンツ著作権、あるいは頒布権を持ついわゆるコンテンツ権利者の許可の下にディスク製造工場において製造された正当なコンテンツを格納した情報記録媒体である。なお、以下の実施例では、情報記録媒体の例としてディスク型の媒体を例として説明するが、本発明は様々な態様の情報記録媒体の適用が可能である。
図5に示すように、情報記録媒体100は、コンテンツ等のデータを格納するデータ格納領域101と、ディスクおよび格納コンテンツに対応する付帯情報、コンテンツの復号処理に適用する鍵情報などを格納するリードイン領域102を持つ。
データ格納領域101には、暗号化(スクランブル)コンテンツ111と、暗号化コンテンツの復号処理に適用する鍵の生成に必要となる情報としての記録シード(REC SEED)であるユニットキー生成情報:Vu112、リボーク情報113が格納される。なお、スクランブル処理は、暗号化処理の一態様であり、本明細書ではスクランブルコンテンツの上位概念として、暗号化コンテンツという表現を用いる。暗号化コンテンツ111は、所定のユニット単位に区分され、ユニットに対応付けられたユニットキーを適用した暗号化がなされた状態で、情報記録媒体100のデータ格納領域101に格納される。ユニットキー生成情報:Vu112は、これらの各ユニットキーの生成に適用する情報でありシード情報とも呼ばれる。リボーク情報113については後述する。
リードイン領域102には、暗号化コンテンツ111の復号処理に適用する鍵の生成に必要となる各種情報が格納される。その1つは、ROMマーク:Ve114である。ROMマーク:Ve114は物理インデックス(Physical Index)とも呼ばれ、書き換えの不可能な固定情報である。リードイン領域102には、さらに、暗号鍵情報120が格納される。なお、ROMマーク:Ve114、暗号鍵情報120は必ずしもリードイン領域102に格納されることが必須ではなく、データ領域101に格納してもよい。
暗号鍵情報120は、前述のユニットキー生成情報:Vu112、ROMマーク:Ve114と同様、情報記録媒体のデータ格納領域101に格納された暗号化コンテンツ111の復号処理に適用する鍵を生成するための鍵情報(鍵生成情報)によって構成される。
すなわち、暗号化コンテンツ111の復号処理に適用する鍵として、例えば情報記録媒体に格納されたコンテンツに対応する鍵として設定されるメディアキー:Kmを取得するために必要となる暗号鍵ブロックであるRKB(Renewal Key Block)121と、暗号化コンテンツ111の復号処理に適用する鍵としてのディスクキー:Kdを、メディアキー:Kmを適用して暗号化した暗号化ディスクキーeKm(Kd)122とを含む情報である。なお、eKa(b)は、データ:bを鍵:Kaで暗号化したデータを示すものとする。
RKB(Renewal Key Block)121は、ブロードキャストエンクリプション方式の一態様として知られる木構造の鍵配信方式に基づいて生成される暗号鍵ブロックであり、情報記録媒体の再生を実行する正当なライセンスを保有するユーザ機器としての情報処理装置に配布されたデバイスキーを適用した復号処理によってメディアキー:Kmを取得可能とした暗号鍵ブロックである。暗号鍵ブロック:RKBの構成データを変更することにより、メディアキー:Kmを取得可能なユーザ機器を選別することが可能となる。
管理センタが、特定のユーザ機器あるいは再生アプリケーションを不正であると判定した場合は、RKBの構成を変更して、不正機器によるメディアキー:Kmの取得を不可能とすることが可能となる。なお、不正と判定されたユーザ機器あるいは再生アプリケーションはリボーク(排除)機器として管理センタに登録される。管理センタは、リボークされたユーザ機器あるいは再生アプリケーションの識別情報をリスト化したリボケーションリストを保持し、適宜更新する。ユーザは、最新のリボケーションリストを含むリボーク情報を情報記録媒体あるいはネットワークを介して入手することができる。
図5に示すリボーク情報113は、リボークされたユーザ機器あるいは再生アプリケーションの識別情報をリスト化したリボケーションリストを含む情報である。ユーザ機器は、例えばコンテンツを出力する機器が不正機器であるか否かを、機器から入力した機器識別子(ID)がリボークリストに記録されていないかを検証することにより判定することが可能であり、リボークリストに掲載された不正機器である場合は、コンテンツの出力を中止する処理を行なう。
次に、情報記録媒体100に格納される暗号化コンテンツ111の記録構成の詳細について、図6〜図8を参照して説明する。図6(a)が情報記録媒体に格納されるデータ記録構成である。18バイトのユーザ制御データ(UCD:User Control Data)と、実際のAVコンテンツデータなどを含む2048バイトのユーザデータ(User Data)が1つのセクタデータとして構成される。
図6(b)に示すように、例えばユーザデータ3セクタ分6144バイトのデータが1つのブロック暗号処理単位としての1ユニット(1AU:Aligned Unit)、すなわちブロックとして設定される。6144バイトのデータは、32TS(トランスポートストリーム)パケットに相当する。なお、ブロックの設定単位は、3セクタ分6144バイトのデータとする方式に限らず、1セクタ分2048バイトのデータを1つの暗号処理単位、すなわちブロックとして設定する方式など、様々な設定が可能である。
図6(c)に示すように、コンテンツに対応するコピー制御情報CCI(Copy Control Information)を格納したユーザデータは、2K(2048)バイト単位で暗号化されて記録される。
なお、18バイトのユーザ制御データ(User Control Data)は暗号化対象から除去され、ユーザデータのみが、暗号化されて記録される。
図7は、1つのセクタデータの構成を示している。1つのセクタデータは、18バイトのユーザ制御データ(UCD:User Control Data)と2048バイトのユーザデータ(User Data)からなる。
ユーザ制御データ(UCD:User Control Data)はセクタヘッダとも呼ばれ、その一部に、セクタ単位の出力制御情報(Output Control Information)151が記録される。
出力制御情報151は、対応するセクタデータ(ユーザデータ)の転送制御情報、例えば情報記録媒体を装着したドライブからPC等の情報処理装置に対する出力の制御情報であり、以下の情報を含む。
*出力制御フラグ(Output Control Flag)
*セキュリティレベル(Security Level)
*アプリケーションID(Application ID)
を含む情報として設定される。
図8にユーザ制御データ(UCD:User Control Data)中に記録される出力制御情報151の詳細構成を示す。出力制御情報151は、ユーザ制御データ(UCD:User Control Data)の3バイト(24ビット)データに記録される。
まず、ビット15〜0の16ビット情報として、アプリケーションID(Application ID)が記録される。アプリケーションID(Application ID)は、情報記録媒体の読み出しコンテンツの制御を出力制御情報(Output Control Information)に従って実行する場合に適用する情報であり、情報記録媒体の読み出しコンテンツの再生処理を許容する再生アプリケーションの識別情報(ID)である。例えば情報記録媒体に格納されたコンテンツが、再生アプリケーションとしてのブルーレイ(Blu-ray)ディスクプレーヤを適用することで再生可能なMPEG−TSパケットベースのハイビジョン映像コンテンツである場合には、再生アプリケーションとしてのブルーレイ(Blu-ray)ディスクプレーヤのアプリケーションIDが記録される。また、情報記録媒体に格納されたコンテンツが、再生アプリケーションとしてのDVDプレーヤで再生可能なMPEG−PSベースの標準画質の映像コンテンツである場合には、再生アプリケーションとしてのDVDプレーヤの識別情報がアプリケーションIDとして記録される。このように、アプリケーションIDは、コンテンツの再生を許可する再生プラットフォームを指定する識別情報である。
次のビット19〜16の4ビットには、セキュリティレベル(Security Level)が記録される。セキュリティレベル(Security Level)も、情報記録媒体の読み出しコンテンツの制御を出力制御情報(Output Control Information)に従って実行する場合に適用する情報であり、コンテンツ出力先として許容するPCなどの情報処理装置のセキュリティレベルを規定した情報である。例えば、特定のセキュアなデータ処理を実行する構成を持ついわゆるセキュアPCに対してのみ出力を許容するなど、コンテンツ出力先として許容するPCなどの情報処理装置のセキュリティレベルを規定する。
0000〜1111までのセキュリティレベルの設定が可能であり、0000を最低セキュリティレベル、1111を最高セキュリティレベルとし、出力先の機器から取得したセキュリティレベル情報が、情報記録媒体の出力制御情報151に記録されたセキュリティレベル(Security Level)以上である場合に、ドライブからのコンテンツ出力を許容する。
具体的には、例えばセキュリティレベル(Security Level)=0001はMicrosoft NGSCB やTrusted Computing Groupで仕様策定されつつあるセキュアPC(Secure PC)環境下で動作するアプリケーション、およびセキュアPC(Secure PC)環境下でしか動作を認めないコンテンツであることを示す。このような設定、すなわち、セキュリティレベル(Security Level)=0001の記録されたデータは、通常のPCアプリケーションでの再生が禁止され、ドライブからのコンテンツ出力が禁止される。
ビット22〜20の3ビットはリザーブ領域であり、
ビット23の1ビットが出力制御フラグ(Output Control Flag)として設定される。出力制御フラグ(Output Control Flag)は、情報記録媒体の読み出しコンテンツの制御を出力制御情報(Output Control Information)に従って実行するか否かの判定情報として利用される。具体的には、例えば、
出力制御フラグ(Output Control Flag)=1:出力制限、およびバス暗号化あり
出力制御フラグ(Output Control Flag)=0:出力制限なし
として設定される。なお、バス暗号化は、ドライブからのコンテンツ出力時に実行する暗号化処理であり、詳細については後述する。
[2.コンテンツ再生処理]
次に、上述した情報記録媒体に格納されたコンテンツの再生処理について説明する。情報記録媒体に格納されたコンテンツの再生態様には2つの態様がある。第1の態様は、情報記録媒体を装着し、情報記録媒体からのデータ読み取りを実行する機器自体が再生処理を実行する態様であり、第2の態様は、情報記録媒体からのデータ読み取りを実行するドライブと、再生処理を実行するホスト(PC)等の再生処理装置とが別の機器として構成され、ドライブ装置と再生処理装置間がデータ転送用バスによって接続され、接続バスを介したデータ転送を実行して再生処理を行なう態様である。
まず、情報記録媒体を装着し、情報記録媒体からのデータ読み取りを実行する機器自体が再生処理を実行する処理シーケンスについて図9を参照して説明する。
ドライブ兼用再生機器300が、暗号化コンテンツ206を格納した情報記録媒体200をセットしてデータの読み取り、鍵生成、コンテンツ復号などの各種の暗号処理を実行してコンテンツを出力する。
情報記録媒体200には、先に、図5を参照して説明した各種の情報、すなわち不正機器リストとしてのリボケーションリストを含むリボーク情報(Revocation info for AKE)201、メディアキー:Kmを格納した暗号鍵ブロックとしてのRKB202、ディスクキー:Kdをメディアキー:Kmで暗号化した暗号化ディスクキー:EKm(Kd)203、ROMマーク:Ve204、ユニットキー生成情報:Vu205、暗号化コンテンツ206が格納されている。
ドライブ兼用再生機器300の処理について説明する。ドライブ兼用再生機器300は、ステップS101において、予め機器内に格納されているデバイスキー:Kdev301を適用して暗号鍵ブロックとしてのRKB202の復号処理を実行して、RKB202からメディアキー:Kmを取得する。なお、RKB202からメディアキー:Kmを取得できるのは、コンテンツの利用を認められた機器のみであり、前述したように不正機器としてリボークされた機器の持つデバイスキーではRKBの復号が出来ず、メディアキー:Kmを取得することができない。
ステップS101においてメディアキー:Kmの取得に成功すると、次に、ステップS102において、取得したメディアキー:Kmを適用して、情報記録媒体200から取得した暗号化ディスクキー:EKm(Kd)203の復号処理を実行し、ディスクキー:Kdを取得する。
次にステップS103において、取得したディスクキー:Kdと、情報記録媒体200から取得したROMマーク:Ve204に基づく鍵生成処理、例えばAES暗号アルゴリズムに従った鍵生成処理を実行してエンベデッドキー:Keを生成する。
AES暗号アルゴリズムに従った鍵生成処理の詳細について、図10を参照して説明する。図10に示すように、AES暗号アルゴリズムに従った鍵生成は、AES暗号処理ブロック311において、入力値に対して暗号鍵を適用したAES暗号処理を実行し、その出力と入力値の排他論理和(XOR)演算結果を出力とする処理である。図9のステップS103においては、入力値を情報記録媒体200から取得したROMマーク:Ve204とし、適用鍵をディスクキー:Kdとした鍵生成処理を実行して、出力値としてのエンベデッドキー:Keを得る。
次に、ステップS104において、取得したエンベデッドキー:Keと、情報記録媒体200から取得したユニットキー生成情報:Vu205に基づく鍵生成処理を実行してユニットキー:Kuを生成する。この鍵生成処理も、図10を参照して説明したAES暗号アルゴリズムに従った鍵生成処理として実行される。
次に、ステップS105において、生成したユニットキーKuを適用した暗号化コンテンツ206の復号処理が実行されて、コンテンツが出力される。
ステップS105におけるユニットキーKuを適用した暗号化コンテンツ206の復号処理の詳細について、図11を参照して説明する。
暗号化コンテンツ206は、所定データ単位のブロック単位での暗号化がなされて情報記録媒体200に格納されている。図11に示すように例えば6144バイトのセクタデータは、16バイトのブロックごとの暗号化がなされている。
復号処理の手順について説明する。まず、6144バイトのセクタデータから先頭の16バイトデータを取得し、AES鍵生成処理ブロック[AES_G]321において、AES暗号アルゴリズムに従った鍵生成処理を実行する。これは、先に図10を参照して説明した処理と同様である。AES鍵生成処理ブロック321の出力をブロックキー:Kbとし、このブロックキー:Kbを適用して次の16バイトデータの復号処理をAES復号処理ブロック[AES_D]322において実行する。
AES復号処理ブロック[AES_D]322では、セクタデータの第2番目の16バイトデータと初期値:IVaとの排他論理和(XOR)結果を入力としてブロックキー:Kbを適用したAES暗号アルゴリズムに従った復号処理を実行して、16バイトブロックデータの復号データを取得するとともに、次のブロックの復号に適用する入力値とする。以下、同様の処理を繰り返し実行して、復号セクタデータ323を得ることができる。なお、初期値:IVaは、予め設定された定数である。IVaは、例えばセクタデータに対応するユーザ制御データあるいはユーザデータから取得することができる値として設定されるという場合もある。
図9のステップS105では、このように、ユニットキー:Kuを適用して、ブロック単位の復号処理を実行し、復号されたコンテンツを出力する。
このように、情報記録媒体からの情報読み取りと再生処理を1つの機器内で実行する場合には、コンテンツの漏洩の可能性は少なく、コンテンツの著作権の侵害といった問題が発生する可能性は少ない。しかし、先に、図2〜4を参照して説明したように、情報記録媒体を装着したドライブからバスを介してPC等の機器にコンテンツ出力を行なう構成の場合には、様々な問題が発生し得る。
本発明の構成では、このような情報記録媒体を装着したドライブからバスを介してPC等の機器にコンテンツ出力を行なう構成においてもセキュアなデータ転送を実現しコンテンツの不正利用の防止を可能としている。以下、ドライブと再生機器とをバス接続し、コンテンツの転送を伴う再生処理シーケンスの詳細について説明する。
図12は、情報記録媒体200と、情報記録媒体200をセットし、情報記録媒体200からのデータ読み取りを実行するドライブ装置400と、ドライブ装置400からコンテンツ他のデータを接続バスを介して入力し、ホストアプリケーション・プログラムに従ったコンテンツ再生処理を実行するホスト機器であるPC等の再生処理装置500の処理を示している。なお、ドライブ装置400と、ドライブ装置400と、ホストアプリケーションを実行するPC等の再生処理装置500とを接続するバスは、例えばATAPI BUSによって構成される接続バスである。なお、USBその他の接続バスとしてもよい。
情報記録媒体200には、先に図9を参照して説明したと同様、図5に示す各種の情報、すなわち不正機器リストとしてのリボケーションリストを含むリボーク情報(Revocation info for AKE)201、メディアキー:Kmを格納した暗号鍵ブロックとしてのRKB202、ディスクキー:Kdをメディアキー:Kmで暗号化した暗号化ディスクキー:EKm(Kd)203、ROMマーク:Ve204、ユニットキー生成情報:Vu205、暗号化コンテンツ206が格納されている。
ドライブ装置400には、公開鍵暗号方式に従った管理センタの公開鍵[Kp_kic]401、公開鍵暗号方式に従ったドライブ対応の秘密鍵[Ks_drive]402、公開鍵暗号方式に従ったドライブ対応の公開鍵を格納した公開鍵証明書[Cert_drive]403、およびデバイスキー[Kdev]404を格納している。
一方、ホストアプリケーションを実行する再生処理装置500には、公開鍵暗号方式に従った管理センタの公開鍵[Kp_kic]501、再生処理装置(ホスト)の実行するホストアプリケーション対応の公開鍵暗号方式に従ったホストアプリケーション秘密鍵[Ks_host]502、再生処理装置(ホスト)の実行するホストアプリケーション対応の公開鍵暗号方式に従った公開鍵を格納したホストアプリケーション公開鍵証明書[Cert_host]503を格納している。
ドライブ対応の公開鍵証明書[Cert_drive]403と、ホストアプリケーション対応の公開鍵証明書[Cert_host]503の詳細について、図13を参照して説明する。
図13(a)がドライブ対応の公開鍵証明書[Cert_drive]のデータ構成であり、図13(b)がホストアプリケーション対応の公開鍵証明書[Cert_host]のデータ構成である。
ドライブ対応の公開鍵証明書[Cert_drive]のデータ構成は、従来からの公開鍵証明書と同様の構成であり、証明書タイプ、証明書識別子、公開鍵、署名データから構成される。
ホストアプリケーション対応の公開鍵証明書[Cert_host]は、証明書タイプ、証明書識別子、公開鍵、署名データに加え、アプリケーション・セキュリティレベル[SLcert]511と、アプリケーションID[AIDcert]512が追加データとして設定される。
アプリケーション・セキュリティレベル[SLcert]511は、4ビット情報であり、先に図8を参照して説明した情報記録媒体のコンテンツ構成データとしてのセクタデータに対応するユーザ制御データ(UCD)に格納される出力制御情報(Output Control Information)内のセキュリティレベル(Security Level)に対応するデータである。
ホストのアプリケーション対応の公開鍵証明書に格納されるアプリケーション・セキュリティレベル[SLcert]511は、そのアプリケーションの持つセキュリティレベル情報が設定される。例えば、セキュアPCで実行されるアプリケーションであれば、高いセキュリティレベルの値が設定される。
公開鍵証明書に格納されるアプリケーション・セキュリティレベル[SLcert]511は、4ビットデータであり、[0000]〜[1111]までのセキュリティレベルの値のいずれかが設定される。0000を最低セキュリティレベル、1111を最高セキュリティレベルとする。
アプリケーションID[AIDcert]512は、16ビット情報であり、先に図8を参照して説明した情報記録媒体のコンテンツ構成データとしてのセクタデータに対応するユーザ制御データ(UCD)に格納される出力制御情報(Output Control Information)内のアプリケーションIDに対応するデータである。
公開鍵証明書に格納されるアプリケーションIDは、公開鍵証明書の設定されたアプリケーションの識別情報である。例えば情報記録媒体に格納されたコンテンツが、再生アプリケーションとしてのブルーレイ(Blu-ray)ディスクプレーヤアプリケーションであれば、ブルーレイ(Blu-ray)ディスクプレーヤアプリケーションであることを判別可能な識別情報としてのアプリケーションIDが格納される。
図12戻り、ドライブ装置400が情報記録媒体から取得したコンテンツ等のデータを接続バスを介して再生処理装置(ホスト)500に転送して再生する処理シーケンスについて説明する。
まず、ステップS201,S301において、ドライブ装置400と再生処理装置(ホスト)500のホストアプリケーション間で相互認証および鍵交換(AKE:Authentication and Key Exchange)処理が実行される。相互認証および鍵交換(AKE:Authentication and Key Exchange)処理の詳細シーケンスについて、図14を参照して説明する。この処理は、例えば、ISO/IEC9798−3に規定された公開鍵アルゴリズムを利用した相互認証、ISO/IEC11770−3に規定された公開鍵アルゴリズムを利用した鍵生成処理方式を適用して実行可能である。なお、公開鍵を利用した相互認証方式として実用化された方式としては、例えば、DTCP(Digital Transmission Content Protection) Specification Volume 1 (Informational Version)に記載される方法がある。
図14に示す処理シーケンスについて説明する。ステップS401において、ホストアプリケーションは、ドライブに対して乱数生成処理によって生成したチャレンジデータ[C_host]と、公開鍵証明書[Cert_Host]を送信する。公開鍵証明書[Cert_Host]は、図13(b)に示す公開鍵証明書であり、セキュリティレベルと、アプリケーションIDの各情報が格納された公開鍵証明書である。
このデータを受け取ったドライブ側は、公開鍵証明書[Cert_Host]の署名検証処理により、公開鍵証明書[Cert_Host]の正当性を検証する。署名検証処理は、ドライブの保持する管理センタの公開鍵[Kp_kic]401(図12参照)を適用して実行される。
公開鍵証明書[Cert_Host]の正当性が検証されると、公開鍵証明書[Cert_Host]からアプリケーションIDを取得して、情報記録媒体から取得したリボーク情報201に含まれるリボケーションリストに基づくリボーク確認を実行する。
公開鍵証明書[Cert_Host]の正当性が確認されなかったり、あるいは、アプリケーションIDに基づいて、ホストアプリケーションがリボークされていることが判明した場合にはエラーメッセージの通知などを実行し、処理を終了する。以後のコンテンツ、出力、再生処理は中止される。
公開鍵証明書[Cert_Host]の正当性が確認され、ホストアプリケーションがリボークされていない正当なアプリケーションであることが確認されると、ステップS402において、ドライブは、ホストアプリケーションに対して乱数生成処理によって生成したチャレンジデータ[C_drive]と、ドライブ側の公開鍵証明書[Cert_drive]を送信する。
ホストアプリケーション側では、ドライブ側の公開鍵証明書[Cert_drive]の署名検証を実行する。署名検証処理は、ホスト側で保持する管理センタの公開鍵[Kp_kic]501(図12参照)を適用して実行される。
公開鍵証明書[Cert_drive]の正当性が確認されなかった場合にはエラーメッセージの通知などを実行し、処理を終了する。以後のコンテンツ、出力、再生処理は中止される。
公開鍵証明書[Cert_drive]の正当性が確認された場合には、ホストアプリケーションは、ドライブから受信したチャレンジデータ[C_drive]に基づく演算を実行しパラメータ[A_host]を算出し、新たに生成した乱数[R_host]とともに、ドライブに送信(ステップS403)する。
一方、ドライブは、ホストアプリケーションから受信したチャレンジデータ[C_host]に基づく演算を実行しパラメータ[A_drive]を算出し、新たに生成した乱数[R_drive]とともに、ホストアプリケーションに送信(ステップS404)する。
この処理により、ドライブ、ホストアプリケーションの双方は、乱数[R_host]、[R_drive]、パラメータ[A_host]、[A_drive]を共有することになり、ドライブと、ホストアプリケーションの双方は、これらの共有データに基づいて共通のセッションキーKsを生成(ステップS405)する。
ドライブは、さらに、ステップS406において、乱数に基づいて生成したバスキー:Kbus、およびバスキーのシーケンス番号:SEQとの連結データ:[Kbus‖SEQ]に、この連結データの改竄検証用データとして算出したハッシュ値[hash(Kbus‖SEQ)]をセッションキー:Ksを用いて暗号化したデータ:EKs[(Kbus‖SEQ),hash(Kbus‖SEQ)]をホストアプリケーションに送信する。なお、このステップS406の処理は、図12において、ステップS206のバスキー生成処理(Genarate_Kbus)と、ステップS207のセッションキー:Ksによるバスキーの暗号化処理(AES_E)の処理に相当する。
バスキー:Kbusは、暗号化コンテンツのドライブからホスト側への接続バスを介した転送処理の際の暗号化キーとして用いられる鍵であり、ドライブにおいて乱数に基づいて生成される。バスキーは、適宜切り替えられ、各バスキーに応じたシーケンス番号が対応付けられる。例えばホスト側で複数のアプリケーションを適用して情報記録媒体に格納された異なるコンテンツの再生をそれぞれのアプリケーションを適用して実行する場合には、各アプリケーションで適用するバスキーを異なる鍵として設定する。
図12に戻り、ドライブ装置400が情報記録媒体から取得したコンテンツ等のデータを接続バスを介して再生処理装置(ホスト)500に転送して再生する処理シーケンスについて説明を続ける。
ドライブ装置400は、再生処理装置(ホスト)500との相互認証および鍵交換(AKE)が終了すると、ドライブ内に保持するデバイスキー:Kdev404を適用し、ステップS202において、情報記録媒体200から読み出した暗号鍵ブロックとしてのRKB202の復号処理を実行して、RKB202からメディアキー:Kmを取得する。なお、RKB202からメディアキー:Kmを取得できるのは、コンテンツの利用を認められた機器のみであり、前述したように不正機器としてリボークされた機器の持つデバイスキーではRKBの復号が出来ず、メディアキー:Kmを取得することができない。
ステップS202においてメディアキー:Kmの取得に成功すると、次に、ステップS203において、取得したメディアキー:Kmを適用して、情報記録媒体200から取得した暗号化ディスクキー:EKm(Kd)203の復号処理を実行し、ディスクキー:Kdを取得する。
次にステップS204において、取得したディスクキー:Kdと、情報記録媒体200から取得したROMマーク:Ve204に基づく鍵生成処理、例えばAES暗号アルゴリズムに従った鍵生成処理を実行してエンベデッドキー:Keを生成する。AES暗号アルゴリズムに従った鍵生成処理は、先に図10を参照して説明した通りである。
ドライブは、ステップS205において、エンベデッドキー:Keを先の相互認証および鍵交換処理(AKE)において生成したセッションキー:Ksで暗号化して再生処理装置(ホスト)500に対して接続バスを介して送信する。
ステップS206、およびステップS207の処理は、先に図14を参照して説明した相互認証および鍵交換処理(AKE)のステップS406の処理に相当し、乱数に基づいて、バスキー:Kbusを生成(ステップS206)し、セッションキー:Ksでバスキー:Kbusを含むデータを暗号化(ステップS207)して生成したデータを再生処理装置(ホスト)500に対して接続バスを介して送信する処理である。送信データは、先に図14を参照して説明したように、乱数に基づいて生成したバスキー:Kbus、およびバスキーのシーケンス番号:SEQとの連結データ:[Kbus‖SEQ]と、この連結データの改竄検証用データとして算出したハッシュ値[hash(Kbus‖SEQ)]とをセッションキー:Ksを用いて暗号化したデータ:EKs[(Kbus‖SEQ),hash(Kbus‖SEQ)]である。
さらに、ドライブ装置400は、ステップS208において、情報記録媒体200から読み出した暗号化コンテンツ206のユーザ制御データ(UCD)に含まれる出力制御情報と、相互認証および鍵交換処理(AKE)処理において、再生処理装置(ホスト)500から取得した再生処理装置(ホスト)の公開鍵証明書の格納データとに基づく出力制御を実行し、ステップS209において、暗号化コンテンツ206を制御態様に応じてバスキー:Kbusを用いて暗号化し、生成した暗号化データを接続バスを介して再生処理装置(ホスト)500に対して出力する。
情報記録媒体200から読み出される暗号化コンテンツ350は、例えばスクランブル処理のなされた暗号化データであり、ドライブは、このスクランブル処理されたデータをバスキー:Kbusを適用して再暗号化してホスト側に出力する。このバスキー:Kbusを適用した再暗号化処理によるデータ出力を実行することにより、バスキー:Kbusを保持している認証のなされたホスト側の唯一のアプリケーションのみが、バスキー:Kbusを適用した復号が可能となり、復号処理によって暗号化コンテンツ350を取得することが可能となる。
すなわち、先に、図4を参照して説明したように、コンテンツを入力するPC(ホスト)側でのアプリケーションの切り替えによるコンテンツの迂回取得や、ドライブとホストとの接続バスの転送データを盗聴することによるコンテンツ取得を行なっても、取得されるコンテンツは、バスキー:Kbusによって暗号化されたデータであり、バスキー:Kbusを保有しているのは、ドライブとの認証の成立した特定のアプリケーションのみであり、その特定のアプリケーションを適用しない限り、入力コンテンツの復号は実行できない。CSSスクランブルの解除プログラムのみではバスキー:Kbusによって暗号化されたデータの復号は実行できず、コンテンツの不正利用が防止可能となる。
バスキー:Kbusを適用した暗号化コンテンツ206の暗号化処理態様について、図15を参照して説明する。バスキー:Kbusを適用した暗号化コンテンツ206の暗号化処理は、例えば図15に示すように、AES−CBCモードを適用したブロック暗号化処理によって実行される。
ドライブ装置400は、情報記録媒体200から読み出される暗号化コンテンツに対して、ドライブにおいて生成したバスキー:Kbusを適用して、所定データブロック単位(16バイト)で暗号化する処理を実行する。
まず、情報記録媒体200から読み出される暗号化コンテンツの構成データである2048バイトのセクタデータ350から先頭の16バイトデータを取得し、初期値:IVbとの排他論理和(XOR)結果を、AES暗号処理部[AES_E]351に入力し、バスキー:Kbusを適用したAES暗号アルゴリズムに従った暗号処理を実行して16バイトブロックデータの暗号化データを生成する。初期値:IVbは、予め設定された定数である。IVbは、例えば、セクタデータ350に対応するユーザ制御データ(UCD)から取得されるという場合もある。
さらに、この生成データは、次のブロックの暗号化に適用する入力値として適用される。以下、各16バイトのブロックデータ毎に排他論理和(XOR)およびAES暗号処理を同様に繰り返し実行して、バスキーによる暗号化セクタデータ352を生成し、このデータをATAPI−BUSなどの接続バスを介して再生処理装置(ホスト)500側のアプリケーションに向けて送信する。再生処理装置(ホスト)500側ではこの入力暗号化データを復号して再生処理を行なう。
図12に戻り、再生処理装置(ホスト)500側の処理シーケンスについて説明する。再生処理装置(ホスト)500は、まず、前述したようにステップS301においてドライブ装置400との相互認証および鍵交換(AKE)を実行し、セッションキー:Ksを取得する。
次に、ステップS302において、ドライブから接続バスを介して入力したセッションキー:Ksによって暗号化されたエンベデッドキー:Ke、すなわち[EKs(Ke)]に対して、セッションキー:Ksを適用した復号処理を実行しエンベデッドキー:Keを取得する。
さらに、ステップS303において、ドライブから接続バスを介して入力したユニットキー生成情報:Vuに対してエンベデッドキー:Keを適用したAES鍵生成処理(図10参照)を実行し、ユニットキー:Kuを生成する。
さらに、ステップS304において、ドライブから接続バスを介して入力したセッションキー:Ksによって暗号化されたバスキー:Kbus、すなわち[EKs(Kbus)]に対して、セッションキー:Ksを適用した復号処理を実行しバスキー:Kbusを取得する。
なお、先に、図14を参照して説明したように、ドライブから送信されるバスキー:Kbusを含むデータは、バスキー:Kbusおよびバスキーのシーケンス番号:SEQとの連結データ:[Kbus‖SEQ]と、この連結データの改竄検証用データとして算出したハッシュ値[hash(Kbus‖SEQ)]とをセッションキー:Ksを用いて暗号化したデータ:EKs[(Kbus‖SEQ),hash(Kbus‖SEQ)]である。
再生処理装置(ホスト)500のアプリケーションは、ステップS304において、データ:EKs[(Kbus‖SEQ),hash(Kbus‖SEQ)]をセッションキー:Ksで復号し、バスキー:Kbusおよびバスキーのシーケンス番号:SEQとの連結データ:[Kbus‖SEQ]と、この連結データの改竄検証用データとして算出したハッシュ値[hash(Kbus‖SEQ)]とを取得する。
次に、ステップS305において、連結データ:[Kbus‖SEQ]のハッシュ値を算出し、ドライブからの入力データ中に含まれるハッシュ値[hash(Kbus‖SEQ)]と比較を実行する。両ハッシュ値が一致していれば、連結データ:[Kbus‖SEQ]が改竄されていないものと判定し、ステップS306におけるバスキー:Kbusを適用したコンテンツ復号処理に以降する。
ステップS306では、ドライブ装置400から入力するバスキー:Kbusによって再暗号化された暗号化コンテンツの復号処理を実行する。
バスキー:Kbusによって再暗号化された暗号化コンテンツの復号処理の詳細について、図16を参照して説明する。バスキー:Kbusを適用した暗号化コンテンツの復号処理は、例えば図16に示すように、AES−CBCモードを適用したブロック復号処理によって実行される。
再生処理装置(ホスト)500のアプリケーションは、ドライブ装置400から接続バスを介して入力する暗号化コンテンツに対して、ドライブから入力したバスキー:Kbusを適用して、所定データブロック単位(16バイト)で復号する処理を実行する。
まず、ドライブ装置400から接続バスを介して入力する暗号化コンテンツの構成データである2048バイトのセクタデータ370から先頭の16バイトデータを取得し、AES復号処理部[AES_D]371に入力し、バスキー:Kbusを適用したAES暗号アルゴリズムに従った復号処理を実行し、さらに、初期値:IVbとの排他論理和(XOR)演算を実行して復号結果を得る。初期値:IVbは、予め設定された定数である。IVbは、例えば、セクタデータ370に対応するユーザ制御データ(UCD)から取得されるという場合もある。
さらに、16バイト単位の復号結果データは、次のブロックの復号処理に適用する入力値として適用される。以下、各16バイトのブロックデータ毎にAES復号処理および排他論理和(XOR)を同様に繰り返し実行して、バスキーによる暗号化を解除したセクタデータ、すなわち、情報記録媒体200に格納されたデータ状態としての暗号化(スクランブル)セクタデータ372を取得する。
さらに、再生処理装置(ホスト)500のホストアプリケーションは、図12に示すステップS307において、ユニットキー:Kuを適用して、情報記録媒体200に格納されたデータ状態としての暗号化コンテンツの復号処理を実行する。この復号処理は、先に図11を参照して説明したと同様の処理として実行される。
以上の処理により、再生処理装置(ホスト)500のホストアプリケーションは、復号コンテンツ520を取得し、スピーカ、ディスプレイ等の出力部に対する出力処理を行いコンテンツ再生を実行する。
このように、本発明の構成では、情報記録媒体のデータ読み取りを実行するドライブにおいて、情報記録媒体から読み出したスクランブル処理されたデータをバスキー:Kbusを適用して再暗号化してホスト側に出力する構成としたので、バスキー:Kbusを保持しているホスト側アプリケーション、すなわちドライブとの相互認証が成立したホストアプリケーションのみにおいてバスキー:Kbusを適用した復号が可能となり、復号処理による暗号化コンテンツの利用が可能となる。
従って、コンテンツを入力するPC(ホスト)側でのアプリケーションの切り替えによるコンテンツの迂回取得や、ドライブとホストとの接続バスの転送データを盗聴することによるコンテンツ取得を行なってもバスキー:Kbusによって暗号化されたデータの復号は、ドライブとの相互認証が成立し、同一のバスキー:Kbusを持つ唯一のアプリケーションのみが可能となるので、他のアプリケーション、例えばCSSスクランブルの解除プログラムはバスキー:Kbusによる暗号化データの復号が不可能でありコンテンツの不正利用が防止される。
次に、図17〜図19を参照して、図12に示すステップS208、ステップS209において実行する出力制御情報解析と、コンテンツの出力制御の複数の態様について説明する。
先に、図8を参照して説明したように、情報記録媒体に格納した暗号化コンテンツのセクタヘッダ(ユーザ制御データ)には、ドライブからPC等の再生処理装置に対する出力制御情報として、
(1)出力制御フラグ(Output Control Flag)
(2)セキュリティレベル(Security Level)
(3)アプリケーションID(Application ID)
の各情報が設定されると説明した。
これら(1)〜(3)の3種類の情報のすべてを出力制御情報として設定する態様も可能であるが、(1)出力制御フラグ(Output Control Flag)のみ、あるいは、(1)出力制御フラグ(Output Control Flag)と、(3)アプリケーションID(Application ID)のみを設定するなど、各種の態様が可能である。また、設定情報としては(1)〜(3)の全てが設定されている場合であっても、ドライブにおける出力制御情報の解析に際して、その一部のみを適用した解釈を実行してもよい。以下、これらの複数の処理態様について、図17〜図19を参照してドライブ側の処理シーケンス例について説明する。
図17〜図19は、それぞれ、以下の処理を説明するシーケンスである。
図17:出力制御情報中の[出力制御フラグ]のみに基づく出力制御シーケンス
図18:出力制御情報中の[出力制御フラグ]と[アプリケーションID]に基づく出力制御シーケンス
図19:出力制御情報中の[出力制御フラグ]と[アプリケーションID]と[セキュリティレベル]に基づく出力制御シーケンス
まず、図17を参照して、出力制御情報中の[出力制御フラグ]のみに基づいて、ドライブから再生処理装置(ホスト)に対するコンテンツ出力を制御するシーケンスについて説明する。
図17のフローの各ステップについて説明する。まず、ステップS511においてドライブに対する情報記録媒体(ディスク)の挿入を検知し、ステップS512において、バス接続された再生処理装置(ホスト)側でのコンテンツ再生処理を実行するホストアプリケーションの起動を検知する。これらが検知されたことを条件として、ステップS513に進み、ホスト側からの相互認証要求を待機し、相互認証要求を受信すると、ステップS514において、先に図14を参照して説明した公開鍵暗号方式に従った相互認証および鍵交換(AKE)処理を実行する。
ステップS515において、相互認証および鍵交換(AKE)処理の完了が確認されると、ステップS516に進み、ドライブは、バスキー:Kbに対応する乱数Rの生成処理を実行し、この生成乱数Rをバスキー:Kbとする。この処理は、図12におけるステップS206の処理に相当する。なお、前述したように、バスキー:Kbには、シーケンス番号が対応付けられる。ドライブは、複数の異なるシーケンス番号に対応する異なるバスキーを保持し、ホスト側の実行アプリケーションに応じて切り替えて適用する場合もある。
ステップS517において、ホスト側からバスキーの転送要求を受領すると、ステップS518において、バスキー:Kbをホスト側に転送する。この処理は、図12におけるステップS207の処理に相当する。なお、このバスキー転送は、図14の相互認証および鍵交換(AKE)処理の最終ステップS406に相当する処理であり、ドライブは、バスキー:Kbusおよびバスキーのシーケンス番号:SEQとの連結データ:[Kbus‖SEQ]と、この連結データの改竄検証用データとして算出したハッシュ値[hash(Kbus‖SEQ)]とをセッションキー:Ksを用いて暗号化したデータ:EKs[(Kbus‖SEQ),hash(Kbus‖SEQ)]を生成してホスト側に送信する。
次に、ステッブS519では、新たな相互認証要求がないことを確認し、また、ステップS520では、情報記録媒体の排出がなされないことを確認して、ステップS521において、ホスト側のコンテンツ取得要求、すなわちセクタデータの読み取り要求がなされるまで待機する。
なお、ステップS519において、新たな相互認証要求があった場合は、ステップS514に戻り相互認証および鍵交換(AKE)処理を実行し、新たなバスキーの生成、送信を実行する。この際に生成するバスキーは、シーケンス番号:2のバスキーであり、先に生成したバスキー(シーケンス番号1)とは異なるバスキーとなる。これらは、ホスト側の異なるアプリケーションに対応するバスキーであり、ドライブは、ホスト側の起動アプリケーション毎に相互認証および鍵交換(AKE)処理を実行し、新たなバスキーの生成、送信を実行し、コンテンツ送信に際しては、ホスト側の起動アプリケーション毎に対応するバスキーを適用した暗号化データを生成して送信する。
なお、ステップS520において、ドライブからのディスク排出があったと判定した場合は、ステップS511に戻り、初期招待に設定され、生成済みのバスキー、セッションキー等のすべてのデータはリセット、すなわち消去される。
ステップS521において、ホスト側からセクタデータの読み出し要求があると、ドライブは、ステップS522において、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)から出力制御情報を読み取り、[出力制御フラグ:OCF]の値を判定する。この処理は、図12のステップS208の処理に相当する。
出力制御フラグ:OCFは、先に図8を参照して説明したように、
OCF=1:出力制限あり、バス暗号化あり、
OCF=0:出力制限なし、
の設定情報である。
ステップS522において、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)の出力制御情報中の出力制御フラグ(OCF)が[1]に設定されていると判定した場合は、ステップS523に進み、情報記録媒体から読出したセクタデータをバスキー:Kbusで暗号化して、ステップS524においてホスト側に出力する。なお、ステップS523におけるセクタデータの暗号化処理は、例えば、先に図15を参照して説明したAES−CBCモードを適用した暗号化処理として実行される。
ステップS522において、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)の出力制御情報中の出力制御フラグ(OCF)が[0]に設定されていると判定した場合は、ステップS523をスキップし、情報記録媒体から読出したセクタデータのバスキー:Kbusによる暗号化処理を実行することなく、ステップS524において、情報記録媒体からの読出しコンテンツをそのままホスト側に出力する。なお、この読出しコンテンツは、例えばCSS規定に従った暗号化(スクランブル)コンテンツである。
このように、ドライブは、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)の出力制御情報中の出力制御フラグ(OCF)が[0]か[1]かに基づいてバスキーによる暗号化の要否を判定し、バスキーによる暗号化の必要なデータである場合に、出力コンテンツのバスキーによる暗号化を実行して出力する。
次に、図18を参照して、出力制御情報中の[出力制御フラグ]と[アプリケーションID]とに基づいて、ドライブから再生処理装置(ホスト)に対するコンテンツ出力を制御するシーケンスについて説明する。
図18のフローの各ステップについて説明する。まず、ステップS611において、初期設定処理としてセッションID[SID]と、バスキー:Kbusの値を初期値[0]に設定する。セッションIDは、ドライブトホスト間で設定されたセッションに対応する識別子であり、ホストドライブ間において設定されたセッションに対しては、ホストドライブ間の相互認証および鍵交換(AKE)処理において、ドライブがホストから受領したホストのアプリケーション対応の公開鍵証明書(図13参照)から取得したアプリケーションID[AIDcert]と同一の値がセッションIDとされる。すなわち、SID=AIDcertとしてセッションIDが決定される。
ステップS612〜S616の処理は、図17において説明した処理ステップS511〜515と同様の処理であり、説明を省略する。
ステップS617では、ホストドライブ間の相互認証および鍵交換(AKE)処理において、ドライブが、ホストから受領したホストのアプリケーション対応の公開鍵証明書(図13参照)から取得したアプリケーションID[AIDcert]と、セッションID[SID]が一致するか否かを判定する。
SID=AIDcertであれば、既に成立済みのセッションであり、セッション対応のバスキーが存在しているので、バスキー生成処理を実行することなくステップS620に進む。
SID≠AIDcertであれば、新たなセッションであり、ステップS618において、セッション対応のバスキーの生成処理を実行する。これは乱数生成によるバスキーの生成として実行する。なお、バスキーにはシーケンス番号が対応付けられる。それぞれのセッション対応のバスキーは区別されて記憶され、利用される。
バスキー:Kbusの生成が完了すると、ステップS619において、新たなセッションに対するセッション識別子をホストドライブ間の相互認証および鍵交換(AKE)処理において、ドライブが、ホストから受領したホストのアプリケーション対応の公開鍵証明書(図13参照)から取得したアプリケーションID[AIDcert]として設定、すなわち、SID=AIDcertとして設定する。
ステップS620〜S624の処理は、先に説明した図17のフローにおけるステップS517〜521の処理と同様であるので、説明を省略する。
ステップS624において、ホスト側からセクタデータの読み出し要求があると、ドライブは、ステップS625において、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)から出力制御情報を読み取り、[出力制御フラグ:OCF]の値を判定する。この処理は、図12のステップS208の処理に相当する。
出力制御フラグ:OCFは、先に図8を参照して説明したように、
OCF=1:出力制限あり、バス暗号化あり、
OCF=0:出力制限なし、
の設定情報である。
ステップS625において、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)の出力制御情報中の出力制御フラグ(OCF)が[1]に設定されていると判定した場合は、ステップS626に進み、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)の出力制御情報中のアプリケーションID[AIDucd]と、ホストドライブ間の相互認証および鍵交換(AKE)処理において、ドライブが、ホストから受領したホストのアプリケーション対応の公開鍵証明書(図13参照)から取得したアプリケーションID[AIDcert]とが一致するか否か、すなわち、
AIDucd=AIDcert
が成立するか否かを判定する。
前述したように、出力制御情報中のアプリケーションID[AIDucd]は、出力を許容するアプリケーションを示す識別情報であり、ドライブは、ホストのアプリケーションが、出力制御情報中のアプリケーションID[AIDucd]に一致する場合にのみ、コンテンツ出力を許容する。
ステップS626において、
AIDucd=AIDcert
が成立しないと判定した場合は、ステップS629においてドライブからホスト側にエラーメッセージを送信し、処理を終了する。この場合、コンテンツの送信は実行されない。
ステップS626において、
AIDucd=AIDcert
が成立すると判定した場合は、ステップS627において、情報記録媒体から読出したセクタデータをバスキー:Kbusで暗号化して、ステップS628においてホスト側に出力する。なお、ステップS627におけるセクタデータの暗号化処理は、例えば、先に図15を参照して説明したAES−CBCモードを適用した暗号化処理として実行される。
ステップS625において、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)の出力制御情報中の出力制御フラグ(OCF)が[0]に設定されていると判定した場合は、ステップS626,S627をスキップし、アプリケーションIDの判定処理、および情報記録媒体から読出したセクタデータのバスキー:Kbusによる暗号化処理を実行することなく、ステップS628に進み、情報記録媒体からの読出しコンテンツをそのままホスト側に出力する。なお、この読出しコンテンツは、例えばCSS規定に従った暗号化(スクランブル)コンテンツである。
この実施例においては、ドライブは、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)の出力制御情報中の出力制御フラグ(OCF)が[0]か[1]かを判定し、出力制御を実行するか否かを判定するともに、出力制御フラグ(OCF)に基づいて出力制御が必要とされる場合には、さらに、アプリケーションIDの検証、すなわち、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)の出力制御情報中のアプリケーションID[AIDucd]と、ホストドライブ間の相互認証および鍵交換(AKE)処理において、ドライブが、ホストから受領したホストのアプリケーション対応の公開鍵証明書から取得したアプリケーションID[AIDcert]とが一致するか否か、すなわち、
AIDucd=AIDcert
が成立するか否かを判定し、一致する場合にコンテンツ出力を許容して、出力コンテンツのバスキーによる暗号化を実行して出力する。
この構成とすることで、ホスト側で実行しているアプリケーションの確認に基づくコンテンツ出力が実現される。なお、アプリケーションIDは公開鍵証明書に格納されたデータであり、管理センタの署名に基づいて相互認証時に改竄検証の実行されたデータであるので、信頼性の担保されたデータに基づくアプリケーションの確認が可能となる。
次に、図19を参照して、出力制御情報中の[出力制御フラグ]と[アプリケーションID]と、[セキュリティレベル]とに基づいて、ドライブから再生処理装置(ホスト)に対するコンテンツ出力を制御するシーケンスについて説明する。
図19のフローの各ステップの処理について説明する。図19のフローにおいて、ステップS631〜S644は、先に説明した図18のフローにおけるステップS611〜S624と同様の処理であるので、説明を省略する。
ステップS644において、ホスト側からセクタデータの読み出し要求があると、ドライブは、ステップS645において、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)から出力制御情報を読み取り、[出力制御フラグ:OCF]の値を判定する。この処理は、図12のステップS208の処理に相当する。
出力制御フラグ:OCFは、先に図8を参照して説明したように、
OCF=1:出力制限あり、バス暗号化あり、
OCF=0:出力制限なし、
の設定情報である。
ステップS645において、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)の出力制御情報中の出力制御フラグ(OCF)が[1]に設定されていると判定した場合は、ステップS646に進み、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)の出力制御情報中のセキュリティレベル[SLucd]と、ホストドライブ間の相互認証および鍵交換(AKE)処理において、ドライブが、ホストから受領したホストのアプリケーション対応の公開鍵証明書(図13参照)から取得したセキュリティレベル[SLcert]との値の比較を実行する。
セクタヘッダ(ユーザ制御データ)の出力制御情報中に記録されたセキュリティレベル[SLucd]はコンテンツ出力を許容するアプリケーションのセキュリティレベルを設定した情報であり、許容する最低のセキュリティレベルの値が記録される。例えば1111(最高レベル)〜0000(最低レベル)のいずれかの値が設定される。ホストアプリケーション対応の公開鍵証明書に記録さたれセキュリティレベル[SLcert]は、ホストアプリケーション対応のセキュリティレベルの値である。
ドライブは、ホストアプリケーション対応のセキュリティレベル[SLcert]の値が、出力制御情報中に記録されたセキュリティレベル[SLucd]の値以上である場合に、コンテンツ出力の許容アプリケーションであると判定する。すなわち、
SLucd≦SLcert
である場合に、コンテンツ出力の許容アプリケーションであると判定する。
ステップS646において、
SLucd≦SLcert
が成立しないと判定した場合は、ステップS650においてドライブからホスト側にエラーメッセージを送信し、処理を終了する。この場合、コンテンツの送信は実行されない。
ステップS646において、
SLucd≦SLcert
が成立すると判定した場合は、さらに、ステップS647において、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)の出力制御情報中のアプリケーションID[AIDucd]と、ホストから受領したホストのアプリケーション対応の公開鍵証明書(図13参照)から取得したアプリケーションID[AIDcert]とが一致するか否か、すなわち、
AIDucd=AIDcert
が成立するか否かを判定する。
この処理は、図18において説明したステップS626の処理と同様である。
ステップS647において、
AIDucd=AIDcert
が成立しないと判定した場合は、ステップS650においてドライブからホスト側にエラーメッセージを送信し、処理を終了する。この場合、コンテンツの送信は実行されない。
ステップS647において、
AIDucd=AIDcert
が成立すると判定した場合は、ステップS648において、情報記録媒体から読出したセクタデータをバスキー:Kbusで暗号化して、ステップS649においてホスト側に出力する。なお、ステップS627におけるセクタデータの暗号化処理は、例えば、先に図15を参照して説明したAES−CBCモードを適用した暗号化処理として実行される。
なお、ステップS645において、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)の出力制御情報中の出力制御フラグ(OCF)が[0]に設定されていると判定した場合は、ステップS646〜S648をスキップし、セキュリティレベルの判定処理、アプリケーションIDの判定処理、および情報記録媒体から読出したセクタデータのバスキー:Kbusによる暗号化処理を実行することなく、ステップS649に進み、情報記録媒体からの読出しコンテンツをそのままホスト側に出力する。なお、この読出しコンテンツは、例えばCSS規定に従った暗号化(スクランブル)コンテンツである。
この実施例においては、ドライブは、読み出し対象のセクタデータに対応するセクタヘッダ(ユーザ制御データ)の出力制御情報中の出力制御フラグ(OCF)が[0]か[1]かを判定し、出力制御を実行するか否かを判定するともに、出力制御フラグ(OCF)に基づいて出力制御が必要とされる場合には、さらに、セキュリティレベルの検証と、アプリケーションIDの検証を実行する構成である。
本構成によれば、ホスト側で実行しているアプリケーションのセキュリティレベルと、アプリケーション確認に基づくコンテンツ出力が実現される。なお、セキュリティレベルとアプリケーションIDは公開鍵証明書に格納されたデータであり、管理センタの署名に基づいて相互認証時に改竄検証の実行されたデータであるので、信頼性の担保されたデータに基づくセキュリティレベルおよびアプリケーションの確認が可能となる。
[3.再生処理装置およびドライブ装置の構成]
次に、図20、図21を参照して、情報記録媒体の格納コンテンツの再生処理を行う再生処理装置および、情報記録媒体の格納コンテンツの読み取りおよび出力を実行するドライブ装置の構成例について説明する。
まず、図20を参照して、情報記録媒体の格納コンテンツの再生処理を行う再生処理装置の構成について説明する。再生処理装置600は、OSやコンテンツ再生アプリケーションプログラム、相互認証処理プログラムなどの各種プログラムに従ったデータ処理を実行するCPU670、プログラム、パラメータ等の記憶領域としてのROM660、メモリ680、デジタル信号を入出力する入出力I/F610、アナログ信号を入出力し、A/D,D/Aコンバータ641を持つ入出力I/F640、MPEGデータのエンコード、デコード処理を実行するMPEGコーデック630、TS(Transport Stream)・PS(Program Stream)処理を実行するTS・PS処理手段620、相互認証、暗号化コンテンツの復号処理など各種の暗号処理を実行する暗号処理手段650、ハードディスクなどの記録媒体691、記録媒体691の駆動、データ記録再生信号の入出力を行なうドライブ690を有し、バス601に各ブロックが接続されている。
再生処理装置(ホスト)600は、例えばATAPIBUS等の接続バスによってドライブと接続され、上述したバスキーによって暗号化されたコンテンツは、デジタル信号用入出力I/F610から入力され、必要に応じて暗号化処理手段650によって、例えば、図16を参照して説明したAES−CBCモードによる復号処理が実行される。
なお、コンテンツ再生処理を実行するプログラムは例えばROM660内に保管されており、プログラムの実行処理中は必要に応じて、パラメータ、データの保管、ワーク領域としてメモリ680を使用する。
ROM660または記録媒体691には、先に図12を参照して説明した管理センタの公開鍵、ホストアプリケーションに対応する秘密鍵、ホストアプリケーションに対応する公開鍵証明書が格納されている。なお、複数のホストアプリケーションを保持している場合は、それぞれに対応する秘密鍵と公開鍵証明書が格納される。
次に、図21を参照して、情報記録媒体の格納コンテンツの読み取り、および再生処理装置(ホスト)に対する出力を実行するドライブ装置の構成について説明する。ドライブ装置700は、コンテンツ読み取り、転送処理プログラム、相互認証処理プログラムなどの各種プログラムに従ったデータ処理を実行するCPU702、プログラム、パラメータ等の記憶領域としてのROM705、メモリ706、デジタル信号を入出力する入出力I/F703、相互認証、バスキーの生成、出力データの暗号化処理など各種の暗号処理を実行する暗号処理手段704、DVD,Blu−rayディスクなどの情報記録媒体708の駆動、データ記録再生信号の入出力を行なう記録媒体I/F707を有し、バス701に各ブロックが接続されている。
ドライブ700は、例えばATAPIBUS等の接続バスによって再生処理装置(ホスト)と接続され、例えば情報記録媒体708に格納された暗号化(スクランブル)コンテンツをバスキー:Kbusで、再暗号化し入出力I/F703から出力する。バスキー:Kbusを適用したコンテンツの暗号化は、暗号化処理手段704によって、例えば、図15を参照して説明したAES−CBCモードで実行される。
なお、ROM705、またはメモリ706には、先に図12を参照して説明した管理センタの公開鍵、ドライブに対応する秘密鍵、ドライブに対応する公開鍵証明書、および暗号鍵ブロックRKBの処理に適用するためのデバイスキー:Kdevが格納されている。また、コンテンツの読み取り、取得、および相互認証処理を実行するプログラム等が格納されている。
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
以上、説明したように、本発明の構成によれば、ディスク等の情報記録媒体に記録されたコンテンツの構成データに出力制御情報として、出力制御フラグおよびアプリケーション属性情報を定義し、出力制御フラグおよびアプリケーション属性情報に基づいて出力許容条件を満足するか否かを判定し、満足する場合にのみデータを転送する構成とし、さらに、再生処理装置側で実行するホストアプリケーションとの認証処理を実行し、認証の成立を条件としてホストアプリケーション対応の暗号鍵としてのバスキーを生成して、ホストアプリケーションに提供するとともに、バスキーに基づくコンテンツの暗号化を実行して接続バスを介してドライブから再生処理装置に出力する構成としたので、バスキーを保持するホストアプリケーションにおいてのみコンテンツの利用が可能となり、アプリケーションの切り替えや、接続バス転送データの盗聴などによるコンテンツ入手を行なっても他のアプリケーションでのコンテンツ利用が不可能となり、コンテンツの不正利用が排除される。
また、本発明の構成によれば、アプリケーションの属性情報としてアプリケーション識別子、セキュリティレベルを設定する構成としたので、データ出力先として許容するアプリケーションについて、より細かなアプリケーション選別が可能となる。また、これらのアプリケーション属性情報は、公開鍵証明書の格納データとして構成したので、署名検証による改竄検証が可能であり、確実なアプリケーション属性情報の確認が可能となる。
従来の情報記録媒体格納コンテンツの再生シーケンスを説明する図である。 従来の再生処理装置におけるドライブ出力コンテンツの再生シーケンスを説明する図である。 ドライブからのコンテンツ出力シーケンスを説明するフロー図である。 従来のホストドライブ間のコンテンツ転送を伴う処理構成におけるコンテンツの不正利用例を説明する図である。 本発明の情報記録媒体の格納データについて説明する図である。 本発明の情報記録媒体の格納データの構成について説明する図である。 本発明の情報記録媒体の格納データとしてのセクタデータおよびセクタヘッダの構成について説明する図である。 本発明の情報記録媒体のセクタヘッダに記録される出力制御情報の詳細について説明する図である。 情報記録媒体の格納コンテンツの読み取り、再生を実行する再生機器の処理シーケンスについて説明する図である。 情報記録媒体の格納コンテンツの再生において実行するAES暗号アルゴリズムに従った鍵生成処理について説明する図である。 情報記録媒体の格納コンテンツの再生において実行するAES暗号アルゴリズムに従ったデータ復号処理について説明する図である。 本発明のドライブ装置と再生処理装置において実行するコンテンツ転送を伴う再生シーケンスを説明する図である。 ドライブ装置と再生処理装置に格納される公開鍵証明書のデータ構成について説明する図である。 ドライブ装置と再生処理装置間で実行する相互認証および鍵交換(AKE)処理シーケンスを説明する図である。 ドライブ装置で実行するコンテンツのバスキー:Kbusに基づく暗号化処理構成を説明する図である。 再生処理装置で実行するコンテンツのバスキー:Kbusに基づく復号処理構成を説明する図である。 ドライブ装置で実行するコンテンツの出力制御処理例1を説明するフローチャートを示す図である。 ドライブ装置で実行するコンテンツの出力制御処理例2を説明するフローチャートを示す図である。 ドライブ装置で実行するコンテンツの出力制御処理例3を説明するフローチャートを示す図である。 本発明の再生処理装置の構成例を示す図である。 本発明のドライブ装置の構成例を示す図である。
符号の説明
10 情報記録媒体
11 暗号化ディスクキー
12 暗号化タイトルキー
13 スクランブルMPEGデータ
20 再生機器
25 音声/映像データ
30 ドライブ
40 プレーヤアプリケーション
45 音声/映像データ
50 ドライブ
60 再生処理装置(ホスト)
100 情報記録媒体
101 ユーザデータ領域
102 リードイン領域
111 暗号化コンテンツ
112 ユニットキー生成情報
113 リボーク情報
114 ROMマーク
120 暗号鍵情報
121 暗号鍵ブロック(RKB)
122 暗号化ディスクキー
151 出力制御情報
200 情報記録媒体
201 リボーク情報
202 暗号鍵ブロック(RKB)
203 暗号化ディスクキー
204 ROMマーク
205 ユニットキー生成情報
206 暗号化コンテンツ
300 ドライブ兼用再生機器
301 デバイスキー
321 AES鍵生成処理ブロック
322 AES復号処理ブロック
323 復号セクタデータ
350 セクタデータ
351 AES暗号処理部
352 バスキーによる暗号化セクタデータ
370 バスキーによる暗号化セクタデータ
371 AES復号処理部
372 暗号化(スクランブル)セクタデータ
400 ドライブ装置
401 管理センタ公開鍵
402 ドライブ秘密鍵
403 ドライブ公開鍵証明書
404 デバイスキー
500 再生処理装置
501 管理センタ公開鍵
502 ホストアプリケーション秘密鍵
503 ホストアプリケーション公開鍵証明書
520 コンテンツ
511 セキュリティレベル
512 アプリケーションID
600 再生処理装置
601 バス
610 入出力I/F
620 TS・PS処理手段
630 MPEGコーデック
640 入出力I/F
641 A/D,D/Aコンバータ
650 暗号処理手段
660 ROM
670 CPU
680 メモリ
690 ドライブ
691 記録媒体
700 ドライブ装置
701 バス
702 CPU
703 入出力I/F
704 暗号処理手段
705 ROM
706 メモリ
707 記録媒体I/F
708 情報記録媒体

Claims (25)

  1. 情報記録媒体からのデータ読み取りおよび出力を実行するドライブ装置であり、
    情報記録媒体を装着しデータ読み取りを実行する記録媒体インタフェースと、
    データ再生プログラムとしてのホストアプリケーションを実行する再生処理装置との通信を実行する入出力インタフェースと、
    前記再生処理装置に対する情報記録媒体からの読み取りデータの出力制御を実行するデータ処理部とを有し、
    前記データ処理部は、
    ドライブ装置と前記ホストアプリケーション間の相互認証処理を実行し、相互認証の成立を条件として前記ホストアプリケーション対応の暗号鍵を生成し、該暗号鍵を適用して情報記録媒体からの読み取りデータの暗号化を行い再生処理装置に出力する構成を有することを特徴とするドライブ装置。
  2. 前記データ処理部は、
    情報記録媒体からの読み取りデータに含まれる出力制御フラグの値に応じて、前記暗号鍵に基づく暗号化処理の実行の有無を判定する処理を行なう構成であることを特徴とする請求項1に記載のドライブ装置。
  3. 前記データ処理部は、
    情報記録媒体からの読み取りデータに含まれるアプリケーション識別子と、前記ホストアプリケーションから取得したアプリケーション識別情報とを照合し、該照合結果に基づいて情報記録媒体からの読み取りデータの再生処理装置に対する出力の可否を決定する構成を有することを特徴とする請求項1に記載のドライブ装置。
  4. 前記データ処理部は、
    情報記録媒体からの読み取りデータに含まれるセキュリティレベル情報と、前記ホストアプリケーションから取得したアプリケーション対応のセキュリティレベル情報とを比較し、該比較結果に基づいて情報記録媒体からの読み取りデータの再生処理装置に対する出力の可否を決定する構成を有することを特徴とする請求項1に記載のドライブ装置。
  5. 前記ホストアプリケーションから取得するアプリケーション識別情報、またはセキュリティレベル情報は、前記ホストアプリケーションの公開鍵証明書に格納された情報であり、前記データ処理部は、該公開鍵証明書の署名検証による改竄検証を実行する構成であることを特徴とする請求項3または4に記載のドライブ装置。
  6. 前記データ処理部は、さらに、
    ドライブ装置と前記ホストアプリケーション間の相互認証処理において生成したセッションキーを適用して、前記ホストアプリケーション対応の暗号鍵を暗号化して再生処理装置に出力する処理を実行する構成であることを特徴とする請求項1に記載のドライブ装置。
  7. 前記データ処理部は、さらに、
    前記ホストアプリケーション対応の暗号鍵に対してシーケンス番号を付与し、複数のホストアプリケーションに応じて複数の異なる暗号鍵を生成し、各ホストアプリケーションに応じて暗号鍵を切り替えて適用する処理を実行する構成であることを特徴とする請求項1に記載のドライブ装置。
  8. 情報記録媒体を装着したドライブ装置から情報記録媒体格納データを入力し再生処理を実行する再生処理装置であり、
    データ再生プログラムとしてのホストアプリケーションを実行するデータ処理部と、
    前記ホストアプリケーションに対応するアプリケーション情報を記録した証明書を格納した記憶部と、
    ドライブ装置との通信を実行する入出力インタフェースとを有し、
    前記データ処理部は、
    前記ドライブ装置に対して前記証明書を出力し、前記ドライブ装置においてホストアプリケーションに対応して生成した暗号鍵を入力し、前記ドライブ装置からの入力データに対して前記暗号鍵を適用した復号処理を実行してデータ再生を行なう構成であることを特徴とする再生処理装置。
  9. 前記証明書は公開鍵証明書であり、
    前記データ処理部は、
    前記ドライブ装置との相互認証処理を実行し、該相互認証処理に際して前記公開鍵証明書を出力し、該相互認証処理に際して生成したセッションキーによって暗号化された前記暗号鍵をドライブ装置から入力し、セッションキーによる復号処理を実行して前記暗号鍵を取得する処理を実行する構成であることを特徴とする請求項8に記載の再生処理装置。
  10. 前記証明書は、前記ホストアプリケーションに対応するアプリケーション識別情報を記録した公開鍵証明書であることを特徴とする請求項8に記載の再生処理装置。
  11. 前記証明書は、前記ホストアプリケーションに対応するセキュリティレベル情報を記録した公開鍵証明書であることを特徴とする請求項8に記載の再生処理装置。
  12. 情報記録媒体であり、
    セクタデータに分割設定されたコンテンツと、
    前記セクタデータに対応する出力制御情報とを格納し、
    前記出力制御情報は、
    情報記録媒体を装着したドライブ装置において生成した暗号鍵を適用した暗号化データとすることをドライブ装置からの出力条件とするか否かの出力制御フラグを含む構成であることを特徴とする情報記録媒体。
  13. 前記出力制御情報は、さらに、
    情報記録媒体を装着したドライブ装置からのデータ出力先として許容するホストアプリケーションの識別情報を格納した構成であることを特徴とする請求項12に記載の情報記録媒体。
  14. 前記出力制御情報は、さらに、
    情報記録媒体を装着したドライブ装置からのデータ出力先として許容するホストアプリケーションのセキュリティレベル情報を格納した構成であることを特徴とする請求項12に記載の情報記録媒体。
  15. 情報記録媒体からのデータ読み取りおよび出力を実行するドライブ装置におけるデータ処理方法であり、
    ドライブ装置と、データ再生プログラムとしてのホストアプリケーションを実行する再生処理装置間において相互認証処理を実行する認証ステップと、
    相互認証の成立を条件として前記ホストアプリケーション対応の暗号鍵を生成する暗合鍵生成ステップと、
    前記暗号鍵を適用して情報記録媒体からの読み取りデータの暗号化を行い再生処理装置に出力するデータ出力ステップと、
    を有することを特徴とするデータ処理方法。
  16. 前記データ処理方法は、さらに、
    情報記録媒体からの読み取りデータに含まれる出力制御フラグの値に応じて、前記暗号鍵に基づく暗号化処理の実行の有無を判定する処理を実行するステップを有することを特徴とする請求項15に記載のデータ処理方法。
  17. 前記データ処理方法は、さらに、
    情報記録媒体からの読み取りデータに含まれるアプリケーション識別子と、前記ホストアプリケーションから取得したアプリケーション識別情報とを照合し、該照合結果に基づいて情報記録媒体からの読み取りデータの再生処理装置に対する出力の可否を決定するステップを有することを特徴とする請求項15に記載のデータ処理方法。
  18. 前記データ処理方法は、さらに、
    情報記録媒体からの読み取りデータに含まれるセキュリティレベル情報と、前記ホストアプリケーションから取得したアプリケーション対応のセキュリティレベル情報とを比較し、該比較結果に基づいて情報記録媒体からの読み取りデータの再生処理装置に対する出力の可否を決定するステップを有することを特徴とする請求項15に記載のデータ処理方法。
  19. 前記ホストアプリケーションから取得するアプリケーション識別情報、またはセキュリティレベル情報は、前記ホストアプリケーションの公開鍵証明書に格納された情報であり、
    前記データ処理方法は、さらに、前記公開鍵証明書の署名検証による改竄検証を実行するステップを有することを特徴とする請求項17または18に記載のデータ処理方法。
  20. 前記データ処理方法は、さらに、
    ドライブ装置と前記ホストアプリケーション間の相互認証処理において生成したセッションキーを適用して、前記ホストアプリケーション対応の暗号鍵を暗号化して再生処理装置に出力する処理を実行するステップを有することを特徴とする請求項15に記載のデータ処理方法。
  21. 前記データ処理方法は、さらに、
    前記ホストアプリケーション対応の暗号鍵に対してシーケンス番号を付与し、複数のホストアプリケーションに応じて複数の異なる暗号鍵を生成し、各ホストアプリケーションに応じて暗号鍵を切り替えて適用する処理を実行するステップを有することを特徴とする請求項15に記載のデータ処理方法。
  22. 情報記録媒体を装着したドライブ装置から情報記録媒体格納データを入力し再生処理を実行する再生処理装置におけるデータ処理方法であり、
    データ再生プログラムとしてのホストアプリケーションに対応するアプリケーション情報を記録した証明書をドライブ装置に対して出力する証明書出力ステップと、
    前記ドライブ装置においてホストアプリケーションに対応して生成した暗号鍵を入力する暗合鍵入力ステップと、
    前記ドライブ装置からの入力データに対して前記暗号鍵を適用した復号処理を実行するデータ復号ステップと、
    を有することを特徴とするデータ処理方法。
  23. 前記証明書出力ステップは、
    前記ドライブ装置との相互認証処理に際して前記証明書としての公開鍵証明書を出力するステップであり、
    前記暗合鍵入力ステップは、
    前記相互認証処理に際して生成したセッションキーによって暗号化された前記暗号鍵をドライブ装置から入力するステップであり、
    前記データ復号ステップは、
    前記セッションキーによる復号処理を実行して前記暗号鍵を取得し、取得した暗号鍵を適用した復号処理を実行するステップであることを特徴とする請求項22に記載のデータ処理方法。
  24. 情報記録媒体からのデータ読み取りおよび出力を実行するコンピュータ・プログラムであり、
    情報記録媒体からのデータ読み取りおよび出力を実行するドライブ装置と、データ再生プログラムとしてのホストアプリケーションを実行する再生処理装置間において相互認証処理を実行する認証ステップと、
    相互認証の成立を条件として前記ホストアプリケーション対応の暗号鍵を生成する暗合鍵生成ステップと、
    前記暗号鍵を適用して情報記録媒体からの読み取りデータの暗号化を行い再生処理装置に出力するデータ出力ステップと、
    を有することを特徴とするコンピュータ・プログラム。
  25. 情報記録媒体を装着したドライブ装置から情報記録媒体格納データを入力し再生処理を実行するコンピュータ・プログラムであり、
    データ再生プログラムとしてのホストアプリケーションに対応するアプリケーション情報を記録した証明書をドライブ装置に対して出力する証明書出力ステップと、
    前記ドライブ装置においてホストアプリケーションに対応して生成した暗号鍵を入力する暗合鍵入力ステップと、
    前記ドライブ装置からの入力データに対して前記暗号鍵を適用した復号処理を実行するデータ復号ステップと、
    を有することを特徴とするコンピュータ・プログラム。
JP2004037432A 2004-02-13 2004-02-13 ドライブ装置、再生処理装置、情報記録媒体、およびデータ処理方法、並びにコンピュータ・プログラム Expired - Fee Related JP4367166B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004037432A JP4367166B2 (ja) 2004-02-13 2004-02-13 ドライブ装置、再生処理装置、情報記録媒体、およびデータ処理方法、並びにコンピュータ・プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004037432A JP4367166B2 (ja) 2004-02-13 2004-02-13 ドライブ装置、再生処理装置、情報記録媒体、およびデータ処理方法、並びにコンピュータ・プログラム

Publications (3)

Publication Number Publication Date
JP2005228432A true JP2005228432A (ja) 2005-08-25
JP2005228432A5 JP2005228432A5 (ja) 2007-03-29
JP4367166B2 JP4367166B2 (ja) 2009-11-18

Family

ID=35002992

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004037432A Expired - Fee Related JP4367166B2 (ja) 2004-02-13 2004-02-13 ドライブ装置、再生処理装置、情報記録媒体、およびデータ処理方法、並びにコンピュータ・プログラム

Country Status (1)

Country Link
JP (1) JP4367166B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100886423B1 (ko) 2006-06-21 2009-03-02 가부시키가이샤 히다치 고쿠사이 덴키 영상 분배 시스템
JP2009509282A (ja) * 2005-09-21 2009-03-05 マクロビジョン ヨーロッパ リミテッド コンピュータ可読媒体上のデータへのアクセスをモニタリングし制御する機器および方法
US8225088B2 (en) 2008-01-16 2012-07-17 Sony Corporation Information processing apparatus, disc, information processing method, and program
WO2022234768A1 (ja) 2021-05-07 2022-11-10 パナソニックIpマネジメント株式会社 情報処理方法、機器、及び、プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009509282A (ja) * 2005-09-21 2009-03-05 マクロビジョン ヨーロッパ リミテッド コンピュータ可読媒体上のデータへのアクセスをモニタリングし制御する機器および方法
KR100886423B1 (ko) 2006-06-21 2009-03-02 가부시키가이샤 히다치 고쿠사이 덴키 영상 분배 시스템
US8225088B2 (en) 2008-01-16 2012-07-17 Sony Corporation Information processing apparatus, disc, information processing method, and program
WO2022234768A1 (ja) 2021-05-07 2022-11-10 パナソニックIpマネジメント株式会社 情報処理方法、機器、及び、プログラム

Also Published As

Publication number Publication date
JP4367166B2 (ja) 2009-11-18

Similar Documents

Publication Publication Date Title
JP4576853B2 (ja) 情報処理装置、および認証処理方法、並びにコンピュータ・プログラム
US20030051151A1 (en) Information processing apparatus, information processing method and program
US20080069354A1 (en) Information Processing Device, Information Processing Method, and Computer Program
US20080292103A1 (en) Method and apparatus for encrypting and transmitting contents, and method and apparatus for decrypting encrypted contents
KR20090016709A (ko) 컨텐츠 기록을 위한 장치, 방법 및 컴퓨터 판독가능한 기록 매체
JP2004530348A (ja) 暗号鍵交換に基づくバス暗号化を提供する方法およびシステム
JP5573489B2 (ja) 情報処理装置、および情報処理方法、並びにプログラム
JP2007026120A (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
KR20050118156A (ko) 기록장치 및 콘텐츠 보호 시스템
WO2005109747A1 (ja) 情報処理装置
JP2006020319A (ja) 暗号化モジュールを含むマルチメディア装置
KR100994772B1 (ko) 저장 매체의 데이터 복사 및 재생 방법
US7433488B2 (en) Information recording medium drive device, information processing apparatus, data replay control system, data replay control method, and computer program
JP2004522252A (ja) ユーザデータを再生する装置及び方法
JP2004311000A (ja) 記録装置及び著作権保護システム
US20060277415A1 (en) Content protection method and system
JP2005050176A (ja) 情報記録媒体製造管理システム、情報処理装置、および方法、並びにコンピュータ・プログラム
JP5644467B2 (ja) 情報処理装置、および情報処理方法、並びにプログラム
JP2008103007A (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
JP4367166B2 (ja) ドライブ装置、再生処理装置、情報記録媒体、およびデータ処理方法、並びにコンピュータ・プログラム
JP4752198B2 (ja) ドライブ装置、再生処理装置、情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
JP2002244552A (ja) 情報再生装置、情報再生方法、および情報記録媒体、並びにプログラム記憶媒体
JP4547880B2 (ja) 情報処理装置、情報記録媒体再生装置、コンテンツ利用制御システム、および方法、並びにコンピュータ・プログラム
JP2010097502A (ja) 暗号化・復号システム、暗号化装置、復号装置、および暗号化・復号方法
JP2007025913A (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070207

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080821

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080902

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090421

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090619

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090804

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090817

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120904

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130904

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees