(57)【要約】【課題】汎用的なプログラムの処理により、コンテンツデータの記録媒体への記録やそのコンテンツデータの利用を安全に実行できるようにする。【解決手段】モジュールＩ／Ｆ１２１は、セキュアモジュール１００との間で相互認証処理を実行し、その相互認証処理が正しく実行された場合に、コンテンツデータの記録およびその利用のために必要となるコンテンツ利用情報をセキュアモジュール１００から取得する。ＤＲＭ処理部１７は、モジュールＩ／Ｆ１２１によって相互認証処理後に取得されたコンテンツ利用情報を作用させて、コンテンツデータを利用不可能な状態に変換した後、そのコンテンツデータをＨＤＤ１５に記録する。また、モジュールＩ／Ｆ１２１によって同様に相互認証処理後に取得されたコンテンツ利用情報を、ＨＤＤ１５から読み出したコンテンツデータに作用させて利用可能な状態に変換する。【選択図】図１
2008099087.tif 000002
【特許請求の範囲】
【請求項１】
記録媒体に情報を記録し、記録された情報を再生する処理をコンピュータに実行させる情報記録再生プログラムにおいて、
コンテンツデータの記録およびその利用のために必要となるコンテンツ利用情報を管理する利用情報管理部との間で相互認証処理を実行し、その相互認証処理が正しく実行された場合に、前記利用情報管理部から前記コンテンツ利用情報を取得する認証処理手段、
前記認証処理手段によって取得された前記コンテンツ利用情報を作用させてコンテンツデータを利用不可能な状態に変換し、前記記録媒体に記録する書込制御手段、
前記記録媒体に記録されたコンテンツデータを読み出し、前記認証処理手段によって取得された前記コンテンツ利用情報を作用させて利用可能な状態に変換する読出制御手段、
として前記コンピュータを機能させることを特徴とする情報記録再生プログラム。
【請求項２】
前記書込制御手段は、前記コンテンツ利用情報に含まれる暗号鍵情報を用いてコンテンツデータを暗号化して前記記録媒体に記録し、
前記読出制御手段は、前記コンテンツ利用情報に含まれる復号鍵情報を用いて、前記記録媒体から読み出したコンテンツデータを復号する、
ことを特徴とする請求項１記載の情報記録再生プログラム。
【請求項３】
前記書込制御手段は、暗号化されたコンテンツデータの供給を受けて前記記録媒体に記録するとともに、そのコンテンツデータを復号するための復号鍵情報を前記コンテンツ利用情報を用いて暗号化し、前記記録媒体に記録し、
前記読出制御手段は、前記記録媒体から読み出した前記復号鍵情報を前記コンテンツ利用情報を用いて復号し、復号した前記復号鍵情報を用いて、前記記録媒体から読み出したコンテンツデータを復号する、
ことを特徴とする請求項１記載の情報記録再生プログラム。
【請求項４】
コンテンツデータの記録対象となる複数の前記記録媒体のそれぞれに対して、前記書込制御手段および前記読出制御手段を個別に備え、
前記認証処理手段は、前記記録媒体ごとの個別の前記コンテンツ利用情報を前記利用情報管理部から取得し、対応する前記書込制御手段および前記読出制御手段に供給することを特徴とする請求項１記載の情報記録再生プログラム。
【請求項５】
前記認証処理手段に、前記利用情報管理部との相互認証処理を実行させた後、第１の記録媒体に対応する前記コンテンツ利用情報を前記利用情報管理部から読み出させて、前記第１の記録媒体に対応する前記読出制御手段に供給し、当該読出制御手段に前記第１の記録媒体から読み出したコンテンツデータを利用可能な状態に変換させ、前記認証処理手段に、第２の記録媒体に対応する前記コンテンツ利用情報を前記利用情報管理部から読み出させて、前記第２の記録媒体に対応する前記書込制御手段に供給し、当該書込制御手段に、前記第１の記録媒体に対応する前記読出制御手段からのコンテンツデータを利用不可能な状態に変換させて、前記第２の記録媒体に記録させ、コンテンツデータの前記第２の記録媒体への記録後に、前記第１の記録媒体内の対応するコンテンツデータを無効化するコンテンツ移動制御手段をさらに有することを特徴とする請求項４記載の情報記録再生プログラム。
【請求項６】
前記第１の記録媒体に対応する前記書込制御手段は、コンテンツデータを前記第１の記録媒体に記録する際に、そのコンテンツデータを鍵情報を用いて暗号化するとともに、対応する前記コンテンツ利用情報に含まれるランダム鍵情報を用いて前記鍵情報を暗号化して、暗号化したコンテンツデータとともに前記記録媒体に記録し、
前記第１の記録媒体に対応する前記読出制御手段は、前記第１の記録媒体からコンテンツデータを読み出す際に、前記第１の記録媒体から暗号化された前記鍵情報を読み出して、対応する前記コンテンツ利用情報に含まれる前記ランダム鍵情報を用いて復号した後、復号した前記鍵情報を用いて前記第１の記録媒体から読み出したコンテンツデータを復号し、
さらに、前記第１の記録媒体に対応する前記読出制御手段は、少なくとも、前記コンテンツ移動制御手段によって前記第１の記録媒体内のコンテンツデータが前記第２の記録媒体に移動されたときに、新たな前記ランダム鍵情報を生成して前記鍵情報を再暗号化して前記第１の記録媒体に記録するとともに、その新たな前記ランダム鍵情報を前記認証処理手段を通じて前記利用情報管理部に送信して、対応する前記コンテンツ利用情報を更新させることを特徴とする請求項５記載の情報記録再生プログラム。
【請求項７】
前記認証処理手段により前記利用情報管理部との間の相互認証処理が正しく実行された後に、前記コンテンツ利用情報として、前記記録媒体へのデータの書き込み、および前記記録媒体からのデータの読み出しを実行する書込／読出デバイスとの間で相互認証処理を実行するために必要な認証情報を前記利用情報管理部から取得し、取得した前記認証情報を用いて前記書込／読出デバイスとの間で相互認証処理を実行し、その相互認証処理が正しく実行されると、前記書込制御手段または前記読出制御手段に対して必要な前記コンテンツ利用情報を前記利用情報管理部から取得して転送する書込／読出デバイス認証手段をさらに有することを特徴とする請求項１記載の情報記録再生プログラム。
【請求項８】
前記認証処理手段により前記利用情報管理部との間の相互認証処理が正しく実行された後に、前記コンテンツ利用情報として、外部から受信したコンテンツデータを出力するコンテンツ受信デバイスとの間の相互認証処理に必要な認証情報を前記利用情報管理部から取得し、取得した前記認証情報を用いて前記コンテンツ受信デバイスとの間で相互認証処理を実行し、その相互認証処理が正しく実行されると、前記コンテンツ受信デバイスから出力されたコンテンツデータを前記書込制御手段に供給する受信デバイス認証手段をさらに有することを特徴とする請求項１記載の情報記録再生プログラム。
【請求項９】
前記コンテンツ受信デバイスからはコンテンツデータが暗号化されて供給され、前記受信デバイス認証手段は、前記コンテンツ受信デバイスとの相互認証処理の過程で生成された情報に基づく鍵情報を用いて、前記コンテンツ受信デバイスからのコンテンツデータを復号して前記書込制御手段に供給することを特徴とする請求項８記載の情報記録再生プログラム。
【請求項１０】
前記受信デバイス認証手段は、前記コンテンツ受信デバイスとして、放送電波を受信し、コンテンツデータを復調して出力するチューナとの間で相互認証処理を実行し、前記チューナからコンテンツデータの供給を受けることを特徴とする請求項８記載の情報記録再生プログラム。
【請求項１１】
前記受信デバイス認証手段は、前記コンテンツ受信デバイスとして、コンテンツデータをネットワークを通じて受信するネットワークインタフェースとの間で相互認証処理を実行し、前記ネットワークインタフェースからコンテンツデータの供給を受けることを特徴とする請求項８記載の情報記録再生プログラム。
【請求項１２】
前記認証処理手段により前記利用情報管理部との間の相互認証処理が正しく実行された後に、前記コンテンツ利用情報として、コンテンツデータに含まれる画像データを基にモニタ表示用の表示画像信号を生成する表示処理デバイスとの間の相互認証処理に必要な認証情報を前記利用情報管理部から取得し、取得した前記認証情報を用いて前記表示処理デバイスとの間で相互認証処理を実行し、その相互認証処理が正しく実行されると、前記読出制御手段により前記記録媒体から読み出されたコンテンツデータを前記表示処理デバイスに対して出力する表示処理デバイス認証手段をさらに有することを特徴とする請求項１記載の情報記録再生プログラム。
【請求項１３】
前記表示処理デバイス認証手段は、前記表示処理デバイスとの相互認証処理の過程で生成された情報に基づく鍵情報を用いて、前記読出制御手段からのコンテンツデータを暗号化して、前記表示処理デバイスに出力することを特徴とする請求項１２記載の情報記録再生プログラム。
【請求項１４】
プログラムの記述に従って処理を実行する情報処理装置において、
記録媒体へのデータの書き込み、および前記記録媒体からのデータの読み出しを実行する書込／読出部と、
記録再生プログラムを実行することで、前記記録媒体へのコンテンツデータの書き込み制御、および前記記録媒体内のコンテンツデータの読み出し制御を含む処理を行うコンテンツ制御処理部と、
を有し、
前記コンテンツ制御処理部は、
コンテンツデータの記録およびその利用のために必要となるコンテンツ利用情報を管理する利用情報管理部との間で相互認証処理を実行し、その相互認証処理が正しく実行された場合に、前記利用情報管理部から前記コンテンツ利用情報を取得する認証処理手段と、
前記認証処理手段によって取得された前記コンテンツ利用情報を作用させてコンテンツデータを利用不可能な状態に変換し、前記書込／読出部を通じて前記記録媒体に記録する書込制御手段と、
前記記録媒体に記録されたコンテンツデータを前記書込／読出部を通じて読み出し、前記認証処理手段によって取得された前記コンテンツ利用情報を作用させて利用可能な状態に変換する読出制御手段と、
を備えたことを特徴とする情報処理装置。
【請求項１５】
前記利用情報管理部は、前記情報処理装置の内部に設けられ、前記コンテンツ制御処理部の前記認証処理手段との間で相互認証処理を実行し、その相互認証処理が正しく実行された場合に、所定の記憶領域から前記コンテンツ利用情報を読み出して暗号化し、前記認証処理手段に出力し、
前記コンテンツ制御処理部の前記認証処理手段は、前記利用情報管理部からの前記コンテンツ利用情報を復号することを特徴とする請求項１４記載の情報処理装置。
【請求項１６】
ネットワークを通じてデータを送受信する通信処理部をさらに有し、
前記コンテンツ制御処理部の前記認証処理手段は、前記ネットワーク上に接続された外部機器上に設けられた前記利用情報管理部との間で相互認証処理を行い、当該利用情報管理部から暗号化された前記コンテンツ利用情報の供給を受けて復号することを特徴とする請求項１４記載の情報処理装置。
【請求項１７】
個別の前記記録媒体にそれぞれ対応する複数の前記書込／読出部を有し、
また、前記コンテンツ制御処理部は、コンテンツデータの記録対象となる複数の前記記録媒体のそれぞれに対して、前記書込制御手段および前記読出制御手段を個別に備えており、
前記認証処理手段は、前記記録媒体ごとの個別の前記コンテンツ利用情報を前記利用情報管理部から取得し、対応する前記暗号化手段および前記復号手段に供給することを特徴とする請求項１４記載の情報処理装置。
【請求項１８】
前記コンテンツ制御処理部は、
前記認証処理手段に、前記利用情報管理部との相互認証処理を実行させた後、第１の記録媒体に対応する前記コンテンツ利用情報を前記利用情報管理部から読み出させて、前記第１の記録媒体に対応する前記読出制御手段に供給し、当該読出制御手段に前記第１の記録媒体から読み出したコンテンツデータを利用可能な状態に変換させ、前記認証処理手段に、第２の記録媒体に対応する前記コンテンツ利用情報を前記利用情報管理部から読み出させて、前記第２の記録媒体に対応する前記書込制御手段に供給し、当該書込制御手段に、前記第１の記録媒体に対応する前記復号手段からのコンテンツデータを利用不可能な状態に変換させて、前記第２の記録媒体に記録させ、コンテンツデータの前記第２の記録媒体への記録後に、前記第１の記録媒体内の対応するコンテンツデータを無効化するコンテンツ移動制御手段をさらに有することを特徴とする請求項１７記載の情報処理装置。
【請求項１９】
少なくとも１つの前記書込／読出部は、通信インタフェースを介して外部に接続された外部記録媒体へのデータの書き込み、および前記外部記録媒体からのデータの読み出しを実行することを特徴とする請求項１７記載の情報処理装置。
【請求項２０】
記録媒体に情報を記録し、記録された情報を再生するための情報記録再生方法において、
認証処理手段が、コンテンツデータの記録およびその利用のために必要となるコンテンツ利用情報を管理する利用情報管理部との間で相互認証処理を実行し、その相互認証処理が正しく実行された場合に、前記利用情報管理部から前記コンテンツ利用情報を取得し、
書込制御手段が、前記認証処理手段によって取得された前記コンテンツ利用情報を作用させてコンテンツデータを利用不可能な状態に変換し、前記記録媒体に記録し、
読出制御手段が、前記記録媒体に記録されたコンテンツデータを読み出し、前記認証処理手段によって取得された前記コンテンツ利用情報を作用させて利用可能な状態に変換する、
ことを特徴とする情報記録再生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録媒体に情報を記録し、記録された情報を再生する処理をコンピュータに実行させる情報記録再生プログラム、そのプログラムが実行される情報処理装置、および情報記録再生方法に関し、特に、著作権保護されたコンテンツデータを安全に取り扱うことが可能な情報記録再生プログラム、情報処理装置、および情報記録再生方法に関する。
【背景技術】
【０００２】
近年、ＨＤＤ（Hard Disk Drive）と、ＤＶＤ（Digital Versatile Disk）などの光ディスクの記録ドライブといった２種類の記録装置を備えたビデオレコーダが普及してきている。このようなビデオレコーダでは、例えば、タイムシフト視聴を目的とするビデオコンテンツはＨＤＤに記録し、長期保存を目的とするビデオコンテンツは光ディスクに記録するといった使い分けがなされている。
【０００３】
また、最近では、さらなる大容量のデータを記録可能な光ディスクとして、ブルーレイディスク（Blu-ray Disc，ソニー株式会社の登録商標。以下、ＢＤと略称する。）が実現されている。ＢＤを用いることにより、例えばデジタル放送で提供されるＨＤＴＶ（High Definition TeleVision）映像のデジタルデータを、１枚のＢＤに片面２時間程度記録することが可能となっている。
【０００４】
このように、高品質のデジタルコンテンツを可搬型の記録媒体に容易に保存できるようになるのに伴い、デジタルコンテンツの著作権保護の重要性が高まっている。このため、上記のようなビデオレコーダにおいても、著作権保護されたコンテンツの違法コピーを防止する手段が講じられている。
【０００５】
図１８は、上記のような従来のビデオレコーダの機能を示すブロック図である。
このビデオレコーダ９００ａでは、チューナ部９０１により所定のチャネルのデジタルＴＶコンテンツ（ビデオコンテンツ）が受信されて、復調される。復調されたビデオコンテンツのデータ（以下、コンテンツデータと略称する）は暗号化されているので、暗号処理部９０２において、Ｂ−ＣＡＳ（ＢＳ−Conditional Access Systems，ＢＳ：Broadcasting Satellite）カード９０２ａに記録された鍵情報を用いて復号される。復号されたコンテンツデータは、ＭＰＥＧ−２（Moving Picture Experts Group−phase 2）方式のストリームデータとなっており、ＴＶ放送を視聴する際には、このストリームデータがデコーダ９０３でデコードされ、デコード後のデータがグラフィック処理部９０４に供給されて、表示信号が生成される。これにより、ＴＶ画像が外部のディスプレイ９０４ａに表示される。
【０００６】
また、デジタル放送から受信したコンテンツデータをＨＤＤ９０５に記録する場合には、デコーダ９０３でデコードされたコンテンツデータ（ベースバンドデータ）がＣＯＤＥＣ（Encoder／Decoder）９０６で再エンコードされ、ＤＲＭ処理部（Digital Rights Management）９０７により暗号化されてＨＤＤ９０５に記録される。
【０００７】
ここで、ＤＲＭ処理部９０７は、ＨＤＤ９０５を用いたコンテンツデータの記録／再生の際に、そのコンテンツデータの著作権を保護するための処理を行うブロックであり、例えば、ＨＤＤ９０５に記録する際の暗号化や暗号化されたコンテンツデータの復号の際に利用する鍵情報などを、セキュア情報（Ｓ．Ｉ．：Secure Information）９０７ａとして保持している。ＨＤＤ９０５に対するＤＲＭ処理は、このビデオレコーダ９００ａにおいて固有の方式を採ることができ、例えばＨＤＤ９０５ごとあるいはビデオレコーダ９００ａごとに固有な鍵情報を用いてコンテンツデータを暗号化し、ＨＤＤ９０５に記録することで、そのコンテンツデータを他の機器にコピーした場合でも復号できないようにすることができる。
【０００８】
また、デジタル放送から受信したコンテンツデータを光ディスクドライブ９０８を通じて光ディスクに記録する場合には、同様に、デコーダ９０３でデコードされたコンテンツデータ（ベースバンドデータ）がＣＯＤＥＣ９０９で再エンコードされ、ＤＲＭ処理部９１０により暗号化されて光ディスクドライブ９０８に供給され、光ディスクに記録される。
【０００９】
ここで、ＤＲＭ処理部９１０は、光ディスクを用いたコンテンツデータの記録／再生の際に、そのコンテンツデータの著作権を保護するための処理を行うブロックであり、例えば、コンテンツデータの暗号化や復号の際に利用する鍵情報などをセキュア情報９１０ａとして保持している。光ディスクに対するＤＲＭ処理の規格としては、例えばＤＶＤではＣＰＲＭ（Content Protection for Recordable Media）が、ＢＤではＡＡＣＳ（Advanced Access Content System）がそれぞれ用いられている。これらのＤＲＭ規格を用いた場合、ＤＲＭ処理部９１０には、セキュア情報９１０ａとして、光ディスクドライブ９０８との間の相互認証処理に用いる鍵情報などが記憶される。
【００１０】
さらに、このビデオレコーダ９００ａでは、デジタル放送から受信し、ＨＤＤ９０５に記録したコンテンツデータを、光ディスクドライブ９０８を通じて光ディスクにムーブできるようになっている。ＨＤＤ９０５に記録されたコンテンツデータに、１回のみのコピー可を示すコピー制御情報（コピーワンス、Copy Once）が付加されていた場合、そのコンテンツデータは、ＤＲＭ処理部９０７を介してＣＯＤＥＣ９０６に供給されてデコードされた後、ＣＯＤＥＣ９０９により再エンコードされて、ＤＲＭ処理部９１０により暗号化されて、光ディスクドライブ９０８により光ディスクに記録される。これとともに、ＨＤＤ９０５内の元のコンテンツデータが削除される（または利用不可能な状態とされる）。
【００１１】
なお、以上の説明では、デジタル放送から受信したコンテンツデータをＨＤＤ９０５あるいは光ディスクに記録する際には、そのコンテンツデータを一旦デコードした後、再エンコードしていたが、このようなデコード／エンコードを行わずに、元のデータストリームをそのままＤＲＭ処理部９０７および９１０に供給し、暗号化してＨＤＤ９０５や光ディスクに記録するようにしてもよい。また、ＨＤＤ９０５から光ディスクにコンテンツデータをムーブする際にも、同様に、コンテンツデータのデコード／エンコードを行わずにムーブを行ってもよい。
【００１２】
以上のように、従来のビデオレコーダ９００ａにおいては、コンテンツデータの著作権を保護するための機能を設けることで、著作権保護されたコンテンツデータの取り扱いが可能となっている。特に、ビデオ録画専用の機器では、上記のような機能が外部に対して閉じた回路として実現されるため、このような著作権保護機能の安全性・有効性を比較的高めやすいと言える。
【００１３】
なお、現在のところ、光ディスクからＨＤＤ９０５へのコンテンツデータのムーブは許されていないが、将来的には、ＢＤ内のユーザがアクセス不可能な領域の情報を光ディスクドライブ９０８から書き換え、ムーブの可／不可やコピー回数を制御できるようにすることで、ＢＤからＨＤＤなどへのムーブも可能となる。
【００１４】
また、ムーブを可能とする従来の技術として、ムーブ時に元のデータを無効化するために、記録媒体に記録された対象データのうち、無効化すべきと判断された部分データを逐次無効化する逐次無効化部を具備する無効化装置があった（例えば、特許文献１参照）。また、上記に関連する従来の技術として、ＨＤＤ内のコンテンツを暗号化して他の記録装置にバックアップする際に、ＨＤＤのＩＤなどの機器情報と暗号鍵とを保存しておき、リストア時に、そのときの機器情報とバックアップをしたときの機器情報とを比較して、不正なリストアでないと判断したときにコンテンツを復号することで、著作権を保護しつつ、コンテンツのバックアップを可能にした装置があった（例えば、特許文献２参照）。
【００１５】
ところで、最近ではＴＶ録画機能を備えたパーソナルコンピュータ（ＰＣ）も広く普及しており、特に、デジタル放送を通じてＨＤ画質のビデオコンテンツをＨＤＤなどに記録できるようにしたＰＣが注目されている。
【００１６】
図１９は、ＴＶ録画機能を備えたＰＣの機能を示すブロック図である。なお、この図１９では、上記の図１８に対応する機能ブロックについては同じ符号を付して示しており、ここではその説明を省略する。
【００１７】
この図１９に示すＰＣ９００ｂにおいては、チューナ部９０１で受信されたビデオコンテンツをディスプレイ９０４ａに表示させたり、そのコンテンツデータをＨＤＤ９０５に記録するための機能ブロック構成については、ほぼ同様である。ただし、これらの機能を実現するためのＰＣ９００ｂにおけるハードウェア構成は、ビデオ録画専用の機器とは異なっている。例えば、デジタル放送のチューナ部９０１、Ｂ−ＣＡＳカード９０２ａを用いた暗号処理部９０２、復号されたコンテンツデータのデコーダ９０３の機能は、チューナボード９２０などのハードウェア回路として実現される。また、ＨＤＤ９０５や光ディスクへのコンテンツデータの記録時、再生時に使用されるＣＯＤＥＣ９０６および９０９、各記録媒体に対応するＤＲＭ処理部９０７および９１０などは、これらの処理手順が記述されたアプリケーションプログラム９３０がＣＰＵ（Central Processing Unit）により実行されることで実現される。
【００１８】
このようなハードウェア構成を持つＰＣ９００ｂにおいて、デジタル放送から受信したコンテンツデータをＨＤＤ９０５に記録しようとすると、デコーダ９０３からＣＯＤＥＣ９０６に（すなわちチューナボード９２０からＣＰＵに）コンテンツデータを転送する際に、そのコンテンツデータは外部に対してＣＰＵバスを流れることになる。ＰＣは汎用デバイスの接続を前提としたオープンなアーキテクチャを持ち、ＣＰＵバス上の転送データを容易に取り出すことが可能な仕様であるため、従来のＰＣでは、デジタル放送から受信したコンテンツデータをＨＤＤなどの記録媒体に記録できないようにしたものが多かった。
【００１９】
また、デジタル放送から受信したコンテンツデータをＨＤＤ９０５に記録できるようにするために、図１９のＰＣ９００ｂでは、チューナボード９２０からＣＰＵバスへの出力段、およびＣＰＵバスからＣＰＵへの入力段に、ＣＰＵバスに転送されるコンテンツデータの暗号化、およびそのコンテンツデータの復号をそれぞれ実行するローカル暗号化処理部９２１および９３１を設けている。これにより、ＣＰＵバスに流れるコンテンツデータの不正利用を防止できる。
【００２０】
なお、上記の構成例では、デジタル放送から受信したコンテンツデータをデコードする機能（デコーダ９０３）を、チューナボード９２０内のハードウェアにより実現しているが、この機能をＣＰＵにより実行されるソフトウェアとして実現してもよい。この場合、チューナボード９２０からデコーダ９０３に対して、コンテンツデータを暗号化してＣＰＵバスを通じて転送する必要がある。
【００２１】
さらに、著作権保護されたコンテンツデータをＨＤＤに記憶することを許可した場合、そのコンテンツデータを不正利用されないように安全に管理する必要がある。ビデオレコーダでは、コンテンツデータを暗号化してＨＤＤに記録して、同じビデオレコーダでしかＨＤＤ内のコンテンツデータを復号できないようにすることで、光ディスクへの安全なムーブを可能にしている。しかし、一般的にＨＤＤを交換可能であるＰＣでは、コンテンツデータを暗号化してＨＤＤに記録するだけでは、ＨＤＤ内の暗号化されたコンテンツデータの不正利用を必ずしも防止できないという問題があった。例えば、暗号化されたコンテンツデータが記憶されたＨＤＤを取り外し、その中のデータを他のＨＤＤにビットバイビット（bit by bit）でバックアップした後、元のＨＤＤをＰＣに戻して、その中のコンテンツデータを光ディスクにムーブする。次に、バックアップ先のＨＤＤから全データをＨＤＤに戻すと、その中のコンテンツデータをＰＣにおいて再度ムーブできてしまい、事実上無制限のコピーが可能になってしまう。
【００２２】
さらに、コンテンツデータの暗号化や復号のための鍵情報をＰＣ内に保持しておく必要があるが、ＰＣがオープンな仕様であるために、その鍵情報を安全に取り扱うことは容易ではない。
【００２３】
以上のような問題のため、ＰＣでは一般的に、ＨＤＤに記録したコンテンツデータを光ディスクなどの他の記録媒体にムーブすることを許可せず、このコンテンツデータを同じＰＣでしか利用できないように機能を制限していることが多い。
【００２４】
特に、デジタル放送においては、現状ではＢ−ＣＡＳカードを用いたハードウェア処理によりデスクランブル処理を行うという、比較的強固な著作権保護機能が運用されている。従って、このようなコンテンツデータをＰＣ上でムーブ可能とするためには、それと同等の著作権保護の安全性を確保することが重要となる。
【特許文献１】特開２００２−２４４９２６号公報（段落番号〔００２４〕〜〔００３７〕、図２）
【特許文献２】特開２００３−２２４５５７号公報（段落番号〔００３２〕〜〔００４７〕、図４）
【発明の開示】
【発明が解決しようとする課題】
【００２５】
ところで、ＰＣでは、その構造上、ソフトウェアプログラムをインストールすることで様々な機能を実現できる。従って、ＰＣ上でコンテンツデータを利用できるようにすることで、プログラムの追加や更新（バージョンアップ）により、新規フォーマットのコンテンツデータの取り扱いを可能としたり、新規のメディアやデバイス、サービスに容易に対応できるといった様々なメリットが生まれる。また、ＰＣでは、ＨＤＤを増設したり、ファイルサーバとして利用することも容易であることから、このようなＰＣ上で、コンテンツデータを異なる記録媒体の間や異なる機器の間で移動できるようにすることで、単にコンテンツデータの記録・再生を行うだけでなく、コンテンツデータの整理やそれらの利用を効率化できるようになる。さらに、ＰＣやＨＤＤを買い換えた場合に、過去に購入したコンテンツデータを利用可能になるというメリットもある。
【００２６】
しかし、上述したように、現状では、ＨＤＤに記録したコンテンツデータは基本的にその機器でしか利用できず、コンテンツデータを他の記録媒体にムーブすることは許可されていない。従って、上記のようなＰＣ独自のメリットをユーザが受けることができないことが問題であった。
【００２７】
また、ＰＣにおいては、上記のようなさまざまな機能をソフトウェアプログラムとして大量に配布できることにも大きなメリットがある。すなわち、このようなソフトウェアプログラムは、パッケージメディアとして、あるいはネットワークを通じて、容易に大量に配布することができる。
【００２８】
レコーダ機器の処理機能をソフトウェアプログラムとして実現しようとしたとき、そのソフトウェアプログラムと利用されるデバイスとの間で相互認証される必要がある。このため、デバイスとの認証に用いる鍵情報などがソフトウェアプログラム自体に割り当てられていなければならない。しかし、このような固有な情報を、大量に配布するソフトウェアプログラムのそれぞれに割り当てることは非常に困難であり、現実には各デバイスに専用のソフトウェアだけによってビデオレコーダと同等の機能を実現する他ない。従って、ソフトウェアプログラムのユーザへの配布の容易さや、プログラムの追加による機能拡張性の高さといった特徴が阻害されてしまう。
【００２９】
本発明はこのような点に鑑みてなされたものであり、汎用的なプログラムの処理により、コンテンツデータの記録媒体への記録やそのコンテンツデータの利用を安全に実行できるようにした情報記録再生プログラム、情報処理装置、および情報記録再生方法を提供することを目的とする。
【課題を解決するための手段】
【００３０】
本発明では上記課題を解決するために、記録媒体に情報を記録し、記録された情報を再生する処理をコンピュータに実行させる情報記録再生プログラムにおいて、コンテンツデータの記録およびその利用のために必要となるコンテンツ利用情報を管理する利用情報管理部との間で相互認証処理を実行し、その相互認証処理が正しく実行された場合に、前記利用情報管理部から前記コンテンツ利用情報を取得する認証処理手段、前記認証処理手段によって取得された前記コンテンツ利用情報を作用させてコンテンツデータを利用不可能な状態に変換し、前記記録媒体に記録する書込制御手段、前記記録媒体に記録されたコンテンツデータを読み出し、前記認証処理手段によって取得された前記コンテンツ利用情報を作用させて利用可能な状態に変換する読出制御手段として前記コンピュータを機能させることを特徴とする情報記録再生プログラムが提供される。
【００３１】
ここで、コンテンツデータの記録およびその利用のために必要となるコンテンツ利用情報は利用情報管理部によって管理されており、認証処理手段は、利用情報管理部との間で相互認証処理を実行し、その相互認証処理が正しく実行された場合に、利用情報管理部からコンテンツ利用情報を取得する。書込制御手段は、認証処理手段によって相互認証処理後に取得されたコンテンツ利用情報を作用させて、コンテンツデータを利用不可能な状態に変換した後、そのコンテンツデータを記録媒体に記録する。読出制御手段は、認証処理手段によって相互認証処理後に取得されたコンテンツ利用情報を、記録媒体から読み出したコンテンツデータに作用させて利用可能な状態に変換し、これにより、例えばそのコンテンツデータをコンピュータ上で再生することが可能になる。
【発明の効果】
【００３２】
本発明の情報記録再生プログラムによれば、コンテンツデータの記録およびその利用のために必要となるコンテンツ利用情報が利用情報管理部によって管理されている状態で、この利用情報管理部との間で相互認証処理が正しく実行された場合にのみ、コンテンツ利用情報が取得されるので、コンテンツ利用情報を安全に取得できる。そして、取得されたコンテンツ利用情報を用いて、記録媒体に記録するコンテンツデータを利用不可能な状態に変換することと、記録媒体から読み出したコンテンツデータを利用可能な状態に変換することとが可能になる。従って、この情報記録再生プログラムの実行により、コンテンツデータの著作権を確実に保護しながら、そのコンテンツデータの記録媒体への記録やそのコンテンツデータの再生を行うことができる。また、情報記録再生プログラム自体にコンテンツ利用情報を割り当てておく必要がなくなるので、記録媒体へのコンテンツデータの記録方法やその利用方法のバリエーションに関係なく、情報記録再生プログラムを大量に流通させ、様々なコンピュータにインストールして実行させることができるようになる。
【発明を実施するための最良の形態】
【００３３】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
〔第１の実施の形態〕
図１は、本発明の第１の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【００３４】
図１の示すＰＣは、チューナ部１１、暗号処理部１２、デコーダ１３、グラフィック処理回路１４、ＨＤＤ１５、ＨＤＤ１５用のＣＯＤＥＣ１６およびＤＲＭ処理部１７、ＢＤドライブ１８、ＢＤ用のＣＯＤＥＣ１９およびＤＲＭ処理部２０、セキュアモジュール１００、モジュールＩ／Ｆ（インタフェース）１２１、ローカル暗号処理部１１１および１２２を備える。
【００３５】
チューナ部１１は、外部のアンテナにより受信された放送電波の入力を受けて、後述するＣＰＵからの指示に従って所定の搬送周波数の信号を選択し、選択した受信信号を復調して、暗号処理部１２に出力する。放送電波は、例えば地上波、あるいはＢＳ、ＣＳ（Communication Satellite）により中継された衛星波でもよい。また、有線ケーブルを通じて放送信号を受信してもよい。
【００３６】
暗号処理部１２は、チューナ部１１から出力された信号がスクランブル処理されている場合、この信号をデスクランブル処理する。この暗号処理部１２には、視聴可能な番組の契約情報やデスクランブル処理のためのキー情報などが格納された、半導体メモリなどからなるＢ−ＣＡＳカード１２ａが挿入されている。そして、スクランブル処理された信号が入力されたとき、暗号処理部１２は、Ｂ−ＣＡＳカード１２ａから読み出した契約情報と、受信した放送信号中から抽出された契約情報とを照合し、視聴可能と判断した場合にはＢ−ＣＡＳカード１２ａから鍵情報を読み取って、その鍵情報を用いてデスクランブル処理を行う。
【００３７】
デコーダ１３は、暗号処理部１２によってデスクランブル処理された放送コンテンツのデータをデコードする。本実施の形態では、暗号処理部１２から供給される放送コンテンツのデータはＭＰＥＧ−２方式のストリームデータとなっており、デコーダ１３はこの符号化方式に従ってデコード処理を実行して、デコード後のコンテンツデータをグラフィック処理回路１４および図示しない音声処理回路に出力する。また、デコーダ１３は、入力されたコンテンツデータをデコードせず、ＭＰＥＧ−２方式のストリームデータの状態でＣＯＤＥＣ１６および１９に転送することもできる。
【００３８】
なお、図１以降の図では、ＭＰＥＧ−２方式で符号化されたコンテンツデータ（ストリームデータ）を“ＭＰ２”と示し、暗号化された（またはスクランブル処理された）ストリームデータを“ｅ（ＭＰ２）”と示している。また、デコードされたコンテンツデータを“Ｂ．Ｂ．”と示している。
【００３９】
以上のチューナ部１１、暗号処理部１２、およびデコーダ１３は、チューナボード１１０上に設けられたハードウェア回路として実現される。また、このチューナボード１１０には、後述する記録再生ソフトウェア１２０との間でコンテンツデータなどをセキュアに受け渡しする（具体的には、例えば、後述するＣＰＵバス上に送出するコンテンツデータを暗号化する）ためのローカル暗号処理部１１１が、ハードウェア回路として設けられている。このローカル暗号処理部１１１には、データの受け渡し時に必要な鍵情報などがセキュア情報１１１ａとして格納されている。
【００４０】
グラフィック処理回路１４は、デコーダ１３によってデコードされたコンテンツデータ中のビデオデータから表示画像信号を生成し、外部のディスプレイ１４ａに出力して画像を表示させる。これにより、受信された放送コンテンツの画像がディスプレイ１４ａに表示される。また、グラフィック処理回路１４は、ＣＯＤＥＣ１６および１９によってデコードされたビデオデータを受けて表示画像信号を生成することもでき、これにより、ＨＤＤ１５やＢＤドライブ１８内のＢＤに記録されたビデオコンテンツの再生画像をディスプレイ１４ａに表示させることもできる。
【００４１】
ＨＤＤ１５は、例えば数百ＧＢｙｔｅといった比較的大容量の記憶装置であり、受信された放送コンテンツのデータや、ＢＤドライブ１８を介してＢＤからムーブされたコンテンツデータを、暗号化した状態で記憶することができる。
【００４２】
ＣＯＤＥＣ１６は、ＨＤＤ１５から読み出されたコンテンツデータをデコードし、グラフィック処理回路１４および図示しない音声処理回路に出力する。これにより、ＨＤＤ１５内のコンテンツの再生画像をディスプレイ１４ａに表示させることができる。また、ＣＯＤＥＣ１６は、ＨＤＤ１５から読み出されたコンテンツデータをデコードせずに、ストリームデータの状態でＣＯＤＥＣ１９に転送することもできる。さらに、ＣＯＤＥＣ１６は、デコーダ１３およびＣＯＤＥＣ１９から転送されたストリームデータを一旦デコードした後、例えば圧縮率や画像サイズの設定を変更するなどして再エンコードし、ＨＤＤ１５に出力することもできる。
【００４３】
ＤＲＭ処理部１７は、ＨＤＤ１５に記録するコンテンツデータの不正利用を防止するための処理機能であり、ＣＯＤＥＣ１６からＨＤＤ１５へのコンテンツデータの書き込みや、ＨＤＤ１５からＣＯＤＥＣ１６へのコンテンツデータの読み出しは、すべてこのＤＲＭ処理部１７を介して行われる。このＤＲＭ処理部１７では、ＨＤＤ１５に記録するコンテンツデータの暗号化や、ＨＤＤ１５から読み出したコンテンツデータの復号などが行われるが、これらの処理時に利用される鍵情報などのセキュア情報１７ａは、後述するようにセキュアモジュール１００からモジュールＩ／Ｆ１２１を介して読み込まれる。あるいは、モジュールＩ／Ｆ１２１を介してセキュアモジュール１００に書き込まれる。
【００４４】
ＢＤドライブ１８は、図示しないＢＤが装着されてデータの読み取り・書き込みが行われるドライブ装置や、その駆動回路などからなる。装着されたＢＤには、受信された放送コンテンツのデータや、ＨＤＤ１５からムーブされたコンテンツデータを、暗号化した状態で記録することができる。
【００４５】
ＣＯＤＥＣ１９は、ＢＤドライブ１８内のＢＤから読み出されたコンテンツデータをデコードし、グラフィック処理回路１４および図示しない音声処理回路に出力する。これにより、ＢＤ内のコンテンツの再生画像をディスプレイ１４ａに表示させることができる。また、ＣＯＤＥＣ１９は、ＢＤから読み出されたコンテンツデータをデコードせずに、ストリームデータの状態でＣＯＤＥＣ１６に転送することもできる。さらに、ＣＯＤＥＣ１９は、ＣＯＤＥＣ１６と同様に、デコーダ１３およびＣＯＤＥＣ１６から転送されたストリームデータを一旦デコードした後、再エンコードしてＢＤドライブ１８に出力することもできる。なお、このＣＯＤＥＣ１９の機能はＣＯＤＥＣ１６と共通化されてもよい。
【００４６】
ＤＲＭ処理部２０は、ＢＤドライブ１８内のＢＤに記録するコンテンツデータの不正利用を防止するための処理機能であり、ＣＯＤＥＣ１９からＢＤへのコンテンツデータの書き込みや、ＢＤからＣＯＤＥＣ１９へのコンテンツデータの読み出しは、すべてこのＤＲＭ処理部２０を介して行われる。本実施の形態では、ＢＤ規格において標準化されているＡＡＣＳ方式に従って処理する。このＤＲＭ処理部２０では、ＢＤに記録するコンテンツデータの暗号化や、ＢＤから読み出したコンテンツデータの復号などが行われるが、これらの処理時に利用される鍵情報などのセキュア情報２０ａは、後述するようにセキュアモジュール１００からモジュールＩ／Ｆ１２１を介して読み込まれる。
【００４７】
ここで、ＣＯＤＥＣ１６および１９、ＤＲＭ処理部１７および２０は、ＨＤＤ１５およびＢＤドライブ１８などを用いたコンテンツデータの記録・再生処理を制御する記録再生ソフトウェア１２０が、ＣＰＵによって実行されることで実現される機能である。また、この記録再生ソフトウェア１２０の実行により実現される機能として、モジュールＩ／Ｆ１２１およびローカル暗号処理部１２２が設けられている。
【００４８】
モジュールＩ／Ｆ１２１は、記録再生ソフトウェア１２０の機能がセキュアモジュール１００との間でデータをやり取りするためのインタフェースとして機能し、例えば、セキュアモジュール１００との間の相互認証や、送受信するデータの暗号化・復号などの機能を備える。
【００４９】
ローカル暗号処理部１２２は、記録再生ソフトウェア１２０の機能がチューナボード１１０との間でコンテンツデータなどをセキュアに受け渡しするための機能であり、チューナボード１１０との間の相互認証機能や、送受信するデータの暗号化・復号などの機能を備える。なお、それらの処理の際に必要な鍵情報などのセキュア情報１２２ａは、セキュアモジュール１００からモジュールＩ／Ｆ１２１を介して読み込まれる。
【００５０】
セキュアモジュール１００には、記録再生ソフトウェア１２０との間で相互認証するための各種情報や、記録再生ソフトウェア１２０の実行により、チューナボード１１０からのコンテンツデータや、ＨＤＤ１５内およびＢＤ内のコンテンツデータを利用するために必要な各種情報が格納される。
【００５１】
図２は、第１の実施の形態に係るＰＣのハードウェア構成を示すブロック図である。
本実施の形態に係るＰＣは、ＣＰＵ１３１、ＲＯＭ（Read Only Memory）１３２、およびＲＡＭ１３３と、上述したチューナボード１１０、グラフィック処理回路１４、ＨＤＤ１５、ＢＤドライブ１８、およびセキュアモジュール１００とが、ＣＰＵバス１３４を介して互いに接続された構成を有している。
【００５２】
ＣＰＵ１３１は、ＲＯＭ１３２，ＨＤＤ１５などに格納されたＯＳ（Operating System）やアプリケーションプログラムなどを実行することにより、ＰＣ内の各部を統括的に制御する。ＲＯＭ１３２には、ＢＩＯＳ（Basic Input／Output System）などのプログラムまたはその一部や、その他の各種データがあらかじめ格納される。ＲＡＭ１３３は、ＣＰＵ１３１に実行させるプログラムの少なくとも一部や、このプログラムによる処理に必要なデータが一時的に格納される。このような構成において、上述した記録再生ソフトウェア１２０は、例えばＨＤＤ１５内に格納されて、ＣＰＵ１３１に実行される。
【００５３】
セキュアモジュール１００は、本実施の形態においては、例えばＥＥＰＲＯＭ（Electronically Erasable and Programmable−ＲＯＭ）などの不揮発性記録媒体、認証・暗号処理などを実行する処理回路などからなる専用のハードウェア回路によって実現される。なお、このセキュアモジュール１００の機能は、必ずしも個別のハードウェアとして実現されなくてもよいが、この機能の他の実現形態については後に補足説明する。
【００５４】
セキュアモジュール１００は、記録再生ソフトウェア１２０を始めとする、ＣＰＵ１３１により実行される各種のソフトウェアツールとの間で相互認証するための情報（例えば、ソフトウェアツールごとに固有の情報など）や、それらのソフトウェアツールの実行時にコンテンツデータを取り扱うために必要な情報（例えば、コンテンツデータを送受信するデバイスとの間の認証情報や、コンテンツごとの権利情報など）を、セキュア情報１０１として一元的に管理する。そして、実行されたソフトウェアツールとの間で相互認証し、正しく認証されれば、コンテンツデータの利用に必要な各種情報を、例えば暗号化することによってＣＰＵバス１３４を介してＣＰＵ１３１に対してセキュアに受け渡す。
【００５５】
このように、各ソフトウェアツールにおいてコンテンツデータを取り扱うための情報が、セキュア情報１０１としてセキュアモジュール１００内で一元的に管理されることで、それらの情報を各ソフトウェアツールが管理する必要がなくなる。そして、各ソフトウェアツールは、セキュアモジュール１００との認証のみ正しく実行できれば、不正コピーが確実に防止される状態でコンテンツデータを取り扱うことが可能になる。例えば、ＨＤＤ１５とＢＤドライブ１８内のＢＤとの間で、コンテンツデータを相互にムーブできるようになる。
【００５６】
次に、記録再生ソフトウェア１２０と、セキュアモジュール１００を始めとする各種デバイスとの間の認証処理や、コンテンツデータの保護のための処理について説明し、併せて、セキュア情報１０１として記録される情報の例について具体的に説明する。なお、ここでは記録再生ソフトウェア１２０自体の安全性については言及しないが、このＰＣにおいては、例えば記録再生ソフトウェア１２０の改変を防止する手段が講じられていることが望ましい。
【００５７】
まず、図３は、記録再生ソフトウェアとセキュアモジュールとの間の相互認証のための機能の例を示すブロック図である。なお、ここでは例として、記録再生ソフトウェア１２０とセキュアモジュール１００との間では、いわゆるＰＫＩ（Public Key Infrastructure）方式による相互認証処理が行われるものとするが、例えば共通鍵方式などの他の方式による相互認証処理が行われてもよい。
【００５８】
セキュアモジュール１００は、セキュア情報記憶部１０２および１０３と、相互認証処理部（図中“ＡＫＥ”と表記。ＡＫＥ：Authentication and Key Exchange）１０４と、暗号処理部１０５とを備えている。また、記録再生ソフトウェア１２０のモジュールＩ／Ｆ１２１は、セキュア情報記憶部２０１と、相互認証処理部２０２と、暗号処理部２０３とを備えている。
【００５９】
セキュアモジュール１００において、セキュア情報記憶部１０２および１０３は、ともに外部からのアクセスが不可能な記憶領域となっている。セキュア情報記憶部１０２には、セキュア情報１０１のうち、記録再生ソフトウェア１２０とセキュアモジュール１００との間の相互認証成立後に利用されるソフトウェア側のセキュア情報が格納される。例えば、記録再生ソフトウェア１２０とＢＤドライブ１８あるいはチューナボード１１０との間の相互認証のために必要な、ソフトウェア側のセキュア情報が格納される。
【００６０】
一方、セキュア情報記憶部１０３には、相互認証処理部１０４によってセキュアモジュール１００と記録再生ソフトウェア１２０との間の相互認証を行うために必要なモジュール側の情報が格納される。例えば、ソフトウェアツール（ここでは記録再生ソフトウェア１２０）の製造元あるいは販売元などから発行されるツールライセンサ公開鍵Ｔ＿ｐｕｂ、セキュアモジュール１００についてのモジュール秘密鍵Ｍ＿ｐｒｉｖやモジュール証明書Ｍ＿ｃｅｒｔなどが格納されている。モジュール証明書Ｍ＿ｃｅｒｔはモジュール公開鍵を含み、ツールライセンサ秘密鍵によって暗号化されている。なお、これらの情報のうち、セキュア情報記憶部１０３には少なくともモジュール秘密鍵Ｍ＿ｐｒｉｖがセキュアな状態で記憶されている必要があるが、その他の情報については特に秘匿性が要求されるものではない。
【００６１】
一方、記録再生ソフトウェア１２０のモジュールＩ／Ｆ１２１において、セキュア情報記憶部２０１には、相互認証処理部２０２による処理に必要な情報が格納される。このセキュア情報記憶部２０１は、例えば記録再生ソフトウェア１２０自体に組み込まれたデータの記憶領域であり、記録再生ソフトウェア１２０がＨＤＤ１５に記憶されていれば、セキュア情報記憶部２０１もこのＨＤＤ１５に設けられる。
【００６２】
セキュア情報記憶部２０１には、ツールライセンサ公開鍵Ｔ＿ｐｕｂ、記録再生ソフトウェア１２０についてのソフトウェア秘密鍵Ｓ＿ｐｒｉｖやソフトウェア証明書Ｓ＿ｃｅｒｔなどが格納されている。ソフトウェア証明書Ｓ＿ｃｅｒｔはソフトウェア公開鍵を含み、ツールライセンサ秘密鍵によって暗号化されている。なお、セキュア情報記憶部２０１には、これらの情報のうち少なくともソフトウェア秘密鍵Ｓ＿ｐｒｉｖは、外部からの書き換えが不可能なセキュアな状態で記憶されている必要があるが、その他の情報については特に秘匿性が要求されるものではない。秘匿性が要求されない情報については、例えば記録再生ソフトウェア１２０の一部に組み込んだ状態でＨＤＤ１５に記憶しておくなど、外部からアクセス可能な記憶領域に格納されていてもよい。
【００６３】
相互認証処理部１０４および２０２は、それぞれセキュア情報記憶部１０３および２０１からの情報を用いて互いを認証するための処理を行う。暗号処理部１０５および２０３は、それぞれ相互認証処理部１０４および２０２による認証結果を基に、互いに暗号化した情報を送受信する。この暗号処理部１０５および２０３により、セキュアモジュール１００と記録再生ソフトウェア１２０との間では、セキュア情報が暗号化された状態でＣＰＵバス１３４を介して送受信され、このセキュア情報の不正利用が防止される。
【００６４】
図４は、記録再生ソフトウェアとセキュアモジュールとの間の相互認証処理手順の例を示すシーケンス図である。
まず、ＣＰＵ１３１により記録再生ソフトウェア１２０が実行されると、ソフトウェア側の相互認証処理部２０２は、例えば乱数を発生することにより一時的な認証情報Ｓｎを生成し、この認証情報Ｓｎと、セキュア情報記憶部２０１内のソフトウェア証明書Ｓ＿ｃｅｒｔとを、ＣＰＵバス１３４を通じてセキュアモジュール１００の相互認証処理部１０４に送信する（ステップＳ１）。
【００６５】
モジュール側の相互認証処理部１０４は、受信したソフトウェア証明書Ｓ＿ｃｅｒｔを、セキュア情報記憶部１０３内のツールライセンサ公開鍵Ｔ＿ｐｕｂを用いて復号し、ソフトウェア証明書Ｓ＿ｃｅｒｔが正当なものであることを確認する。そして、復号したソフトウェア証明書Ｓ＿ｃｅｒｔと受信した認証情報Ｓｎとを保持する（ステップＳ２）。
【００６６】
次に、モジュール側の相互認証処理部１０４は、例えば乱数を発生することにより一時的な認証情報Ｍｎを生成し、この認証情報Ｍｎと、セキュア情報記憶部１０３内のモジュール証明書Ｍ＿ｃｅｒｔとを、ＣＰＵバス１３４を通じてソフトウェア側の相互認証処理部２０２に送信する（ステップＳ３）。
【００６７】
ソフトウェア側の相互認証処理部２０２は、受信したモジュール証明書Ｍ＿ｃｅｒｔを、セキュア情報記憶部２０１内のツールライセンサ公開鍵Ｔ＿ｐｕｂを用いて復号し、モジュール証明書Ｍ＿ｃｅｒｔが正当なものであることを確認する。そして、復号したモジュール証明書Ｍ＿ｃｅｒｔと受信した認証情報Ｍｎとを保持する（ステップＳ４）。
【００６８】
次に、モジュール側の相互認証処理部１０４は、乱数の発生などにより一時的な認証情報Ｍｖを生成し、保持しておいた認証情報Ｓｎと新たな認証情報Ｍｖとを連結し、連結した情報をセキュア情報記憶部１０３内のモジュール秘密鍵Ｍ＿ｐｒｉｖによって暗号化してモジュール署名を生成し、そのモジュール署名をＣＰＵバス１３４を通じてソフトウェア側の相互認証処理部２０２に送信する（ステップＳ５）。
【００６９】
ソフトウェア側の相互認証処理部２０２は、保持していたモジュール証明書Ｍ＿ｃｅｒｔを用いて、受信したモジュール署名を復号し、認証情報Ｓｎを取り出して、その値がステップＳ１で生成したものと一致するか否かを確認する（ステップＳ６）。一致した場合には、相手のセキュアモジュール１００が正当な通信相手であることが確認される。
【００７０】
さらに、ソフトウェア側の相互認証処理部２０２は、乱数の発生などにより一時的な認証情報Ｓｖを生成し、保持しておいた認証情報Ｍｎと新たな認証情報Ｓｖとを連結し、連結した情報をセキュア情報記憶部２０１内のソフトウェア秘密鍵Ｓ＿ｐｒｉｖによって暗号化したモジュール署名を、ＣＰＵバス１３４を通じてモジュール側の相互認証処理部１０４に送信する（ステップＳ７）。
【００７１】
モジュール側の相互認証処理部１０４は、保持していたソフトウェア証明書Ｓ＿ｃｅｒｔを用いて、受信したモジュール署名を復号し、認証情報Ｍｎを取り出して、その値がステップＳ３で生成したものと一致するか否かを確認する（ステップＳ８）。一致した場合には、相手の記録再生ソフトウェア１２０が正当な通信相手であることが確認される。
【００７２】
以上の相互認証処理が正常に実行された場合には、それ以後、例えば、上記処理で共有した認証情報ＭｖおよびＳｖなどを基に生成した一時的な鍵情報を用いて、送受信対象の情報を暗号化することなどによって、セキュアモジュール１００と記録再生ソフトウェア１２０を実行するＣＰＵ１３１との間で、ＣＰＵバス１３４を通じてセキュア情報を秘匿性を保った状態で受け渡しできるようになる。従って、セキュアモジュール１００と記録再生ソフトウェア１２０との間で相互認証処理が実行された後、以下で説明するように、記録再生ソフトウェア１２０で利用される各デバイスにおいてコンテンツデータをセキュアに取り扱うための処理が実行できるようになる。
【００７３】
なお、上述したように、モジュール秘密鍵Ｍ＿ｐｒｉｖおよびソフトウェア秘密鍵Ｓ＿ｐｒｉｖは、それぞれモジュール側およびソフトウェア側のセキュア情報記憶部１０３および２０１に、セキュアな状態であらかじめ記憶される必要がある。モジュール秘密鍵Ｍ＿ｐｒｉｖについては、あらかじめセキュア情報記憶部１０３に登録されていればよい。一方、ソフトウェア秘密鍵Ｓ＿ｐｒｉｖについては、記録再生ソフトウェア１２０の一部としてユーザが読み取り不可能な状態でＨＤＤ１５などに記憶されてもよいが、例えば、記録再生ソフトウェア１２０をＰＣにインストールした後、最初にセキュアモジュール１００との認証処理を行う時点、あるいはそれまでの期間に、例えばユーザによる操作入力などに応じて登録するようにしてもよい。
【００７４】
次に、図５は、ＨＤＤに記録されるコンテンツデータの不正利用を防止するために記録再生ソフトウェアが備える機能の例を示すブロック図である。
本実施の形態に適用されたＨＤＤ１５用のＤＲＭ処理部１７は、コンテンツデータを暗号化して、ＨＤＤ１５に記録させるとともに、その暗号化に用いたセット鍵Ｋｓをさらに暗号化して、ＨＤＤ１５に記録させる。この処理により、ＨＤＤ１５とＣＰＵ１３１との間でＣＰＵバス１３４を介して送受信されるコンテンツデータおよびセット鍵Ｋｓをともに暗号化して、これらの不正利用を防止している。さらに、セット鍵Ｋｓの復号に必要な乱数Ｒｎ（Ｒｎ：Ｒ１，Ｒ２，Ｒ３，……）をセキュアモジュール１００内でセキュアに管理し、その乱数Ｒｎを少なくともコンテンツデータのムーブのたびに更新して、セット鍵Ｋｓを暗号化し直すことで、ＨＤＤ１５内のコンテンツデータの不正利用をも防止している。このような処理のために、ＤＲＭ処理部１７は、セット鍵出力部３０１、乱数出力部３０２、暗号処理部３０３および３０４を備える。
【００７５】
ＨＤＤ１５に対して、チューナボード１１０やＢＤドライブ１８などからのコンテンツデータを記録する際、入力されたコンテンツデータは暗号処理部３０３によってセット鍵Ｋｓを用いて暗号化される。これとともに、暗号化に用いたセット鍵Ｋｓは、乱数出力部３０２によって新たに生成された乱数Ｒｎによって暗号化され、ＨＤＤ１５に対して記録される。このとき、暗号化に用いた乱数Ｒｎは、モジュールＩ／Ｆ１２１を介してセキュアモジュール１００に転送され、セキュア情報記憶部１０２に格納される。これにより、セキュアモジュール１００との間で正しく認証が行われていない状態では、ＨＤＤ１５に記録したコンテンツデータを利用できなくなる。
【００７６】
なお、セット鍵出力部３０１は、ＰＣにインストールされた記録再生ソフトウェア１２０がＣＰＵ１３１によって実行され、ＨＤＤ１５に対するコンテンツデータの記録が最初に行われる際など、暗号化されたセット鍵ＫｓがＨＤＤ１５に記録されていない状態において、暗号処理部３０３に対してセット鍵Ｋｓを出力する。セット鍵Ｋｓはユニークなものであることが望ましく、例えば乱数として出力される。また、このセット鍵Ｋｓとしては、他に例えば、セキュアモジュール１００内にあらかじめ記録されたユニークな情報であってもよく、この場合には、ＨＤＤ１５にセット鍵Ｋｓが記録されていない状態において、セット鍵Ｋｓがセキュアモジュール１００からモジュールＩ／Ｆ１２１を介して読み込まれる。
【００７７】
ここで、ＨＤＤ１５に記録されたセット鍵Ｋｓが、例として乱数Ｒ１により暗号化されているとする。この場合、セキュアモジュール１００内のセキュア情報記憶部１０２には、乱数Ｒ１が格納されている。この状態から、ＨＤＤ１５に記録されたコンテンツデータを再生する場合、まず、セキュアモジュール１００から乱数Ｒ１が読み出され、モジュールＩ／Ｆ１２１を介して暗号処理部３０４に供給される。暗号処理部３０４は、ＨＤＤ１５から読み出したセット鍵Ｋｓを、供給された乱数Ｒ１を用いて復号する。セット鍵Ｋｓが正しく復号された場合、暗号処理部３０３は、ＨＤＤ１５から読み出されたコンテンツデータを、復号されたセット鍵Ｋｓを用いて復号する。これにより、復号されたコンテンツデータに基づく画像を、ディスプレイ１４ａ上に表示させることができる。
【００７８】
次に、ＨＤＤ１５に記録されたコンテンツデータを、例えばＢＤドライブ１８内のＢＤにムーブする場合には、まず、再生の場合と同様に、セキュアモジュール１００から乱数Ｒ１が読み出され、モジュールＩ／Ｆ１２１を介して暗号処理部３０４に供給される。暗号処理部３０４は、ＨＤＤ１５から読み出したセット鍵Ｋｓを、供給された乱数Ｒ１を用いて復号する。セット鍵Ｋｓが正しく復号された場合、暗号処理部３０３は、ＨＤＤ１５から読み出されたコンテンツデータを、復号されたセット鍵Ｋｓを用いて復号する。復号されたコンテンツデータは、ＣＯＤＥＣ１６，１９およびＢＤドライブ１８用のＤＲＭ処理部２０を介してＢＤドライブ１８に供給され、ＢＤにムーブされる。また、ムーブされたコンテンツデータは、ＨＤＤ１５から消去される（またはＨＤＤ１５において利用不可能な状態とされる）。
【００７９】
さらに、このようなムーブ処理とともに、乱数出力部３０２からは新たな乱数Ｒ２が生成される。暗号処理部３０４は、乱数Ｒ１を用いて復号したセット鍵Ｋｓを、新たな乱数Ｒ２を用いて再び暗号化する。暗号化されたセット鍵ＫｓはＨＤＤ１５に上書きされる。さらに、新たな乱数Ｒ２は、モジュールＩ／Ｆ１２１を介してセキュアモジュール１００に転送され、セキュア情報記憶部１０２内に上書きされる。
【００８０】
このように、コンテンツデータのムーブのたびに、セット鍵Ｋｓが新たな乱数Ｒｎで暗号化されて更新されるとともに、セキュアモジュール１００内の乱数Ｒｎを更新することで、例えば、ＨＤＤ１５内のデータがビットバイビットで他の記録媒体にコピーされた場合でも、元のＨＤＤ１５内のコンテンツデータを一度でもムーブすると、その後にはコピー先の記録媒体内のコンテンツデータをＨＤＤ１５に戻して復号することが不可能になり、コンテンツデータの不正利用（不正コピー、不正再生など）が防止される。
【００８１】
なお、以上の構成においては、ＨＤＤ１５内のコンテンツデータのムーブ時だけでなく、ＨＤＤ１５内に新たなコンテンツデータを記録する際にも、ＨＤＤ１５内のセット鍵Ｋｓを暗号化し直し、セキュアモジュール１００内の新たな乱数Ｒｎを更新するようにしてもよい。さらに、ＨＤＤ１５内のコンテンツデータの再生時にも、セット鍵Ｋｓの再暗号化および乱数Ｒｎの更新を行うようにしてもよい。
【００８２】
次に、図６は、ＢＤドライブと記録再生ソフトウェアとの間の相互認証のための機能の例を示すブロック図である。ここでは例として、ＡＡＣＳ規格に従った相互認証処理が行われるものとする。
【００８３】
ＡＡＣＳ規格に準拠したＢＤ１８ａにおいては、データ領域に対してコンテンツデータが暗号化されて記録される。この記録時の暗号化処理、再生時やムーブ時の復号処理は、記録再生ソフトウェア１２０のＤＲＭ処理部２０が備える暗号処理部４０１の機能によって実行される。
【００８４】
また、ＢＤ１８ａ内の所定の領域には、ＭＫＢ（Media Key Block）と呼ばれる情報が記録されている。これに加えて、再生専用のＢＤ１８ａの場合、スタンパあるいはカッティングごとに固有なボリュームＩＤ（Volume ID）が、一般のユーザには簡単に読み取りができないように記録されている。一方、書き換え可能なＢＤ１８ａの場合、ボリュームＩＤの代わりに、メディアごとに固有なメディアＩＤ（Media ID）が、同様に簡単に読み取りできないように記録されている。さらに、その中の所定の保護された領域（すなわち、一般のユーザには簡単に読み取りや複製が不可能な領域）には、バインディングナンス（Binding Nonce）と呼ばれる情報が記録され、適宜更新されるようになっている。
【００８５】
ＢＤ１８ａに対するコンテンツデータの記録や、このＢＤ１８ａ内のコンテンツデータの再生およびムーブを行う場合、ＢＤドライブ１８と記録再生ソフトウェア１２０との間で相互認証処理が実行される。まず、ＢＤ１８ａ内のＭＫＢがＢＤドライブ１８に読み出され、このＭＫＢのバージョン情報と、ＢＤドライブ１８にあらかじめ記録されたホスト・リボケーション・リスト（Host Revocation List）とが、リボケーション処理部５０１により比較される。また、ＭＫＢはＢＤドライブ１８から記録再生ソフトウェア１２０にも転送され、このＭＫＢのバージョン情報と、デバイス・リボケーション・リスト（Device Revocation List）とが、ＤＲＭ処理部２０のリボケーション処理部４０２によって比較される。これらの比較処理により、不正なデバイス（ここではＢＤドライブ１８）およびホスト（ここでは記録再生ソフトウェア１２０またはＰＣ）であるか否かが確認される。
【００８６】
なお、デバイス・リボケーション・リストは、記録再生ソフトウェア１２０の一部としてＨＤＤ１５などに記録されていてもよいが、この情報をセキュアモジュール１００内のセキュア情報記憶部１０２に格納しておき、モジュールＩ／Ｆ１２１を介してＤＲＭ処理部２０が読み込むようにしてもよい。これにより、デバイス・リボケーション・リストの不正な改変を防止でき、また、デバイス・リボケーション・リストが更新された場合の対応も容易になる。
【００８７】
次に、デバイス側の認証処理部５０２とホスト側の認証処理部４０３との間で、相互認証処理が実行される。この相互認証処理手順は、上述したセキュアモジュール１００と記録再生ソフトウェア１２０との間の相互認証処理と基本的には同じである。ＢＤドライブ１８では、外部からアクセス不可能なセキュア情報記憶部５００に、ＡＡＣＳライセンサ公開鍵ＡＡＣＳ＿ＬＡ＿ｐｕｂと、デバイス秘密鍵Ｄｅｖｉｃｅ＿ｐｒｉｖと、デバイス証明書Ｄｅｖｉｃｅ＿ｃｅｒｔとがあらかじめ格納され、これらの情報が認証処理部５０２による相互認証処理に利用される。
【００８８】
一方、ソフトウェア側の認証処理部４０３では、ＡＡＣＳライセンサ公開鍵ＡＡＣＳ＿ＬＡ＿ｐｕｂと、ホスト秘密鍵Ｈｏｓｔ＿ｐｒｉｖと、ホスト証明書Ｈｏｓｔ＿ｃｅｒｔとが相互認証処理に利用される。これらのうち、少なくともホスト秘密鍵Ｈｏｓｔ＿ｐｒｉｖについては外部から秘匿した状態で取り扱う必要があることから、セキュアモジュール１００のセキュア情報記憶部１０２に格納しておき、暗号化した状態でモジュールＩ／Ｆ１２１を介してＤＲＭ処理部２０に転送される。また、ホスト証明書Ｈｏｓｔ＿ｃｅｒｔについても同様にセキュアモジュール１００に格納しておいてもよい。
【００８９】
認証処理部５０２および４０３による相互認証処理が正しく実行されると、認証処理部５０２および４０３は、認証に用いたデータを基にそれぞれバス鍵（Bus Key）を生成する。このバス鍵は、ＢＤドライブ１８からＤＲＭ処理部２０に対して、ＢＤ１８ａ内の所定の保護された領域に記録されたデータを確実に受け渡すために、演算部５０３および４０４において利用される。
【００９０】
次に、再生専用のＢＤ１８ａの場合、ＢＤ１８ａ内のボリュームＩＤがＢＤドライブ１８によって読み出される。ＢＤドライブ１８の演算部５０３は、読み出されたボリュームＩＤと認証処理部５０２からのバス鍵とを基に認証コードを生成し、その認証コードをボリュームＩＤとともにソフトウェア側のＤＲＭ処理部２０に送信する。ソフトウェア側のＤＲＭ処理部２０では、演算部４０４が、認証処理部４０３からのバス鍵と、ドライブ側の演算部５０３からのボリュームＩＤとを基に、認証コードを生成する。そして、演算部４０４は、自身が生成した認証コードと、ドライブ側の演算部５０３からの認証コードとを比較し、これらが一致したときに、受け取ったボリュームＩＤが正当な情報であると判断して、そのボリュームＩＤを暗号処理部４０１に供給する。
【００９１】
このような処理の後、暗号処理部４０１では、ＢＤ１８ａから読み出されたＭＫＢ、デバイス（ここではＰＣまたは記録再生ソフトウェア１２０）に固有のデバイス鍵（Device Key）、ボリュームＩＤなどから鍵情報を生成し、その鍵情報を用いて、ＢＤ１８ａから読み出したコンテンツデータの復号を行うことが可能になる。なお、デバイス鍵については外部から秘匿した状態で取り扱う必要があることから、セキュアモジュール１００のセキュア情報記憶部１０２に格納しておき、暗号化した状態でモジュールＩ／Ｆ１２１を介してＤＲＭ処理部２０に転送される。
【００９２】
一方、記録可能なＢＤ１８ａでは、上述したように、ＢＤ１８ａ内の所定の保護された領域にバインディングナンスが記録されている。バインディングナンスは、ＢＤ１８ａに対するコンテンツデータの新たな記録やムーブのたびに更新されるユニークな情報である。また、ＢＤ１８ａのデータ領域には、コンテンツデータごとの鍵情報であるタイトル鍵（Title Key）が暗号化されて、暗号化されたコンテンツデータとともに記録される。
【００９３】
ＢＤ１８ａにコンテンツデータが記録される場合、ＤＲＭ処理部２０の暗号処理部４０１は、コンテンツデータをタイトル鍵で暗号化し、ＢＤ１８ａに対して記録させる。これとともに、ＢＤドライブ１８の乱数生成部５０４が新たな乱数を生成し、その乱数がバインディングナンスとしてＢＤ１８ａの保護された領域に記録される。また、生成されたバインディングナンスは、演算部５０３および４０４を介して暗号処理部４０１に供給され、暗号処理部４０１は、ＭＫＢから取り出したメディア鍵とバインディングナンスとからユニーク鍵を生成し、このユニーク鍵でタイトル鍵を暗号化して、ＢＤ１８ａのデータ領域に記録させる。
【００９４】
この後、ＢＤ１８ａに対してさらに別のコンテンツデータが記録される場合、ＤＲＭ処理部２０の暗号処理部４０１は、新たなコンテンツデータをこれに対応するタイトル鍵で暗号化し、ＢＤ１８ａのデータ領域に記録させる。これとともに、ＢＤ１８ａから読み取られたＭＫＢが暗号処理部４０１に供給され、さらに、ＢＤ１８ａから読み取られたバインディングナンスが、演算部５０３および４０４を介して暗号処理部４０１に供給される。暗号処理部４０１は、ＭＫＢから取り出したメディア鍵とバインディングナンスとから、タイトル鍵を復号するための復号鍵を生成する。そして、ＢＤ１８ａに記録されたすべてのタイトル鍵を読み出して、復号鍵で復号する。
【００９５】
その後、ＢＤドライブ１８では、上述した記録時と同じ手順で乱数生成部５０４により新たなバインディングナンスが生成され、ＢＤ１８ａの保護された領域のバインディングナンスが上書きされて更新される。さらに、暗号処理部４０１は、ＭＫＢから取り出したメディア鍵と、乱数生成部５０４から演算部５０３および４０４を介して受け取った新たなバインディングナンスとを基に、新たなユニーク鍵を生成し、このユニーク鍵で、新たに記録したコンテンツデータに対応するものを含むすべてのタイトル鍵を暗号化して、ＢＤ１８ａ内のデータ領域に記録させる。
【００９６】
なお、ＢＤ１８ａ内の保護された領域から読み出されたバインディングナンス、および、乱数生成部５０４からの新たなバインディングナンスは、それぞれ演算部５０３および４０４を通じて暗号処理部４０１に供給される。このとき、上述したボリュームＩＤの転送手順と同様に、送信側の演算部５０３は、送信するデータとバス鍵とを基に認証コードを生成して、この認証コードをデータとともに送信し、受信側の演算部４０４は、受信したデータとバス鍵とを基に認証コードを生成して、受信した認証コードと比較し、受信したデータの正当性を判断する。
【００９７】
以上の処理手順により、記録再生ソフトウェア１２０とセキュアモジュール１００およびＢＤドライブ１８との間が正しく相互認証された状態でのみ、ＢＤ１８ａに記録したコンテンツデータを復号して利用可能となり、コンテンツデータの著作権が保護される。また、ＢＤドライブ１８と、記録再生ソフトウェア１２０を実行するＣＰＵ１３１との間では、コンテンツデータやタイトル鍵が暗号化された状態でＣＰＵバス１３４上を送受信されるので、これらの情報の不正利用も防止される。さらに、バインディングナンスを更新する構成により、ＢＤ１８ａ内のコンテンツデータの不正利用が防止された状態で、そのコンテンツデータの他の記録媒体（例えばＨＤＤ１５）へのムーブも可能となる。
【００９８】
次に、図７は、チューナボードと記録再生ソフトウェアとの間の相互認証のための機能の例を示すブロック図である。
チューナボード１１０において受信されたコンテンツデータを、記録再生ソフトウェア１２０において取り扱う場合、すなわちこのコンテンツデータをＨＤＤ１５やＢＤなどに記録する場合には、上述した手順で記録再生ソフトウェア１２０とセキュアモジュール１００との間で相互認証処理が実行された後、チューナボード１１０内のローカル暗号処理部１１１と、記録再生ソフトウェア１２０が備えるローカル暗号処理部１２２との間でも、相互認証処理が実行される。
【００９９】
ローカル暗号処理部１１１および１２２の間の相互認証処理手順は、記録再生ソフトウェア１２０とセキュアモジュール１００との間の相互認証処理手順と基本的には同じである。チューナボード１１０では、外部からアクセス不可能なセキュア情報記憶部６０１に、このチューナボード１１０の製造元あるいは販売元から発行されるボードライセンサ公開鍵Ｐｔ＿ｐｕｂと、ボード秘密鍵Ｂｔ＿ｐｒｉｖと、ボード証明書Ｂｔ＿ｃｅｒｔとがあらかじめ格納され、これらの情報が認証処理部６０２による相互認証処理に利用される。
【０１００】
一方、ソフトウェア側のローカル暗号処理部１２２では、認証処理部７０１により、ボードライセンサ公開鍵Ｐｔ＿ｐｕｂと、ボード認証用のソフトウェア秘密鍵Ｓｔ＿ｐｒｉｖと、ボード認証用のソフトウェア証明書Ｓｔ＿ｃｅｒｔとを利用して、認証処理部６０２との間で相互認証処理が実行される。これらのうち、少なくともソフトウェア秘密鍵Ｓｔ＿ｐｒｉｖについては外部から秘匿した状態で取り扱う必要があることから、セキュアモジュール１００のセキュア情報記憶部１０２に格納しておき、暗号化した状態でモジュールＩ／Ｆ１２１を介してローカル暗号処理部１２２に転送される。また、ボードライセンサ公開鍵Ｐｔ＿ｐｕｂおよびソフトウェア証明書Ｓｔ＿ｃｅｒｔについても、同様にセキュアモジュール１００に格納しておいてもよい。
【０１０１】
以上の手順により相互認証処理が正しく実行された後、ローカル暗号処理部１１１および１２２内のそれぞれの暗号処理部６０３および７０２では、例えば、相互認証処理の過程で共有した認証情報などを基に生成した一時的な鍵情報を用いて、送受信対象の情報を暗号化する。これにより、チューナボード１１０から、記録再生ソフトウェア１２０を実行しているＣＰＵ１３１に対して出力されるコンテンツデータ（ストリームデータ）を、暗号化した状態でＣＰＵバス１３４上を転送できるようになり、ＣＰＵバス１３４上のコンテンツデータが不正利用されることが防止される。
【０１０２】
なお、以上のように、ＨＤＤ１５やＢＤドライブ１８、チューナボード１１０などのデバイスにおいてコンテンツデータをセキュアに取り扱うために必要なセキュア情報は、セキュアモジュール１００のセキュア情報記憶部１０２において一括して管理される。ここで、これらのセキュア情報、特に、ソフトウェア側の秘密鍵などの秘匿性が要求される情報については、基本的には、セキュアモジュール１００の発効時（例えばこのＰＣの出荷時）にあらかじめセキュア情報記憶部１０２に格納しておく。しかし、例えば、記録再生ソフトウェア１２０がインストールされた時点や、記録再生ソフトウェア１２０のインストール後あるいは新規デバイスのＰＣへの接続後に、そのデバイスと記録再生ソフトウェア１２０とが最初にデータ送受信を行う時点などにおいて、ユーザによる操作入力などに応じて、セキュアモジュール１００との認証下でセキュア情報記憶部１０２に登録することも可能である。
【０１０３】
また、セキュアモジュール１００のセキュア情報記憶部１０２には、上述した情報に加えて、例えば、ＨＤＤ１５あるいはＢＤドライブ１８内のＢＤに記録するコンテンツデータごとの利用権利を示す権利情報（あるいはその権利に相当する復号鍵情報）や、コンテンツデータごとの利用（再生、ムーブ、コピーなど）の可否や利用回数制限などを示す利用制御情報などを格納してもよい。これらの権利情報や利用制御情報については、例えば、コンテンツデータの提供者側から取得したものをユーザ操作によってセキュアモジュール１００に格納すればよい。あるいは、チューナボード１１０により受信されたコンテンツデータをＨＤＤ１５やＢＤに記録する際に、チューナボード１１０による受信データから抽出されたコピー制御情報や、Ｂ−ＣＡＳカード１２ａ内のデータに基づく権利情報などを、セキュアモジュール１００内に自動的に格納するようにしてもよい。
【０１０４】
次に、以上説明した処理手順を用いて、記録再生ソフトウェア１２０の実行によりＰＣ上で行われる主な処理の手順について、フローチャートを用いて説明する。
図８は、チューナボードにより受信されたコンテンツデータをＨＤＤに記録する際の処理手順を示すフローチャートである。
【０１０５】
［ステップＳ１１］ＨＤＤ１５に記録された記録再生ソフトウェア１２０がＣＰＵ１３１により実行され、記録再生ソフトウェア１２０が起動する（ステップＳ１１）。ＣＰＵ１３１は、この記録再生ソフトウェア１２０の記述に従って、以下のステップＳ１２〜Ｓ１６の処理を実行する。
【０１０６】
［ステップＳ１２］ＣＰＵ１３１は、セキュアモジュール１００との間で相互認証処理を行う。相互認証処理が正しく実行されると、ＣＰＵ１３１は、セキュアモジュール１００との間で共有される一時的な鍵情報を生成し、以下の処理において、この鍵情報を用いてセキュアモジュール１００との間でデータを暗号化して送受信する。
【０１０７】
［ステップＳ１３］ＣＰＵ１３１は、セキュアモジュール１００から、ボードライセンサ公開鍵Ｐｔ＿ｐｕｂ、ソフトウェア秘密鍵Ｓｔ＿ｐｒｉｖ、ソフトウェア証明書Ｓｔ＿ｃｅｒｔなどの必要な情報を読み込み、これらの情報を用いて、チューナボード１１０との間で相互認証処理を行う。相互認証処理が正しく実行されると、ＣＰＵ１３１は、チューナボード１１０との間で共有される一時的な鍵情報を生成する。
【０１０８】
［ステップＳ１４］ＣＰＵ１３１は、ＨＤＤ１５にデータを記録するために必要なセキュア情報（ここでは乱数Ｒｎ）を、セキュアモジュール１００から読み込む。そして、ＨＤＤ１５から暗号化されたセット鍵を読み出して、乱数Ｒｎにより復号しておく。
【０１０９】
［ステップＳ１５］ＣＰＵ１３１は、チューナボード１１０によって受信されて出力された放送コンテンツのデータを読み込み、ＨＤＤ１５に転送して記録する。このとき、チューナボード１１０からＣＰＵバス１３４を通じて供給される、暗号化されたコンテンツデータを、ステップＳ１２で生成した一時的な鍵情報により復号した後、ステップＳ１４で復号したセット鍵で暗号化し、ＣＰＵバス１３４を通じてＨＤＤ１５に供給する。
【０１１０】
［ステップＳ１６］ＨＤＤ１５に対するＤＲＭ処理部１７が記録のたびにセキュア情報（すなわち乱数Ｒｎ）を更新する仕様の場合には、ＣＰＵ１３１は、ＨＤＤ１５へのコンテンツデータの記録完了後、そのセキュア情報を更新する。すなわち、新たな乱数Ｒｎによりセット鍵を暗号化して、ＨＤＤ１５に上書きするとともに、新たな乱数Ｒｎをセキュアモジュール１００に転送して記憶させる。
【０１１１】
次に、図９は、ＨＤＤに記録されたコンテンツデータをＢＤドライブ内のＢＤにムーブする際の処理手順を示すフローチャートである。
［ステップＳ２１］図８のステップＳ１１と同様に、ＣＰＵ１３１により記録再生ソフトウェア１２０が起動される。
【０１１２】
［ステップＳ２２］図８のステップＳ１２と同様に、ＣＰＵ１３１は、セキュアモジュール１００との間で相互認証処理を実行する。
［ステップＳ２３］ＣＰＵ１３１は、セキュアモジュール１００から、ＡＡＣＳライセンサ公開鍵ＡＡＣＳ＿ＬＡ＿ｐｕｂ、ホスト秘密鍵Ｈｏｓｔ＿ｐｒｉｖ、ホスト証明書Ｈｏｓｔ＿ｃｅｒｔなどの必要な情報を読み込み、さらに、ＢＤ１８ａからＭＫＢを読み込んで、これらの情報を用いてＢＤドライブ１８との間で相互認証処理を行う。相互認証処理が正しく実行されると、ＣＰＵ１３１は、セキュアモジュール１００から読み込まれたデバイス鍵を用いて、ＢＤ１８ａから読み込まれたＭＫＢよりメディア鍵を取り出す。さらに、バインディングナンスを生成して、そのバインディングナンスとメディア鍵とからユニーク鍵を生成する。
【０１１３】
［ステップＳ２４］図８のステップＳ１４と同様の手順で、ＣＰＵ１３１は、ＨＤＤ１５内のコンテンツデータをムーブするために必要なセキュア情報（乱数Ｒｎ）を、セキュアモジュール１００から読み込み、ＨＤＤ１５から暗号化されたセット鍵を読み出して、乱数Ｒｎにより復号する。
【０１１４】
［ステップＳ２５］ＣＰＵ１３１は、ＨＤＤ１５からコンテンツデータを読み込み、ＢＤドライブ１８に転送してＢＤへの記録を要求する。このとき、ＨＤＤ１５からＣＰＵバス１３４を通じて供給される、暗号化されたコンテンツデータを、ステップＳ２４で復号したセット鍵により復号した後、タイトル鍵を生成し、そのタイトル鍵でコンテンツデータを再度暗号化し、ＣＰＵバス１３４を通じてＢＤドライブ１８に供給し、ＢＤ１８ａに記録させる。また、タイトル鍵も、ステップＳ２３で生成したユニーク鍵で暗号化して、ＢＤ１８ａに記録させる。さらに、ＢＤ１８ａの所定領域に、バインディングナンスを上書き記録させて、これを更新する。
【０１１５】
［ステップＳ２６］ＢＤへのコンテンツデータの記録完了後、ＣＰＵ１３１は、ＨＤＤ１５内のムーブ元のコンテンツデータを無効化する。この無効化は、例えばＨＤＤ１５内のコンテンツデータを消去することで行われる。あるいは、コンテンツデータに対応する利用制御情報や権利情報がセキュアモジュール１００に格納されている場合には、これらの情報を更新してコンテンツデータを利用不可能な状態とすることで、無効化処理が実行される。
【０１１６】
なお、この他に、各コンテンツデータに対してコンテンツ鍵（タイトル鍵）を生成し、そのコンテンツ鍵でコンテンツデータを暗号化してＨＤＤ１５に記録するとともに、コンテンツ鍵をセット鍵で暗号化してＨＤＤ１５に記録することで、不正コピーを防止する方法もある。この場合には、ＨＤＤ１５内のコンテンツデータを無効化するには、対応するコンテンツ鍵を消去すればよい。さらに、コンテンツデータに対応する利用制御情報や権利情報をセット鍵で暗号化し、ＨＤＤ１５に記録する方法の場合には、その利用制御情報や権利情報を更新して、ＨＤＤ１５内のコンテンツデータを利用不可能な状態とすればよい。
【０１１７】
［ステップＳ２７］ＣＰＵ１３１は、ＨＤＤ１５に関するセキュア情報を更新する。具体的には、新たな乱数Ｒｎによりセット鍵を暗号化して、ＨＤＤ１５に上書きするとともに、新たな乱数Ｒｎをセキュアモジュール１００に転送して記憶させる。
【０１１８】
なお、ＢＤドライブ内のＢＤに記録されたコンテンツデータをＨＤＤ１５にムーブする際の基本的な手順は、図９の手順とほぼ同じである。すなわち、ＢＤからＨＤＤ１５にムーブする場合、図９のステップＳ２５において、ＢＤから読み出したコンテンツデータをステップＳ２３で生成した鍵情報で復号した後、ステップＳ２４で復号したセット鍵で再度暗号化してＨＤＤ１５に記録する。その後、ＨＤＤ１５に関するセキュア情報を更新するとともに、ＢＤ内のバインディングナンスも更新する。この手順により、ＢＤ内のコンテンツデータもセキュアな状態でＨＤＤ１５にムーブすることが可能となる。
【０１１９】
また、ＨＤＤ１５に記録されたコンテンツデータを再生する場合には、図９のステップＳ２１，Ｓ２２，Ｓ２４の手順の後、ＨＤＤ１５から読み出されたコンテンツデータがセット鍵で復号され、ＣＯＤＥＣ１６によりデコードされてグラフィック処理回路１４に出力されることで、ディスプレイ１４ａに再生画像が表示される。また、ＢＤ内のコンテンツデータを再生する場合には、図９のステップＳ２１〜Ｓ２３の手順の後、ＢＤから読み出されたコンテンツデータが、ステップＳ２３で生成された鍵情報で復号され、ＣＯＤＥＣ１９によりデコードされてグラフィック処理回路１４に出力されることで、ディスプレイ１４ａに再生画像が表示される。
【０１２０】
また、上述したように、セキュアモジュール１００にコンテンツデータの利用回数制限を示す利用制御情報を格納した場合には、ＨＤＤ１５やＢＤに記録されたコンテンツデータを他の記録媒体にコピーするたびに、セキュアモジュール１００内の利用制御情報を更新することで、コンテンツデータの他の記録媒体へのムーブに加えてコピーを行うことも可能となる。なお、利用制御情報については、対応するコンテンツデータとともに暗号化して記録媒体に記録し、コピーの際にコンテンツデータとともに利用制御情報を読み出して更新するようにしてもよい。
【０１２１】
また、上記の処理手順では、記録再生ソフトウェア１２０からの要求により各デバイスとの認証処理などを行っているが、この他に、デバイス側から認証処理が要求される場合もある。例えば、デバイス側の動作の状況が変化した場合や、認証下での動作開始から一定時間経過した場合などに、デバイス側から記録再生ソフトウェア１２０に対して認証処理が要求されることがある。デバイス側の動作状況の変化の例としては、例えば、放送から受信したコンテンツデータの記録時に、途中で受信している番組が変更され、変化後の番組の権利形態が変化した場合（例えば、記録が許可された番組から、許可されていない番組に変化した場合など）、ＨＤＤ１５あるいはＢＤ内の複数のコンテンツデータの再生時に、コンテンツデータごとに権利形態が異なる場合などが考えられる。また、記録再生ソフトウェア１２０、あるいはデバイス側のいずれにおいても、記録再生ソフトウェア１２０の起動後には定期的に相手側との認証処理を実行するようにしてもよい。
【０１２２】
以上説明したように、第１の実施の形態に係るＰＣでは、記録再生ソフトウェア１２０を実行すると、セキュアモジュール１００と記録再生ソフトウェア１２０との間で相互認証し、その認証下でセキュアモジュール１００から必要な情報をセキュアに読み込んで、コンテンツデータの記録や再生、コピー、ムーブなどの動作が実行される。これにより、これらの動作を、コンテンツデータの著作権が保護された状態を確実に保ちながら実行できるようになる。特に、ＨＤＤ１５からＢＤなどの可搬型記録媒体へのムーブだけでなく、その逆方向への再ムーブもセキュアに実行できるようになる。
【０１２３】
また、ＨＤＤ１５やＢＤドライブ１８、チューナボード１１０などのデバイスにおいてコンテンツデータをセキュアに取り扱うために必要なセキュア情報は、ＰＣを構成するデバイスの組み合わせや、デバイスのメーカあるいは機種などに応じて異なる情報となる。その一方で、記録再生ソフトウェア１２０などのソフトウェアツールは、一般的にパッケージ媒体あるいはネットワークなどを通じて大量に流通されるので、上記のセキュア情報を大量に流通されたソフトウェアツールごとに付加することは現実的に不可能と言える。このために、従来、コンテンツデータの記録やムーブなどを行うＰＣ用のソフトウェアツールとしては、そのＰＣに専用のものが使用されることが多かった。
【０１２４】
これに対して、本実施の形態のようにセキュアモジュール１００をＰＣに設けて上記のセキュア情報を一括して管理し、記録再生ソフトウェア１２０のようなソフトウェアツールを実行して、セキュア情報を認証下でセキュアモジュール１００から読み出す構成とすることで、これらのセキュア情報をソフトウェアツールごとにあらかじめ対応付けておく必要がなくなる。従って、ソフトウェアツールの流通の容易さを妨げることがなくなる。
【０１２５】
さらに、例えば新たなデバイスや機能に対応できるようにソフトウェアツールを更新することも従来通りに可能となり、同様な認証処理機能などを備える新たなソフトウェアをインストールして、機能を拡張することも可能になる。
【０１２６】
例えば、本実施の形態では、放送コンテンツのＨＤＤ１５およびＢＤへの記録や再生、記録媒体間のムーブなどを、１つの記録再生ソフトウェア１２０によって統合的に制御できるようにしたが、これに限らず、例えば、デバイス、メディア、コンテンツのフォーマット、サービスなどに応じて、それぞれ個別のソフトウェアツールを利用してコンテンツデータを取り扱うようにすることもできる。また、１つのソフトウェアツールによりこれらの一部の取り扱いを統合的に制御してもよい。例えば、特定のサービスで購入したコンテンツデータの記録およびムーブを行うソフトウェアツール、そのコンテンツデータの再生のみを行うソフトウェアツール、特定のフォーマットのコンテンツデータの記録・再生・ムーブを行うソフトウェアツールなどがＰＣ内に混在していてもよい。
【０１２７】
このような場合、各ソフトウェアツールとセキュアモジュール１００との間で相互認証が成立していれば、各ソフトウェアツールは、コンテンツデータの取り扱いに必要なセキュア情報をセキュアモジュール１００から読み込んで利用し、またそのセキュア情報を更新できる。これにより、例えば、コピー可能な回数が制限された同じコンテンツデータを、そのコピー制限を確実に守りながら、異なるソフトウェアツールのそれぞれによって利用できるようになる。
【０１２８】
すなわち、セキュアモジュール１００に対する上記のセキュア情報の格納の仕方（メモリマップなど）や、セキュアモジュール１００との間の認証処理などのプロトコルを統一的に規定しておくことで、コンテンツデータの新しいフォーマット、新しいメディアやデバイス、サービスなどに対して、柔軟に対応できるようになる。従って、ソフトウェアツールの更新や新規インストールによるＰＣの機能拡張性の高さ、ソフトウェアツールの流通の容易さといったメリットを最大限生かすことができ、かつ、コンテンツデータの著作権を確実に保護できる。
【０１２９】
〔第２の実施の形態〕
図１０は、本発明の第２の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。また、図１１は、第２の実施の形態に係るＰＣのハードウェア構成を示すブロック図である。
【０１３０】
第２の実施の形態に係るＰＣでは、図１０に示すように、チューナ部１１により受信された放送コンテンツをデコードする機能が、チューナボード１１０ａ内のハードウェアではなく、記録再生ソフトウェア１２０ａの機能（デコーダ２１）として実現されている点が、第１の実施の形態と異なる。このため、記録再生ソフトウェア１２０ａでは、チューナボード１１０ａとの間の相互認証処理と、送受信データの暗号処理とを実行するローカル暗号処理部１２２が、チューナボード１１０ａからデコーダ２１に対するデータの入力段に設けられている。
【０１３１】
すなわち、図１１に示すように、チューナボード１１０ａのチューナ部１１によって受信され、復調された放送コンテンツのデータは、暗号処理部１２によってデスクランブル処理が施された後、ローカル暗号処理部１１１によって暗号化されて、ＣＰＵバス１３４を介してＣＰＵ１３１に供給される。ＣＰＵ１３１は、ローカル暗号処理部１２２の機能によりこの放送コンテンツのデータを復号し、ＨＤＤ１５やＢＤドライブ１８内のＢＤへの記録処理などを実行する。
【０１３２】
なお、チューナボード１１０からＣＰＵ１３１へのコンテンツデータの転送の前には、ローカル暗号処理部１１１および１２２の間で相互認証処理が実行されなければならない。この相互認証処理の手順は、図７で説明した通りであり、処理に必要な情報がセキュア情報１０１としてセキュアモジュール１００に格納される。
【０１３３】
〔第３の実施の形態〕
図１２は、本発明の第３の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【０１３４】
第３の実施の形態に係るＰＣでは、第２の実施の形態の構成に対して、コンテンツデータを放送から受信する代わりに、ネットワークを通じて受信し、ＨＤＤ１５やＢＤ１８に記録できるようになっている。ここでは例として、インターネットなどを通じて受信した、著作権保護されたコンテンツデータを、ＬＡＮ（Local Area Network）を通じて受信する場合を想定する。なお、このような著作権保護機能を備えたコンテンツデータ（ビデオデータ）のフォーマットとしては、例えばＷＭＶ（Windows Media Video、登録商標）などが適用可能である。
【０１３５】
このＰＣでは、ＬＡＮに接続するためのハードウェアであるＬＡＮインタフェース２２が、上記のＣＰＵバス１３４に接続されており、記録再生ソフトウェア１２０ｂには、このＬＡＮインタフェース２２を通じて暗号化されたコンテンツデータを受信し、そのコンテンツデータを復号して利用できる状態とするためのＤＲＭ処理部２３の機能を備えている。そして、ＤＲＭ処理部２３がコンテンツデータを受信する際に必要なセキュア情報２３ａ（例えば、コンテンツデータを復号するための鍵情報、コピーの許可回数などを含むライセンス情報）は、セキュアモジュール１００において管理される。
【０１３６】
ＬＡＮを通じて著作権保護されたコンテンツデータをダウンロードする際には、例えばその購入手続時などにあらかじめ取得した（あるいは、コンテンツデータとともに受信した）ライセンス情報を、セキュアモジュール１００にセキュア情報１０１として格納しておく。そして、ＤＲＭ処理部２３は、ＬＡＮインタフェース２２を通じてコンテンツデータの入力を受ける際に、モジュールＩ／Ｆ１２１を通じてセキュアモジュール１００からライセンス情報の供給を受け、この情報を用いてコンテンツデータを復号し、デコーダ２１に供給する。これにより再生画像をディスプレイ１４ａに表示できる。なお、デコーダ２１はＷＭＶフォーマットのストリームデータをデコードできるものとする。
【０１３７】
また、ダウンロードしたコンテンツデータをＨＤＤ１５に記録する場合、ＬＡＮインタフェース２２から入力されたコンテンツデータは、例えばＤＲＭ処理部２３により上記手順で復号された後、ストリームデータのままＤＲＭ処理部１７を介してＨＤＤ１５に記録される。このとき、コンテンツデータはＤＲＭ処理部１７によって暗号化されるが、この暗号化のための鍵情報の生成に、セキュアモジュール１００に格納されていたコンテンツデータのライセンス情報（またはその一部）を用いることが望ましい。あるいは、コンテンツデータとともに、ライセンス情報内のコピー回数などの情報も同時に暗号化してＨＤＤ１５に記録してもよい。
【０１３８】
そして、コンテンツデータを再生またはムーブする際には、セキュアモジュール１００から読み込んだライセンス情報（またはこれに基づく鍵情報）を用いてコンテンツデータが復号される。なお、第１の実施の形態で説明したように、コンテンツデータのムーブのたびに、コンテンツデータを暗号化する鍵情報（セット鍵Ｋｓ）が新たな乱数Ｒｎで暗号化されて更新されるとともに、セキュアモジュール１００内の乱数Ｒｎを新たなものに更新することで、ＨＤＤ１５内のコンテンツデータの不正利用を防止できる。
【０１３９】
また、同様の手順により、ＬＡＮインタフェース２２を通じてダウンロードされたコンテンツデータを、ＢＤドライブ１８内のＢＤに記録することもできる。この場合、コンテンツデータのライセンス情報、ＣＯＤＥＣ１９は、ＢＤのデータフォーマットに合わせて、入力されたコンテンツデータをエンコードし直してもよい。図１２の例では、ＷＭＶフォーマットのコンテンツデータをＭＰＥＧ−２方式のコンテンツデータに変換して、ＢＤに記録している。また、ＤＲＭ処理部２０においてＢＤに記録するコンテンツデータを暗号化する際、および、そのコンテンツデータを読み出して復号する際には、セキュアモジュール１００から読み込んだライセンス情報を用いて生成した鍵情報を用いてもよい。
【０１４０】
なお、ＬＡＮインタフェース２２からのコンテンツデータを暗号化された状態のままＨＤＤ１５に記録してもよい。この場合、ＬＡＮインタフェース２２を認証するためのＤＲＭ処理部２３は必要とならない。また、ＨＤＤ１５に対応するＤＲＭ処理部１７は、例えば、暗号化された状態のコンテンツデータをそのままＨＤＤ１５に記録するとともに、コンテンツデータに対応するライセンス情報を、セキュアモジュール１００から読み込んだセキュア情報を用いて暗号化し、ＨＤＤ１５に記録する。このとき、第１の実施の形態で説明したように、コンテンツデータのムーブのたびに、対応するライセンス情報を暗号化するセット鍵Ｋｓが新たな乱数Ｒｎで暗号化されて更新されるとともに、セキュアモジュール１００内の乱数Ｒｎを新たなものに更新することで、コンテンツデータの不正コピーを防止できる。
【０１４１】
以上の手順でコンテンツデータをＨＤＤ１５やＢＤに記録し、また読み出し利用可能とすることで、上記のコンテンツデータをＨＤＤ１５からＢＤに対して、あるいはＢＤからＨＤＤ１５に対して、著作権を保護した状態でセキュアにムーブすることが可能となる。
【０１４２】
〔第４の実施の形態〕
図１３は、本発明の第４の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【０１４３】
この図１３に示す構成では、図１０に示した構成に対して、さらに、放送から受信したコンテンツデータのデスクランブル処理をも、記録再生ソフトウェア１２０ｃによる処理で実行している。デジタル放送から受信したコンテンツデータのデスクランブル処理は、従来、Ｂ−ＣＡＳカードを用いたハードウェア処理で実行されていたが、将来的には、この例のようにソフトウェア処理により実行可能となることも考えられ、本実施の形態はそのような場合に適用されるものである。
【０１４４】
図１３において、チューナボード１１０ｂにはチューナ部１１のみがハードウェア回路として設けられ、このチューナボード１１０ｂによって受信され、復調されたコンテンツデータは、ＣＰＵバス１３４を介して、記録再生ソフトウェア１２０ｃを実行しているＣＰＵ１３１に供給される。このとき、転送されるコンテンツデータはスクランブル処理が施されているため、チューナボード１１０ｂと記録再生ソフトウェア１２０ｃとの間で転送されるデータをローカルに暗号化するための機能（図１０のローカル暗号処理部１１１および１２２）は必要とならない。
【０１４５】
暗号処理部２４は、従来のＢ−ＣＡＳカードに格納されていた情報に相当するＢ−ＣＡＳ情報２４ａを用いることで、このコンテンツデータのデスクランブル処理を実行するが、Ｂ−ＣＡＳ情報２４ａをセキュアモジュール１００にあらかじめ格納しておくことで、暗号処理部２４は、このセキュアモジュール１００からＢ−ＣＡＳ情報２４ａを読み込み、コンテンツデータをデスクランブル処理できるようになる。なお、この後のＨＤＤ１５やＢＤへの記録、記録媒体間のムーブなどの処理手順は、図１０の場合と同様である。
【０１４６】
〔第５の実施の形態〕
図１４は、本発明の第５の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【０１４７】
この図１４に示す機能を備えたＰＣでは、コンテンツデータの記録先をＰＣの外部の機器とすることが可能になっている。ここでは例として、記録再生ソフトウェア１２０ｄの機能として、外部の携帯機器２００との間で、著作権保護されたコンテンツデータをセキュアに送受信するためのＤＲＭ処理部２５が設けられている。なお、その他の機能については図１０に示した通りであるので、ここでは説明を省略する。
【０１４８】
例えば図１０における記録再生ソフトウェア１２０ａがＤＲＭ処理部２０によりＢＤドライブ１８と相互認証を行ったのと同じように、図１４に示す記録再生ソフトウェア１２０ｄも、ＤＲＭ処理部２５により携帯機器２００との間で相互認証を行う。この相互認証が正しく実行された状態において、携帯機器２００用に暗号化されたコンテンツデータやその権利情報、それを復号するための鍵情報などが、ＤＲＭ処理部２５によって暗号化されて、携帯機器２００に対してセキュアに転送される。なお、携帯機器２００との相互認証に必要な情報は、セキュアモジュール１００内のセキュア情報記憶部１０２にあらかじめ格納され、相互認証時に読み込まれる。
【０１４９】
また、携帯機器２００に記録されたコンテンツデータを読み込んで再生する際や、コンテンツデータを例えばＨＤＤ１５にムーブする際にも、同様に、記録再生ソフトウェア１２０ｄがＤＲＭ処理部２５により携帯機器２００との間で相互認証を行い、その認証下で、暗号化されたコンテンツデータや権利情報、復号のための鍵情報が、携帯機器２００からセキュアに読み込まれる。すなわち、読み込まれた情報のうち、暗号化された情報（例えば鍵情報）は、ＤＲＭ処理部２５において復号される。
【０１５０】
なお、携帯機器２００に転送（ムーブ）した後、そのコンテンツデータを再度ＰＣに読み込む（ムーブする）ことがあらかじめわかっている場合には、転送元のコンテンツデータをＰＣ内で消去せずに、対応する権利情報あるいは鍵情報だけを転送時に更新しておけば、再読み込み時に暗号化されたコンテンツデータ自体を読み込む必要がなくなり、転送に要する時間を短縮できる。また、これにより、再読み込みの後、ＰＣでは、携帯機器２００での再生用に低ビットレートに変換したデータでなく、変換前の元の高品質なコンテンツデータを再度利用できるようになる。
【０１５１】
なお、ＣＯＤＥＣ２６は、携帯機器２００におけるデータフォーマットに合わせてコンテンツデータを変換する機能と、変換したコンテンツデータをデコードする機能とを備えている。図１４の例では、ＣＯＤＥＣ２６は、チューナボード１１０ａやＨＤＤ１５から入力されたＭＰＥＧ−２方式のストリームデータを、ＭＰＥＧ−２−ＡＶＣ方式に変換している。
【０１５２】
〔第６の実施の形態〕
図１５は、本発明の第６の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【０１５３】
この図１５に示す機能を備えたＰＣでは、コンテンツデータの転送先を、ネットワーク上の外部の機器とすることが可能になっている。ここでは例として、記録再生ソフトウェア１２０ｅの機能として、ＬＡＮに接続された外部機器との間で、著作権保護されたコンテンツデータをセキュアに送受信するためのＤＲＭ処理部２７が設けられている。なお、その他の機能については図１０に示した通りであるので、ここでは説明を省略する。
【０１５４】
図１４のＤＲＭ処理部２５と同様に、ＤＲＭ処理部２７は、ＬＡＮに接続された外部機器との間の相互認証処理や、その認証下でコンテンツデータをＬＡＮ上に出力する際の暗号化、ＬＡＮを通じて外部機器から転送されたコンテンツデータなどの復号などを行う。これにより、ＬＡＮ上の外部機器に対する放送コンテンツのデータの記録、その外部機器に対するＨＤＤ１５内のコンテンツデータのムーブ、外部機器上のコンテンツデータの再生およびＨＤＤ１５へのムーブなどを、コンテンツデータの著作権を保護した状態で実行できる。
【０１５５】
なお、図中のＣＯＤＥＣ２８は、例としてＭＰＥＧ−２方式に従ってコンテンツデータの符号化・復号化処理を実行するブロックである。
〔第７の実施の形態〕
図１６は、本発明の第７の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【０１５６】
この図１６では、グラフィック処理回路１４１と外部のディスプレイ１４ｂが、相互認証や送受信データの暗号化などの表示信号保護方式に対応している場合を想定している。このような保護方式としては、例えばＨＤＭＩ（High-Definition Multimedia Interface）規格などが適用できる。
【０１５７】
このように、外部に出力するコンテンツデータについても高い保護機能が求められる場合、ＰＣ内部においても、ＣＰＵバス１３４を通じてグラフィック処理回路１４１に対して転送されるベースバンド信号について、不正利用を保護することが求められる。そこで、図１６の構成では、グラフィック処理回路１４１と記録再生ソフトウェア１２０ｆとの間でも相互認証を行い、コンテンツデータのベースバンド信号を暗号化して受け渡しするようにしている。
【０１５８】
グラフィック処理回路１４１には、表示信号の生成などを担うグラフィック処理部１４２に加えて、記録再生ソフトウェア１２０ｆとの間の相互認証や暗号処理などを行うローカル暗号処理部１４３が設けられている。ローカル暗号処理部１４３は、相互認証に必要なセキュア情報１４３ａをあらかじめ保持している。上述したＰＫＩ方式を用いて相互認証が行われる場合、ローカル暗号処理部１４３に格納されるセキュア情報１４３ａとしては、例えば、このグラフィック処理回路１４１の製造元あるいは販売元から発行されるボードライセンサ公開鍵、ボード秘密鍵、ボード証明書などが格納される。なお、ここではグラフィック処理回路１４１とディスプレイ１４ｂとの間の相互認証などの機能の図示を省略している。
【０１５９】
また、記録再生ソフトウェア１２０ｆの機能としては、図１０に示した機能に加えて、グラフィック処理回路１４１との間の相互認証や暗号処理を行うローカル暗号処理部１２３が設けられている。このローカル暗号処理部１２３における相互認証や暗号処理に必要なセキュア情報１２３ａは、セキュアモジュール１００にあらかじめ格納される。このセキュア情報１２３ａとしては、例えば、ボードライセンサ公開鍵、グラフィック処理回路１４１の認証用のソフトウェア秘密鍵およびソフトウェア証明書などが適用される。なお、これらのうち少なくともソフトウェア秘密鍵については外部から秘匿した状態で取り扱う必要があることから、この情報については、必ずセキュアモジュール１００のセキュア情報記憶部１０２に格納しておき、暗号化した状態でモジュールＩ／Ｆ１２１を介してローカル暗号処理部１２３に転送される。
【０１６０】
コンテンツをディスプレイ１４ｂに表示する際には、ローカル暗号処理部１２３は、セキュアモジュール１００から読み込んだセキュア情報１２３ａを用いて、グラフィック処理回路１４１との間で相互認証を行う。そして、認証の過程で生成された情報に基づく鍵情報などで、コンテンツデータを暗号化し、ＣＰＵバス１３４を通じてグラフィック処理回路１４１に転送する。
【０１６１】
〔第８の実施の形態〕
図１７は、本発明の第８の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【０１６２】
セキュアモジュールの機能は、上述した各実施の形態のように、記録再生ソフトウェアが実行されるＰＣの内部に設けられている必要はなく、例えば外部の機器に設けられていてもよい。図１７の例では、セキュアモジュールの機能を、記録再生ソフトウェア１２０ｇが実行されるＰＣ１とネットワーク（ここではＬＡＮ）を通じて接続された、外部のＰＣ２に設けた例を示している。
【０１６３】
図１７において、ＰＣ１は、図１０に示した構成に加えて、ＬＡＮと接続するためのＬＡＮインタフェース２９が設けられている。また、ＰＣ２は、セキュアモジュール１００の機能と、ＬＡＮインタフェース３０とを備えている。ＰＣ１において記録再生ソフトウェア１２０ｇの実行により実現されるモジュールＩ／Ｆ１２１ｇは、ＬＡＮインタフェース２９を通じてＰＣ２と通信し、セキュアモジュール１００ａとの間で相互認証を行った後、セキュアモジュール１００ａ内のセキュア情報１０１ａを暗号化した状態で読み込み、またそれを更新する。記録再生ソフトウェア１２０ｇの実行によるＰＣ１内の動作は、基本的に図１０の場合と同様である。
【０１６４】
なお、このようにセキュアモジュールの機能を外部機器に設けた場合には、セキュアモジュール内にセキュア情報の格納領域を複数設け、それぞれの格納領域に、複数のＰＣのそれぞれに対応するセキュア情報を格納しておいてもよい。そして、コンテンツデータを取り扱う各ＰＣでは、ネットワークを介して外部機器内のセキュアモジュールにアクセスし、認証処理後に、自機に対応するセキュア情報の読み込みや更新を行う。また、ＰＣごとだけでなく、例えば、ユーザごと、ソフトウェアツールごと、コンテンツデータのフォーマットやサービスごと、対応するデバイスごとに、セキュア情報を格納しておいてもよい。
【０１６５】
また、セキュアモジュールの機能は、コンテンツデータを取り扱うＰＣに直接的に接続可能なデバイス上に設けられてもよい。例えば、セキュアモジュールの機能を、ＰＣに対してＵＳＢ端子（Universal Serial Bus）を介して接続するＵＳＢモジュールとして実現してもよい。この場合には、例えばＵＳＢモジュール内にユーザに個別のセキュア情報を格納しておき、ユーザがそのＵＳＢモジュールを携帯し、同様なソフトウェアツールがインストールされた別のＰＣに差し替えて使用することで、同じユーザであればそのＰＣ上で著作権保護されたコンテンツデータを取り扱うことも可能になる。
【０１６６】
なお、上記の各実施の形態では、セキュアモジュールの機能は個別のハードウェアとして実現されていたが、このセキュアモジュール内のすべての機能を必ずしも同じハードウェア上に設ける必要はない。例えば、セキュアモジュールが備えていたセキュア情報の記録領域を、ＨＤＤなどの内部記録媒体内に設け、認証・暗号処理などの処理機能をＣＰＵに実行されるプログラムとして実現してもよい。ただし、この場合には、上記処理機能を実現するプログラムが改変されないような手段を講じ、セキュア情報の記録領域に対してはこのプログラムのみアクセス可能としておく必要がある。
【０１６７】
また、セキュア情報の記録領域のみを専用のハードウェアで設け、この記録領域へのアクセスや上記処理機能をプログラムで実現してもよい。また、その記録領域に対して、上記処理機能を実現するプログラムを改変不可の状態で記録しておき、このプログラムをＣＰＵで実行するようにしてもよい。このような形態の場合には、セキュア情報およびプログラム（認証・暗号処理プログラム）の記録領域を、ＵＳＢなどの通信Ｉ／Ｆを介して接続される可搬型の記録媒体上に設けてもよい。
【０１６８】
なお、上記各実施の形態で説明した処理機能は、コンピュータによって実現することができる。その場合、上記のＰＣが有すべき機能の処理内容を記述したプログラムが提供される。そして、そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気ディスク、半導体メモリなどがある。
【０１６９】
プログラムを流通させる場合には、例えば、そのプログラムが記録された光ディスクや半導体メモリなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１７０】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【図面の簡単な説明】
【０１７１】
【図１】本発明の第１の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【図２】第１の実施の形態に係るＰＣのハードウェア構成を示すブロック図である。
【図３】記録再生ソフトウェアとセキュアモジュールとの間の相互認証のための機能の例を示すブロック図である。
【図４】記録再生ソフトウェアとセキュアモジュールとの間の相互認証処理手順の例を示すシーケンス図である。
【図５】ＨＤＤに記録されるコンテンツデータの不正利用を防止するために記録再生ソフトウェアが備える機能の例を示すブロック図である。
【図６】ＢＤドライブと記録再生ソフトウェアとの間の相互認証のための機能の例を示すブロック図である。
【図７】チューナボードと記録再生ソフトウェアとの間の相互認証のための機能の例を示すブロック図である。
【図８】チューナボードにより受信されたコンテンツデータをＨＤＤに記録する際の処理手順を示すフローチャートである。
【図９】ＨＤＤに記録されたコンテンツデータをＢＤドライブ内のＢＤにムーブする際の処理手順を示すフローチャートである。
【図１０】本発明の第２の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【図１１】第２の実施の形態に係るＰＣのハードウェア構成を示すブロック図である。
【図１２】本発明の第３の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【図１３】本発明の第４の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【図１４】本発明の第５の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【図１５】本発明の第６の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【図１６】本発明の第７の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【図１７】本発明の第８の実施の形態に係るＰＣが備える機能の構成を示すブロック図である。
【図１８】従来のビデオレコーダの機能を示すブロック図である。
【図１９】ＴＶ録画機能を備えたＰＣの機能を示すブロック図である。
【符号の説明】
【０１７２】
１１……チューナ部、１２……暗号処理部、１２ａ……Ｂ−ＣＡＳカード、１３……デコーダ、１４……グラフィック処理回路、１４ａ……ディスプレイ、１５……ＨＤＤ、１６，１９……ＣＯＤＥＣ、１７，２０……ＤＲＭ処理部、１７ａ，２０ａ，１０１，１１１ａ，１２２ａ……セキュア情報、１８……ＢＤドライブ、１００……セキュアモジュール、１１０……チューナボード、１１１，１２２……ローカル暗号処理部、１２０……記録再生ソフトウェア、１２１……モジュールＩ／Ｆ、１３１……ＣＰＵ、１３２……ＲＯＭ、１３３……ＲＡＭ、１３４……ＣＰＵバス
【図１】
2008099087.tif 000003
【図２】
2008099087.tif 000004
【図３】
2008099087.tif 000005
【図４】
2008099087.tif 000006
【図５】
2008099087.tif 000007
【図６】
2008099087.tif 000008
【図７】
2008099087.tif 000009
【図８】
2008099087.tif 000010
【図９】
2008099087.tif 000011
【図１０】
2008099087.tif 000012
【図１１】
2008099087.tif 000013
【図１２】
2008099087.tif 000014
【図１３】
2008099087.tif 000015
【図１４】
2008099087.tif 000016
【図１５】
2008099087.tif 000017
【図１６】
2008099087.tif 000018
【図１７】
2008099087.tif 000019
【図１８】
2008099087.tif 000020
【図１９】
2008099087.tif 000021