(57)【要約】【課題】  古い認定デバイス証明書の継続的な使用による認証処理、およびコンテンツ不正利用を防止する構成を提供する。【解決手段】  ドライブとホストなど２つの異なるデバイス間のデータ転送を伴うコンテンツの再生あるいは記録処理において、データ転送を実行するデバイス間の相互認証において、認証回数をカウントし、予め定めた認証回数上限値に達した場合に、認証処理を中止して、認証に適用する証明書の更新を必要とする設定とした。本構成により、古い証明書を適用した認証処理の継続によるコンテンツ利用を排除し、最新の証明書の取得を促すことが可能となる。【選択図】  図３３
2005352523.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置であり、
認定デバイス証明書を格納する証明書記憶部と、
デバイスの認証処理を実行し、該認証処理において前記認定デバイス証明書を適用した処理を実行する認証実行部と、
前記認証実行部を介して実行される認証回数をカウントし、カウント値を格納するカウント値記憶部とを有し、
前記認証実行部は、認証回数カウント値が予め設定された認証回数上限値に達していないことを条件として認証処理を実行する構成であることを特徴とする情報処理装置。
【請求項２】
前記情報処理装置は、さらに、
前記カウント値記憶部に格納された認証回数カウント値が予め設定された認証回数上限値に達している場合に、通信部を介した認定デバイス証明書の取得処理により前記証明書記憶部に格納された認定デバイス証明書の更新処理を実行する更新実行部を有する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記更新実行部による認定デバイス証明書の更新処理に伴い、前記カウント値記憶部の認証回数カウント値のリセット処理を実行する構成であることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記更新実行部による認定デバイス証明書の取得は、ネットワーク接続されたサーバからの取得処理として実行する構成であることを特徴とする請求項２に記載の情報処理装置。
【請求項５】
前記更新実行部は、外部から取得した認定デバイス証明書の正当性確認処理を実行し、正当性の確認された場合に前記証明書記憶部に格納された認定デバイス証明書の更新処理を実行する更新実行部を有する構成であることを特徴とする請求項２に記載の情報処理装置。
【請求項６】
前記情報処理装置は、
認証回数カウント値が予め設定された認証回数上限値に達している場合にユーザに対する通知処理を実行する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項７】
前記情報処理装置は、
前記更新実行部が外部から取得した証明書の少なくとも一部の証明書データを認証処理相手としてのドライブに格納する証明書データとしてドライブに出力する構成であることを特徴とする請求項２に記載の情報処理装置。
【請求項８】
前記ドライブに格納する証明書データは、
認定デバイス証明書の新旧比較に適用するデータを含む証明書であることを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記認定デバイス証明書の新旧比較に適用するデータは、認定デバイス証明書に記録されるシーケンスナンバー、または登録デバイス数、または無効（リボーク）デバイス数のいずれかのデータであることを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
情報処理方法であり、
記憶部に格納された認証回数カウント値と予め設定された認証回数上限値との比較処理を実行する比較ステップと、
認証回数カウント値が予め設定された認証回数上限値に達していないとの比較結果が得られたことを条件として認証処理を実行する認証ステップと、
を有することを特徴とする情報処理方法。
【請求項１１】
前記情報処理方法は、さらに、
前記認証ステップの完了に伴い、記憶部に格納された認証回数カウント値をカウントアップする処理を実行するステップを有することを特徴とする請求項１０に記載の情報処理方法。
【請求項１２】
前記情報処理方法は、さらに、
前記カウント値記憶部に格納された認証回数カウント値が予め設定された認証回数上限値に達している場合に、通信部を介した認定デバイス証明書の取得処理を実行し、証明書記憶部に格納された認定デバイス証明書の更新処理を実行する更新ステップを有することを特徴とする請求項１０に記載の情報処理方法。
【請求項１３】
前記更新ステップにおける認定デバイス証明書の更新処理に伴い、前記カウント値記憶部の認証回数カウント値のリセット処理を実行することを特徴とする請求項１２に記載の情報処理方法。
【請求項１４】
前記更新ステップにおける認定デバイス証明書の取得は、ネットワーク接続されたサーバからの取得処理として実行することを特徴とする請求項１２に記載の情報処理方法。
【請求項１５】
前記更新ステップは、外部から取得した認定デバイス証明書の正当性確認処理を実行し、正当性の確認された場合に前記証明書記憶部に格納された認定デバイス証明書の更新処理を実行することを特徴とする請求項１２に記載の情報処理方法。
【請求項１６】
前記情報処理方法は、さらに、
認証回数カウント値が予め設定された認証回数上限値に達している場合にユーザに対する通知処理を実行することを特徴とする請求項１０に記載の情報処理方法。
【請求項１７】
前記情報処理方法は、さらに、
前記更新ステップにおいて外部から取得した証明書の少なくとも一部の証明書データを認証処理相手としてのドライブに格納する証明書データとしてドライブに出力するステップを有することを特徴とする請求項１２に記載の情報処理方法。
【請求項１８】
前記ドライブに格納する証明書データは、
認定デバイス証明書の新旧比較に適用するデータを含む証明書であることを特徴とする請求項１７に記載の情報処理方法。
【請求項１９】
前記認定デバイス証明書の新旧比較に適用するデータは、認定デバイス証明書に記録されるシーケンスナンバー、または登録デバイス数、または無効（リボーク）デバイス数のいずれかのデータであることを特徴とする請求項１８に記載の情報処理方法。
【請求項２０】
コンピュータ・プログラムであり、
記憶部に格納された認証回数カウント値と予め設定された認証回数上限値との比較処理を実行する比較ステップと、
認証回数カウント値が予め設定された認証回数上限値に達していないとの比較結果が得られたことを条件として認証処理を実行する認証ステップと、
を有することを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、および情報処理方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、コンテンツの不正利用を防止する情報処理装置、および情報処理方法、並びにコンピュータ・プログラムに関する。
【背景技術】
【０００２】
近年、ＤＶＤや、青色レーザーディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ）など、大容量データの格納可能な情報記録媒体が普及し、例えば高精細画像データや、高品質音声データなどのデジタルコンテンツをディスクなどの記録媒体に記録再生する利用形態が一般化してきている。
【０００３】
情報記録媒体からのコンテンツ再生、コンテンツ記録処理を行なう態様としては、情報記録媒体（ディスク）を駆動するドライブと、再生／記録処理機能を一体化した装置を利用する態様と、ドライブと、再生処理あるいは記録処理プログラムを実行するホストとしての情報処理装置、例えばＰＣなどをバスなどによって接続し、ドライブとホスト間でのデータ転送を伴う処理態様とがある。
【０００４】
例えば、ドライブとホスト間でのデータ転送を行なう場合の問題点として、不正なコンテンツの利用、流出の可能性が高くなるという問題がある。音楽データ、画像データ等、多くのコンテンツは、一般的にその作成者あるいは販売者に頒布権等が保有されている。従って、これらのコンテンツの配布に際しては、一定の利用制限、すなわち、正規なユーザに対してのみ、コンテンツの利用を許諾し、許可のない複製等が行われないようにする構成をとるのが一般的となっている。
【０００５】
デジタル記録装置および記録媒体によれば、画像や音声を劣化させることなく記録、再生を繰り返すことが可能であり、不正コピーされたコンテンツのインターネットを介した配信や、ＣＤ−Ｒ、ＤＶＤ等の記録媒体にコンテンツをコピーした海賊版ディスクの流通は大きな問題となってきている。
【０００６】
ＤＶＤや青色レーザディスク等の大容量型記録媒体には、映像情報、音楽情報をデジタルデータとして格納することが可能である。このようなデジタルデータ記録媒体を市場に流通させる場合には、不正コピーを防止し著作権者の保護を図る構成が必須となる。昨今では、このようなデジタルデータの不正なコピーを防ぐため、デジタル記録装置および記録媒体に違法なコピーを防止するための様々な技術が実用化されている。
【０００７】
例えば、ＤＶＤプレーヤでは、コンテンツ・スクランブルシステム（ＣＳＳ：Ｃｏｎｔｅｎｔ  Ｓｃｒａｍｂｌｅ  Ｓｙｓｔｅｍ）が採用されている。コンテンツ・スクランブルシステムでは、記録媒体、例えばＤＶＤ−ＲＯＭ(Read Only Memory)に、ビデオデータやオーディオデータ等が暗号化されて記録されており、その暗号化されたデータの復号に用いる鍵をライセンスを受けたプレーヤのみに与える。ライセンスは、不正コピーを行わない等の所定の動作規定に従うように設計されたプレーヤに対してのみ与えられる。従って、ライセンスを受けたプレーヤでは、与えられたキーを利用して、情報記録媒体に記録された暗号化データを復号することにより画像や音声を再生することができる。
【０００８】
一方、ライセンスを受けていないプレーヤは、暗号化されたデータを復号するための鍵を有していないため、情報記録媒体に記録された暗号化データの復号を行うことができない。このように、コンテンツ・スクランブルシステム（ＣＳＳ）は、正規のライセンスを持つプレーヤのみのコンテンツ利用を許容するシステムを提供している。
【０００９】
しかし、このコンテンツ・スクランブルシステム（ＣＳＳ）は、確実なコンテンツの不正利用の排除ができないという問題がある。特に、情報記録媒体を装着したドライブからコンテンツをＰＣなどの情報処理装置に出力して再生する処理において、コンテンツの不正利用が行われ得るという問題点が発生する。以下、この問題点について図面を参照して説明する。
【００１０】
図１にコンテンツ・スクランブルシステム（ＣＳＳ）を採用したコンテンツを格納した情報記録媒体の格納データ例と、再生機器（プレーヤ）の処理を示す。
【００１１】
図１に示す情報記録媒体１０は、例えばＤＶＤビデオディスクであり、情報記録媒体１０には、暗号化ディスクキー（Ｓｅｃｕｒｅｄ  Ｄｉｓｃ  Ｋｅｙ）１１、情報記録媒体１０に格納されたコンテンツのタイトル対応の暗号化タイトルキー１２、ＣＳＳ方式に基づくスクランブル処理のなされたコンテンツとしてスクランブルＭＰＥＧデータ１３が格納されている。
【００１２】
情報記録媒体１０を装着してコンテンツ再生を実行する再生機器２０、例えばＤＶＤプレーヤは、再生機器２０に格納されたマスターキーを適用し、ステップＳ１１において、情報記録媒体１０から取得した暗号化ディスクキー（Ｓｅｃｕｒｅｄ  Ｄｉｓｃ  Ｋｅｙ）１１の復号処理を実行し、ディスクキーを取得し、ステップＳ１２において取得したディスクキーを適用して情報記録媒体１０から取得した暗号化タイトルキー１２の復号処理を実行してタイトルキーを取得し、取得したタイトルキーを適用してステップＳ１３において、スクランブルＭＰＥＧデータ１３のスクランブル解除処理を実行した後、ステップＳ１４においてＭＰＥＧデコード処理を実行して音声／映像データ２５を再生する。
【００１３】
次に、コンテンツ再生処理プログラムとしてのプレーヤアプリケーションを実行するホスト（例えばＰＣ）に接続されたドライブからコンテンツをホスト（ＰＣ）側に入力し、ホストのプレーヤアプリケーションによってコンテンツ再生を行なう処理シーケンスについて図２を参照して説明する。
【００１４】
図２に示すように、情報記録媒体を装着したドライブ３０とホスト側のプレーヤアプリケーション４０間で、図に示すステップＳ３１，Ｓ４１において、相互認証および鍵共有（ＡＫＥ：Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ａｎｄ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）を実行する。相互認証処理は、例えば公開鍵暗号方式に従ったアルゴリズムに従って実行される。相互認証においてセッションキーが生成され、ドライブ３０とＰＣ側のプレーヤアプリケーション４０がセッションキーを共有する。
【００１５】
ドライブ３０は、ステップＳ３２において、セッションキーを適用して情報記録媒体１０から取得した暗号化ディスクキー１１の再暗号化を実行して、プレーヤアプリケーション４０に送信し、また、ステップＳ３３においてセッションキーを適用して情報記録媒体から取得した暗号化タイトルキー１２の再暗号化を実行して、プレーヤアプリケーション４０に送信する。ドライブ３０と、プレーヤアプリケーション４０の実行装置としてのＰＣは接続バス、例えばＡＴＡＰＩ−ＢＵＳによって接続されており、接続バスを介してこれらの暗号化鍵情報がホスト（ＰＣ）のプレーヤアプリケーション４０側に送信される。
【００１６】
さらに、ドライブ３０は、情報記録媒体から取得し、ＣＳＳ方式に基づくスクランブル処理のなされたコンテンツであるスクランブルＭＰＥＧデータ１３を、ドライブとＰＣ間の接続バスを介してＰＣ側に出力する。
【００１７】
ＰＣ側のプレーヤアプリケーション４０は、ステップＳ４２において、セッションキーを用いて、ドライブ３０から受領した暗号化ディスクキー１１のセッションキーによる再暗号化データを復号して暗号化ディスクキー１１を取得し、さらに、ステプＳ４３において、ドライブ３０から受領した暗号化タイトルキー１２のセッションキーによる再暗号化データを復号して暗号化タイトルキー１２を取得する。
【００１８】
その後のステップＳ５１〜Ｓ５５の処理は、先に図１を参照して説明した処理（Ｓ１１〜Ｓ１４）と同様の処理となる。
【００１９】
この図２に示す処理におけるドライブ側の処理をフローで示した図を図３に示す。ステップＳ６１において情報記録媒体（ディスク）が挿入されたと判定されると、ステップＳ６２において、ホスト、すなわち図２に示すプレーヤアプリケーション４０を実行するＰＣと相互認証および鍵共有（ＡＫＥ：Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ａｎｄ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）を実行する。
【００２０】
相互認証および鍵共有（ＡＫＥ）に成功（ステップＳ６３：Ｙｅｓ）すると、ドライブに装着した情報記録媒体の格納コンテンツであるＣＳＳスクランブルデータの出力が許可された状態に移行し、このＣＳＳスクランブルデータの出力許可状態が、情報記録媒体が排出されるまで、あるいは電源がオフされるまで継続されることになる。
【００２１】
このように、ドライブは、コンテンツ出力先の機器との相互認証が成立する前は、ＣＳＳスクランブルデータの出力が許可されない状態に設定され、コンテンツ出力先の機器との相互認証が成立した以降は、ＣＳＳスクランブルデータの出力が許可された状態に設定され、この出力許可状態は情報記録媒体が排出されるまであるいは電源がオフされるまで継続される。
【００２２】
このようなドライブからのコンテンツ出力の許容状態により、図４に示すコンテンツの不正利用が発生し得る。
【００２３】
図４（１）は、ドライブからのコンテンツ出力先であるＰＣ等のホスト側のアプリケーションの切り替えによるコンテンツの迂回利用例を示している。
【００２４】
ホスト（ＰＣ）６０側の処理（ステップＳ７１〜Ｓ７３）について説明する。ステップＳ７１において、情報記録媒体を装着したドライブ５０とホスト（ＰＣ）６０の正規のプレーヤアプリケーション間で相互認証を実行する。この相互認証の成立により、ドライブ５０は、ＣＳＳスクランブルデータの出力許可状態に設定される。
【００２５】
ステップＳ７２において、ドライブ５０からＣＳＳスクランブルデータを含む音声／映像（Audio/Video）データを読み出し、ハードディスクに格納する。
【００２６】
ステップＳ７３において、アプリケーションを切り替えて、ＣＳＳ解除ソフトウェアを適用して、ハードディスクに格納されたＣＳＳスクランブルデータのスクランブル解除処理を実行する。
【００２７】
このような処理によってスクランブル解除が可能であり、スクランブル解除のなされた平文コンテンツは無制限に利用され得る。
【００２８】
図４（２）に示す処理は、ホスト（ＰＣ）とドライブ間の接続バス、例えばＡＴＡＰＩ−ＢＵＳの盗聴処理によるコンテンツの不正利用例を示している。
【００２９】
ホスト（ＰＣ）６０側の処理（ステップＳ８１〜Ｓ８３）について説明する。ステップＳ８１において、情報記録媒体を装着したドライブ５０とホスト（ＰＣ）６０の正規のプレーヤアプリケーション間で相互認証を実行し、コンテンツの取得、再生を実行する。
【００３０】
コンテンツは、ＣＳＳスクランブルデータとして、ホスト（ＰＣ）とドライブ間の接続バス、例えばＡＴＡＰＩ−ＢＵＳを介して入力される。
【００３１】
ホスト６０は、ステップＳ８２において、ホスト（ＰＣ）とドライブ間の接続バスのモニタリングを実行し、モニタリングによって取得したデータ、すなわち、ＣＳＳスクランブルデータをハードディスクに格納する。
【００３２】
ステップＳ６３において、ＣＳＳ解除ソフトウェアを適用して、ハードディスクに格納されたＣＳＳスクランブルデータのスクランブル解除処理を実行する。
【００３３】
このような処理によってスクランブル解除されたコンテンツの取得が可能であり、スクランブル解除のなされた平文コンテンツは無制限に利用され得る。
【００３４】
このように、現行のコンテンツ・スクランブルシステム（ＣＳＳ）は、確実なコンテンツの不正利用の排除ができない。特に、上述したように情報記録媒体を装着したドライブからコンテンツをＰＣなどの情報処理装置に出力して再生する際のコンテンツの不正利用が発生しやすいという問題点が存在する。
【発明の開示】
【発明が解決しようとする課題】
【００３５】
本発明は、上述の問題点に鑑みてなされたものであり、ドライブとホストなど２つの異なるデバイス間のデータ転送を伴うコンテンツの再生あるいは記録処理において、データ転送を実行するデバイス間の相互認証に適用する公開鍵証明書の有効性判定を厳格に実行することにより、コンテンツの不正利用の排除を可能とした情報処理装置、および情報処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
【００３６】
さらに、詳細には、デジタルコンテンツの送り側（ソース）デバイスから受け取り側（シンク）デバイスへのコンテンツ転送を行なう場合に、デバイス間で公開鍵暗号をベースとした相互認証を実施し、相互認証において適用する各デバイスの公開鍵証明書の有効性を判断するため証明書（認定デバイスグループ証明書）を参照する。この際、古い証明書（認定デバイスグループ証明書）の適用を排除するため、証明書の新旧判定を、例えば登録デバイス数、あるいは無効（リボーク）デバイス数などのデータに基づいて実行することにより、古い証明書を適用した不正な認証処理に基づく不正なコンテンツ利用の排除を可能とし、さらに、ホストにおいてドライブとの認証回数をカウントし、認証回数が予め定めた上限値に達した場合に認証処理の実行を停止し、証明書の取得を促す構成とすることにより、古い証明書の継続的利用を排除することを可能とした情報処理装置、および情報処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
【課題を解決するための手段】
【００３７】
本発明の第１の側面は、
情報処理装置であり、
認定デバイス証明書を格納する証明書記憶部と、
デバイスの認証処理を実行し、該認証処理において前記認定デバイス証明書を適用した処理を実行する認証実行部と、
前記認証実行部を介して実行される認証回数をカウントし、カウント値を格納するカウント値記憶部とを有し、
前記認証実行部は、認証回数カウント値が予め設定された認証回数上限値に達していないことを条件として認証処理を実行する構成であることを特徴とする情報処理装置にある。
【００３８】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、さらに、前記カウント値記憶部に格納された認証回数カウント値が予め設定された認証回数上限値に達している場合に、通信部を介した認定デバイス証明書の取得処理により前記証明書記憶部に格納された認定デバイス証明書の更新処理を実行する更新実行部を有する構成であることを特徴とする。
【００３９】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、前記更新実行部による認定デバイス証明書の更新処理に伴い、前記カウント値記憶部の認証回数カウント値のリセット処理を実行する構成であることを特徴とする。
【００４０】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、前記更新実行部による認定デバイス証明書の取得は、ネットワーク接続されたサーバからの取得処理として実行する構成であることを特徴とする。
【００４１】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、前記更新実行部は、外部から取得した認定デバイス証明書の正当性確認処理を実行し、正当性の確認された場合に前記証明書記憶部に格納された認定デバイス証明書の更新処理を実行する更新実行部を有する構成であることを特徴とする。
【００４２】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、前記情報処理装置は、認証回数カウント値が予め設定された認証回数上限値に達している場合にユーザに対する通知処理を実行する構成であることを特徴とする。
【００４３】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、前記情報処理装置は、前記更新実行部が外部から取得した証明書の少なくとも一部の証明書データを認証処理相手としてのドライブに格納する証明書データとしてドライブに出力する構成であることを特徴とする。
【００４４】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、前記ドライブに格納する証明書データは、認定デバイス証明書の新旧比較に適用するデータを含む証明書であることを特徴とする。
【００４５】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、前記認定デバイス証明書の新旧比較に適用するデータは、認定デバイス証明書に記録されるシーケンスナンバー、または登録デバイス数、または無効（リボーク）デバイス数のいずれかのデータであることを特徴とする。
【００４６】
さらに、本発明の第２の側面は、
情報処理方法であり、
記憶部に格納された認証回数カウント値と予め設定された認証回数上限値との比較処理を実行する比較ステップと、
認証回数カウント値が予め設定された認証回数上限値に達していないとの比較結果が得られたことを条件として認証処理を実行する認証ステップと、
を有することを特徴とする情報処理方法にある。
【００４７】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、前記認証ステップの完了に伴い、記憶部に格納された認証回数カウント値をカウントアップする処理を実行するステップを有することを特徴とする。
【００４８】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、前記カウント値記憶部に格納された認証回数カウント値が予め設定された認証回数上限値に達している場合に、通信部を介した認定デバイス証明書の取得処理を実行し、証明書記憶部に格納された認定デバイス証明書の更新処理を実行する更新ステップを有することを特徴とする。
【００４９】
さらに、本発明の情報処理方法の一実施態様において、前記更新ステップにおける認定デバイス証明書の更新処理に伴い、前記カウント値記憶部の認証回数カウント値のリセット処理を実行することを特徴とする。
【００５０】
さらに、本発明の情報処理方法の一実施態様において、前記更新ステップにおける認定デバイス証明書の取得は、ネットワーク接続されたサーバからの取得処理として実行することを特徴とする。
【００５１】
さらに、本発明の情報処理方法の一実施態様において、前記更新ステップは、外部から取得した認定デバイス証明書の正当性確認処理を実行し、正当性の確認された場合に前記証明書記憶部に格納された認定デバイス証明書の更新処理を実行することを特徴とする。
【００５２】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、認証回数カウント値が予め設定された認証回数上限値に達している場合にユーザに対する通知処理を実行することを特徴とする。
【００５３】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、前記更新ステップにおいて外部から取得した証明書の少なくとも一部の証明書データを認証処理相手としてのドライブに格納する証明書データとしてドライブに出力するステップを有することを特徴とする。
【００５４】
さらに、本発明の情報処理方法の一実施態様において、前記ドライブに格納する証明書データは、認定デバイス証明書の新旧比較に適用するデータを含む証明書であることを特徴とする。
【００５５】
さらに、本発明の情報処理方法の一実施態様において、前記認定デバイス証明書の新旧比較に適用するデータは、認定デバイス証明書に記録されるシーケンスナンバー、または登録デバイス数、または無効（リボーク）デバイス数のいずれかのデータであることを特徴とする。
【００５６】
さらに、本発明の第３の側面は、
コンピュータ・プログラムであり、
記憶部に格納された認証回数カウント値と予め設定された認証回数上限値との比較処理を実行する比較ステップと、
認証回数カウント値が予め設定された認証回数上限値に達していないとの比較結果が得られたことを条件として認証処理を実行する認証ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【００５７】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータ・システムに対して、コンピュータ可読な形式で提供する記録媒体、通信媒体、例えば、ＣＤやＦＤ、ＭＯなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【００５８】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００５９】
本発明の構成によれば、ドライブとホストなど２つの異なるデバイス間のデータ転送を伴うコンテンツの再生あるいは記録処理において、データ転送を実行するデバイス間の相互認証において、認証回数をカウントし、予め定めた認証回数上限値に達した場合に、認証処理を中止して、認証に適用する証明書の更新を必要とする設定としたので、古い証明書を適用した認証処理の継続によるコンテンツ利用を排除し、最新の証明書の取得を促すことが可能となる。
【００６０】
本発明の構成では、接続デバイス間において、コンテンツの送り側（ソース）デバイスから受け取り側（シンク）デバイスへのコンテンツ転送を行なう場合に実行する公開鍵暗号方式の相互認証において適用する各デバイスの公開鍵証明書の有効性を判断するため認定デバイスグループ証明書を適用する。さらに、この認定デバイスグループ証明書の新旧判定に、認定デバイスグループ証明書の集合として設定される認定デバイスグループリスト（登録リスト）の登録デバイス数、あるいは無効（リボーク）デバイス数などを登録データとして設定したＡＤＧＬインフォメーション証明書（ＡＩＣ）を適用する構成とし、登録デバイス数が多いものを新しいとみなす、あるいは、無効デバイス数の多いものを新しいとみなすなど、登録情報の登録または無効デバイス数の変化状況に基づいて認定デバイスグループ証明書の最新性を判定する構成として、新しい認定デバイスグループ証明書を適用してデバイスの公開鍵証明書の有効性を判定し相互認証を実行する構成とし、さらに認証回数をカウントし、予め定めた認証回数上限値に達した場合に、認証処理を中止して、認証に適用する証明書の更新を必要とする設定としたので、古い認定デバイス証明書を適用した認証処理、不正なコンテンツ入手が防止され、コンテンツの不正利用が排除される。
【００６１】
また、登録デバイス数、あるいは無効（リボーク）デバイス数などを登録データとして設定したＡＤＧＬインフォメーション証明書（ＡＩＣ）に基づいて、適宜、情報処理装置が保管する認定デバイスグループリスト（登録リスト）の更新処理を実行する構成としたので、コンテンツ再生あるいは記録処理を実行する情報処理装置の保管リストを随時更新することが可能となる。
【００６２】
さらに、登録デバイス数または無効デバイス数を各証明書の新旧判定に適用することで、ドライブやホストの証明書格納用の不揮発性メモリとして使用されるフラッシュメモリの書き換え回数を減少させることができる。すなわち、シーケンスナンバーによる新旧判定の場合は、シーケンスナンバーが変更された場合は全て更新することになり、フラッシュメモリの使用頻度が多くなるが、登録デバイス数または無効デバイス数を各証明書の新旧判定に適用することで、登録デバイス数や無効デバイス数が不変の場合はドライブやホストにおいて証明書更新を行う必要がなく、フラッシュメモリの書き換え回数が減少することになる。従って小型で安価なメモリの搭載が可能となる。
【発明を実施するための最良の形態】
【００６３】
以下、図面を参照しながら本発明の情報処理装置、および情報処理方法、並びにコンピュータ・プログラムの詳細について説明する。なお、説明は、以下の記載項目に従って行う。
１．情報記録媒体の格納データ
２．コンテンツ再生処理概要
３．ドライブとホスト間のコンテンツ転送を伴う処理
４．認証回数のカウントおよび証明書更新処理
５．情報処理装置の構成
【００６４】
［１．情報記録媒体の格納データ］
まず、情報記録媒体の格納データについて説明する。図５にコンテンツの格納された情報記録媒体の一例を示す。
【００６５】
このディスクは、例えば、Ｂｌｕ−ｒａｙディスク、ＤＶＤなどの情報記録媒体であり、正当なコンテンツ著作権、あるいは頒布権を持ついわゆるコンテンツ権利者の許可の下にディスク製造工場において製造された正当なコンテンツを格納した情報記録媒体、あるいは、コンテンツを記録可能な情報記録媒体である。なお、以下の実施例では、情報記録媒体の例としてディスク型の媒体を例として説明するが、本発明は様々な態様の情報記録媒体の適用が可能である。
【００６６】
図５に示すように、情報記録媒体１００は、コンテンツ等のデータを格納するデータ格納領域１０１と、ディスクおよび格納コンテンツに対応する付帯情報、コンテンツの復号処理に適用する鍵情報、さらにコンテンツの再生や記録処理を実行するデバイス、すなわちドライブやＰＣ等のホスト、ホストアプリケーションなどの登録情報などを格納するリードイン領域１０２を持つ。
【００６７】
データ格納領域１０１には、暗号化（スクランブル）コンテンツ１１１と、暗号化コンテンツの復号処理に適用する鍵の生成に必要となる情報としての記録シード（ＲＥＣ  ＳＥＥＤ）であるユニットキー生成情報：Ｖｕ１１２が格納される。なお、スクランブル処理は、暗号化処理の一態様であり、本明細書ではスクランブルコンテンツの上位概念として、暗号化コンテンツという表現を用いる。暗号化コンテンツ１１１は、所定のユニット単位に区分され、ユニットに対応付けられたユニットキーを適用した暗号化がなされた状態で、情報記録媒体１００のデータ格納領域１０１に格納される。ユニットキー生成情報：Ｖｕ１１２は、これらの各ユニットキーの生成に適用する情報でありシード情報とも呼ばれる。
【００６８】
リードイン領域１０２には、暗号化コンテンツ１１１の復号処理に適用する鍵の生成に必要となる各種情報が格納される。その１つは、ＲＯＭマーク：Ｖｅ１１４である。ＲＯＭマーク：Ｖｅ１１４は物理インデックス（Ｐｈｙｓｉｃａｌ  Ｉｎｄｅｘ）とも呼ばれ、書き換えの不可能な固定情報である。リードイン領域１０２には、さらに、暗号鍵情報１２０が格納される。
【００６９】
暗号鍵情報１２０は、前述のユニットキー生成情報：Ｖｕ１１２、ＲＯＭマーク：Ｖｅ１１４と同様、情報記録媒体のデータ格納領域１０１に格納された暗号化コンテンツ１１１の復号処理に適用する鍵を生成するための鍵情報（鍵生成情報）によって構成される。
【００７０】
すなわち、暗号化コンテンツ１１１の復号処理に適用する鍵として、例えば情報記録媒体に格納されたコンテンツに対応する鍵として設定されるメディアキー：Ｋｍを取得するために必要となる暗号鍵ブロックであるＲＫＢ（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)に記載される方法がある。
【０２０７】
図２５に示す処理シーケンスについて説明する。ステップＳ４０１において、ホストは、ドライブに対して乱数生成処理によって生成したチャレンジデータ［Ｃ＿ｈｏｓｔ］と、公開鍵証明書［Ｃｅｒｔ＿ｈｏｓｔ］を送信する。公開鍵証明書［Ｃｅｒｔ＿ｈｏｓｔ］は、図１４（ｂ）に示す公開鍵証明書である。
【０２０８】
このデータを受け取ったドライブ側は、公開鍵証明書［Ｃｅｒｔ＿ｈｏｓｔ］の署名検証処理により、公開鍵証明書［Ｃｅｒｔ＿ｈｏｓｔ］の正当性を検証する。署名検証処理は、ドライブの保持する管理センタの公開鍵［Ｋｐ＿ｋｉｃ］４０１（図２４参照）を適用して実行される。
【０２０９】
公開鍵証明書［Ｃｅｒｔ＿ｈｏｓｔ］の正当性が検証されると、公開鍵証明書［Ｃｅｒｔ＿ｈｏｓｔ］から公開鍵証明書ＩＤを取得して、ホストの登録情報を格納した認定デバイスグループ証明書（ＡＤＧＣ）の認定公開鍵証明書情報を参照し、ホストの公開鍵証明書ＩＤが無効化（リボーク）されていない有効なＩＤであるか否かを確認する。ここで適用される認定デバイスグループ証明書（ＡＤＧＣ）は、先の登録情報更新処理において、各種の証明書の新旧比較が実行されて更新された証明書である。
【０２１０】
公開鍵証明書［Ｃｅｒｔ＿ｈｏｓｔ］の正当性が確認されなかったり、あるいは、認定デバイスグループ証明書（ＡＤＧＣ）に基づいて、ホストが登録されていない、もしくは登録されているが無効化（リボーク）されていることが判明した場合にはエラーメッセージの通知などを実行し、処理を終了する。以後のコンテンツ、出力、再生処理は中止される。
【０２１１】
公開鍵証明書［Ｃｅｒｔ＿ｈｏｓｔ］の正当性が確認され、ホストが登録されており、かつ無効化（リボーク）されていない正当な公開鍵証明書を有するホストであることが確認されると、ステップＳ４０２において、ドライブは、ホストに対して乱数生成処理によって生成したチャレンジデータ［Ｃ＿ｄｒｉｖｅ］と、ドライブ側の公開鍵証明書［Ｃｅｒｔ＿ｄｒｉｖｅ］を送信する。
【０２１２】
ホストは、ドライブ側の公開鍵証明書［Ｃｅｒｔ＿ｄｒｉｖｅ］の署名検証を実行する。署名検証処理は、ホスト側で保持する管理センタの公開鍵［Ｋｐ＿ｋｉｃ］５０１（図２４参照）を適用して実行される。
【０２１３】
公開鍵証明書［Ｃｅｒｔ＿ｄｒｉｖｅ］の正当性が確認されると、公開鍵証明書［Ｃｅｒｔ＿ｄｒｉｖｅ］から公開鍵証明書ＩＤを取得して、ドライブの登録情報を格納した認定デバイスグループ証明書（ＡＤＧＣ）の認定公開鍵証明書情報を参照し、ドライブの公開鍵証明書ＩＤが登録されており、かつ無効化（リボーク）されていない有効なＩＤであるか否かを確認する。ここで適用される認定デバイスグループ証明書（ＡＤＧＣ）は、先の登録情報更新処理において、各種の証明書の新旧比較が実行されて更新された証明書である。
【０２１４】
公開鍵証明書［Ｃｅｒｔ＿ｄｒｉｖｅ］の正当性が確認されなかったり、あるいは、認定デバイスグループ証明書（ＡＤＧＣ）に基づいて、ドライブが登録されていない、もしくは登録されているが無効化（リボーク）されていることが判明した場合にはエラーメッセージの通知などを実行し、処理を終了する。以後のコンテンツ、出力、再生処理は中止される。
【０２１５】
公開鍵証明書［Ｃｅｒｔ＿ｄｒｉｖｅ］の正当性が確認された場合には、ホストは、ドライブから受信したチャレンジデータ［Ｃ＿ｄｒｉｖｅ］に基づく演算を実行しパラメータ［Ａ＿ｈｏｓｔ］を算出し、新たに生成した乱数［Ｒ＿ｈｏｓｔ］とともに、ドライブに送信（ステップＳ４０３）する。
【０２１６】
一方、ドライブは、ホストから受信したチャレンジデータ［Ｃ＿ｈｏｓｔ］に基づく演算を実行しパラメータ［Ａ＿ｄｒｉｖｅ］を算出し、新たに生成した乱数［Ｒ＿ｄｒｉｖｅ］とともに、ホストに送信（ステップＳ４０４）する。
【０２１７】
この処理により、ドライブ、ホストの双方は、乱数[Ｒ_ｈｏｓｔ]、［Ｒ＿ｄｒｉｖｅ］、パラメータ［Ａ＿ｈｏｓｔ］、［Ａ＿ｄｒｉｖｅ］を共有することになり、ドライブと、ホストアプリケーションの双方は、これらの共有データに基づいて共通のセッションキーＫｓを生成（ステップＳ４０５）する。
【０２１８】
ドライブは、さらに、ステップＳ４０６において、乱数に基づいて生成したバスキー：Ｋｂｕｓ、およびバスキーのシーケンス番号：ＳＥＱとの連結データ：［Ｋｂｕｓ‖ＳＥＱ］に、この連結データの改竄検証用データとして算出したハッシュ値［ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］をセッションキー：Ｋｓを用いて暗号化したデータ：ＥＫｓ［（Ｋｂｕｓ‖ＳＥＱ），ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］をホストアプリケーションに送信する。なお、このステップＳ４０６の処理は、図２４において、ステップＳ２０６のバスキー生成処理（Ｇｅｎａｒａｔｅ＿Ｋｂｕｓ）と、ステップＳ２０７のセッションキー：Ｋｓによるバスキーの暗号化処理（ＡＥＳ＿Ｅ）の処理に相当する。
【０２１９】
バスキー：Ｋｂｕｓは、暗号化コンテンツのドライブからホスト側への接続バスを介した転送処理の際の暗号化キーとして用いられる鍵であり、ドライブにおいて乱数に基づいて生成される。バスキーは、例えばディスク挿入検出後の最初の相互認証において乱数生成され、ディスクが排出される、または電源停止まで同じ値が利用される場合や、例えば相互認証のたびに異なるバスキーへ切り替える場合がある。これらの各々の相互認証において、バスキーのすり替え防止を目的として、各バスキー転送に応じたシーケンス番号が対応付けられる。
【０２２０】
図２４に戻り、ドライブ４００が情報記録媒体から取得したコンテンツ等のデータを接続バスを介してホスト５００に転送して再生する処理シーケンスについて説明を続ける。
【０２２１】
ドライブ４００は、ホスト５００との相互認証および鍵交換（ＡＫＥ）が終了すると、ドライブ内に保持するデバイスキー：Ｋｄｅｖ４０４を適用し、ステップＳ２０２において、情報記録媒体２００から読み出した暗号鍵ブロックとしてのＲＫＢ２０２の復号処理を実行して、ＲＫＢ２０２からメディアキー：Ｋｍを取得する。なお、ＲＫＢ２０２からメディアキー：Ｋｍを取得できるのは、コンテンツの利用を認められた機器のみであり、前述したように不正機器としてリボークされた機器の持つデバイスキーではＲＫＢの復号が出来ず、メディアキー：Ｋｍを取得することができない。
【０２２２】
ステップＳ２０２においてメディアキー：Ｋｍの取得に成功すると、次に、ステップＳ２０３において、取得したメディアキー：Ｋｍを適用して、情報記録媒体２００から取得した暗号化ディスクキー：ＥＫｍ（Ｋｄ）２０３の復号処理を実行し、ディスクキー：Ｋｄを取得する。
【０２２３】
次にステップＳ２０４において、取得したディスクキー：Ｋｄと、情報記録媒体２００から取得したＲＯＭマーク：Ｖｅ２０４に基づく鍵生成処理、例えばＡＥＳ暗号アルゴリズムに従った鍵生成処理を実行してエンベデッドキー：Ｋｅを生成する。ＡＥＳ暗号アルゴリズムに従った鍵生成処理は、先に図１０を参照して説明した通りである。
【０２２４】
ドライブは、ステップＳ２０５において、エンベデッドキー：Ｋｅを先の相互認証および鍵交換処理（ＡＫＥ）において生成したセッションキー：Ｋｓで暗号化してホスト５００に対して接続バスを介して送信する。
【０２２５】
ステップＳ２０６、およびステップＳ２０７の処理は、先に図２５を参照して説明した相互認証および鍵交換処理（ＡＫＥ）のステップＳ４０６の処理に相当し、乱数に基づいて、バスキー：Ｋｂｕｓを生成（ステップＳ２０６）し、セッションキー：Ｋｓでバスキー：Ｋｂｕｓを含むデータを暗号化（ステップＳ２０７）して生成したデータをホスト５００に対して接続バスを介して送信する処理である。送信データは、先に図２５を参照して説明したように、乱数に基づいて生成したバスキー：Ｋｂｕｓ、およびバスキーのシーケンス番号：ＳＥＱとの連結データ：［Ｋｂｕｓ‖ＳＥＱ］と、この連結データの改竄検証用データとして算出したハッシュ値［ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］とをセッションキー：Ｋｓを用いて暗号化したデータ：ＥＫｓ［（Ｋｂｕｓ‖ＳＥＱ），ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］である。
【０２２６】
さらに、ドライブ４００は、ステップＳ２０８において、情報記録媒体２００から読み出した暗号化コンテンツ２０６のユーザ制御データ（ＵＣＤ）に含まれる出力制御情報と、相互認証および鍵交換処理（ＡＫＥ）処理において、ホスト５００から取得したホストの公開鍵証明書の格納データとに基づく出力制御を実行し、ステップＳ２０９において、暗号化コンテンツ２０６を制御態様に応じてバスキー：Ｋｂｕｓを用いて暗号化し、生成した暗号化データを接続バスを介してホスト５００に対して出力する。
【０２２７】
情報記録媒体２００から読み出される暗号化コンテンツ２０６は、例えばスクランブル処理のなされた暗号化データであり、ドライブは、このスクランブル処理されたデータをバスキー：Ｋｂｕｓを適用して再暗号化してホスト側に出力する。このバスキー：Ｋｂｕｓを適用した再暗号化処理によるデータ出力を実行することにより、バスキー：Ｋｂｕｓを保持している認証のなされたホストのみが、バスキー：Ｋｂｕｓを適用した復号が可能となり、復号処理によってコンテンツ３５０を取得することが可能となる。
【０２２８】
すなわち、先に、図４を参照して説明したように、コンテンツを入力するＰＣ（ホスト）側でのアプリケーションの切り替えによるコンテンツの迂回取得や、ドライブとホストとの接続バスの転送データを盗聴することによるコンテンツ取得を行なっても、取得されるコンテンツは、バスキー：Ｋｂｕｓによって暗号化されたデータであり、バスキー：Ｋｂｕｓを保有しているのは、ドライブとの認証の成立した特定のホストアプリケーションのみであり、その特定のホストアプリケーションを適用しない限り、入力コンテンツの復号は実行できない。ＣＳＳスクランブルの解除プログラムのみではバスキー：Ｋｂｕｓによって暗号化されたデータの復号は実行できず、コンテンツの不正利用が防止可能となる。
【０２２９】
このように、本発明のドライブ、ホスト等の装置は、前述の新旧判定に基づいて選択された新しい認定デバイスグループ証明書に従って、認証対象デバイスから取得した公開鍵証明書の有効性判定処理を実行するとともに、認証対象デバイスとの相互認証および鍵交換（ＡＫＥ）を実行し、相互認証の成立を条件として、コンテンツ通信路と、コンテンツの暗号処理に適用する鍵の通信路を含むセキュア通信路を設定し、この通信路を介してデータ通信を実行する。
【０２３０】
バスキー：Ｋｂｕｓを適用した暗号化コンテンツ２０６の暗号化処理態様について、図２６を参照して説明する。バスキー：Ｋｂｕｓを適用した暗号化コンテンツ２０６の暗号化処理は、例えば図２６に示すように、ＡＥＳ−ＣＢＣモードを適用したブロック暗号化処理によって実行される。
【０２３１】
ドライブ４００は、情報記録媒体２００から読み出される暗号化コンテンツに対して、ドライブにおいて生成したバスキー：Ｋｂｕｓを適用して、所定データブロック単位（１６バイト）で暗号化する処理を実行する。
【０２３２】
まず、情報記録媒体２００から読み出される暗号化コンテンツの構成データである２０４８バイトのセクタデータ５５０から先頭の１６バイトデータを取得し、初期値：ＩＶｂとの排他論理和（ＸＯＲ）結果を、ＡＥＳ暗号処理部［ＡＥＳ＿Ｅ］５５１に入力し、バスキー：Ｋｂｕｓを適用したＡＥＳ暗号アルゴリズムに従った暗号処理を実行して１６バイトブロックデータの暗号化データを生成する。初期値：ＩＶｂは、予め設定された定数である。ＩＶｂは、例えば、セクタデータ５５０に対応するユーザ制御データ（ＵＣＤ）から取得されるという場合もある。
【０２３３】
さらに、この生成データは、次のブロックの暗号化に適用する入力値として適用される。以下、各１６バイトのブロックデータ毎に排他論理和（ＸＯＲ）およびＡＥＳ暗号処理を同様に繰り返し実行して、バスキーによる暗号化セクタデータ５５２を生成し、このデータをＡＴＡＰＩ−ＢＵＳなどの接続バスを介してホスト５００側のアプリケーションに向けて送信する。ホスト５００側ではこの入力暗号化データを復号して再生処理を行なう。
【０２３４】
図２４に戻り、ホスト５００側の処理シーケンスについて説明する。ホスト５００は、まず、前述したようにステップＳ３０１においてドライブ４００との相互認証および鍵交換（ＡＫＥ）を実行し、セッションキー：Ｋｓを取得する。
【０２３５】
次に、ステップＳ３０２において、ドライブから接続バスを介して入力したセッションキー：Ｋｓによって暗号化されたエンベデッドキー：Ｋｅ、すなわち［ＥＫｓ（Ｋｅ）］に対して、セッションキー：Ｋｓを適用した復号処理を実行しエンベデッドキー：Ｋｅを取得する。
【０２３６】
さらに、ステップＳ３０３において、ドライブから接続バスを介して入力したユニットキー生成情報：Ｖｕに対してエンベデッドキー：Ｋｅを適用したＡＥＳ鍵生成処理（図１０参照）を実行し、ユニットキー：Ｋｕを生成する。
【０２３７】
さらに、ステップＳ３０４において、ドライブから接続バスを介して入力したセッションキー：Ｋｓによって暗号化されたバスキー：Ｋｂｕｓ、すなわち［ＥＫｓ（Ｋｂｕｓ）］に対して、セッションキー：Ｋｓを適用した復号処理を実行しバスキー：Ｋｂｕｓを取得する。
【０２３８】
なお、先に、図２５を参照して説明したように、ドライブから送信されるバスキー：Ｋｂｕｓを含むデータは、バスキー：Ｋｂｕｓおよびバスキーのシーケンス番号：ＳＥＱとの連結データ：［Ｋｂｕｓ‖ＳＥＱ］と、この連結データの改竄検証用データとして算出したハッシュ値［ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］とをセッションキー：Ｋｓを用いて暗号化したデータ：ＥＫｓ［（Ｋｂｕｓ‖ＳＥＱ），ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］である。
【０２３９】
ホスト５００のアプリケーションは、ステップＳ３０４において、データ：ＥＫｓ［（Ｋｂｕｓ‖ＳＥＱ），ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］をセッションキー：Ｋｓで復号し、バスキー：Ｋｂｕｓおよびバスキーのシーケンス番号：ＳＥＱとの連結データ：［Ｋｂｕｓ‖ＳＥＱ］と、この連結データの改竄検証用データとして算出したハッシュ値［ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］とを取得する。
【０２４０】
次に、ステップＳ３０５において、連結データ：［Ｋｂｕｓ‖ＳＥＱ］のハッシュ値を算出し、ドライブからの入力データ中に含まれるハッシュ値［ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］と比較を実行する。両ハッシュ値が一致していれば、連結データ：［Ｋｂｕｓ‖ＳＥＱ］が改竄されていないものと判定し、ステップＳ３０６におけるバスキー：Ｋｂｕｓを適用したコンテンツ復号処理に移行する。
【０２４１】
ステップＳ３０６では、ドライブ４００から入力するバスキー：Ｋｂｕｓによって再暗号化された暗号化コンテンツの復号処理を実行する。
【０２４２】
バスキー：Ｋｂｕｓによって再暗号化された暗号化コンテンツの復号処理の詳細について、図２７を参照して説明する。バスキー：Ｋｂｕｓを適用した暗号化コンテンツの復号処理は、例えば図２７に示すように、ＡＥＳ−ＣＢＣモードを適用したブロック復号処理によって実行される。
【０２４３】
ホスト５００のアプリケーションは、ドライブ４００から接続バスを介して入力する暗号化コンテンツに対して、ドライブから入力したバスキー：Ｋｂｕｓを適用して、所定データブロック単位（１６バイト）で復号する処理を実行する。
【０２４４】
まず、ドライブ４００から接続バスを介して入力する暗号化コンテンツの構成データである２０４８バイトのセクタデータ５７０から先頭の１６バイトデータを取得し、ＡＥＳ復号処理部［ＡＥＳ＿Ｄ］５７１に入力し、バスキー：Ｋｂｕｓを適用したＡＥＳ暗号アルゴリズムに従った復号処理を実行し、さらに、初期値：ＩＶｂとの排他論理和（ＸＯＲ）演算を実行して復号結果を得る。初期値：ＩＶｂは、予め設定された定数である。ＩＶｂは、例えば、セクタデータ５７０に対応するユーザ制御データ（ＵＣＤ）から取得されるという場合もある。
【０２４５】
さらに、１６バイト単位の復号結果データは、次のブロックの復号処理に適用する入力値として適用される。以下、各１６バイトのブロックデータ毎にＡＥＳ復号処理および排他論理和（ＸＯＲ）を同様に繰り返し実行して、バスキーによる暗号化を解除したセクタデータ、すなわち、情報記録媒体２００に格納されたデータ状態としての暗号化（スクランブル）セクタデータ５７２を取得する。
【０２４６】
さらに、ホスト５００は、図２４に示すステップＳ３０７において、ユニットキー：Ｋｕを適用して、情報記録媒体２００に格納されたデータ状態としての暗号化コンテンツの復号処理を実行する。この復号処理は、先に図１１を参照して説明したと同様の処理として実行される。
【０２４７】
以上の処理により、ホスト５００は、復号コンテンツ５２０を取得し、スピーカ、ディスプレイ等の出力部に対する出力処理を行いコンテンツ再生を実行する。
【０２４８】
このように、情報記録媒体のデータ読み取りを実行するドライブにおいて、情報記録媒体から読み出したスクランブル処理されたデータをバスキー：Ｋｂｕｓを適用して再暗号化してホスト側に出力する構成としたので、バスキー：Ｋｂｕｓを保持しているホスト側アプリケーション、すなわちドライブとの相互認証が成立したホストアプリケーションのみにおいてバスキー：Ｋｂｕｓを適用した復号が可能となり、復号処理による暗号化コンテンツの利用が可能となる。
【０２４９】
従って、コンテンツを入力するＰＣ（ホスト）側でのアプリケーションの切り替えによるコンテンツの迂回取得や、ドライブとホストとの接続バスの転送データを盗聴することによるコンテンツ取得を行なってもバスキー：Ｋｂｕｓによって暗号化されたデータの復号は、ドライブとの相互認証が成立し、同一のバスキー：Ｋｂｕｓを持つ唯一のアプリケーションのみが可能となるので、他のアプリケーション、例えばＣＳＳスクランブルの解除プログラムはバスキー：Ｋｂｕｓによる暗号化データの復号が不可能でありコンテンツの不正利用が防止される。
【０２５０】
次に、図２８、図２９を参照して、コンテンツ再生処理におけるドライブとホスト各々の処理シーケンスについて説明する。
【０２５１】
まず、図２８を参照して、ドライブからホストに対するコンテンツ出力を制御するシーケンスについて説明する。
【０２５２】
図２８のフローの各ステップについて説明する。まず、ステップＳ５１１においてドライブに対する情報記録媒体（ディスク）の挿入を検知し、ステップＳ５１２において、バス接続されたホスト側でのコンテンツ再生処理を実行するホストアプリケーションの起動を検知する。これらが検知されたことを条件として、ステップＳ５１３に進み、ホスト側からの相互認証要求を待機し、相互認証要求を受信すると、ステップＳ５１４において、先に説明した登録情報の更新処理と公開鍵暗号方式に従った相互認証および鍵交換（ＡＫＥ）処理を実行する。なお、登録情報の更新処理は、相互認証要求をホストから受信する以前に実行してもよい。
【０２５３】
ステップＳ５１５において、相互認証および鍵交換（ＡＫＥ）処理の完了が確認されると、ステップＳ５１６に進み、ドライブは、バスキー：Ｋｂに対応する乱数Ｒの生成処理を実行し、この生成乱数Ｒをバスキー：Ｋｂとする。この処理は、図２４におけるステップＳ２０６の処理に相当する。なお、バスキー：Ｋｂには、シーケンス番号が対応付けられ、バスキーのすり替えを防止する。
【０２５４】
ステップＳ５１７において、ホスト側からバスキーの転送要求を受領すると、ステップＳ５１８において、バスキー：Ｋｂをホスト側に転送する。この処理は、図２４におけるステップＳ２０７の処理に相当する。なお、このバスキー転送は、図２５の相互認証および鍵交換（ＡＫＥ）処理の最終ステップＳ４０６に相当する処理であり、ドライブは、バスキー：Ｋｂｕｓおよびバスキーのシーケンス番号：ＳＥＱとの連結データ：［Ｋｂｕｓ‖ＳＥＱ］と、この連結データの改竄検証用データとして算出したハッシュ値［ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］とをセッションキー：Ｋｓを用いて暗号化したデータ：ＥＫｓ［（Ｋｂｕｓ‖ＳＥＱ），ｈａｓｈ（Ｋｂｕｓ‖ＳＥＱ）］を生成してホスト側に送信する。
【０２５５】
次に、ステップＳ５１９では、新たな相互認証要求がないことを確認し、また、ステップＳ５２０では、情報記録媒体の排出がなされないことを確認して、ステップＳ５２１において、ホスト側のコンテンツ取得要求、すなわちセクタデータの読み取り要求がなされるまで待機する。
【０２５６】
なお、ステップＳ５１９において、新たな相互認証要求があった場合は、ステップＳ５１４に戻り相互認証および鍵交換（ＡＫＥ）処理を実行し、新たなセッションキーの生成、バスキーの送信を実行する。この際に生成するバスキーは、シーケンス番号：２のバスキーであり、先に生成したバスキー（シーケンス番号１）とは同じバスキーとなる。
【０２５７】
なお、ステップＳ５２０において、ドライブからのディスク排出があったと判定した場合は、ステップＳ５１１に戻り、初期状態に設定され、生成済みのバスキー、セッションキー等のすべてのデータはリセット、すなわち消去される。
【０２５８】
ステップＳ５２１において、ホスト側からセクタデータの読み出し要求があると、ドライブは、ステップＳ５２２において、読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）から出力制御情報を読み取り、［バスプロテクションフラグ：ＢＰＦ］の値を判定する。この処理は、図２４のステップＳ２０８の処理に相当する。
【０２５９】
バスプロテクションフラグ：ＢＰＦは、先に図８を参照して説明したように、
ＢＰＦ＝１：出力制限あり、バス暗号化あり、
ＢＰＦ＝０：出力制限なし、
の設定情報である。
【０２６０】
ステップＳ５２２において、読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）の出力制御情報中のバスプロテクションフラグ：ＢＰＦが［１］に設定されていると判定した場合は、ステップＳ５２３に進み、情報記録媒体から読出したセクタデータをバスキー：Ｋｂｕｓで暗号化して、ステップＳ５２４においてホスト側に出力する。なお、ステップＳ５２３におけるセクタデータの暗号化処理は、例えば、先に図２６を参照して説明したＡＥＳ−ＣＢＣモードを適用した暗号化処理として実行される。
【０２６１】
ステップＳ５２２において、読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）の出力制御情報中のバスプロテクションフラグ：ＢＰＦが［０］に設定されていると判定した場合は、ステップＳ５２３をスキップし、情報記録媒体から読出したセクタデータのバスキー：Ｋｂｕｓによる暗号化処理を実行することなく、ステップＳ５２４において、情報記録媒体からの読出しコンテンツをそのままホスト側に出力する。なお、この読出しコンテンツは、例えばプレイリストやファイルシステム情報などである。
【０２６２】
このように、ドライブは、読み出し対象のセクタデータに対応するセクタヘッダ（ユーザ制御データ）の出力制御情報中のバスプロテクションフラグ：ＢＰＦが［０］か［１］かに基づいてバスキーによる暗号化の要否を判定し、バスキーによる暗号化の必要なデータである場合に、出力コンテンツのバスキーによる暗号化を実行して出力する。
【０２６３】
次に、図２９を参照して、ホスト側の処理について説明する。ステップＳ５５１において、再生アプリケーション・プログラムを起動し、ステップＳ５５２においてディスクがドライブに挿入されたことの通知を受領すると、登録情報の更新処理およびドライブとの相互認証、セッションキーの共有処理を実行する。
【０２６４】
ステップＳ５５４において、相互認証および鍵交換（ＡＫＥ）処理の完了が確認されると、ステップＳ５５５に進み、ホストは、ドライブに対して、エンベデッドキー：Ｋｅを要求する。エンベデッドキー：Ｋｅは、ディスクキー：Ｋｄと、情報記録媒体から取得したＲＯＭマーク：Ｖｅに基づく鍵生成処理、例えばＡＥＳ暗号アルゴリズムに従った鍵生成処理によってドライブで生成される鍵であり、セッションキーＫｓによって暗号化されてホストに送信される。
【０２６５】
ステップＳ５５６において、暗号化されたエンベデッドキー：Ｋｅをドライブから受信すると、ステップＳ５５７において、セッションキーＫｓを適用して復号を実行し、エンベデッドキー：Ｋｅを取得する。さらに、ホストはステップＳ５５８において、暗号化コンテンツの復号処理に適用する鍵の生成に必要となる情報としての記録シード（ＲＥＣ  ＳＥＥＤ）であるユニットキー生成情報：Ｖｕの転送をドライブに要求し、ステップＳ５５９においてユニットキー生成情報：Ｖｕを受信すると、ステップＳ５６０において、エンベデッドキー：Ｋｅとユニットキー生成情報：Ｖｕとに基づいてユニットキー：Ｋｕを生成する。この処理は、図２４のステップＳ３０３の処理に相当する。
【０２６６】
次にホストは、ステップＳ５６１においてバスキー：Ｋｂｕｓの送信要求をドライブに出力し、ステップＳ５６２において、接続バスを介して入力したセッションキー：Ｋｓによって暗号化されたバスキー：Ｋｂｕｓを取得すると、ステップＳ５６３において、セッションキー：Ｋｓを適用した復号処理を実行しバスキー：Ｋｂｕｓを取得する。この処理は、図２４のステップＳ３０５の処理に相当する。
【０２６７】
次に、ＰＣの再生ソフトウェアの完了（Ｓ５６４）がなされておらず、ディスク排出がない（Ｓ５６５）ことの確認の後、ユーザの指示などによりセクタデータの読み出しを行うと判定した場合（Ｓ５６６：Ｙｅｓ）は、ステップＳ５６７においてドライブに対してセクタデータの転送要求を出力する。
【０２６８】
ドライブからセクタデータを受信（Ｓ５６８）し、データが暗号化データである場合（Ｓ５６９：Ｙｅｓ）は、ステップＳ５７０でバスキー：Ｋｂｕｓによって暗号化された暗号化コンテンツの復号処理を実行する。
【０２６９】
バスキー：Ｋｂｕｓによって暗号化された暗号化コンテンツの復号処理は、先に図２７を参照して説明した通り、例えば、ＡＥＳ−ＣＢＣモードを適用したブロック復号処理によって実行される。
【０２７０】
さらに、ホストは、ステップＳ５７１において、ユニットキー：Ｋｕを適用して暗号化コンテンツの復号処理を実行する。この復号処理は、先に図１１を参照して説明したと同様の処理として実行される。以上の処理により、ホストは、復号コンテンツを取得し、コンテンツ再生を実行する。
【０２７１】
上述した説明においては、情報記録媒体からのデータ再生処理を中心として説明したが、ホストが生成あるいは外部から取得したデータをドライブを介して情報記録媒体に記録する場合にも、ドライブとホスト間では相互認証が実行される。この場合にも上述した登録情報の更新、すなわち、ＡＤＧＬインフォメーション証明書（ＡＩＣ）と認定デバイスグループリスト（ＡＤＧＬ）との更新処理を実行する。更新処理態様としては、
（１）ＡＤＧＬシーケンスナンバーに基づく更新処理
（２）ＡＩＣデータ＝登録デバイス数に基づく更新処理
（３）ＡＩＣデータ＝無効（リボーク）デバイス数に基づく更新処理
の３態様のいずれかが実行されることになる。
【０２７２】
図３０を参照して、情報記録媒体２００に対するデータ記録処理を実行する際の登録情報の更新処理例として、ＡＩＣデータ＝無効（リボーク）デバイス数に基づく更新処理シーケンスを説明する。
【０２７３】
図３０は、情報記録媒体２００に対してコンテンツ２５３をドライブ４００を介してホスト５００から入力して記録する際に、ＡＤＧＬインフォメーション証明書（ＡＩＣ）と、認定デバイスグループリスト（ＡＤＧＬ）とをＡＩＣデータ（無効デバイス数）に基づいて更新し、ドライブ４００とホスト５００間の相互認証および鍵交換（ＡＫＥ）を更新情報に基づいて実行する処理について説明する図である。なお、コンテンツの出力元がソースであり、コンテンツの入力先がシンクである。この例では、ホスト５００がソースであり、ドライブ４００がシンクである。
【０２７４】
まず、ドライブ４００は、ステップＳ６０１において、データ書き込み可能な情報記録媒体２００に格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−ＤＩＳＣ）２５１を読み取り、そのＡＩＣデータ（無効デバイス数）と、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）４１１のＡＩＣデータ（無効デバイス数）との比較を実行する。
ＡＩＣ−ＤのＡＩＣデータ＜ＡＩＣ−ＤＩＳＣのＡＩＣデータ
である場合に、ＡＩＣ−ＤＩＳＣが、ＡＩＣ−Ｄより新しいと判断し、この場合に、ドライブ４００は、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）４１１を情報記録媒体２００から読み取ったＡＤＧＬインフォメーション証明書（ＡＩＣ−ＤＩＳＣ）２５１に入れ替える更新処理を実行する。
【０２７５】
なお、ドライブ４００は、ステップＳ６０１における比較更新処理において、まず、情報記録媒体２００から読み取ったＡＤＧＬインフォメーション証明書（ＡＩＣ−ＤＩＳＣ）２５１に付与されている署名を検証し、ＡＤＧＬインフォメーション証明書（ＡＩＣ−ＤＩＳＣ）が改竄されていない正当な証明書であることを確認する。この確認の後、比較、更新を実行する。
【０２７６】
ステップＳ６０２はホスト５００において実行する比較更新処理である。ホスト５００は、ドライブ４００からドライブ４００のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）４１１を入力し、署名検証により改竄のない証明書であることを確認した後、ホスト５００のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）５１１とのＡＩＣデータ（無効デバイス数）比較処理を実行する。
ＡＩＣ−ＨのＡＩＣデータ＜ＡＩＣ−ＤのＡＩＣデータ
である場合は、ＡＩＣ−Ｄが、ＡＩＣ−Ｈより新しいと判断し、この場合に、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）５１１をドライブ４００から入力したＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）４１１に入れ替える更新処理を実行する。
【０２７７】
なお、ＡＩＣ−ＨのＡＩＣデータ＜ＡＩＣ−ＤのＡＩＣデータ
である場合には、ホストがメモリに格納している認定デバイスグループリスト（ＡＤＧＬ−Ｈ）についても更新処理を実行する。この更新処理は、ドライブ４００を介して情報記録媒体２００の格納している認定デバイスグループリスト（ＡＤＧＬ−ＤＩＳＣ）に置き換えるか、あるいはネットワークを介して最新の認定デバイスグループリスト（ＡＤＧＬ）を取得して更新するなどの処理として実行する。
【０２７８】
ドライブ４００は、ステップＳ６０３においてホスト５００のメモリに保持されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）５１１を入力し、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）４１１のＡＩＣデータ（無効デバイス数）の比較を行う。
ＡＩＣ−ＤのＡＩＣデータ＜ＡＩＣ−ＨのＡＩＣデータ
である場合に、ＡＩＣ−Ｈが、ＡＩＣ−Ｄより新しいと判断し、この場合に、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）４１１をホスト５００から入力したＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）５１１に入れ替える更新処理を実行する。
【０２７９】
なお、ドライブ４００は、ステップＳ６０３における比較更新処理においても、ホスト５００から入力したＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）５１１に付与されている署名を検証し、改竄されていない正当な証明書であることを確認する。この確認の後、比較、更新を実行する。
【０２８０】
さらに、ドライブ４００は、ステップＳ６０３における比較更新処理において、ホスト５００から、ホスト５００のメモリに格納された認定デバイスグループリスト（ＡＤＧＬ−Ｈ）５１２に含まれるホストの登録情報を格納した認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）を取得し、署名検証の後、認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）に設定されたＡＩＣデータ（無効デバイス数）と、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）４１１のＡＩＣデータ（無効デバイス数）との比較を実行する。もし、
ＡＤＧＣ−ＨのＡＩＣデータ＜ＡＩＣ−ＤのＡＩＣデータ
である場合、ドライブは、ホストがＡＩＣ−ＤのＡＩＣデータに対応しない古いバージョンの認定デバイスグループ証明書しか保持していないと判断し、相互認証処理（ＡＫＥ）に進むことなく、処理を中止する。
【０２８１】
ステップＳ６０３において、ドライブ４００が、
ＡＤＧＣ−ＨのＡＩＣデータ≧ＡＩＣ−ＤのＡＩＣデータ
であると判定した場合は、次のステップＳ６０４に進む。
【０２８２】
ステップＳ６０４〜Ｓ６０８の処理は、
Ｓ６０４：ドライブ４００とホスト５００間で相互認証および鍵交換（ＡＫＥ）処理、
Ｓ６０５：ドライブ４００側において生成したバスキー：Ｋｂｕｓのセッシヨンキー：Ｋｓによる暗号化および送信、
Ｓ６０６：ホスト５００におけるセッシヨンキー：Ｋｓによる復号処理によるバスキー：Ｋｂｕｓ取得
Ｓ６０７：ホスト５００におけるバスキー：Ｋｂｕｓによるコンテンツの暗号化送信処理
Ｓ６０８：ドライブ４００におけるバスキー：Ｋｂｕｓによるコンテンツの復号処理および記録処理
である。
【０２８３】
図３０に示す例は、ＡＩＣデータが、無効（リボーク）デバイス数である場合の更新処理であるが、ＡＤＧＬシーケンスナンバーに基づく更新処理、ＡＩＣデータ＝登録デバイス数に基づく更新処理も、先に説明したコンテンツ再生時の登録情報の更新とほぼ同様の処理として実行される。
【０２８４】
上述した各処理例では、ドライブ側において、ホスト側から入力する認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）に設定されたＡＩＣデータと、ドライブの保持するＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）のＡＩＣデータとの比較において、ホスト側から入力する認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）がドライブの保持するＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）より古いものである場合、相互認証処理に移行することなく、処理を打ち切りにする設定として説明したが、このような場合に、ホスト側に新しい認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）の取得機会を与え、ドライブは、ホストが取得した新しい認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）について所定回数繰り返して、新旧比較を行う構成例について図３１、図３２を参照して説明する。
【０２８５】
図３１は、情報記録媒体２００からのデータ再生処理を実行する際の登録情報の更新処理例として、ＡＩＣデータ＝無効（リボーク）デバイス数に基づく更新処理シーケンスを示している。
【０２８６】
まず、ドライブ４００は、ステップＳ６２１において、情報記録媒体２００に格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−ＤＩＳＣ）２５１を読み取り、署名を検証し、ＡＤＧＬインフォメーション証明書（ＡＩＣ−ＤＩＳＣ）が改竄されていない正当な証明書であることを確認した後、そのＡＩＣデータ（無効デバイス数）と、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）４１１のＡＩＣデータ（無効デバイス数）との比較を実行する。
ＡＩＣ−ＤのＡＩＣデータ＜ＡＩＣ−ＤＩＳＣのＡＩＣデータ
である場合に、ＡＩＣ−ＤＩＳＣが、ＡＩＣ−Ｄより新しいと判断し、この場合に、ドライブ４００は、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）４１１を情報記録媒体２００から読み取ったＡＤＧＬインフォメーション証明書（ＡＩＣ−ＤＩＳＣ）２５１に入れ替える更新処理を実行する。
【０２８７】
次に、ステップＳ６２２において、ホスト５００は、ドライブ４００からドライブ４００のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）４１１を入力し、署名検証により改竄のない証明書であることを確認した後、ホスト５００のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）５１１とのＡＩＣデータ（無効デバイス数）比較処理を実行する。
ＡＩＣ−ＨのＡＩＣデータ＜ＡＩＣ−ＤのＡＩＣデータ
である場合は、ＡＩＣ−Ｄが、ＡＩＣ−Ｈより新しいと判断し、この場合に、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）５１１をドライブ４００から入力したＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）４１１に入れ替える更新処理を実行する。
【０２８８】
なお、ＡＩＣ−ＨのＡＩＣデータ＜ＡＩＣ−ＤのＡＩＣデータ
である場合には、ホストがメモリに格納している認定デバイスグループリスト（ＡＤＧＬ−Ｈ）についても更新処理を実行する。この更新処理は、ドライブ４００を介して情報記録媒体２００の格納している認定デバイスグループリスト（ＡＤＧＬ−ＤＩＳＣ）に置き換えるか、あるいはネットワークを介して最新の認定デバイスグループリスト（ＡＤＧＬ）を取得して更新するなどの処理として実行する。
【０２８９】
ドライブ４００は、ステップＳ６２３においてホスト５００のメモリに保持されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）５１１を入力し、署名確認の後、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）４１１のＡＩＣデータ（無効デバイス数）の比較を行う。
ＡＩＣ−ＤのＡＩＣデータ＜ＡＩＣ−ＨのＡＩＣデータ
である場合に、ＡＩＣ−Ｈが、ＡＩＣ−Ｄより新しいと判断し、この場合に、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）４１１をホスト５００から入力したＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）５１１に入れ替える更新処理を実行する。
【０２９０】
さらに、ドライブ４００は、ステップＳ６２３における比較更新処理において、ホスト５００から、ホスト５００のメモリに格納された認定デバイスグループリスト（ＡＤＧＬ−Ｈ）５１２に含まれるホストの登録情報を格納した認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）を取得し、署名検証の後、認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）に設定されたＡＩＣデータ（無効デバイス数）と、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）４１１のＡＩＣデータ（無効デバイス数）との比較を実行する。この比較処理において、
ＡＤＧＣ−ＨのＡＩＣデータ＜ＡＩＣ−ＤのＡＩＣデータ
である場合、ドライブは、ホストがＡＩＣ−ＤのＡＩＣデータに対応しない古いバージョンの認定デバイスグループ証明書しか保持していないと判断し、ホストに対して新しい認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）の取得および送信を要求するとともに、カウンタ４１２の値を１インクリメントする。この認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）再取得要求は、最大繰り返し回数が設定されており、例えば最大繰り返し回数＝５の場合、カウンタ４１２の値が５になるまで、再取得要求を行う。この許容回数内にホストから入力した認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）が、
ＡＤＧＣ−ＨのＡＩＣデータ≧ＡＩＣ−ＤのＡＩＣデータ
を満足することになった場合には、その後の処理、すなわち、相互認証処理（ＡＫＥ）に進む。許容回数の再取得処理において取得した証明書が、すべて
ＡＤＧＣ−ＨのＡＩＣデータ＜ＡＩＣ−ＤのＡＩＣデータ
である場合は、相互認証処理（ＡＫＥ）に進むことなく処理を中止する。
【０２９１】
許容回数（例えば５回）以内にホストから入力した認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）が、
ＡＤＧＣ−ＨのＡＩＣデータ≧ＡＩＣ−ＤのＡＩＣデータ
を満足することになった場合には、ステップＳ６２４〜Ｓ６２８の処理、すなわち、ドライブ４００とホスト５００間で相互認証および鍵交換（ＡＫＥ）処理、ドライブ４００のバスキー、コンテンツの送信、ホスト５００のコンテンツの復号が実行されることになる。
【０２９２】
図３２を参照して、ドライブ４００が実行する図３１のステップＳ６２３の処理、すなわちホスト側に認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）を含む認定デバイスグループリスト（ＡＤＧＬ−Ｈ）の再取得を促す処理の詳細について説明する。
【０２９３】
ドライブはステップＳ７０１において、ホストからのＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）の転送要求を受領後、ステップＳ７０２においてホストからＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）を受領する。ステップＳ７０３において、ＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）の署名検証を実行し、署名検証により証明書の正当性が確認されない場合（Ｓ７０４：Ｎｏ）は、その後の処理を中止する。この場合コンテンツ転送処理は実行されない。
【０２９４】
署名検証により証明書の正当性が確認された場合（Ｓ７０４：Ｙｅｓ）の場合は、ステップＳ７０５において、ホストから取得したＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）のＡＩＣデータ（無効デバイス数）と、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）のＡＩＣデータ（無効デバイス数）との比較を実行する。
ＡＩＣ−ＤのＡＩＣデータ＜ＡＩＣ−ＨのＡＩＣデータ
である場合ＡＩＣ−Ｈが、ＡＩＣ−Ｄより新しいと判断し、ステップＳ７０６に進み、ドライブは、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）をホストから取得したＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）に入れ替える更新処理を実行する。上記条件、
ＡＩＣ−ＤのＡＩＣデータ＜ＡＩＣ−ＨのＡＩＣデータ
が満足されない場合は、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）がホストから取得したＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）より新しいと判断し、更新処理を行なわない。
【０２９５】
次に、ステップＳ７０７において、ホストからの認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）の受領を確認した後、ステップＳ７０８において、認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）に設定されたＡＩＣデータ（無効デバイス数）と、自己のメモリに格納されたＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）のＡＩＣデータ（無効デバイス数）との比較を実行する。
【０２９６】
ＡＤＧＣ−ＨのＡＩＣデータ＜ＡＩＣ−ＤのＡＩＣデータ
が成立していない場合は、ＡＩＣ−ＤのＡＩＣデータに対応する新しいバージョンの認定デバイスグループ証明書であると判断し、ステップＳ７１１においてカウンタ＝０とするリセット処理を実行して、比較更新処理を終了し、次の処理、すなわち相互認証処理に移行する。
【０２９７】
一方、ＡＤＧＣ−ＨのＡＩＣデータ＜ＡＩＣ−ＤのＡＩＣデータ
である場合、ホストは、ＡＩＣ−ＤのＡＩＣデータに対応しない古いバージョンの認定デバイスグループ証明書しか保持していないと判断し、ステップＳ７０９に進み、カウンタが許容再取得回数以下であるか否かを判定する。
【０２９８】
カウンタが許容再取得回数以下である場合は、ステップＳ７１０においてカウンタを１つインクリメントして、ホストに対して再度の認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）の送信を要求し、ステップＳ７０７以下を繰り返し実行する。
【０２９９】
ステップＳ７０９において、カウンタが許容再取得回数に達していた場合は、相互認証処理（ＡＫＥ）に進むことなく、処理を中止する。
【０３００】
本処理例に従えば、ホストは自己の保有する認定デバイスグループリスト（ＡＤＧＬ−Ｈ）の更新機会を与えられることになるので、外部から認定デバイスグループリスト（ＡＤＧＬ）を取得してコンテンツの再生や記録を行なうことが可能となる。
【０３０１】
なお、図３１を参照して説明した処理は、ＡＩＣデータが、無効（リボーク）デバイス数である場合の更新処理であるが、ＡＤＧＬシーケンスナンバーに基づく更新処理、ＡＩＣデータ＝登録デバイス数に基づく更新処理も同様、再取得処理を許容した処理として実行可能である。
【０３０２】
［４．認証回数のカウントおよび証明書更新処理］
上述した複数の実施例の説明によって理解されるように、ホストがドライブを介して情報記録媒体にアクセスするためには、ホストからドライブに認定デバイスグループ証明書を出力し、ドライブにおいて、ホストから入力する認定デバイスグループ証明書に設定されたＡＩＣデータと、ドライブの保持するＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）のＡＩＣデータとの比較を実行し、ホストから入力した認定デバイスグループ証明書（ＡＤＧＣ−Ｈ）のＡＩＣデータがドライブの保持するＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）より古くないことを条件として相互認証を実行し、認証が成立することが必要である。
【０３０３】
従って、ホストは、より新しい認定デバイスグループ証明書の取得処理を行なうことが要求される。より新しい認定デバイスグループ証明書の取得処理方法としては、新しく発売されるディスクを購入してディスクから取得する方法と、認定デバイスグループ証明書を管理し配布するサーバへホストが接続して、サーバ経由で取得する方法がある。
【０３０４】
ディスクによって更新する場合は、ユーザが新しい認定デバイスグループ証明書を格納した新しいディスクを購入しなければならないという問題がある。また、ドライブが、ホストとしてのＰＣ等の装置に対して着脱可能な装置である場合、ドライブは様々なホスト（ＰＣ）と接続されることになる。ドライブは、装着された情報記録媒体からより新しいＡＩＣデータを取得することが可能であり、情報記録媒体から新しいＡＩＣデータを取得した際にドライブが接続しているホスト（ＰＣ）もその新しいバージョンに対応する認定デバイスグループ証明書を取得して格納することができる。しかし、ドライブがその後、他のホスト（ＰＣ）に接続して、異なるディスクを装着してホスト−ドライブ間の認証を行なおうとすると、その時点で接続されているホスト（ＰＣ）の保持する認定デバイスグループ証明書のＡＩＣデータは、ドライブのＡＩＣデータより古いことになり、そのホストはディスクの利用が出来なくなってしまう。
【０３０５】
このように、ホストを利用しているユーザは、常にホストに格納された認定デバイスグループ証明書の更新に配慮する必要があるという問題が発生する。複数のホスト装置としての例えばＰＣを保有しているユーザは、複数のＰＣおける認定デバイスグループ証明書の更新を注意深く実行しなければならない。
【０３０６】
以下、ホストにおける証明書更新をユーザの負担を軽減して確実に実行する構成例について説明する。
【０３０７】
図３３を参照して、本実施例について説明する。本実施例の概要をまとめると、以下の通りである。
（１）ホスト（例えばＰＣ）はドライブとの相互認証の回数をカウントし、ある回数に達したらサーバとネットワーク接続を行って登録リストの更新を実施する。ディスクから登録リスト更新を行なう場合もある。
（２）ホスト（例えばＰＣ）のドライブとの相互認証のカウント値が、予め定められた上限回数に達した場合、ドライブとの相互認証を実施せず、登録リスト更新処理の必要なことをユーザに通知する。あるいは登録リスト更新処理に自動的に移行する。
【０３０８】
上記のように、認定デバイスグループ証明書の更新手順は具体的なものであることから、ホスト側が守るべきコンプライアンスルールとして相互認証のライセンスと合わせて契約によりライセンシーへ強制することが可能となる。
【０３０９】
図３３には、情報記録媒体２００を装着可能なドライブ４００と、ドライブ４００を介した情報記録媒体２００へのアクセスを実行するＰＣ等のホスト５００を示している。ホスト５００は通信部６２７を介して外部のサーバ６３２に接続可能である。サーバ６３２は、管理センタ６３１を介して最新の認定デバイスグループ証明書（ＡＤＧＣ）を格納した認定デバイスグループリスト（ＡＤＧＬ）、ＡＤＧＬインフォメーション証明書（ＡＩＣ）を入手して管理し、これらの各証明書をネットワークを介して配布する処理を実行する。
【０３１０】
図３３を参照して、本実施例の概要を説明する。詳細な処理シーケンスについては、図３４〜図３６のフローを参照して後段で説明する。ホスト５００は、ドライブ４００を介して情報記録媒体２００に対するアクセスする際に、必要に応じて相互認証処理を実行する。ホスト５００は、認証処理は、ホスト５００の認証実行部６２２と、ドライブ４００の認証実行部６１２間において双方の通信部６１１，６１２を介して実行される。認証処理は、先に図２５のシーケンス図を参照して説明したように、双方のメモリ６１５，６２６に格納された公開鍵証明書（ＰＫＣ）が適用される。
【０３１１】
ホスト５００は、不揮発性メモリ（ＮＶ−ＲＡＭ）からなる認証回数カウンタメモリ６２３を有する。認証回数カウンタメモリ５２３は、ドライブとの認証処理の実行終了に基づいてカウントアップされる認証回数を記録するメモリである。なお、認証回数カウンタメモリ６２３の初期値は０である。
【０３１２】
ホスト５００は、ドライブ４００との認証処理の開始に際して、比較部６２４において、認証回数カウンタメモリ６２３に格納された認証回数カウント値を読み出し、予め設定された上限リミット値との比較を実行する。
【０３１３】
認証回数カウンタメモリ６２３に格納された認証回数カウント値が上限リミット値未満である場合は、ドライブ４００との認証処理を実行する。認証回数カウンタメモリ６２３に格納された認証回数カウント値が上限リミット値に達していた場合には、ドライブ４００との認証処理の実行を中止する。この場合は、認証回数カウント値が上限リミット値に達していることをディスプレイ等を通じてユーザに通知する処理を実行する。
【０３１４】
認証回数カウント値が上限リミット値に達している場合、ユーザの指示に基づいてサーバ６３２からの証明書の取得および更新処理が実行される。なお、認証回数カウント値が上限リミット値に達していることを条件として、サーバ６３２からの証明書の取得および更新処理を自動実行する構成としてもよい。
【０３１５】
ホスト５００の更新実行部６２５は、サーバ６３２にアクセスし、サーバ６３２から認定デバイスグループ証明書（ＡＤＧＣ）を格納した認定デバイスグループリスト（ＡＤＧＬ）、ＡＤＧＬインフォメーション証明書（ＡＩＣ）を取得し、メモリ（ＮＶ−ＲＡＭ）６２６に格納する。
【０３１６】
ホスト５００の更新実行部６２５によって、最新の認定デバイスグループリスト（ＡＤＧＬ）、ＡＤＧＬインフォメーション証明書（ＡＩＣ）がメモリ６２６に格納されると、認証回数カウンタメモリ６２３のカウント値はリセットされ［０］に設定される。
【０３１７】
その後、認証実行部６２２が、ドライブ４００との認証処理を実行し、認証の成立を条件として、情報記録媒体２００へのアクセスが可能となる。
【０３１８】
さらに、ホスト５００は、認証処理によってホスト５００とドライブ４００間のインタフェースを介してホスト５００がサーバ６３２から入手したＡＤＧＬインフォメーション証明書（ＡＩＣ）をドライブ４００に出力する。ドライブ４００は、通信部６１１を介して最新のＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）を入手する。この時点では、ホスト５００の保持するＡＤＧＬインフォメーション証明書であるのでＡＩＣ−Ｈとして示す。
【０３１９】
ドライブ４００は、比較部６１３において、ホスト５００から入手したＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）と、自己のメモリ６１５に格納してあるＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）との新旧比較を実行し、ホスト５００から入手したＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）がより新しいと判定した場合は、更新実行部６１４が、メモリ６１５の格納データをホスト５００から入手したＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）に置き換える更新処理を実行する。なお、比較部６１３における比較は、各証明書に記録された登録デバイス数、または無効デバイス数、またはシーケンスナンバー等に基づいて実行される。
【０３２０】
ホスト５００がサーバ６３２から取得した最新の証明書をドライブ４００にも格納することにより、ホスト、ドライブの双方が最新の証明書に更新することができる。本実施例では、ホストの実行するドライブとの認証処理回数に上限のリミットを設定し、リミットに達することで証明書の更新が必要なことをユーザに通知するか、あるいは更新処理を実行する構成であるので、ユーザが更新タイミングの管理を行なうことなく、ユーザの負担を少なくして適格な証明書更新処理が実現できる。
【０３２１】
次に、図３４〜図３６を参照して、ドライブと接続したホストにおいて実行するドライブとの認証処理、サーバからの証明書の取得および更新処理に伴う一連の処理について説明する。
【０３２２】
図３４のステップＳ８０１において、ホストは、ディスクに格納されたコンテンツに対応する再生アプリケーション・プログラムを起動する。ステップＳ８０２においてドライブからディスク挿入の検出通知を受領すると、ステップＳ８０３において、ドライブからディスク情報を取得する。例えば、ホストは、［READ DVD STRUCTURE command］をドライブへ発行して得られるデータを利用してそのディスクが暗号化記録されたディスクであるか否かを確認することができる。このコマンドは、SCSI (Small Computer System Interface) 規格におけるコマンド規格INCITS T10, Multimedia Commands-4 (MMC-4)に記述される。ほかの判別方法として、ディスク記録に適用されるファイルシステムを解釈して得られるディレクトリー情報から判断するという手段をとる構成としてもよい。
【０３２３】
ステップＳ８０４において、ステップＳ８０３で取得したディスク情報に基づいて、ドライブにセットされたディスクが暗号化データの記録ディスクであるか否かを判定する。暗号化ディスクでない場合は、図３５のステップＧに進み、通常のデータ再生処理を実行するすなわち、ステップＳ８２９において、ディスク排出がない（Ｓ８３０）ことの確認の後、ユーザの指示などによりセクタデータの読み出しを行うと判定した場合（Ｓ８３１：Ｙｅｓ）は、ステップＳ８３２においてドライブに対してセクタデータの転送要求を出力し、ステップＳ８３３でセクタデータの完了と判定されるまで、データ再生を行なう。
【０３２４】
図３４に戻り、ステップＳ８０４において暗号化データの記録ディスクであると判定した場合は、ステップＳ８０５で認証回数カウンタ（ＳＡＣカウンタ）のカウント値が予め定めた上限値に達していないかを判定する。この処理は、図３３の認証回数カウンタメモリ６２３の比較部６２４での処理に相当する。なお、ホストの認証回数カウンタメモリ６２３の初期値は０である。
【０３２５】
ステップＳ８０５で認証回数カウンタ（ＳＡＣカウンタ）のカウント値が予め定めた上限値に達している場合は、図３６のステップＩに進む。この処理は、サーバからの更新証明書の取得処理に相当する。
【０３２６】
ステップＳ８４１において、ホストがネットワーク接続されているかいなかを判定し、ネットワーク接続されていない場合は、ディスク再生のためには、デバイス登録リストの更新が必要であるが、ネットワーク未接続のためデバイス登録リストの更新ができないことを画面表示し処理を終了する。ユーザは画面表示に基づいて、ドライブに装着したディスクの再生には、更新された認定デバイスグループ証明書（ＡＤＧＣ）を格納した認定デバイスグループリスト（ＡＤＧＬ）の取得が要件であることを知る。
【０３２７】
ステップＳ８４１において、ホストがネットワーク接続されていると判定すると、ステップＳＳ８４３に進み、認定デバイスグループ証明書（ＡＤＧＣ）を格納した認定デバイスグループリスト（ＡＤＧＬ）の更新処理が実行されている胸を画面表示し、ステップＳ８４４において、ホストにおいて起動中のアプリケーション指定のサーバと接続する。ホストにおいて起動中のアプリケーション（コンテンツ再生アプリケーション）には、認定デバイスグループリスト（ＡＤＧＬ）の更新時に接続すべきサーバのＵＲＬが記録されており、このＵＲＬを用いてサーバに接続する。
【０３２８】
ステップＳ８４５においてサーバ接続の完了を確認し、接続に失敗した場合は、ステップＳ８４６に進み、指定URLが発見できないため、デバイス登録リストの更新に失敗したこと、および更新しなければディスク再生できないことを画面表示して終了する。
【０３２９】
接続に成功した倍は、ステップＳ８４７に進み、接続サーバから、最新の認定デバイスグループ証明書（ＡＤＧＣ）を格納した認定デバイスグループリスト（ＡＤＧＬ）をダウンロードする。たとえばＨＴＴＰあるいはＦＴＰに基づくダウンロード処理が実行される。認定デバイスグループリスト（ＡＤＧＬ）は、図３６右下部に示されているように、認定デバイスグループリスト（ＡＤＧＬ）に改竄検証値（電子署名、ＭＡＣなど）が付与されており、改竄防止構成がとられている。なお、本処理フローでは、認定デバイスグループリスト（ＡＤＧＬ）のみのダウンロード処理例を示しているが、前述したようにＡＤＧＬインフォメーション証明書（ＡＩＣ）のダウンロードも併せて行なう構成とすることが好ましい。
【０３３０】
ステップＳ８４８においてダウンロードの完了を確認する。ダウンロードが完了できない場合は、ステップＳ８４９に進み、サーバからのデバイス登録リストのダウンロードに失敗し更新できないこと、および更新しなければディスク再生できないことを画面表示して終了する。
【０３３１】
ステップＳ８４８においてダウンロードの完了が認されると、ステップＳ８５０において、ＡＤＧＬファイルに付与されている検証値に基づく検証処理を実行し、改竄のないことの確認を行なう。確認処理が終了し、改竄のないことの確認ができなかった場合は、ステップＳ８５２に進み、サーバからのデバイス登録リストのダウンロードに失敗し更新できないこと、および更新しなければディスク再生できないことを画面表示して終了する。
【０３３２】
改竄のないことの確認ができた場合は、ステップＳ８６１に進み、ダウンロードしたＡＤＧＬファイルから認定デバイスグループリスト（ＡＤＧＬ）を取得し、ステップＳ８６２において、認定デバイスグループリスト（ＡＤＧＬ）の完了通知を画面表示する。さらに、ステップＳ８６３において、認証回数カウンタ（ＳＡＣカウンタ）メモリのカウント値を０にリセットする処理を実行する。なお、図３３を参照して説明したように、前述したように、Ｓ８４７においてＡＤＧＬインフォメーション証明書（ＡＩＣ）のダウンロード処理を併せて行なった場合には、Ｓ８５０におけるＡＤＧＬインフォメーション証明書（ＡＩＣ）の署名検証による完全性の確認、およびＳ８６１におけるＡＤＧＬインフォメーション証明書（ＡＩＣ）の格納が実行され、その際にインターフェースを介したドライブに対する出力処理を実行してもよい。
【０３３３】
次に図３４に戻りステップＳ８０６以下を説明する。ステップＳ８０６では、ドライブとの相互認証、セッションキーの共有処理を実行する。
【０３３４】
ステップＳ８０７において、相互認証および鍵交換（ＡＫＥ）処理の完了が確認されると、ステップＳ８０８において、認証回数カウンタ（ＳＡＣカウンタ）メモリのカウント値を１つインクリメントする。次に、ステップＳ８０９に進み、ホストは、ドライブに対して、エンベデッドキー：Ｋｅを要求する。エンベデッドキー：Ｋｅは、ディスクキー：Ｋｄと、情報記録媒体から取得したＲＯＭマーク：Ｖｅに基づく鍵生成処理、例えばＡＥＳ暗号アルゴリズムに従った鍵生成処理によってドライブで生成される鍵であり、セッションキーＫｓによって暗号化されてホストに送信される。
【０３３５】
ステップＳ８１０において、暗号化されたエンベデッドキー：Ｋｅをドライブから受信すると、ステップＳ８１１において、セッションキーＫｓを適用して復号を実行し、エンベデッドキー：Ｋｅを取得する。さらに、ホストはステップＳ８１２において、暗号化コンテンツの復号処理に適用する鍵の生成に必要となる情報としての記録シード（ＲＥＣ  ＳＥＥＤ）であるユニットキー生成情報：Ｖｕの転送をドライブに要求し、ステップＳ８１３においてユニットキー生成情報：Ｖｕを受信すると、ステップＳ８１４において、エンベデッドキー：Ｋｅとユニットキー生成情報：Ｖｕとに基づいてユニットキー：Ｋｕを生成する。この処理は、例えば図２４のステップＳ３０３の処理に相当する。
【０３３６】
次にホストは、ステップＳ８１５においてバスキー：Ｋｂｕｓの送信要求をドライブに出力し、ステップＳ８１６において、接続バスを介して入力したセッションキー：Ｋｓによって暗号化されたバスキー：Ｋｂｕｓを取得すると、ステップＳ８１７において、セッションキー：Ｋｓを適用した復号処理を実行しバスキー：Ｋｂｕｓを取得する。この処理は、例えば図２４のステップＳ３０５の処理に相当する。
【０３３７】
次に、図３５のステップＳ８２１に移行する。ＰＣの再生ソフトウェアの完了（Ｓ８２１）がなされておらず、ディスク排出がない（Ｓ８２２）ことの確認の後、ユーザの指示などによりセクタデータの読み出しを行うと判定した場合（Ｓ８２３：Ｙｅｓ）は、ステップＳ８２４においてドライブに対してセクタデータの転送要求を出力する。
【０３３８】
ドライブからセクタデータを受信（Ｓ８２５）し、データが暗号化セクタデータである場合（Ｓ８２６：Ｙｅｓ）は、ステップＳ８２７でバスキー：Ｋｂｕｓによって暗号化された暗号化コンテンツの復号処理を実行する。
【０３３９】
バスキー：Ｋｂｕｓによって暗号化された暗号化コンテンツの復号処理は、先に図２７を参照して説明した通り、例えば、ＡＥＳ−ＣＢＣモードを適用したブロック復号処理によって実行される。
【０３４０】
さらに、ホストは、ステップＳ８２８において、ユニットキー：Ｋｕを適用して暗号化コンテンツの復号処理を実行する。この復号処理は、先に図１１を参照して説明したと同様の処理として実行される。以上の処理により、ホストは、復号コンテンツを取得し、コンテンツ再生を実行する。
【０３４１】
上述した説明においては、情報記録媒体からのデータ再生処理を中心として説明したが、ホストが生成あるいは外部から取得したデータをドライブを介して情報記録媒体に記録する場合にも、ドライブとホスト間では相互認証が実行される。この場合にも上述した相互認証カウント値のインクリメント処理、上限値との比較処理、上限値に達していた場合のサーバからの証明書更新、すなわち、ＡＤＧＬインフォメーション証明書（ＡＩＣ）と認定デバイスグループリスト（ＡＤＧＬ）との更新処理を実行する。更新処理態様としては、
（１）ＡＤＧＬシーケンスナンバーに基づく更新処理
（２）ＡＩＣデータ＝登録デバイス数に基づく更新処理
（３）ＡＩＣデータ＝無効（リボーク）デバイス数に基づく更新処理
の３態様のいずれかが実行されることになる。
【０３４２】
［５．情報処理装置の構成］
次に、図３７、図３８を参照して、ホストおよびドライブ装置の情報処理装置構成例について説明する。
【０３４３】
まず、図３７を参照して、ホストとしての情報処理装置の構成について説明する。情報処理装置８００は、ＯＳやコンテンツ再生または記録アプリケーション・プログラム、相互認証処理プログラムなどの各種プログラムに従ったデータ処理を実行するＣＰＵ８０９、プログラム、パラメータ等の記憶領域としてのＲＯＭ８０８、メモリ８１０、デジタル信号を入出力する入出力Ｉ／Ｆ８０２、アナログ信号を入出力し、Ａ／Ｄ，Ｄ／Ａコンバータ８０５を持つ入出力Ｉ／Ｆ８０４、ＭＰＥＧデータのエンコード、デコード処理を実行するＭＰＥＧコーデック８０３、ＴＳ（Transport Stream）・ＰＳ(Program Stream)処理を実行するＴＳ・ＰＳ処理手段８０６、相互認証、暗号化コンテンツの復号処理など各種の暗号処理を実行する暗号処理手段８０７、ハードディスクなどの記録媒体８１２、記録媒体８１２の駆動、データ記録再生信号の入出力を行なうドライブ８１１を有し、バス８０１に各ブロックが接続されている。
【０３４４】
情報処理装置（ホスト）８００は、例えばＡＴＡＰＩ−ＢＵＳ等の接続バスによってドライブと接続され、上述したバスキーによって暗号化されたコンテンツは、デジタル信号用入出力Ｉ／Ｆ８０２から入力され、必要に応じて暗号化処理手段８０７によって、例えば、ＡＥＳ−ＣＢＣモードによる復号処理が実行される。
【０３４５】
なお、コンテンツ再生あるいは記録処理を実行するプログラムは例えばＲＯＭ８０８内に保管されており、プログラムの実行処理中は必要に応じて、パラメータ、データの保管、ワーク領域としてメモリ８１０を使用する。
【０３４６】
ＲＯＭ８０８または記録媒体８１２には、先に図２４を参照して説明した管理センタの公開鍵、ホスト対応秘密鍵、ホスト対応の公開鍵証明書、さらに、認定デバイスグループリスト（ＡＤＧＬ−Ｈ）、ＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｈ）の登録情報が格納されている。
【０３４７】
次に、図３８を参照して、情報記録媒体の格納コンテンツの読み取りおよび記録、ホストとのデータ転送を実行するドライブとしての情報処理装置の構成について説明する。ドライブ８５０は、コンテンツ読み取り、コンテンツ記録、転送処理プログラム、相互認証処理プログラムなどの各種プログラムに従ったデータ処理を実行するＣＰＵ８５２、プログラム、パラメータ等の記憶領域としてのＲＯＭ８５５、メモリ８５６、デジタル信号を入出力する入出力Ｉ／Ｆ８５３、相互認証、バスキーの生成、出力データの暗号化処理など各種の暗号処理を実行する暗号処理手段８５４、ＤＶＤ，Ｂｌｕ−ｒａｙディスクなどの情報記録媒体８５８の駆動、データ記録再生信号の入出力を行なう記録媒体Ｉ／Ｆ８５７を有し、バス８５１に各ブロックが接続されている。
【０３４８】
ドライブ８５０は、例えばＡＴＡＰＩ−ＢＵＳ等の接続バスによってホストと接続され、例えば情報記録媒体８５８に格納された暗号化（スクランブル）コンテンツをバスキー：Ｋｂｕｓで、再暗号化し入出力Ｉ／Ｆ８５３から出力する。バスキー：Ｋｂｕｓを適用したコンテンツの暗号化は、暗号化処理手段８５４によって、例えば、ＡＥＳ−ＣＢＣモードで実行される。
【０３４９】
なお、ＲＯＭ８５５、またはメモリ８５６には、先に図２４を参照して説明した管理センタの公開鍵、ドライブに対応する秘密鍵、ドライブに対応する公開鍵証明書、および暗号鍵ブロックＲＫＢの処理に適用するためのデバイスキー：Ｋｄｅｖ、さらに、ＡＤＧＬインフォメーション証明書（ＡＩＣ−Ｄ）が格納されている。また、コンテンツの読み取り、取得、および相互認証処理を実行するプログラム等が格納されている。
【０３５０】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【０３５１】
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【０３５２】
例えば、プログラムは記録媒体としてのハードディスクやＲＯＭ（Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、ＣＤ−ＲＯＭ(Compact Disc Read Only Memory)，ＭＯ(Magneto optical)ディスク，ＤＶＤ(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【０３５３】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、ＬＡＮ(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０３５４】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０３５５】
以上、説明したように、本発明の構成によれば、ドライブとホストなど２つの異なるデバイス間のデータ転送を伴うコンテンツの再生あるいは記録処理において、データ転送を実行するデバイス間の相互認証において、認証回数をカウントし、予め定めた認証回数上限値に達した場合に、認証処理を中止して、認証に適用する証明書の更新を必要とする設定としたので、古い証明書を適用した認証処理の継続によるコンテンツ利用を排除し、最新の証明書の取得を促すことが可能となる。
【０３５６】
本発明の構成では、接続デバイス間において、コンテンツの送り側（ソース）デバイスから受け取り側（シンク）デバイスへのコンテンツ転送を行なう場合に実行する公開鍵暗号方式の相互認証において適用する各デバイスの公開鍵証明書の有効性を判断するため認定デバイスグループ証明書を適用する。さらに、この認定デバイスグループ証明書の新旧判定に、認定デバイスグループ証明書の集合として設定される認定デバイスグループリスト（登録リスト）の登録デバイス数、あるいは無効（リボーク）デバイス数などを登録データとして設定したデバイス数データ証明書（ＡＩＣ）を適用する構成とし、登録デバイス数が多いものを新しいとみなす、あるいは、無効デバイス数の多いものを新しいとみなすなど、登録情報の登録または無効デバイス数の変化状況に基づいて認定デバイスグループ証明書の最新性を判定する構成として、新しい認定デバイスグループ証明書を適用してデバイスの公開鍵証明書の有効性を判定し相互認証を実行する構成とし、さらに認証回数をカウントし、予め定めた認証回数上限値に達した場合に、認証処理を中止して、認証に適用する証明書の更新を必要とする設定としたので、古い認定デバイス証明書を適用した認証処理、不正なコンテンツ入手が防止され、コンテンツの不正利用が排除される。
【０３５７】
また、登録デバイス数、あるいは無効（リボーク）デバイス数などを登録データとして設定したデバイス数データ証明書（ＡＩＣ）に基づいて、適宜、情報処理装置が保管する認定デバイスグループリスト（登録リスト）の更新処理を実行する構成としたので、コンテンツ再生あるいは記録処理を実行する情報処理装置の保管リストを随時更新することが可能となる。
【０３５８】
さらに、登録デバイス数または無効デバイス数を各証明書の新旧判定に適用することで、ドライブやホストの証明書格納用の不揮発性メモリとして使用されるフラッシュメモリの書き換え回数を減少させることができる。すなわち、シーケンスナンバーによる新旧判定の場合は、シーケンスナンバーが変更された場合は全て更新することになり、フラッシュメモリの使用頻度が多くなるが、登録デバイス数または無効デバイス数を各証明書の新旧判定に適用することで、登録デバイス数や無効デバイス数が不変の場合はドライブやホストにおいて証明書更新を行う必要がなく、フラッシュメモリの書き換え回数が減少することになる。従って小型で安価なメモリの搭載が可能となる。
【図面の簡単な説明】
【０３５９】
【図１】従来の情報記録媒体格納コンテンツの再生シーケンスを説明する図である。
【図２】従来の情報処理装置におけるドライブ出力コンテンツの再生シーケンスを説明する図である。
【図３】ドライブからのコンテンツ出力シーケンスを説明するフロー図である。
【図４】従来のホストドライブ間のコンテンツ転送を伴う処理構成におけるコンテンツの不正利用例を説明する図である。
【図５】本発明の情報記録媒体の格納データについて説明する図である。
【図６】本発明の情報記録媒体の格納データの構成について説明する図である。
【図７】本発明の情報記録媒体の格納データとしてのセクタデータおよびセクタヘッダの構成について説明する図である。
【図８】本発明の情報記録媒体のセクタヘッダに記録される出力制御情報の詳細について説明する図である。
【図９】情報記録媒体の格納コンテンツの読み取り、再生を実行する再生機器の処理シーケンスについて説明する図である。
【図１０】情報記録媒体の格納コンテンツの再生において実行するＡＥＳ暗号アルゴリズムに従った鍵生成処理について説明する図である。
【図１１】情報記録媒体の格納コンテンツの再生において実行するＡＥＳ暗号アルゴリズムに従ったデータ復号処理について説明する図である。
【図１２】情報記録媒体、ドライブと情報処理装置に格納されるデータについて説明する図である。
【図１３】証明書のデータ構成、および種類について説明する図である。
【図１４】公開鍵証明書のデータ構成について説明する図である。
【図１５】認定デバイスグループ証明書（ＡＤＧＣ）、認定グループリスト（ＡＤＧＬ）のデータ構成について説明する図である。
【図１６】ＡＤＧＬインフォメーション証明書（ＡＩＣ）のデータ構成について説明する図である。
【図１７】情報記録媒体、ドライブ、情報処理装置に格納される証明書について説明する図である。
【図１８】ＡＤＧＬシーケンスナンバーに基づく登録情報の更新処理について説明する図である。
【図１９】ＡＩＣデータ＝登録デバイス数に基づく登録情報の更新処理について説明する図である。
【図２０】ＡＩＣデータ＝無効デバイス数に基づく登録情報の更新処理について説明する図である。
【図２１】ＡＩＣデータに基づく登録情報の更新処理の詳細シーケンスについて説明する図である。
【図２２】ＡＩＣデータに基づく登録情報の更新処理の詳細シーケンスについて説明する図である。
【図２３】ＡＩＣデータに基づく登録情報の更新処理において、情報記録媒体、ドライブ、情報処理装置間の通信シーケンスについて説明する図である。
【図２４】ドライブ、情報処理装置間のコンテンツ転送を伴うコンテンツ再生における登録情報の更新処理、相互認証、コンテンツ再生シーケンスについて説明する図である。
【図２５】ドライブと情報処理装置間で実行する相互認証および鍵交換（ＡＫＥ）処理シーケンスを説明する図である。
【図２６】ドライブで実行するコンテンツのバスキー：Ｋｂｕｓに基づく暗号化処理構成を説明する図である。
【図２７】情報処理装置で実行するコンテンツのバスキー：Ｋｂｕｓに基づく復号処理構成を説明する図である。
【図２８】ドライブからホストに対するコンテンツ転送を伴う再生処理において、ドライブで実行する処理シーケンスを説明するフローチャートである。
【図２９】ドライブからホストに対するコンテンツ転送を伴う再生処理において、ホストで実行する処理シーケンスを説明するフローチャートである。
【図３０】コンテンツの記録処理において実行するＡＩＣデータ＝無効デバイス数に基づく登録情報の更新処理について説明する図である。
【図３１】ホストにおけるＡＤＧＬの再取得を許容した場合のＡＩＣデータ＝無効デバイス数に基づく登録情報の更新処理について説明する図である。
【図３２】ホストにおけるＡＤＧＬの再取得を許容した場合のＡＩＣデータ＝無効デバイス数に基づく登録情報の更新処理時のドライブの処理について説明するフロー図である。
【図３３】ホストにおける認証処理回数のカウント処理と、カウンタ値に基づくＡＤＧＬの取得処理について説明する図である
【図３４】ホストにおける認証処理回数のカウント処理と、カウンタ値に基づくＡＤＧＬの取得処理について説明するフロー図である
【図３５】ホストにおける認証処理回数のカウント処理と、カウンタ値に基づくＡＤＧＬの取得処理について説明するフロー図である
【図３６】ホストにおける認証処理回数のカウント処理と、カウンタ値に基づくＡＤＧＬの取得処理について説明するフロー図である
【図３７】本発明のホストとしての情報処理装置の構成例を示す図である。
【図３８】本発明のドライブとしての情報処理装置の構成例を示す図である。
【符号の説明】
【０３６０】
１０  情報記録媒体
１１  暗号化ディスクキー
１２  暗号化タイトルキー
１３  スクランブルＭＰＥＧデータ
２０  再生機器
２５  音声／映像データ
３０  ドライブ
４０  プレーヤアプリケーション
４５  音声／映像データ
５０  ドライブ
６０  ホスト
１００  情報記録媒体
１０１  ユーザデータ領域
１０２  リードイン領域
１１１  暗号化コンテンツ
１１２  ユニットキー生成情報
１１３  リボーク情報
１１４  ＲＯＭマーク
１２０  暗号鍵情報
１２１  暗号鍵ブロック（ＲＫＢ）
１２２  暗号化ディスクキー
１３０  登録情報
１３１  ＡＤＧＬインフォメーション証明書（ＡＩＣ）
１３２  認定デバイスグループ証明書（ＡＤＧＣ）
１５１  出力制御情報
２００  情報記録媒体
２０１  登録情報
２０２  暗号鍵ブロック（ＲＫＢ）
２０３  暗号化ディスクキー
２０４  ＲＯＭマーク
２０５  ユニットキー生成情報
２０６  暗号化コンテンツ
２５１  ＡＤＧＬインフォメーション証明書（ＡＩＣ）
２５２  認定デバイスグループリスト（ＡＤＧＬ）
２５３  コンテンツ
３００  再生機器
３０１  デバイスキー
３１１  ＡＥＳ暗号処理部
３２１  ＡＥＳ鍵生成処理ブロック
３２２  ＡＥＳ復号処理ブロック
３２３  復号セクタデータ
４００  ドライブ
４０２  秘密鍵
４０３  公開鍵証明書
４０４  デバイスキー
４１１  ＡＤＧＬインフォメーション証明書（ＡＩＣ）
４１２  カウンタ
５００  ホスト
５０２  秘密鍵
５０３  公開鍵証明書
５１１  ＡＤＧＬインフォメーション証明書（ＡＩＣ）
５１２  認定デバイスグループリスト（ＡＤＧＬ）
５２０  コンテンツ
５５０  セクタデータ
５５１  ＡＥＳ暗号処理部
５５２  バスキーによる暗号化セクタデータ
５７０  バスキーによる暗号化セクタデータ
５７１  ＡＥＳ復号処理部
５７２  暗号化（スクランブル）セクタデータ
６１１  通信部
６１２  認証処理部
６１３  比較部
６１４  更新実行部
６１５  メモリ
６２１  通信部
６２２  認証実行部
６２３  認証回数カウンタメモリ
６２４  比較部
６２５  更新実行部
６２６  メモリ
６２７  通信部
８００  情報処理装置
８０１  バス
８０２  入出力Ｉ／Ｆ
８０３  ＭＰＥＧコーデック
８０４  入出力Ｉ／Ｆ
８０５  Ａ／Ｄ，Ｄ／Ａコンバータ
８０６  ＴＳ・ＰＳ処理手段
８０７  暗号処理手段
８０８  ＲＯＭ
８０９  ＣＰＵ
８１０  メモリ
８１１  ドライブ
８１２  記録媒体
８５０  ドライブ装置
８５１  バス
８５２  ＣＰＵ
８５３  入出力Ｉ／Ｆ
８５４  暗号処理手段
８５５  ＲＯＭ
８５６  メモリ
８５７  記録媒体Ｉ／Ｆ
８５８  情報記録媒体
【図１】
2005352523.tif 000003
【図２】
2005352523.tif 000004
【図３】
2005352523.tif 000005
【図４】
2005352523.tif 000006
【図５】
2005352523.tif 000007
【図６】
2005352523.tif 000008
【図７】
2005352523.tif 000009
【図８】
2005352523.tif 000010
【図９】
2005352523.tif 000011
【図１０】
2005352523.tif 000012
【図１１】
2005352523.tif 000013
【図１２】
2005352523.tif 000014
【図１３】
2005352523.tif 000015
【図１４】
2005352523.tif 000016
【図１５】
2005352523.tif 000017
【図１６】
2005352523.tif 000018
【図１７】
2005352523.tif 000019
【図１８】
2005352523.tif 000020
【図１９】
2005352523.tif 000021
【図２０】
2005352523.tif 000022
【図２１】
2005352523.tif 000023
【図２２】
2005352523.tif 000024
【図２３】
2005352523.tif 000025
【図２４】
2005352523.tif 000026
【図２５】
2005352523.tif 000027
【図２６】
2005352523.tif 000028
【図２７】
2005352523.tif 000029
【図２８】
2005352523.tif 000030
【図２９】
2005352523.tif 000031
【図３０】
2005352523.tif 000032
【図３１】
2005352523.tif 000033
【図３２】
2005352523.tif 000034
【図３３】
2005352523.tif 000035
【図３４】
2005352523.tif 000036
【図３５】
2005352523.tif 000037
【図３６】
2005352523.tif 000038
【図３７】
2005352523.tif 000039
【図３８】
2005352523.tif 000040