(57)【要約】相互認証を行うドライブ１０２とホスト１０３とからレコーダが構成される。ドライブ１０２のＣ２Ｇ１４１がメディアＩＤとメディアキーから計算したメディアユニークキーが相互認証によって生成したセッションキーＫｓを用いて暗号化されてからホスト１０３に転送される。ドライブ１０２の乱数発生器１４３が発生したタイトルキーがホスト１０３に転送される。ドライブ１０２のＣ２Ｇ１４５がタイトルキーとＣＣＩ２３２とから計算したコンテンツキーがセッションキーＫｓを用いて暗号化されてからホスト１０３へ転送される。ホスト１０３が復号したコンテンツキーを用いてコンテンツを暗号化し、ドライブ１０２が暗号化コンテンツ、暗号化タイトルキーおよびＣＣＩ２３２をメディア１０１へ記録する。
2004064314.tif 000002
【特許請求の範囲】
【請求項１】
記録媒体固有の情報をあらかじめ備えた記録媒体から情報を読み出す再生装置と、上記再生装置が伝達部を介して相互認証接続される情報処理装置とを備える信号処理システムであって、
上記再生装置は、
中間鍵情報に基づいてコンテンツ情報暗号化鍵を生成する最終暗号化鍵生成部と、
上記中間鍵情報を上記伝達部を介して上記情報処理装置へ送る第１の送信部と、
上記コンテンツ情報暗号化鍵を上記伝達部を介して上記情報処理装置へ送る第２の送信部とを有し、
上記情報処理装置は、
上記コンテンツ情報暗号化鍵によりコンテンツ情報を暗号化するコンテンツ情報暗号化部と、
上記記録媒体固有の情報に基づいて生成される記録媒体固有の鍵情報を用いて上記中間鍵情報を暗号化する中間鍵情報暗号化部と、
暗号化された上記コンテンツ情報および暗号化された上記中間鍵情報とを上記記録媒体に記録する記録部とを有する信号処理システム。
【請求項２】
請求の範囲１において、
上記再生装置は、
乱数を生成する乱数生成部を有し、
上記中間鍵情報は、
上記乱数生成部により生成された乱数である信号処理システム。
【請求項３】
記録媒体固有の情報をあらかじめ備えた記録媒体から情報を読み出す再生装置と、上記再生装置が伝達部を介して相互認証接続される情報処理装置とが、上記記録媒体に情報を記録する記録方法であって、  上記再生装置は、
中間鍵情報に基づいてコンテンツ情報暗号化鍵を生成する最終暗号化鍵生成ステップと、
上記中間鍵情報を上記伝達部を介して上記情報処理装置へ送る第１の送信ステップと、
上記コンテンツ情報暗号化鍵を上記伝達部を介して上記情報処理装置へ送る第２の送信ステップとを有し、
上記情報処理装置は、
上記コンテンツ情報暗号化鍵によりコンテンツ情報を暗号化するコンテンツ情報暗号化ステップと、
上記記録媒体固有の情報に基づいて生成される記録媒体固有の鍵情報を用いて上記中間鍵情報を暗号化する中間鍵情報暗号化ステップと、
暗号化された上記コンテンツ情報および暗号化された上記中間鍵情報とを上記記録媒体に記録する記録ステップとを有する記録方法。
【請求項４】
請求の範囲３において、
上記再生装置は、
乱数を生成する乱数生成ステップを有し、
上記中間鍵情報は、
上記乱数生成ステップにより生成された乱数である記録方法。
【請求項５】
記録媒体固有の情報をあらかじめ備えた記録媒体から情報を読み出す再生装置と、上記再生装置が伝達部を介して相互認証接続される情報処理装置とが、上記記録媒体に情報を記録するプログラムであって、
上記再生装置に、
中間鍵情報に基づいてコンテンツ情報暗号化鍵を生成する最終暗号化鍵生成ステップと、
上記中間鍵情報を上記伝達部を介して上記情報処理装置へ送る第１の送信ステップと、
上記コンテンツ情報暗号化鍵を上記伝達部を介して上記情報処理装置へ送る第２の送信ステップとを行わせ、
上記情報処理装置に、
上記コンテンツ情報暗号化鍵によりコンテンツ情報を暗号化するコンテンツ情報暗号化ステップと、
上記記録媒体固有の情報に基づいて生成される記録媒体固有の鍵情報を用いて上記中間鍵情報を暗号化する中間鍵情報暗号化ステップと、
暗号化された上記コンテンツ情報および暗号化された上記中間鍵情報とを上記記録媒体に記録する記録ステップとを行わせるプログラム。
【請求項６】
請求の範囲５において、
上記再生装置に、
乱数を生成する乱数生成ステップを行わせ、
上記中間鍵情報は、
上記乱数生成ステップにより生成された乱数であるプログラム。
【請求項７】
記録媒体固有の情報をあらかじめ備えた記録媒体から情報を読み出す再生装置と、上記再生装置が伝達部を介して相互認証接続される情報処理装置とが、上記記録媒体に情報を記録するプログラムを格納した記録媒体であって、
上記再生装置に、
中間鍵情報に基づいてコンテンツ情報暗号化鍵を生成する最終暗号化鍵生成ステップと、
上記中間鍵情報を上記伝達部を介して上記情報処理装置へ送る第１の送信ステップと、
上記コンテンツ情報暗号化鍵を上記伝達部を介して上記情報処理装置へ送る第２の送信ステップを行わせ、
上記情報処理装置に、
上記コンテンツ情報暗号化鍵によりコンテンツ情報を暗号化するコンテンツ情報暗号化ステップと、
上記記録媒体固有の情報に基づいて生成される記録媒体固有の鍵情報を用いて上記中間鍵情報を暗号化する中間鍵情報暗号化ステップと、
暗号化された上記コンテンツ情報および暗号化された上記中間鍵情報とを上記記録媒体に記録する記録ステップとを行わせるプログラムを格納した記録媒体。
【請求項８】
請求の範囲７において、
上記再生装置に、
乱数を生成する乱数生成ステップを行わせ、
上記中間鍵情報は、
上記乱数生成ステップにより生成された乱数であるプログラムを格納した記録媒体。
【請求項９】
記録媒体固有の情報をあらかじめ備えた記録媒体から情報を読み出し、伝達部を介して情報処理装置と接続される再生装置であって、
中間鍵情報に基づいてコンテンツ情報暗号化鍵を生成する最終暗号化鍵生成部と、
上記中間鍵情報を上記伝達部を介して上記情報処理装置へ送る第１の送信部と、
上記コンテンツ情報暗号化鍵を上記伝達部を介して上記情報処理装置へ送る第２の送信部とを有し、
上記コンテンツ情報暗号化鍵によりコンテンツ情報を暗号化するコンテンツ情報暗号化部と、上記記録媒体固有の情報に基づいて生成される記録媒体固有の鍵情報を用いて上記中間鍵情報を暗号化する中間鍵情報暗号化部と、暗号化された上記コンテンツ情報および暗号化された上記中間鍵情報とを上記記録媒体に記録する記録部とを有する上記情報処理装置と相互認証接続される再生装置。
【請求項１０】
請求の範囲９において、
乱数を生成する乱数生成部を有し、
上記中間鍵情報は、
上記乱数生成部により生成された乱数である再生装置。
【請求項１１】
記録媒体固有の情報をあらかじめ備えた記録媒体から情報を読み出す再生装置と伝達部を介して接続される情報処理装置であって、
中間鍵情報に基づいてコンテンツ情報暗号化鍵を生成する最終暗号化鍵生成部と、上記中間鍵情報を上記伝達部を介して上記情報処理装置へ送る第１の送信部と、上記コンテンツ情報暗号化鍵を上記伝達部を介して上記情報処理装置へ送る第２の送信部とを有する上記再生装置と伝達部を介して相互認証接続され、
上記コンテンツ情報暗号化鍵によりコンテンツ情報を暗号化するコンテンツ情報暗号化部と、
上記記録媒体固有の情報に基づいて生成される記録媒体固有の鍵情報を用いて上記中間鍵情報を暗号化する中間鍵情報暗号化部と、
暗号化された上記コンテンツ情報および暗号化された上記中間鍵情報を上記記録媒体に記録する記録部とを有する情報処理装置。
【請求項１２】
請求の範囲１１において、
上記再生装置は、
乱数を生成する乱数生成部を有し、
上記中間鍵情報は、
上記乱数生成部により生成された乱数である情報処理装置。
【請求項１３】
不正な電子機器を無効化するための第１の情報と、コンテンツ毎に異なる第２の情報と、暗号化単位毎に定義可能な第３の情報と、スタンパ毎に異なる識別データとが記録された記録媒体へ暗号化されたデータを記録する記録部および上記記録媒体に記録されている暗号化されたデータを再生する再生部の少なくとも一方と、
正当な電子機器またはアプリケーションソフトウェアにのみ与えられる当該電子機器またはアプリケーションソフトウェア固有の第４の情報が格納される格納部と、
上記第１の情報と上記第４の情報とから当該格納された第４の情報が正当な電子機器またはアプリケーションソフトウェア固有の情報であるかを判定するリボーク処理部と、
上記リボーク処理部で上記第４の情報が正当な電子機器またはアプリケーションソフトウェア固有の情報であると判定された場合に、上記第１の情報、上記第４の情報、上記第２の情報および上記識別データから、個々の記録媒体毎に固有の中間鍵情報を求める演算部と、
上記中間鍵情報を伝達部を介して情報処理装置の最終暗号化鍵生成部へ送る送信部とを有する再生装置。
【請求項１４】
請求の範囲１３において、
上記中間鍵情報に基づいて生成された鍵を用いて、データの暗号化および暗号化されたデータの復号の少なくとも一方を行うデータ処理装置と相互認証を行う認証部と、
上記認証が成立した場合に形成されるセッションキーによって上記中間鍵情報を暗号化して上記データ処理装置に送出する中間鍵情報暗号化部とを有する記録再生装置。
【請求項１５】
正当な電子機器またはアプリケーションソフトウェアにのみ与えられる当該電子機器またはアプリケーションソフトウェア固有の第４の情報を有するとともに、不正な電子機器を無効化するための第１の情報と、コンテンツ毎に異なる第２の情報と、暗号化単位毎に定義可能な第３の情報と、スタンパ毎に異なる識別データとが記録された記録媒体への暗号化されたデータの記録および上記記録媒体に記録されている暗号化されたデータの再生の少なくとも一方を行う記録再生装置との認証を行う認証部と、
上記記録再生装置から、上記認証が成立した場合に形成されるセッションキーによって暗号化された、上記第１の情報、上記第４の情報、上記第２の情報および上記識別データから生成された個々の記録媒体毎に固有の中間鍵情報を受け取り、当該中間鍵情報を復号する鍵情報復号部と、
上記記録再生装置から受け取った上記第３の情報と、復号された上記中間鍵情報から最終暗号化鍵を生成する最終暗号化鍵生成部と、
上記最終暗号化鍵による暗号化と上記最終暗号化鍵による復号との少なくとも一方を行う暗号化復号部とを有するデータ処理装置。
【発明の詳細な説明】
【技術分野】  この発明は、例えばパーソナルコンピュータと接続されたドライブによってディスクメディアに暗号化コンテンツを記録し、また、ディスクメディアから暗号化コンテンツを再生する場合に適用される信号処理システム、記録方法、プログラム、記録媒体、再生装置および情報処理装置に関する。
【背景技術】  近年開発されたＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）等の記録媒体では、１枚の媒体に例えば映画１本分の大量のデータをディジタル情報として記録することが可能である。このように映像情報等をディジタル情報として記録することが可能となってくると不正コピーを防止して著作権の保護を図ることがますます重要となっている。
ＤＶＤ−Ｖｉｄｅｏでは、コピープロテクション技術としてＣＳＳ（Ｃｏｎｔｅｎｔ  Ｓｃｒａｍｂｌｉｎｇ  Ｓｙｓｔｅｍ）が採用されている。ＣＳＳは、ＤＶＤ−ＲＯＭメディアに対する適用のみが認可されており、ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等の記録型ＤＶＤでのＣＳＳの利用がＣＳＳ契約によって禁止されている。したがって、ＣＳＳ方式で著作権保護されたＤＶＤ−Ｖｉｄｅｏの内容を記録型ＤＶＤへのまるごとコピー（ビットバイビットコピー）することは、ＣＳＳ契約上では、認められた行為ではない。
しかしながら、ＣＳＳの暗号方式が破られる事態が発生した。ＣＳＳの暗号化を解除してＤＶＤ−Ｖｉｄｅｏの内容を簡単にハードディスクにコピーすることを可能とする「ＤｅＣＳＳ」と呼ばれるソフトウェアがインターネット上で配布された。「ＤｅＣＳＳ」が出現した背景には、本来耐タンパー化が義務付けられているはずのＣＳＳ復号用の鍵データを耐タンパー化しないまま設計された再生ソフトウェアがリバースエンジニアされて鍵データが解読されたことによって、連鎖的にＣＳＳアルゴリズム全体が解読された経緯がある。
ＣＳＳの後に、ＤＶＤ−Ａｕｄｉｏ等のＤＶＤ−ＲＯＭの著作権保護技術であるＣＰＰＭ（Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ  ｆｏｒ  Ｐｒｅ−Ｒｅｃｏｒｄｅｄ  Ｍｅｄｉａ）、並びに記録型ＤＶＤ、メモリカードに関する著作権保護技術ＣＰＲＭ（Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ  ｆｏｒ  Ｒｅｃｏｒｄａｂｌｅ  Ｍｅｄｉａ）が提案されている。これらの方式は、コンテンツの暗号化や管理情報の格納等に問題が生じたときに、システムを更新でき、データをまるごとコピーしても再生を制限できる特徴を有している。ＤＶＤに関する著作権保護の方法に関しては、下記の非特許文献１に説明され、ＣＰＲＭは、ライセンス管理者である米４Ｃ  Ｅｎｔｉｔｙ，ＬＬＣが配布する下記の資料に説明されている。
山田，「ＤＶＤを起点に著作権保護空間を広げる」，日経エレクトロニクス  ２００１．８．１３，ｐ．１４３−１５３
”Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ  ｆｏｒ  Ｒｅｃｏｒｄａｂｌｅ  Ｍｅｄｉａ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  ＤＶＤ  Ｂｏｏｋ”、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．４Ｃｅｎｔｉｔｙ．ｃｏｍ／＞
パーソナルコンピュータ（以下、適宜ＰＣと略す）環境下では、ＰＣとドライブとが標準的インターフェースで接続されるために、標準的インターフェースの部分で秘密保持が必要なデータが知られたり、データが改ざんされるおそれがある。アプリケーションソフトウェアがリバースエンジニアリングされ、秘密情報が盗まれたり、改ざんされる危険がある。このような危険性は、記録再生装置が一体に構成された電子機器の場合では、生じることが少ない。
著作権保護技術をＰＣ上で実行されるアプリケーションプログラムへ実装する際には、その著作権保護技術の解析を防ぐため耐タンパー性を持たせるのが一般的である。しかしながら、耐タンパー性の強度を示す指標がない。その結果、どの程度のリバースエンジニアリングへの対応を行うかは、インプレメンターの個々の判断や能力に委ねられているのが現状である。ＣＳＳの場合は、結果としてその著作権保護技術が破られてしまった。ＣＳＳの後に提案されたＣＰＰＭおよび記録型ＤＶＤに関する著作権保護技術ＣＰＲＭにおいても、既に破られているＣＳＳに新たな機能を加えたものであり、また、著作権保護技術に関わるアルゴリズムは、大部分がＰＣでの実装に依存するものであり、コンテンツプロテクションの機能が充分に強いものと言えない問題があった。すなわち、アプリケーションソフトウェアなどのリバースエンジニアリングによって、著作権保護技術に関わる秘密情報の解析により暗号方式が破られ、ディスクからのデータとしてＰＣがそのまま読み出した暗号化コンテンツが「ＤｅＣＳＳ」のような解読ソフトウェアにより復号され、平文のままのクリア・コンテンツとしてコピー制限の働かない状態で複製が繰り返されるような事態を招くことで、著作権保護が機能しなくなるという危険性があった。
この発明の目的は、ＰＣ環境下でも著作権保護技術の安全性を確保することができる相互認証方法、プログラム、記録媒体、信号処理システム、再生装置および情報処理装置を提供することにある。
【発明の開示】
上述した課題を解決するために、この発明の第１の態様は、記録媒体固有の情報をあらかじめ備えた記録媒体から情報を読み出す再生装置と、再生装置が伝達部を介して相互認証接続される情報処理装置とを備える信号処理システムであって、
再生装置は、
中間鍵情報に基づいてコンテンツ情報暗号化鍵を生成する最終暗号化鍵生成部と、
中間鍵情報を伝達部を介して情報処理装置へ送る第１の送信部と、
コンテンツ情報暗号化鍵を伝達部を介して情報処理装置へ送る第２の送信部とを有し、
情報処理装置は、
コンテンツ情報暗号化鍵によりコンテンツ情報を暗号化するコンテンツ情報暗号化部と、
記録媒体固有の情報に基づいて生成される記録媒体固有の鍵情報を用いて中間鍵情報を暗号化する中間鍵情報暗号化部と、
暗号化されたコンテンツ情報および暗号化された中間鍵情報とを記録媒体に記録する記録部とを有する信号処理システムである。
この発明の第２の態様は、記録媒体固有の情報をあらかじめ備えた記録媒体から情報を読み出す再生装置と、再生装置が伝達部を介して相互認証接続される情報処理装置とが、記録媒体に情報を記録する記録方法であって、
再生装置は、
中間鍵情報に基づいてコンテンツ情報暗号化鍵を生成する最終暗号化鍵生成ステップと、
中間鍵情報を伝達部を介して情報処理装置へ送る第１の送信ステップと、
コンテンツ情報暗号化鍵を伝達部を介して情報処理装置へ送る第２の送信ステップとを有し、
情報処理装置は、
コンテンツ情報暗号化鍵によりコンテンツ情報を暗号化するコンテンツ情報暗号化ステップと、
記録媒体固有の情報に基づいて生成される記録媒体固有の鍵情報を用いて中間鍵情報を暗号化する中間鍵情報暗号化ステップと、
暗号化されたコンテンツ情報および暗号化された中間鍵情報とを記録媒体に記録する記録ステップとを有する記録方法である。
この発明の第３の態様は、記録媒体固有の情報をあらかじめ備えた記録媒体から情報を読み出す再生装置と、再生装置が伝達部を介して相互認証接続される情報処理装置とが、記録媒体に情報を記録するプログラムであって、
再生装置に、
中間鍵情報に基づいてコンテンツ情報暗号化鍵を生成する最終暗号化鍵生成ステップと、
中間鍵情報を伝達部を介して情報処理装置へ送る第１の送信ステップと、
コンテンツ情報暗号化鍵を伝達部を介して情報処理装置へ送る第２の送信ステップとを行わせ、
情報処理装置に、
コンテンツ情報暗号化鍵によりコンテンツ情報を暗号化するコンテンツ情報暗号化ステップと、
記録媒体固有の情報に基づいて生成される記録媒体固有の鍵情報を用いて中間鍵情報を暗号化する中間鍵情報暗号化ステップと、
暗号化されたコンテンツ情報および暗号化された中間鍵情報とを記録媒体に記録する記録ステップとを行わせるプログラムである。
この発明の第４の態様は、記録媒体固有の情報をあらかじめ備えた記録媒体から情報を読み出す再生装置と、再生装置が伝達部を介して相互認証接続される情報処理装置とが、記録媒体に情報を記録するプログラムを格納した記録媒体であって、
再生装置に、
中間鍵情報に基づいてコンテンツ情報暗号化鍵を生成する最終暗号化鍵生成ステップと、
中間鍵情報を伝達部を介して情報処理装置へ送る第１の送信ステップと、
コンテンツ情報暗号化鍵を伝達部を介して情報処理装置へ送る第２の送信ステップを行わせ、
情報処理装置に、
コンテンツ情報暗号化鍵によりコンテンツ情報を暗号化するコンテンツ情報暗号化ステップと、
記録媒体固有の情報に基づいて生成される記録媒体固有の鍵情報を用いて中間鍵情報を暗号化する中間鍵情報暗号化ステップと、
暗号化されたコンテンツ情報および暗号化された中間鍵情報とを記録媒体に記録する記録ステップとを行わせるプログラムを格納した記録媒体である。
この発明の第５の態様は、記録媒体固有の情報をあらかじめ備えた記録媒体から情報を読み出し、伝達部を介して情報処理装置と接続される再生装置であって、  中間鍵情報に基づいてコンテンツ情報暗号化鍵を生成する最終暗号化鍵生成部と、
中間鍵情報を伝達部を介して情報処理装置へ送る第１の送信部と、
コンテンツ情報暗号化鍵を伝達部を介して情報処理装置へ送る第２の送信部とを有し、
コンテンツ情報暗号化鍵によりコンテンツ情報を暗号化するコンテンツ情報暗号化部と、記録媒体固有の情報に基づいて生成される記録媒体固有の鍵情報を用いて中間鍵情報を暗号化する中間鍵情報暗号化部と、暗号化されたコンテンツ情報および暗号化された中間鍵情報とを記録媒体に記録する記録部とを有する情報処理装置と相互認証接続される再生装置である。
この発明の第６の態様は、記録媒体固有の情報をあらかじめ備えた記録媒体から情報を読み出す再生装置と伝達部を介して接続される情報処理装置であって、
中間鍵情報に基づいてコンテンツ情報暗号化鍵を生成する最終暗号化鍵生成部と、中間鍵情報を伝達部を介して情報処理装置へ送る第１の送信部と、コンテンツ情報暗号化鍵を伝達部を介して情報処理装置へ送る第２の送信部とを有する再生装置と伝達部を介して相互認証接続され、
コンテンツ情報暗号化鍵によりコンテンツ情報を暗号化するコンテンツ情報暗号化部と、
記録媒体固有の情報に基づいて生成される記録媒体固有の鍵情報を用いて中間鍵情報を暗号化する中間鍵情報暗号化部と、
暗号化されたコンテンツ情報および暗号化された中間鍵情報を記録媒体に記録する記録部とを有する情報処理装置である。
この発明の第７の態様は、不正な電子機器を無効化するための第１の情報と、コンテンツ毎に異なる第２の情報と、暗号化単位毎に定義可能な第３の情報と、スタンパ毎に異なる識別データとが記録された記録媒体へ暗号化されたデータを記録する記録部および記録媒体に記録されている暗号化されたデータを再生する再生部の少なくとも一方と、
正当な電子機器またはアプリケーションソフトウェアにのみ与えられる当該電子機器またはアプリケーションソフトウェア固有の第４の情報が格納される格納部と、
第１の情報と第４の情報とから当該格納された第４の情報が正当な電子機器またはアプリケーションソフトウェア固有の情報であるかを判定するリボーク処理部と、
リボーク処理部で第４の情報が正当な電子機器またはアプリケーションソフトウェア固有の情報であると判定された場合に、第１の情報、第４の情報、第２の情報および識別データから、個々の記録媒体毎に固有の中間鍵情報を求める演算部と、
中間鍵情報を伝達部を介して情報処理装置の最終暗号化鍵生成部へ送る送信部とを有する再生装置である。
この発明の第８の態様は、正当な電子機器またはアプリケーションソフトウェアにのみ与えられる当該電子機器またはアプリケーションソフトウェア固有の第４の情報を有するとともに、不正な電子機器を無効化するための第１の情報と、コンテンツ毎に異なる第２の情報と、暗号化単位毎に定義可能な第３の情報と、スタンパ毎に異なる識別データとが記録された記録媒体への暗号化されたデータの記録および記録媒体に記録されている暗号化されたデータの再生の少なくとも一方を行う記録再生装置との認証を行う認証部と、
記録再生装置から、認証が成立した場合に形成されるセッションキーによって暗号化された、第１の情報、第４の情報、第２の情報および識別データから生成された個々の記録媒体毎に固有の中間鍵情報を受け取り、当該中間鍵情報を復号する鍵情報復号部と、
記録再生装置から受け取った第３の情報と、復号された中間鍵情報から最終暗号化鍵を生成する最終暗号化鍵生成部と、
最終暗号化鍵による暗号化と最終暗号化鍵による復号との少なくとも一方を行う暗号化復号部とを有するデータ処理装置である。
この発明では、再生装置側でコンテンツキーを生成し、情報処理装置側でコンテンツキーによってコンテンツを暗号化している。このように著作権保護のための鍵情報の生成を再生装置で行うので、ハードウェア構成でコンテンツキーを生成することが可能となり、耐タンパー性を高めることができる。また、再生装置において、乱数を生成し、乱数を中間鍵とするので、再生装置において、真正乱数またはそれに近い乱数をハードウェア例えばＬＳＩによって発生することができ、生成した乱数を固定値への置き換えを困難とすることができる。このように、この発明では、情報処理装置にインストールされるアプリケーションソフトウェアは、著作権保護技術に関する秘密情報の全てを持つ必要がなくなる。それによって、ソフトウェアのリバースエンジニアリングによる解析に対する耐性を持つことができ、著作権保護技術の安全性を確保することができる。
この発明では、電子機器固有の情報としてのデバイスキーを記録再生装置が持つことによって、記録再生装置自身をリボークすることが可能となる。この発明では、情報処理装置におけるコンテンツキーを計算するのに必要とされる乱数情報が記録再生装置内の例えばＬＳＩによって生成できるので、ＰＣ内でソフトウェアによって乱数を生成するのと比較して、真正または真正乱数に近い乱数を生成することができる。したがって、乱数が固定値に置き換えられる等のおそれを少なくできる。
【図面の簡単な説明】  第１図は、先に提案されているレコーダ、プレーヤおよびＤＶＤメディアからなるシステムを説明するためのブロック図である。
第２図は、ＰＣベースのＤＶＤメディア記録再生システムを説明するためのブロック図である。
第３図は、第２図のシステムにおけるＤＶＤドライブ４およびホスト５の処理の手順を説明するための略線図である。
第４図は、第２図のシステムにおける認証動作を説明するためのフローチャートである。
第５図は、この発明の一実施形態による相互認証のための構成を示すブロック図である。
第６図は、この発明の一実施形態におけるドライブの認証動作の処理の手順を説明するためのフローチャートである。
第７図は、この発明の一実施形態におけるホストの認証動作の処理の手順を説明するためのフローチャートである。
第８図は、この発明の一実施形態によるドライブとホストを組み合わせたレコーダの構成の一例を示すブロック図である。
第９図は、レコーダの一例の通信の手順を説明するための略線図である。
第１０図は、この発明の一実施形態によるドライブとホストを組み合わせたプレーヤの構成の一例を示すブロック図である。
第１１図は、プレーヤの一例の通信の手順を説明するための略線図である。
第１２図は、この発明の他の実施形態によるドライブとホストを組み合わせたレコーダの構成の一例を示すブロック図である。
第１３図は、この発明の他の実施形態によるドライブとホストを組み合わせたプレイヤの構成の一例を示すブロック図である。
【発明を実施するための最良の形態】  この発明の一実施形態の説明に先立って、特許請求の範囲において使用される用語と実施の形態中で使用される用語との対応関係について以下に説明する。
記録媒体：メディア例えばディスク、再生装置：ドライブ、情報処理装置：ホスト、伝達手段：ドライブ−ホストインターフェース、信号処理システム：メディアを再生するドライブとホストとがドライブ−ホストインターフェースを介して接続されるシステムである。第１の送信手段：ドライブ側からセッションキーを共通鍵とした共通鍵暗号方式で情報をホスト側に送る手段、第２の送信手段：逆にホスト側からセッションキーを共通鍵として情報をドライブ側に送る手段のことである。
コンテンツ情報：メディアに記録されている情報または記録すべき情報をコンテンツ情報としている。記録媒体固有の情報：メディアＩＤである。乱数を生成する乱数生成手段：乱数発生器（ＲＮＧ：Ｒａｎｄｏｍ  Ｎｕｍｂｅｒ  Ｇｅｎｅｒａｔｏｒ）である。記録媒体固有の鍵情報：メディアユニークキー、中間鍵情報：タイトルキーである。コンテンツ情報暗号化鍵：コンテンツキー（記録時に使われるコンテンツキーをコンテンツ情報暗号化鍵とし、再生時に使われるコンテンツキーをコンテンツ情報復号鍵としている。）
この発明の理解の容易のために、最初に第１図を参照して著作権保護技術例えばＤＶＤ用ＣＰＲＭのアーキテクチャについて説明する。第１図において、参照符号１が例えばＣＰＲＭ規格に準拠したＤＶＤ−Ｒ／ＲＷ、ＤＶＤ−ＲＡＭ等の記録型ＤＶＤメディアを示す。参照符号２が例えばＣＰＲＭ規格に準拠したレコーダを示す。参照符号３が例えばＣＰＲＭ規格に準拠したプレーヤを示す。レコーダ２およびプレーヤ３は、機器またはアプリケーションソフトウェアである。
未記録ディスクの状態において、ＤＶＤメディア１の最内周側のリードインエリアのＢＣＡ（Ｂｕｒｓｔ  Ｃｕｔｔｉｎｇ  Ａｒｅａ）またはＮＢＣＡ（Ｎａｒｒｏｗ  Ｂｕｒｓｔ  Ｃｕｔｔｉｎｇ  Ａｒｅａ）と称されるエリアには、メディアＩＤ１１が記録されている。リードインエリアのエンボスまたはプリ記録データゾーンには、メディアキーブロック（以下、ＭＫＢと適宜略す）１２が予め記録されている。メディアＩＤ１１は、個々のメディア単位例えばディスク１枚毎に異なる番号であり、メディアの製造者コードとシリアル番号から構成される。メディアＩＤ１１は、メディアキーを個々のメディアで異なるメディアユニークキーへ変換する際に必要となる。メディアキーブロックＭＫＢは、メディアキーの導出、並びに機器のリボケーション（無効化）を実現するための鍵束である。これらのメディアＩＤおよびメディアキーブロックは、記録媒体固有の第１の情報である。
ディスク１の書き換えまたは追記可能なデータ領域には、コンテンツキーで暗号化された暗号化コンテンツ１３が記録される。暗号化方式としては、Ｃ２（Ｃｒｙｐｔｏｍｅｒｉａ  Ｃｉｐｈｅｒｉｎｇ）が使用される。
ＤＶＤメディア１には、暗号化タイトルキー１４およびＣＣＩ（Ｃｏｐｙ  Ｃｏｎｔｒｏｌ  Ｉｎｆｏｒｍａｔｉｏｎ）１５が記録される。暗号化タイトルキー１４は、暗号化されたタイトルキー情報であり、タイトルキー情報は、タイトル毎に付加される鍵情報である。ＣＣＩは、コピーノーモア、コピーワンス、コピーフリー等のコピー制御情報である。
レコーダ２は、デバイスキー２１、プロセスＭＫＢ２２、Ｃ２＿Ｇ２３、乱数発生器２４、Ｃ２＿Ｅ２５、Ｃ２＿Ｇ２６およびＣ２＿ＥＣＢＣ２７の構成要素を有する。プレーヤ３は、デバイスキー３１、プロセスＭＫＢ３２、Ｃ２＿Ｇ３３、Ｃ２＿Ｄ３５、Ｃ２＿Ｇ３６およびＣ２＿ＤＣＢＣ３７の構成要素を有する。Ｃ２＿Ｇ２３および３３は、それぞれメディアＩＤとメディアキーとからメディアユニークキーを演算するブロックである。Ｃ２＿Ｇ２６および３６は、それぞれＣＣＩとタイトルキーとからコンテンツキーを演算するブロックである。
デバイスキー２１、３１は、個々の装置メーカ、またはアプリケーションソフトウェアベンダー毎に発行された識別番号である。デバイスキーは、ライセンス管理者によって正当な電子機器またはアプリケーションソフトウェアにのみ与えられる当該電子機器またはアプリケーションソフトウェア固有の情報である。ＤＶＤメディア１から再生されたＭＫＢ１２とデバイスキー２１とがプロセスＭＫＢ２２において演算されることによって、リボケーションされたかどうかの判別ができる。レコーダ２におけるのと同様に、プレーヤ３においても、ＭＫＢ１２とデバイスキー３１とがプロセスＭＫＢ３２において演算され、リボケーションされたかどうかの判別がなされる。
プロセスＭＫＢ２２、３２のそれぞれにおいて、ＭＫＢ１２とデバイスキー２１、３１からメディアキーが算出される。ＭＫＢ１２の中にレコーダ２またはプレーヤ３のデバイスキーが入っておらず、演算された結果が予め決められたある値例えばゼロの値と一致した場合、そのデバイスキーを持つレコーダ２またはプレーヤ３が正当なものでないと判断される。すなわち、そのようなレコーダ２またはプレーヤ３がリボケーションされる。
Ｃ２＿Ｇ２３、３３は、それぞれ、メディアキーとメディアＩＤとを演算し、メディアユニークキーを導出する処理である。
乱数発生器（ＲＮＧ：Ｒａｎｄｏｍ  Ｎｕｍｂｅｒ  Ｇｅｎｅｒａｔｏｒ）２４は、タイトルキーの生成に利用される。乱数発生器２４からのタイトルキーがＣ２＿Ｅ２５に入力され、タイトルキーがメディアユニークキーで暗号化される。暗号化タイトルキー１４がＤＶＤメディア１に記録される。
プレーヤ３では、ＤＶＤメディア１から再生された暗号化タイトルキー１４とメディアユニークキーとがＣ２＿Ｄ３５に供給され、暗号化タイトルキーがメディアユニークキーで復号され、タイトルキーが得られる。
レコーダ２においては、ＣＣＩとタイトルキーとがＣ２＿Ｇ２６に供給され、コンテンツキーが導出される。コンテンツキーがＣ２＿ＥＣＢＣ２７に供給され、コンテンツキーを鍵としてコンテンツが暗号化される。暗号化コンテンツ１３がＤＶＤメディア１に記録される。
プレーヤ３においては、ＣＣＩとタイトルキーとがＣ２＿Ｇ３６に供給され、コンテンツキーが導出される。コンテンツキーがＣ２＿ＥＣＢＣ３７に供給され、ＤＶＤメディア１から再生された暗号化コンテンツ１３がコンテンツキーを鍵として復号される。
第１図の構成において、レコーダ２による記録の手順について説明する。レコーダ２は、ＤＶＤメディア１からＭＫＢ１２を読み出し、プロセスＭＫＢ２２によってデバイスキー２１とＭＫＢ１２とを演算し、メディアキーを計算する。演算結果が予め定められた値を示すならば、デバイスキー２１（レコーダ２の機器またはアプリケーション）がＭＫＢによってリボークされたと判定される。レコーダ２は、以後の処理を中断し、ＤＶＤメディア１への記録を禁止する。若し、メディアキーの値が予め定められた値以外であれば、処理を継続する。
レコーダ２は、ＤＶＤメディア１からメディアＩＤ１１を読み、メディアキーと共にメディアＩＤをＣ２＿Ｇ２３に入力しメディア毎に異なるメディアユニークキーが演算される。乱数発生器２４で発生させたタイトルキーがＣ２＿Ｅ２５で暗号化され、暗号化タイトルキー１４としてＤＶＤメディア１に記録される。タイトルキーとコンテンツのＣＣＩ情報がＣ２＿Ｇ２６で演算され、コンテンツキーが導出される。コンテンツキーでコンテンツをＣ２＿ＥＣＢＣ２７で暗号化し、ＤＶＤメディア１上に暗号化コンテンツ１３としてＣＣＩ１５と共に記録する。
プレーヤ３による再生の手順について説明する。最初にＭＫＢ１２をＤＶＤメディア１から読み出す。デバイスキー３１とＭＫＢ１２を演算し、リボケーションの確認がなされる。デバイスキー３１、すなわち、プレーヤ３の機器またはアプリケーションがリボークされない場合には、メディアＩＤを使用してメディアユニークキーが演算され、読み出された暗号化タイトルキー１４とメディアユニークキーからタイトルキーが演算される。タイトルキーとＣＣＩ１５とがＣ２＿Ｇ３６に入力され、コンテンツキーが導出される。コンテンツキーがＣ２＿ＤＣＢＣ３７に入力され、コンテンツキーを鍵として、ＤＶＤメディア１から再生された暗号化コンテンツ１３に対してＣ２＿ＤＣＢＣ３７の演算が施される。その結果、暗号化コンテンツ１３が復号される。
このように、コンテンツの復号に必要なコンテンツキーを得るためには、ＤＶＤメディアの１枚毎に異なるメディアＩＤが必要となるので、たとえメディア上の暗号化コンテンツが忠実に他のメディアにコピーされても、他のメディアのメディアＩＤがオリジナルのメディアＩＤと異なるために、コピーされたコンテンツを復号することができず、コンテンツの著作権を保護することができる。
上述した第１図の構成は、記録再生機器として構成されたものである。この発明は、ＤＶＤメディア１に対するコンテンツ保護処理をＰＣ環境下で扱う場合に適用される。第２図を参照して現行の方式によるＰＣとドライブの役割分担を示す。第２図において、参照符号４が上述したＣＰＲＭ規格に準拠したＤＶＤメディア１を記録および再生する記録再生装置としてのＤＶＤドライブを示す。
参照符号５がデータ処理装置としてのホスト例えばＰＣを示す。ホスト５は、ＤＶＤメディア１に記録可能で、ＤＶＤメディア１から再生可能なコンテンツを扱うことができ、且つＤＶＤドライブ４と接続されてデータ交換が可能な装置またはアプリケーションソフトウェアである。例えばＰＣに対してアプリケーションソフトウェアがインストールされることによってホスト５が構成される。
ＤＶＤドライブ４とホスト５との間がインターフェース４ａで接続されている。インターフェース４ａは、ＡＴＡＰＩ（ＡＴ  Ａｔｔａｃｈｍｅｎｔ  ｗｉｔｈ  Ｐａｃｋｅｔ  Ｉｎｔｅｒｆａｃｅ），ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ），ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ），ＩＥＥＥ（Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ）１３９４等である。
ＤＶＤメディア１には、メディアＩＤ１１、メディアキーブロック１２およびＡＣＣ（Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｃｏｎｔｒｏｌ  Ｃｏｄｅ）が予め記録されている。ＡＣＣは、ＤＶＤドライブ４とホスト５との間の認証がＤＶＤメディア１によって異なるようにするために予めＤＶＤメディア１に記録されたデータである。
ＤＶＤドライブ４は、ＡＣＣ１６をＤＶＤメディア１から読み出す。ＤＶＤメディア１から読み出されたＡＣＣ１６がＤＶＤドライブ４のＡＫＥ（Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ａｎｄ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）４１に入力されると共に、ホスト５へ転送される。ホスト５は、受け取ったＡＣＣをＡＫＥ５１に入力する。ＡＫＥ４１および５１は、乱数データを交換し、この交換した乱数とＡＣＣの値とから認証動作の度に異なる値となる共通のセッションキー（第２図の構成においてはバスキーと称する）を生成する。
バスキーがＭＡＣ（Ｍｅｓｓａｇｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｃｏｄｅ）演算ブロック４２および５２にそれぞれ供給される。ＭＡＣ演算ブロック４２および５２は、ＡＫＥ４１および５１でそれぞれ得られたバスキーをパラメータとして、メディアＩＤおよびメディアキーブロック１２のＭＡＣを計算するプロセスである。ＭＫＢとメディアＩＤの完全性（ｉｎｔｅｇｒｉｔｙ）をホスト５が確認するために利用される。
ＭＡＣ４２および５２によってそれぞれ計算されたＭＡＣがホスト５の比較５３において比較され、両者の値が一致するかどうかが判定される。これらのＭＡＣの値が一致すれば、ＭＫＢとメディアＩＤの完全性が確認されたことになる。比較出力でスイッチＳＷ１が制御される。
スイッチＳＷ１は、ＤＶＤドライブ４のＤＶＤメディア１の記録または再生経路と、ホスト５の暗号化／（または）復号モジュール５４との間の信号路をＯＮ／ＯＦＦするものとして示されている。スイッチＳＷ１は、信号路のＯＮ／ＯＦＦを行うものとして示されているが、より実際には、ＯＮの場合にホスト５の処理が継続し、ＯＦＦの場合にホスト５の処理が停止することを表している。暗号化／復号モジュール５４は、メディアユニークキーと暗号化タイトルキーとＣＣＩとからコンテンツキーを算出し、コンテンツキーを鍵としてコンテンツを暗号化コンテンツ１３へ暗号化し、またはコンテンツキーを鍵として暗号化コンテンツ１３を復号する演算ブロックである。
メディアユニークキー演算ブロック５５は、ＭＫＢ１２とメディアＩＤとデバイスキー５６とからメディアユニークキーを演算する演算ブロックである。第１図に示すレコーダまたはプレーヤと同様に、デバイスキーとＭＫＢ１２とからメディアキーが演算される。メディアキーとメディアＩＤ１１とからメディアユニークキーが演算される。メディアキーが所定の値となった場合には、その電子機器またはアプリケーションソフトウェアが正当なものではないと判断され、リボークされる。したがって、メディアユニークキー演算ブロック５５は、リボケーションを行うリボーク処理部としての機能も有する。
記録時に、比較５３によって完全性が確認された場合には、スイッチＳＷ１がＯＮされる。暗号化／復号モジュール５４からスイッチＳＷ１を通じてドライブ４に対して、暗号化コンテンツ１３、暗号化タイトルキー１４およびＣＣＩ１５が供給され、ＤＶＤメディア１に対してそれぞれ記録される。再生時に、比較５３によって完全性が確認された場合には、スイッチＳＷ１がＯＮされる。ＤＶＤメディア１からそれぞれ再生された暗号化コンテンツ１３、暗号化タイトルキー１４およびＣＣＩ１５がスイッチＳＷ１を通じてホスト５の暗号化／復号モジュール５４に対して供給され、暗号化コンテンツが復号される。
第３図は、第２図に示す現行のＰＣ環境下のＤＶＤメディアを利用するシステムにおいて、ＤＶＤメディア１と、ＤＶＤドライブ４と、ホスト５との間の信号の授受の手順を示す。ホスト５がＤＶＤドライブ４に対してコマンドを送り、ＤＶＤドライブ４がコマンドに応答した動作を行う。
ホスト５からの要求に応じてＤＶＤメディア１上のＡＣＣがシークされ、読み出される（ステップＳ１）。次のステップＳ２において、読み出されたＡＣＣがＡＫＥ４１に入力されると共に、ホスト５へ転送され、ホスト５では、受け取ったＡＣＣがＡＫＥ５１へ入力される。ＡＫＥ４１および５１は、乱数データを交換し、この交換した乱数とＡＣＣ１６の値から認証動作の度に異なる値となるセッションキーとしてのバスキーを生成し、バスキーをＤＶＤドライブ４とホスト５が共有する。相互認証が成立しなかった場合では、処理が中断する。
認証動作は、電源のＯＮ後のディスク検出時並びにディスクの交換時には、必ず行われる。記録ボタンを押して記録動作を行う場合、並びに再生ボタンを押して再生動作を行う場合に、認証動作を行うようにしても良い。一例として、記録ボタンまたは再生ボタンを押した時に、認証がなされる。
認証が成功すると、ステップＳ３において、ホスト５がＤＶＤドライブ４に対して、ＤＶＤメディア１からのＭＫＢ（メディアキーブロック）パック＃０の読み出しを要求する。ＭＫＢは、パック０〜パック１５の１６セクタが１２回繰り返してリードインエリアに記録されている。パック単位で、エラー訂正符号化がなされている。
ＤＶＤドライブ４がステップＳ４においてＭＫＢのパック＃０を読みに行き、ステップＳ５において、パック＃０が読み出される。ＤＶＤドライブ４は、モディフアイドＭＫＢをホスト５へ戻す（ステップＳ６）。ＭＫＢを読み出す際に、バスキーをパラメータとしてＭＡＣ値を計算し、ＭＫＢに対してＭＡＣ値を付加してホスト５へデータを転送する。パック＃０以外の残りのＭＫＢパックの要求と、ＤＶＤドライブ４の読み出し動作と、モディフアイドＭＫＢパックの転送動作とがＭＫＢのパックがなくなるまで、例えばパック＃１５が読み出され、ホスト５へ転送されるまで、ステップＳ７およびＳ８によって繰り返しなされる。
ホスト５がＤＶＤドライブ４に対してメディアＩＤを要求する。ＤＶＤドライブ４がＤＶＤメディア１に記録されているメディアＩＤを読みに行き、ステップＳ１１において、メディアＩＤが読み出される。ＤＶＤドライブ４は、メディアＩＤを読み出す際に、バスキーをパラメータとしてそのＭＡＣ値を計算する。ＤＶＤドライブ４はステップＳ１２において、読み出されたメディアＩＤに対してＭＡＣ値ｍ１を付加してホスト５へデータを転送する。
ホスト５では、ＤＶＤドライブ４から受け取ったＭＫＢ１２およびメディアＩＤ１１からバスキーをパラメータとして再度ＭＡＣ値を計算し、計算したＭＡＣ値とＤＶＤドライブ４から受け取ったＭＡＣ値とを比較５３で比較する。両者が一致したならば、正しいＭＫＢおよびメディアＩＤを受け取ったと判定して、スイッチＳＷ１をＯＮに設定して処理を先に進める。逆に両者が一致しなかったならば、ＭＫＢおよびメディアＩＤが改ざんされたものと判定して、スイッチＳＷ１をＯＦＦに設定して処理を中断する。
ステップＳ１３において、ホスト５がＤＶＤドライブ４に対して暗号化コンテンツを要求し、ステップＳ１４において、ＤＶＤドライブ４が暗号化コンテンツを読み出し、ステップＳ１３において、読み出した暗号化コンテンツがホスト５に転送される。ホスト５のメディアユニークキー演算ブロック５５では、デバイスキー５６とＭＫＢ１２とメディアＩＤ１１とによってメディアユニークキーが計算される。メディアユニークキーが暗号化／復号モジュール５４に供給され、暗号化タイトルキー１４、ＣＣＩ１５からコンテンツキーが求められる。コンテンツキーを鍵としてＤＶＤメディア１から読み出された暗号化コンテンツが復号される。ＤＶＤメディア１に対して記録されるコンテンツが暗号化される。
第４図のフローチャートにおいて、ステップＳＴ１は、ＭＡＣ演算ブロック４２でバスキーをパラメータとして求められたＭＡＣ計算値と、ＭＡＣ演算ブロック５３でバスキーをパラメータとして求められたＭＡＣ計算値とを比較するステップである。両者が一致すれば、スイッチＳＷ１がステップＳＴ２においてＯＮとされる。両者が一致しない場合では、スイッチＳＷ１がステップＳＴ３においてＯＦＦとされ、処理が停止する。
上述したＣＰＲＭでは、ＤＶＤ−Ｖｉｄｅｏの著作権保護技術であるＣＳＳと同じバスキー生成方法を採用している。ＣＳＳ認証方式の内容は、本来秘密であるべき情報であるが、既に解析され一般ユーザーが入手可能なＣＳＳライセンス管理団体であるＤＶＤ−ＣＣＡの許諾を得ていないフリーソフトウェアによって動作させることが可能となっている。加えて、コンテンツプロテクション処理は、ホスト側でなされる、すなわち、リボケーション判定、メディアキー取得、メディアユニークキー導出、タイトルキー生成・導出からコンテンツキー導出およびコンテンツ暗号化・復号の全てがホスト側の処理であることから、著作権保護技術としての信頼性が低下している。
以下に述べるこの発明の一実施形態では、かかる問題点を解決するものである。一実施形態では、ＰＣ環境下でのコンテンツプロテクション処理におけるタイトルキー導出に関わる構成をドライブ内部に持ち、ＰＣとの相互認証を経てタイトルキーおよびコンテンツキーをＰＣに送信するものである。
第５図は、一実施形態における相互認証の構成を示すブロック図であり、第６図は、ドライブ側の処理の流れを示すフローチャートであり、第７図は、ホスト側の処理の流れを示すフローチャートである。以下の説明において、参照符号１０１がメディア例えば光ディスクを示し、参照符号１０２がメディアのドライブを示し、参照符号１０３がドライブ１０２とドライブ−ホストインターフェース１０４を介して接続されたホストを示す。メディア１０１は、上述したＤＶＤメディアと同様の情報が予め記録されているものである。メディア１０１は、記録可能なものに限らず、読み出し専用のものでも良い。ホスト１０３がドライブ１０２に対して所定のコマンドを送り、その動作を制御する。使用するコマンドは、上述した非特許文献２に記載されているコマンド並びにコマンドを拡張したもの、および、メディア１０１からコンテンツをセクタ・データとして読み出すためのＲＥＡＤコマンド、メディア１０１へコンテンツをセクタ・データとして書き込むためのＷＲＩＴＥコマンドである。
ドライブ１０２は、ドライブのデバイスキー１２１を有し、ホスト１０３がホストのデバイスキー１３１を有している。デバイスキー１２１は、多くの場合にＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：大規模集積回路）内部に配置され、外部から読み出すことができないようセキュアに記憶される。デバイスキー１３１は、ソフトウェアプログラム内にセキュアに記憶される場合と、ハードウェアとしてセキュアに記憶される場合とがある。ドライブ１０２がメディア１０１を扱う正当なドライブとなるためには、一実施形態のように、デバイスキーのような著作権保護技術に関する秘密情報を必要とするので、正規のライセンスを受けずに正規品になりすますようなクローン・ドライブの作成を防止できる効果がある。
第５図に示すように、ドライブ１０２には、ＭＫＢとデバイスキー１２１とが入力され、ドライブのデバイスキーがリボケーションされたかどうかを判定するプロセスＭＫＢ１２２が備えられている。ホスト１０３にも同様に、プロセスＭＫＢ１３２が備えられている。リボケーションされない場合に、プロセスＭＫＢ１２２および１３２からそれぞれメディアキーＫｍが出力される。リボーク判定処理がなされ、メディアキーＫｍが得られてから認証処理がなされる。
参照符号１２３、１２４および１２５は、メディアキーＫｍをパラメータとしてＭＡＣ値を計算するＭＡＣ演算ブロックをそれぞれ示す。参照符号１２６、１２７および１２８は、乱数発生器（ＲＮＧ：Ｒａｎｄｏｍ  Ｎｕｍｂｅｒ  Ｇｅｎｅｒａｔｏｒ）をそれぞれ示す。乱数発生器１２６が乱数Ｒａ１を生成し、乱数発生器１２７が乱数Ｒａ２を生成し、乱数発生器１２８が乱数Ｒａ３を生成する。乱数発生器１２６、１２７、１２８は、例えばＬＳＩの構成の乱数発生器であり、ソフトウェアにより乱数を発生する方法と比較してより真正乱数に近い乱数を発生することができる。乱数発生器を共通のハードウェアとしても良いが、乱数Ｒａ１、Ｒａ２、Ｒａ３は、互いに独立したものである。
ホスト１０３に、メディアキーＫｍをパラメータとしてＭＡＣ値を計算するＭＡＣ演算ブロック１３３、１３４および１３５と、乱数発生器１３６、１３７および１３８が備えられている。乱数発生器１３６が乱数Ｒｂ１を生成し、乱数発生器１３７が乱数Ｒｂ２を生成し、乱数発生器１３８が乱数Ｒｂ３を生成する。乱数発生器１３６、１３７、１３８は、通常はソフトウェアによって乱数を発生するものであるが、ハードウェアによる乱数が利用できる場合にはこれを用いても良い。
ドライブ１０２において生成された乱数とホスト１０３において生成された乱数とが交換される。すなわち、乱数Ｒａ１および乱数Ｒｂ１がＭＡＣ演算ブロック１２３および１３３に入力され、乱数Ｒａ２および乱数Ｒｂ２がＭＡＣ演算ブロック１２４および１３４に入力され、乱数Ｒａ３および乱数Ｒｂ３がＭＡＣ演算ブロック１２５および１３５に入力される。
ドライブ１０２のＭＡＣ演算ブロック１２３が演算したＭＡＣ値と、ホスト１０３のＭＡＣ演算ブロック１３３が演算したＭＡＣ値とがホスト１０３内の比較１３９において比較され、二つの値が同一か否かが判定される。ここでのＭＡＣ値は、ｅＫｍ（Ｒａ１‖Ｒｂ１）と表記される。ｅＫｍ（）は、メディアキーＫｍを鍵として括弧内のデータを暗号化することを表している。Ｒａ１‖Ｒｂ１の記号は、左側に乱数Ｒａ１を配し、右側に乱数Ｒｂ１を配するように、二つの乱数を結合することを表している。比較の結果、二つの値が同一と判定されると、ホスト１０３によるドライブ１０２の認証が成功したことになり、そうでない場合には、この認証が失敗したことになる。
ホスト１０３のＭＡＣ演算ブロック１３４が演算したＭＡＣ値と、ドライブ１０２のＭＡＣ演算ブロック１２４が演算したＭＡＣ値とがドライブ１０２内の比較１２９において比較され、二つの値が同一か否かが判定される。ここでのＭＡＣ値は、ｅＫｍ（Ｒｂ２‖Ｒａ２）と表記される。比較の結果、二つの値が同一と判定されると、ドライブ１０２によるホスト１０３の認証が成功したことになり、そうでない場合には、この認証が失敗したことになる。
かかる相互認証において、比較１３９および１２９の両者において、ＭＡＣ値が同一と判定され、ドライブ１０２およびホスト１０３の両者の正当性が確認されると、すなわち、相互認証が成功すると、ＭＡＣ演算ブロック１２５および１３５によって、共通のセッションキーｅＫｍ（Ｒａ３‖Ｒｂ３）がそれぞれ生成される。
さらに、上述した相互認証の処理の流れを第６図および第７図のフローチャートを参照して説明する。最初に、第７図のステップＳＴ２０において、ホスト１０３がドライブ１０２に対して、コマンドＲＥＰＯＲＴ  ＫＥＹを発行し、ＭＫＢの転送を要求する。第６図のステップＳＴ１０において、ドライブ１０２がメディア１０１からＭＫＢ１１２を読み出して、ホスト１０３へ転送する。
次に、ドライブ１０２がステップＳＴ１１において、プロセスＭＫＢ１２２によってメディアキーＫｍを計算し、ホスト１０３がステップＳＴ２１において、プロセスＭＫＢ１３２によってメディアキーＫｍを計算する。この計算の過程でそれぞれが内蔵するデバイスキー１２１および１３１がリボケーションの対象とされているか否かが自分自身によって確認される（第６図中のステップＳＴ１２、第７図中のステップＳＴ２２）。
ドライブ１０２およびホスト１０３のそれぞれは、リボケーションの対象とされている場合にはリボークされ、処理が終了する。若し、ホスト１０３がリボケーションの対象とされていなければ、ステップＳＴ２３において、コマンドＳＥＮＤ  ＫＥＹにより、ドライブ１０２に対して乱数発生器１３６および１３７でそれぞれ生成された乱数Ｒｂ１と乱数Ｒｂ２を転送する。若し、ドライブ１０２がリボケーションの対象とされていなければ、ステップＳＴ１３において、ドライブ１０２がホスト１０３から転送されたこれらの乱数を受け取る。
その後、ホスト１０３は、コマンドＲＥＰＯＲＴ  ＫＥＹによりドライブ１０２に対してドライブ１０２が持つメディアキーＫｍを鍵としたＭＡＣによるレスポンス値と乱数生成器１２６が発生した乱数Ｒａ１とをホスト１０３へ転送することを要求する（ステップＳＴ２４）。このレスポンス値は、ｅＫｍ（Ｒａ１‖Ｒｂ１）と表記される。ｅＫｍ（）は、メディアキーＫｍを暗号鍵として括弧内のデータを暗号化することを表している。Ｒａ１‖Ｒｂ１の記号は、左側に乱数Ｒａ１を配し、右側に乱数Ｒｂ１を配するように、二つの乱数を結合することを表している。
ホスト１０３からコマンドＲＥＰＯＲＴ  ＫＥＹを受け取ったドライブ１０２は、ステップＳＴ１４において、ＭＡＣ演算ブロック１２３が生成したＭＡＣ値ｅＫｍ（Ｒａ１‖Ｒｂ１）と乱数Ｒａ１をホスト１０３へ転送する。ステップＳＴ２５において、ホスト１０３は、自身のＭＡＣ演算ブロック１３３でＭＡＣ値を計算し、比較１３９においてドライブ１０２から受け取った値と一致するかの確認を行う。若し、受け取ったＭＡＣ値と計算されたＭＡＣ値とが一致したのなら、ホスト１０３によるドライブ１０２の認証が成功したことになる。ステップＳＴ２５における比較の結果が同一でない場合には、ホスト１０３によるドライブ１０２の認証が失敗したことになり、リジェクト処理がなされる。
ホスト１０３によるドライブ１０２の認証が成功した場合には、ステップＳＴ２６において、ホスト１０３がドライブ１０２へコマンドＲＥＰＯＲＴ  ＫＥＹを送付し、ドライブ１０２の乱数生成器１２４および１２５がそれぞれ生成する乱数Ｒａ２と乱数Ｒａ３の転送を要求する。このコマンドに応答して、ステップＳＴ１５において、ドライブ１０２は、これらの乱数をホスト１０３へ転送する。
ステップＳＴ２７において、ホスト１０３のＭＡＣ演算ブロック１３４は、ドライブ１０２から受け取った乱数からホスト１０３が持つメディアキーＫｍを鍵としたＭＡＣによるレスポンス値ｅＫｍ（Ｒｂ２‖Ｒａ２）を計算し、乱数Ｒｂ３とともに、コマンドＳＥＮＤ  ＫＥＹを用いてドライブ１０２へ転送する。
ステップＳＴ１６において、ドライブ１０２は、ホスト１０３からレスポンス値ｅＫｍ（Ｒｂ２‖Ｒａ２）および乱数Ｒｂ３を受け取ると、自身でＭＡＣ値を計算し、ステップＳＴ１７において、比較１２９によってホスト１０３から受け取ったＭＡＣ値と一致するかの確認を行う。若し、受け取ったＭＡＣ値と計算されたＭＡＣ値とが一致したのなら、ドライブ１０２によるホスト１０３の認証が成功したことになる。この場合には、ステップＳＴ１８において、ＭＡＣ演算ブロック１２５がセッションキーｅＫｍ（Ｒｂ３‖Ｒａ３）を生成し、ホスト１０３に対して認証が成功したことを示す情報を送信し、認証処理が完了する。セッションキーは、認証動作の度に異なる値となる。
ステップＳＴ１７における比較の結果が同一でない場合には、ドライブ１０２によるホスト１０３の認証が失敗したことになり、ステップＳＴ１９において、認証が失敗したことを示すエラー情報がホスト１０３に送信される。
ホスト１０３は、送付したコマンドＳＥＮＤ  ＫＥＹに対する応答としてドライブ１０２から認証が成功したか否かを示す情報を受け取り、受け取った情報に基づいてステップＳＴ２８において、認証完了か否かを判断する。認証が成功したことを示す情報を受け取ることで認証完了と判断し、認証が失敗したことを示す情報を受け取ることで認証が完了しなかったと判断する。認証が完了した場合は、ステップＳＴ２９において、ＭＡＣ演算ブロック１３５がドライブ側と共通のセッションキーｅＫｍ（Ｒａ３‖Ｒｂ３）（例えば６４ビット長）を生成する。認証が完了しなかった場合には、リジェクト処理がなされる。セッションキーｅＫｍ（Ｒａ３‖Ｒｂ３）を以下の説明では、適宜Ｋｓと表記する。
上述した一実施形態による相互認証は、ドライブ１０２がリボケーション機能を持つことができ、認証専用の特定の認証鍵を必要としない特徴を有している。
さらに、ドライブ１０２が比較１２９によってホスト１０３の認証結果を確認することで、ドライブ１０２がホスト１０３から正規のライセンスを受けた上で実装されたものであるか否かを判定することが可能となる。
次に、上述した相互認証を行うドライブ１０２とホスト１０３とを組み合わせて実現したレコーダの一実施形態の構成を第８図に示す。一実施形態のレコーダは、ドライブ１０２が計算したメディアユニークキーを相互認証によって生成したセッションキーＫｓを用いてセキュアにホスト１０３に転送する。また、ドライブ１０２の乱数発生器１４３によってタイトルキーが生成される。ドライブ１０２においてタイトルキーおよびＣＣＩ２３２からコンテンツキーが生成され、生成されたコンテンツキーがセッションキーＫｓを用いてホスト１０３へセキュアに転送され、ホスト１０３が復号したコンテンツキーを用いてコンテンツを暗号化し、暗号化コンテンツをドライブ１０２へ転送し、ドライブ１０２が暗号化コンテンツ、暗号化タイトルキーおよびＣＣＩ２３２をメディア１０１へ記録する構成とされている。メディア１０１に記録されているＣＣＩに対して参照符号１１５を付す。すなわち、ドライブ１０２において、メディアユニークキーおよびコンテンツキーを生成している。
レコーダを構成するドライブ１０２は、デバイスキー１２１、プロセスＭＫＢ１２２、Ｃ２＿Ｇ２１４１、ＤＥＳ（Ｄａｔａ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）エンクリプタ１４２、乱数発生器１４３、Ｃ２＿Ｇ１４５、ＤＥＳエンクリプタ１４６の構成要素を有する。Ｃ２＿Ｇ２１４１は、メディアＩＤとメディアキーからメディアユニークキーを演算するブロックである。Ｃ２＿Ｇ２１４５は、タイトルキーとＣＣＩ２３２とからコンテンツキーを演算するブロックである。
メディア１０１から再生されたＭＫＢ１１２とデバイスキー１２１とがプロセスＭＫＢ１２２において演算されることによって、リボケーションされたかどうかの判別ができる。プロセスＭＫＢ１２２において、ＭＫＢ１１２とデバイスキー１２１からメディアキーが算出される。ＭＫＢ１１２の中にドライブ１０２のデバイスキー１２１が入っておらず、演算された結果が予め決められたある値例えばゼロの値と一致した場合、そのデバイスキー１２１を持つドライブ１０２が正当なものでないと判断され、ドライブ１０２がリボケーションされる。
Ｃ２＿Ｇ１４１は、メディアキーとメディアＩＤ１１１とを演算し、メディアユニークキーを導出する処理である。メディアユニークキーがＤＥＳエンクリプタ１４２にてセッションキーＫｓによって暗号化される。暗号化の方式として、例えばＤＥＳ  ＣＢＣモードが使用される。ＤＥＳエンクリプタ１４２の出力がホスト１０３のＤＥＳデクリプタ１５１に送信される。
ドライブ１０２の乱数発生器１４３によってタイトルキーが生成され、乱数発生器１４３からのタイトルキーがホスト１０３のＣ２＿Ｅ１５３に供給され、タイトルキーがメディアユニークキーを使用してＣ２によって暗号化される。暗号化タイトルキー１１４がメディア１０１に記録される。
ホスト１０３において、セッションキーＫｓを鍵としてＭＡＣ演算ブロック１５８によりＣＣＩのＭＡＣ値ｅＫｓ（ＣＣＩ）が計算され、ＣＣＩ２３２とともにドライブ１０２へ転送される。
ドライブ１０２において、ホスト１０３から受け取ったＣＣＩ２３２からセッションキーＫｓを鍵としてＭＡＣ演算ブロック１５７によりＣＣＩのＭＡＣ値ｅＫｓ（ＣＣＩ）が計算され、ホスト１０３から受け取ったＭＡＣ値とともに比較１５９へ供給される。
比較１５９では、両方のＭＡＣ値が一致したならば、ホスト１０３から受け取ったＣＣＩ２３２の改ざんは無いものと判断し、スイッチＳＷ２をＯＮする。一致しなかった場合は、ＣＣＩは改ざんされたものとみなし、スイッチＳＷ２をＯＦＦし、以降の処理を中断する。
ドライブ１０２において、ホスト１０３から受け取ったＣＣＩ２３２とタイトルキーとがＣ２＿Ｇ１４５に供給され、コンテンツキーが導出される。コンテンツキーがＤＥＳエンクリプタ１４６に供給され、セッションキーＫｓを鍵として、コンテンツキーが暗号化される。暗号化コンテンツキーがホスト１０３のＤＥＳデクリプタ１５６に転送される。
ホスト１０３のＤＥＳデクリプタ１５６でセッションキーＫｓを鍵として復号されたコンテンツキーがＣ２＿ＥＣＢＣ１５５に供給され、コンテンツキーを鍵としてコンテンツが暗号化される。暗号化コンテンツ１１３がドライブ１０２に転送され、ドライブ１０２によってメディア１０１に記録される。
第９図は、レコーダの一実施形態によるコンテンツ記録時の手順を示すものである。最初に、ホスト１０３からの要求に応じてメディア１０１上のＭＫＢがシークされ、読み出される（ステップＳ６１）。次のステップＳ６２のＡＫＥ（Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ａｎｄ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）において、上述したようなリボーク処理とドライブ１０２とホスト１０３の相互認証動作がなされる。
相互認証動作は、電源のＯＮ後のディスク検出時並びにディスクの交換時には、必ず行われる。また、記録ボタンを押して記録動作を行う場合、並びに再生ボタンを押して再生動作を行う場合に、認証動作を行うようにしても良い。一例として、記録ボタンまたは再生ボタンを押した時に、認証がなされる。
相互認証が成功しないと、リジェクト処理によって例えば処理が中断する。相互認証が成功すると、ドライブ１０２およびホスト１０３の両者において、セッションキーＫｓが生成され、セッションキーＫｓが共有される。
次のステップＳ６３において、ホスト１０３がドライブ１０２に対してメディアユニークキーを要求する。ドライブ１０２は、メディア１０１のメディアＩＤをシークし（ステップＳ６４）、メディアＩＤをメディア１０１から読み出す（ステップＳ６５）。ドライブ１０２は、メディアキーとメディアＩＤとを演算することによってメディアユニークキーを生成する。ステップＳ６６において、メディアユニークキーがセッションキーＫｓによって暗号化され、暗号化されたメディアユニークキーがホスト１０３に転送される。
次に、ステップＳ６７において、ホスト１０３がドライブ１０２に対してタイトルキーを要求する。ステップＳ６８において、ドライブ１０２がタイトルキーをホスト１０３に転送する。ホスト１０３において、セッションキーＫｓによって、暗号化されたメディアユニークキーが復号される。そして、タイトルキーがメディアユニークキーによって暗号化され、暗号化タイトルキーが生成される。
また、ステップＳ６９において、ホスト１０３がドライブ１０２に対してＣＣＩ２３２を送る。このとき、ＣＣＩ２３２の改ざんを回避するためにＣＣＩ２３２の認証データとして計算されたＭＡＣ値ｅＫｓ（ＣＣＩ）を付加して転送する。ドライブ１０２において、ＣＣＩ２３２の改ざんが無いことを確認後、タイトルキーとＣＣＩ２３２からコンテンツキーが生成され、コンテンツキーがセッションキーＫｓで暗号化される。ステップＳ７０において、ホスト１０３がドライブ１０２に対してコンテンツキーを要求すると、ステップＳ７１において、ドライブ１０２が暗号化されたコンテンツキーをホスト１０３に送る。
ホスト１０３は、暗号化コンテンツキーをセッションキーＫｓによって復号し、コンテンツキーを得る。コンテンツキーによってコンテンツが暗号化される。ステップＳ７２において、ホスト１０３からドライブ１０２に対して、暗号化タイトルキー、暗号化コンテンツおよびＣＣＩ２３２が転送される。ステップＳ７３において、ドライブ１０２によって、暗号化タイトルキー、暗号化コンテンツおよびＣＣＩ２３２がメディア１０１に対して記録される。
上述した第８図に示す構成のレコーダは、ドライブ１０２において、真正乱数またはそれに近い乱数をハードウェア例えばＬＳＩによって発生することができ、生成した乱数を固定値への置き換えを困難とすることができる。また、ドライブ１０２において、ハードウェア構成によってコンテンツキーを生成するので、著作権保護の実装を強力とすることができる。
次に、上述した相互認証を行うドライブ１０２とホスト１０３とを組み合わせて実現したプレーヤの一実施形態の構成を第１０図に示す。一実施形態のプレーヤは、ドライブ１０２が計算したメディアユニークキーを相互認証によって生成したセッションキーＫｓを用いてセキュアにホスト１０３に転送し、ホスト１０３が暗号化タイトルキーをメディアユニークキーによって復号し、タイトルキーとＣＣＩ１１５とから導出したコンテンツキーを用いてコンテンツを復号する構成とされている。
プレーヤを構成するドライブ１０２は、デバイスキー１２１、プロセスＭＫＢ１２２、Ｃ２＿Ｇ２１４１、ＤＥＳエンクリプタ１４２の構成要素を有する。メディア１０１から再生されたＭＫＢ１１２とデバイスキー１２１とがプロセスＭＫＢ１２２において演算されることによって、リボケーションされたかどうかの判別ができる。プロセスＭＫＢ１２２において、ＭＫＢ１１２とデバイスキー１２１からメディアキーが算出される。
Ｃ２＿Ｇ１４１は、メディアキーとメディアＩＤ１１１とを演算し、メディアユニークキーを導出する処理である。メディアユニークキーがＤＥＳエンクリプタ１４２にてセッションキーＫｓによって暗号化される。暗号化の方式として、例えばＤＥＳ  ＣＢＣモードが使用される。ＤＥＳエンクリプタ１４２の出力がホスト１０３のＤＥＳデクリプタ１５１に送信される。
ホスト１０３において、ＤＥＳデクリプタ１５１において、セッションキーＫｓによってメディアユニークキーが復号される。メディアユニークキーおよび暗号化タイトルキー１１４がＣ２＿Ｄ１５３に供給され、暗号化タイトルキーがメディアユニークキーを使用して復号される。復号されたタイトルキーとメディア１０１から再生されたＣＣＩ１１５がＣ２＿Ｇ１５４に供給され、コンテンツキーが導出される。メディア１０１から再生された暗号化コンテンツ１１３がＣ２デクリプタ１５５において、コンテンツキーによって復号され、コンテンツキーが得られる。
第１１図は、コンテンツ再生時の手順を示すものである。最初に、ホスト１０３からの要求に応じてメディア１０１上のＭＫＢがシークされ、読み出される（ステップＳ４１）。ＭＫＢがパック毎に読み出される。次のステップＳ４２のＡＫＥにおいて、上述したようなリボーク処理と、ドライブ１０２とホスト１０３の相互認証動作がなされる。
相互認証が成功しないと、リジェクト処理によって例えば処理が中断する。相互認証が成功すると、ドライブ１０２およびホスト１０３の両者において、セッションキーＫｓが生成され、セッションキーＫｓが共有される。
次のステップＳ４３において、ホスト１０３がドライブ１０２に対してメディアユニークキーを要求する。ドライブ１０２は、メディア１０１のメディアＩＤをシークし（ステップＳ４４）、メディアＩＤをメディア１０１から読み出す（ステップＳ４５）。ドライブ１０２は、メディアキーとメディアＩＤとを演算することによってメディアユニークキーを生成する。ステップＳ４６において、メディアユニークキーがセッションキーＫｓによって暗号化され、暗号化されたメディアユニークキーがホスト１０３に転送される。
次に、ステップＳ４７において、ホスト１０３がドライブ１０２に対して、暗号化タイトルキー、ＣＣＩおよび暗号化コンテンツを要求する。ステップＳ４８において、ドライブ１０２が暗号化タイトルキー１１４、ＣＣＩ１１５および暗号化コンテンツ１１３をメディア１０１からリードする。ステップＳ４９において、ドライブ１０２が暗号化タイトルキー１１４、ＣＣＩ１１５および暗号化コンテンツ１１３を読み取る。そして、ステップＳ５０において、ドライブ１０２が暗号化タイトルキー１１４、ＣＣＩ１１５および暗号化コンテンツ１１３をホスト１０３に対して転送する。
ホスト１０３において、タイトルキーが復号され、タイトルキーとＣＣＩ１１５とからコンテンツキーが求められ、コンテンツキーを鍵として暗号化コンテンツが復号される。
第１０図に示すプレーヤの構成においては、ホスト１０３が暗号化タイトルキーを復号するデクリプタＣ２＿Ｄ１５３を備えているが、ドライブ１０２が暗号化タイトルキーを復号するデクリプタを備えるようにしても良い。この場合、復号されたタイトルキーがホスト１０３のコンテンツキー生成用のＣ２＿Ｇ１５４に対してセキュアに転送される。または、ドライブ１０２にコンテンツキー生成装置Ｃ２＿Ｇを設け、ドライブ１０２において復号されたタイトルキーとＣＣＩとからコンテンツキーを生成するようにしても良い。この場合、復号されたコンテンツキーがホスト１０３のＣ２＿ＤＣＢＣ１５５へセキュアに転送される。
この発明のレコーダおよびプレイヤの他の実施形態について、第１２図および第１３図を参照して説明する。他の実施形態は、メディアユニークキーをドライブで生成するものであり、コンテンツキーを生成する場合に関与するパラメータを使用するもの（ＣＰＲＭを拡張したシステム）である。
ＣＰＲＭを拡張したシステムにおいて、メディアユニークキーを演算するためのパラメータＡと、暗号化／復号のためのパラメータＢとが使用される。これらのパラメータＡ，Ｂがホスト側にある場合と、ドライブ側にある場合と、メディアに記録されており、ホストが読み出す場合との全てが可能である。パラメータＡ，Ｂをインターフェースを介して授受する場合には、暗号化を行い、セキュアに伝送しても良い。
第１２図は、レコーダの他の実施形態の構成を示す。第１２図において、参照符号２０１が記録可能なメディアを示し、メディア２０１には、ＥＫＢ２１１、暗号化ディスクキーＥｍ（Ｋｄ）２１２、ディスクＩＤ２１３およびユニットキー生成用値Ｖｕ２１４が記録されている。
第１２図中に記載されている鍵情報に関する用語を下記に説明する。
ＥＫＢ２１１は、各デバイスキーに対してメディアキーＫｍを配布するための鍵束である。既述の実施形態におけるメディアキーブロックＭＫＢに相当する。
メディアキーＫｍは、メディア毎に固有の鍵情報である。ＥＫＢの中にメディアキーが見つからない場合は、そのデバイスキーがリボークされたことを示す。
ディスクキーＫｄは、少なくともコンテンツ毎に異なる鍵情報である。コンテンツのマスターディスク毎に異ならせても良い。暗号化ディスクキーＥｍ（Ｋｄ）２１２は、メディアキーＫｍでディスクキーＫｄを暗号化した暗号化鍵で、メディア２０１に記録されている。暗号化ディスクキーＥｍ（Ｋｄ）２１２は、ドライブ１０２において、個々のメディア毎に異なるエンベディッドキーＫｅを生成するために使用される。
ユニットキー生成用値Ｖｕ２１４は、暗号化単位（暗号化ユニットと称する）ごとに定義することが可能なパラメータである。各暗号化ユニットは、複数のセクタデータから構成される。ユニットキー生成用値Ｖｕ２１４は、ホスト１０３においてコンテンツを暗号化する暗号化鍵としてのユニットキーＫｕを生成するために使用される。
ディスクＩＤ２１３は、スタンパ毎に異なるＩＤである。一実施形態におけるメディアＩＤ１１１に相当する。
エンベディッドキーＫｅは、個々のメディア毎に異なる鍵情報であり、一実施形態におけるメディアユニークキーに相当する。
ドライブ１０２が持つデバイスキー２２１と、メディア２０１が持つＥＫＢ２１１とに基づいてプロセスＥＫＢ２２２によってメディアキーＫｍが得られる。メディアキーＫｍとメディア２０１が持つ暗号化ディスクキーＥｍ（Ｋｄ）２１２とに基づいてＡＥＳ＿Ｄ２２３においてディスクキーＫｄが復号される。ディスクキーＫｄとディスクＩＤ２１３とに基づいてＡＥＳ＿Ｇ２２４においてエンベディッドキーＫｅが得られる。
ユニットキーＫｕは、コンテンツを暗号化する鍵であり、エンベディッドキーＫｅとユニットキー生成用値Ｖｕとコピー制御情報ＣＣＩ２３２とに基づいて得られる。ユニットキーＫｕは、上述の一実施形態におけるコンテンツキーに相当する。
上述した他の実施形態のレコーダの動作について処理の流れにしたがって説明する。
最初にＡＫＥ２２５および２２７による認証がなされる。認証が成功すると、セッションキーＫｓが生成される。第１２図では省略されているが、ＡＫＥ２２５および２２７の少なくとも一方に対して認証に関係するパラメータが供給されている。
ドライブ１０２は、メディア２０１からＥＫＢ２１１を読み出す。メディア２０１からのＥＫＢ２１１とデバイスキー２２１がドライブ１０２のプロセスＥＫＢ２２２で演算され、メディアキーＫｍが算出される。演算結果が例えば０になるような場合では、デバイスキーがリボークされる。ドライブ１０２が有しているデバイスキー２２１は、例えば機種単位でドライブに与えられる固有の鍵である。
ドライブ１０２が暗号化ディスクキーＥｍ（Ｋｄ）２１２をメディア２０１から読み出し、ＡＥＳ＿Ｄ２２３において、メディアキーＫｍによってディスクキーＫｄが得られる。ＡＥＳ（Ａｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）は、米国政府がＤＥＳに代わる新しい暗号化標準として採用した暗号化方法である。
さらに、ドライブ１０２は、メディア２０１からディスクＩＤ２１３を読み出し、ＡＥＳ＿Ｇ２２４において、ディスクＩＤとディスクキーＫｄを演算し、エンベディッドキーＫｅを得る。
ドライブ１０２とホスト１０３の認証が完了し、セッションキーＫｓが得られているならば、ホスト１０３がドライブ１０２に対してエンベディッドキーＫｅの転送を要求する。
ドライブ１０２がインターフェース１０４を経由してホスト１０３に対してＫｅを転送する際に、ＡＥＳエンクリプタ２２６にてセッションキーＫｓによりＫｅを暗号化する。ホスト１０３は、ＡＥＳデクリプタ２２８によって復号を行い、Ｋｅを得る。ＡＥＳエンクリプタ２２６およびＡＥＳデクリプタ２２８は、例えばＣＢＣ（Ｃｉｐｈｅｒ  Ｂｌｏｃｋ  Ｃｈａｉｎｉｎｇ）モードの処理を行う。
ホスト１０３は、コンテンツを暗号化ユニット単位で処理する。ホスト１０３は、暗号化ユニットのユニットキー生成用値Ｖｕ２１４をドライブ１０２から読み出す。ＡＥＳ＿Ｇ２２９において、エンベディッドキーＫｅとユニットキー生成用値Ｖｕ２１４とＣＣＩ２３２とからユニットキーＫｕが計算される。ユニットキーＫｕの生成にＣＣＩ２３２を用いることで、コンテンツの著作権がより強固に保護される。
ホスト１０３は、暗号化モジュール２３０において、コンテンツをユニットキーＫｕで暗号化する。暗号化コンテンツ１１３がドライブ１０２へ伝送され、記録可能なメディア２０１に記録される。
次に、第１３図を参照してこの発明の他の実施形態のプレイヤについて説明する。プレイヤは、ＲＯＭタイプのメディア２１０例えばＲＯＭディスクを再生する例である。
ＲＯＭタイプのメディア２１０には、予めコンテンツが記録されている。ホスト１０３では、暗号化の処理が不要となり、復号モジュール２３１が使用される。メディア２１０から読み出された暗号化コンテンツが復号モジュール２３１にて復号され、ＡＶコンテンツが得られる。
ＲＯＭタイプのメディア２１０の場合では、メディアキーＫｍおよびディスクキーＫｄがコンテンツ毎に固有の鍵情報である。各コンテンツは、１または複数の暗号化ユニットから構成される。
メディア２１０上にエンベディッドキー生成値Ｖｅ２１５が記録されている。エンベディッドキー生成値Ｖｅ２１５は、ディスク製造工場でスタンパー（フォトレジストを現像したディスク原盤またはディスク原盤から最初に作成されたスタンパーを意味する）毎に、記録されたゼロでない値である。物理的ウォーターマークとして、通常のデータ記録とは、別の手段でディスク上に記録される。
エンベディッドキーＫｅは、一実施形態におけるメディアユニークキーに相当する。エンベディッドキーＫｅを生成するためのエンベディッドキー生成値Ｖｅ２１５は、一種のメディアＩＤである。
第１３図のレコーダは、第１２図に示すプレイヤと同様の処理を行う。最初にＡＫＥ２２５および２２７による認証がなされ、セッションキーＫｓが生成される。読み出されたＥＫＢ２１１とデバイスキー２２１がドライブ１０２のプロセスＥＫＢ２２２で演算され、メディアキーＫｍが算出とリボーク処理がなされる。そして、ＡＥＳ＿Ｄ２２３において、メディアキーＫｍによってディスクキーＫｄが復号される。さらに、ＡＥＳ＿Ｇ２２４において、エンベディッドキーＫｅが得られる。
ＡＥＳエンクリプタ２２６にてセッションキーＫｓによりＫｅが暗号化される。ホスト１０３は、ＡＥＳデクリプタ２２８によって復号を行い、Ｋｅを得る。
ホスト１０３は、読み出したい暗号化ユニットのユニットキー生成用値Ｖｕ２１４およびコピー制御情報ＣＣＩをドライブ１０２から読み出し、ＡＥＳ＿Ｇ２２９において、ユニットキーＫｕが計算される。
ホスト１０３が要求した暗号化ユニットのセクタデータがホスト１０３の復号モジュール２３１において、属する暗号化ユニットのユニットキーＫｕで復号される。
この発明では、著作権保護技術に関する秘密情報である電子機器またはアプリケーションソフトウェア固有の情報例えばデバイスキーが記録再生装置内に実装されているので、ＤＶＤ処理装置にインストールされるアプリケーションソフトウェアは、著作権保護技術に関する秘密情報を持つ必要がなくなる。それによって、ソフトウェアのリバースエンジニアリングによる解析に対する耐性を持つことができ、著作権保護技術の安全性を確保することができる。
電子機器またはアプリケーションソフトウェア固有の情報としてのデバイスキーを記録再生装置とデータ処理装置が分けて持つことによって、記録再生装置およびアプリケーションソフトウェアの両方について、リボーク処理を行うことが可能となる。
この発明では、著作権保護技術に関するアルゴリズムの一部例えばメディアユニークキーの演算が記録再生装置内に実装されている。したがって、データ処理装置のアプリケーションソフトウェアは、著作権保護技術に関するアルゴリズムの一部しか持たないで良く、それによって、ソフトウェアのリバースエンジニアリングによる解析に対する耐性を持つことができ、著作権保護技術の安全性を確保することができる。
この発明は、上述したこの発明の一実施形態等に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。例えばタイトルキーは、タイトル毎のキーであるが、この発明では、乱数情報であれば、タイトル毎に異なることは、必要ではない。
また、上述した説明においては、著作権保護技術としてＣＰＲＭおよびＣＰＲＭを拡張した例を挙げたが、ＣＰＲＭ以外の著作権保護技術に対してもこの発明を適用することができる。例えば、特開２００１−３５２３２２号公報において提案されるツリー構造の鍵配布構成に基づく著作権保護技術に対して適用可能である。また、ＰＣベースのシステムに対してこの発明が適用されるが、このことは、ＰＣとドライブを組み合わせる構成にのみ限定されることを意味するものではない。例えば携帯型動画または静止画カメラの場合に、メディアとして光ディスクを使用し、メディアを駆動するドライブとドライブを制御するマイクロコンピュータが設けられる動画または静止画カメラシステムに対してもこの発明を適用することが可能である。
この発明では、再生装置側でコンテンツキーを生成し、コンテンツキーを情報処理装置へ送信し、情報処理装置側でコンテンツキーによってコンテンツを暗号化している。このように著作権保護のための鍵情報の生成を再生装置で行うので、ハードウェア構成でコンテンツキーを生成することが可能となり、耐タンパー性を高めることができる。また、再生装置において、乱数を生成し、乱数を中間鍵とするので、再生装置において、真正乱数またはそれに近い乱数をハードウェア例えばＬＳＩによって発生することができ、生成した乱数を固定値への置き換えを困難とすることができる。このように、この発明では、情報処理装置にインストールされるアプリケーションソフトウェアは、著作権保護技術に関する秘密情報の全てを持つ必要がなくなる。それによって、ソフトウェアのリバースエンジニアリングによる解析に対する耐性を持たせることが容易に実施でき、また、ディスクからのデータとしてそのまま読み出された暗号化コンテンツが「ＤｅＣＳＳ」のような解読ソフトウェアにより復号され、平文のままのクリア・コンテンツとしてコピー制限の働かない状態で複製が繰り返されるような事態を防ぐことができることから、著作権保護技術の安全性を確保することができる。
また、電子機器固有の情報としてのデバイスキーを記録再生装置が持つことによって、記録再生装置自身をリボークすることが可能となる。さらに、この発明では、情報処理装置におけるコンテンツキーを計算するのに必要とされる乱数情報が記録再生装置内の例えばＬＳＩによって生成できるので、ＰＣ内でソフトウェアによって乱数を生成するのと比較して、真正または真正乱数に近い乱数を生成することができる。したがって、乱数が固定値に置き換えられる、等のおそれを少なくできる。
【符号の説明】
１    ＤＶＤメディア
２    レコーダ
３    プレーヤ
４    ＤＶＤドライブ
４ａ    インターフェース
５    ホスト
１１１    メディアＩＤ
１１２    メディアキーブロック（ＭＫＢ）
１１３    暗号化コンテンツ
１０１    メディア
１０２    ドライブ
１０３    ホスト
１０４    インターフェース
１２１    ドライブのデバイスキー
１２２    プロセスＭＫＢ
１２３、１２４、１２５  ドライブのＭＡＣ演算ブロック
１２６、１２７、１２８  ドライブの乱数発生器
１２９    比較
１３１    ホストのデバイスキー
１３２    プロセスＭＫＢ
１３３、１３４、１３５  ホストのＭＡＣ演算ブロック
１３６、１３７、１３８  ホストの乱数発生器
１３９    比較
１４１、１５４    Ｃ２＿Ｇ
１４２、１４６    ＤＥＳエンクリプタ
１４３    乱数発生器
１５１、１５２、１５６  ＤＥＳデクリプタ
１５３    Ｃ２＿Ｅ
１５５    Ｃ２＿ＥＢＣ
１５７、１５８    ＭＡＣ演算ブロック
１５９    比較
ＳＴ１    ＭＡＣ計算値が一致？
ＳＴ２    スイッチをＯＮ
ＳＴ３    スイッチをＯＦＦ
ＳＴ１０    ＲＥＰＯＲＴ  ＫＥＹ（ＭＫＢ）
ＳＴ１１    メディアキーＫｍを計算
ＳＴ１２    リボーク？
ＳＴ１３    ＲＥＣＥＩＶＥ（Ｒｂ１，Ｒｂ２）
ＳＴ１４    ＲＥＴＵＲＮ（ｅＫｍ（Ｒａ１‖Ｒｂ１），Ｒａ１）
ＳＴ１５    ＲＥＴＵＲＮ（Ｒａ２，Ｒａ３）
ＳＴ１６    ＲＥＣＥＩＶＥ
（ｅＫｍ（Ｒｂ２‖Ｒａ２），Ｒｂ３）
ＳＴ１７    同一のＭＡＣ？
ＳＴ１８    セッションキーの確定
（ｅＫｍ（Ｒａ３‖Ｒｂ３））
ＳＴ１９    ＲＥＴＵＲＮ（エラー）
ＳＴ２０    ＲＥＰＯＲＴ  ＫＥＹ（ＭＫＢ）
ＳＴ２１    メディアキーＫｍを計算
ＳＴ２２    リボーク？
ＳＴ２３    ＳＥＮＤ  ＫＥＹ（Ｒｂ１，Ｒｂ２）
ＳＴ２４    ＲＥＰＯＲＴ  ＫＥＹ
（ｅＫｍ（Ｒａ１‖Ｒｂ１），Ｒａ１）
ＳＴ２５    同一のＭＡＣ？
ＳＴ２６    ＲＥＰＯＲＴ  ＫＥＹ（Ｒａ２，Ｒａ３）
ＳＴ２７    ＳＥＮＤ  ＫＥＹ
（ｅＫｍ（Ｒｂ２‖Ｒａ２），Ｒｂ３）
ＳＴ２８    エラー？
ＳＴ２９    セッションキーの確定
（ｅＫｍ（Ｒａ３‖Ｒｂ３））
【図１】
2004064314.tif 000003
【図２】
2004064314.tif 000004
【図３】
2004064314.tif 000005
【図４】
2004064314.tif 000006
【図５】
2004064314.tif 000007
【図６】
2004064314.tif 000008
【図７】
2004064314.tif 000009
【図８】
2004064314.tif 000010
【図９】
2004064314.tif 000011
【図１０】
2004064314.tif 000012
【図１１】
2004064314.tif 000013
【図１２】
2004064314.tif 000014
【図１３】
2004064314.tif 000015
【国際調査報告】
2004064314.tif 000016
2004064314.tif 000017