(57)【要約】【課題】コンテンツの保護を十分に図ることができる記憶装置、情報機器、及びコンテンツ変換方法を提供する。【解決手段】記憶装置１００は、第１のコンテンツの復号化を行うＤＲＭ１機能部１０４と、復号化されたコンテンツに対して、第２のコンテンツ保護方式による暗号化を行うＤＲＭ２機能部１０５と、ＤＲＭ１機能部１０４及びＤＲＭ２機能部１０５によるコンテンツ処理に用いられる秘密情報を格納する不揮発性メモリ１０６と、ＤＲＭ１機能部１０４及びＤＲＭ２機能部１０５による処理中に発生するテンポラリデータを保存する記憶部１０３と、ＤＲＭ１機能部１０４及びＤＲＭ２機能部１０５の動作を制御すると共に、外部バス１１５からの記憶部１０３への読み出しアクセスの可否を制御する制御部１０１と、を備えている。【選択図】図１
2008310678.tif 000002
【特許請求の範囲】
【請求項１】
情報機器内のデータ送受信に用いられる外部バスに接続されており、第１の暗号化方式で暗号化されたコンテンツを前記外部バスから入力し、入力した当該コンテンツの暗号化方式を前記第１の暗号化方式とは異なる第２の暗号化方式に変換し前記外部バスに出力する記憶装置であって、
前記第１の暗号化方式で暗号化されたコンテンツを復号化処理する第１のコンテンツ処理演算部と、
前記第１のコンテンツ処理演算部で復号化されたコンテンツに対して、前記第２の暗号化方式による暗号化処理を行う第２のコンテンツ処理演算部と、
前記第１及び第２のコンテンツ処理演算部による処理に用いられる秘密情報を格納する秘密情報格納部と、
前記第１及び第２のコンテンツ処理演算部による処理中に発生するテンポラリデータを保存するデータ保存部と、
前記第１及び第２のコンテンツ処理演算部の動作を制御すると共に、前記外部バスからの前記データ保存部への読み出しアクセスの可否を制御する制御部と、を備えたことを特徴とする記憶装置。
【請求項２】
前記外部バスからの前記データ保存部への読み出しアクセスを許可する通常モードと、前記外部バスからの前記データ保存部のうちの少なくとも一部の領域に対する読み出しアクセスを不許可とする制限モードと、の何れかに選択的に動作モードを切替えるモード切替手段を更に備えたことを特徴とする請求項１に記載の記憶装置。
【請求項３】
前記データ保存部には、
前記制限モードで動作中の場合には前記外部バスからの前記読み出しアクセスが不許可とされる読み出し不可領域のアドレスが予め設定されていることを特徴とする請求項２に記載の記憶装置。
【請求項４】
前記制御部は、
前記制限モードで動作している場合に、前記データ保存部の前記読み出し不可領域に対する読み出しアクセス要求が前記外部バスからあった場合には、前記外部バスに対して、前記読み出し不可領域に保存されたデータとは異なるデータを返信することを特徴とする請求項３に記載の記憶装置。
【請求項５】
機器内部のデータ送受信に用いられる外部バスと、
前記外部バスに接続され、第１の暗号化方式で暗号化されたコンテンツが蓄積されるコンテンツ蓄積部と、
前記外部バスに接続され、前記第１の暗号化方式で暗号化されたコンテンツを前記外部バスから入力し、入力した当該コンテンツの暗号化方式を前記第１の暗号化方式とは異なる第２の暗号化方式に変換し前記外部バスに出力する記憶装置と、を備え、
前記記憶装置は、
前記第１の暗号化方式で暗号化されたコンテンツを復号化処理する第１のコンテンツ処理演算部と、
前記第１のコンテンツ処理演算部で復号化されたコンテンツに対して、前記第２の暗号化方式による暗号化処理を行う第２のコンテンツ処理演算部と、
前記第１及び第２のコンテンツ処理演算部による処理に用いられる秘密情報を格納する秘密情報格納部と、
前記第１及び第２のコンテンツ処理演算部による処理中に発生するテンポラリデータを保存するデータ保存部と、
前記第１及び第２のコンテンツ処理演算部の動作を制御すると共に、前記データ保存部への前記外部バスからの読み出しアクセスの可否を制御する制御部と、を有することを特徴とする情報機器。
【請求項６】
情報機器内のデータ送受信に用いられる外部バスに接続された記憶装置を用いて、第１の暗号化方式で暗号化されたコンテンツを前記外部バスから記憶装置に入力し、入力した当該コンテンツの暗号化方式を前記第１の暗号化方式とは異なる第２の暗号化方式に変換し前記外部バスに出力するコンテンツ変換方法であって、
前記記憶装置の第１のコンテンツ処理演算部が、前記第１の暗号化方式で暗号化されたコンテンツを復号化処理する第１の演算処理ステップと、
前記記憶装置の第２のコンテンツ処理演算部が、前記第１のコンテンツ処理演算部で復号化されたコンテンツに対して、前記第２の暗号化方式による暗号化処理を行う第２の演算処理ステップと、
前記記憶装置の秘密情報格納部が、前記第１及び第２のコンテンツ処理演算部による処理に用いられる秘密情報を格納する秘密情報格納ステップと、
前記記憶装置のデータ保存部が、前記第１及び第２のコンテンツ処理演算部による処理中に発生するテンポラリデータを保存するテンポラリデータ保存ステップと、
前記記憶装置の制御部が、前記第１及び第２のコンテンツ処理演算部の動作を制御すると共に、前記データ保存部への前記外部バスからの読み出しアクセスの可否を制御する制御ステップと、を備えたことを特徴とするコンテンツ変換方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶装置、情報機器、及びコンテンツ変換方法に関するものである。
【背景技術】
【０００２】
従来、このような分野の技術として、下記特許文献１に記載のコンピュータシステムが知られている。このコンピュータシステムは、記憶装置と、オペレーティングシステムとを備えており、オペレーティングシステムによって記憶装置の少なくとも一部へのアクセス制限が行われている。また、この種のコンピュータシステムにおいて、暗号化データをネットワーク経由で外部機器に送信する仕組みを持つものとしては、図１３に示すようなものが考えられる。
【０００３】
この情報機器１３００では、第１のコンテンツ保護方式で暗号化されたコンテンツが、外部記憶装置１３０３に蓄積されている。そして、情報機器１３００は、この暗号化コンテンツを、ＤＲＭ１機能部１３０６で復号化し、復号化されたコンテンツをＤＲＭ２機能部１３０７によって第２のコンテンツ保護方式で再び暗号化し、ネットワーク制御部１３０４を介して外部機器１３２０に送信するものである。上記暗号化・復号化の演算は、プログラムメモリ１３０２に格納されたプログラムをＣＰＵ１３０１が実行してＤＲＭ１機能部１３０６及びＤＲＭ２機能部１３０７を制御することにより実現され、暗号化・復号化に用いられる鍵情報は、不揮発性メモリ部に予め格納されている。
【特許文献１】特開２００５−５１７２２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
このような暗号・復号に関する演算処理中には、鍵情報や復号化された状態のコンテンツといったような保護の必要性が高い情報が一時的に生成されるが、この情報機器１３００においては、このような保護の必要性が高い情報が、汎用的な外部バス１３０９を介して主記憶メモリ１３０５に出入りすることになり、外部からの不正アクセスによって不正に読み取られる可能性もあり得る。このような情報が不正に読み取られるとコンテンツの不正コピーの原因となることも考えられ、コンテンツの保護を十分に図ることができない。
【０００５】
そこで、本発明は、コンテンツの保護を十分に図ることができる記憶装置、情報機器、及びコンテンツ変換方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の記憶装置は、情報機器内のデータ送受信に用いられる外部バスに接続されており、第１の暗号化方式で暗号化されたコンテンツを外部バスから入力し、入力した当該コンテンツの暗号化方式を第１の暗号化方式とは異なる第２の暗号化方式に変換し外部バスに出力する記憶装置であって、第１の暗号化方式で暗号化されたコンテンツを復号化処理する第１のコンテンツ処理演算部と、第１のコンテンツ処理演算部で復号化されたコンテンツに対して、第２の暗号化方式による暗号化処理を行う第２のコンテンツ処理演算部と、第１及び第２のコンテンツ処理演算部による処理に用いられる秘密情報を格納する秘密情報格納部と、第１及び第２のコンテンツ処理演算部による処理中に発生するテンポラリデータを保存するデータ保存部と、第１及び第２のコンテンツ処理演算部の動作を制御すると共に、外部バスからのデータ保存部への読み出しアクセスの可否を制御する制御部と、を備えたことを特徴とする。
【０００７】
また、本発明の記憶装置は、外部バスからのデータ保存部への読み出しアクセスを許可する通常モードと、外部バスからのデータ保存部のうちの少なくとも一部の領域に対する読み出しアクセスを不許可とする制限モードと、の何れかに選択的に動作モードを切替えるモード切替手段を更に備えてもよい。
【０００８】
また、データ保存部には、制限モードで動作中の場合には外部バスからの読み出しアクセスが不許可とされる読み出し不可領域のアドレスが予め設定されていることとしてもよい。
【０００９】
また、制御部は、制限モードで動作している場合に、データ保存部の読み出し不可領域に対する読み出しアクセス要求が外部バスからあった場合には、外部バスに対して、読み出し不可領域に保存されたデータとは異なるデータを返信することとしてもよい。
【００１０】
本発明の情報機器は、機器内部のデータ送受信に用いられる外部バスと、外部バスに接続され、第１の暗号化方式で暗号化されたコンテンツが蓄積されるコンテンツ蓄積部と、外部バスに接続され、第１の暗号化方式で暗号化されたコンテンツを外部バスから入力し、入力した当該コンテンツの暗号化方式を第１の暗号化方式とは異なる第２の暗号化方式に変換し外部バスに出力する記憶装置と、を備え、記憶装置は、第１の暗号化方式で暗号化されたコンテンツを復号化処理する第１のコンテンツ処理演算部と、第１のコンテンツ処理演算部で復号化されたコンテンツに対して、第２の暗号化方式による暗号化処理を行う第２のコンテンツ処理演算部と、第１及び第２のコンテンツ処理演算部による処理に用いられる秘密情報を格納する秘密情報格納部と、第１及び第２のコンテンツ処理演算部による処理中に発生するテンポラリデータを保存するデータ保存部と、第１及び第２のコンテンツ処理演算部の動作を制御すると共に、データ保存部への外部バスからの読み出しアクセスの可否を制御する制御部と、を有することを特徴とする。
【００１１】
本発明のコンテンツ変換方法は、情報機器内のデータ送受信に用いられる外部バスに接続された記憶装置を用いて、第１の暗号化方式で暗号化されたコンテンツを外部バスから記憶装置に入力し、入力した当該コンテンツの暗号化方式を第１の暗号化方式とは異なる第２の暗号化方式に変換し外部バスに出力するコンテンツ変換方法であって、記憶装置の第１のコンテンツ処理演算部が、第１の暗号化方式で暗号化されたコンテンツを復号化処理する第１の演算処理ステップと、記憶装置の第２のコンテンツ処理演算部が、第１のコンテンツ処理演算部で復号化されたコンテンツに対して、第２の暗号化方式による暗号化処理を行う第２の演算処理ステップと、記憶装置の秘密情報格納部が、第１及び第２のコンテンツ処理演算部による処理に用いられる秘密情報を格納する秘密情報格納ステップと、記憶装置のデータ保存部が、第１及び第２のコンテンツ処理演算部による処理中に発生するテンポラリデータを保存するテンポラリデータ保存ステップと、記憶装置の制御部が、第１及び第２のコンテンツ処理演算部の動作を制御すると共に、データ保存部への外部バスからの読み出しアクセスの可否を制御する制御ステップと、を備えたことを特徴とする。
【発明の効果】
【００１２】
本発明によれば、コンテンツの保護を十分に図ることができる記憶装置、情報機器、及びコンテンツ変換方法を提供することができる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照しつつ本発明に係る記憶装置、情報機器、及びコンテンツ変換方法の好適な実施形態について詳細に説明する。
【００１４】
図１に示す情報機器１は、コンテンツデータを蓄積すると共に、当該コンテンツデータをネットワーク経由で外部機器１２０に送信することができる装置である。情報機器１の外部記憶装置１１３には、第１のコンテンツ保護方式（以下「ＤＲＭ１方式」という）で暗号化された暗号コンテンツが蓄積されている。情報機器１は、外部記憶装置１１３に保存されたコンテンツに、第２のコンテンツ保護方式（以下「ＤＲＭ２方式」という）による暗号化を施して、外部機器１２０に送信する機能を有している。上記ＤＲＭ１方式として、例えばここでは、ＣＰＲＭ方式が用いられる。また、上記ＤＲＭ２方式として、例えばここでは、ＤＴＣＰ−ＩＰ方式が用いられる。
【００１５】
この情報機器１は記憶装置１００を備えている。記憶装置１００は、汎用のインタフェースが利用される外部バス１１５に接続され、この外部バス１１５には、ＣＰＵ１１１、プログラムメモリ１１２、外部記憶装置１１３、ネットワーク制御部１１４が接続されている。
【００１６】
ＣＰＵ１１１は、プログラムメモリ１１２に格納された制御プログラムに従って、記憶装置１００、外部記憶装置１１３、及びネットワーク制御部１１４を制御する。プログラムメモリ１１２には、後述するメインプログラム、ＤＲＭ１処理プログラム、及びＤＲＭ２処理プログラムが格納されている。
【００１７】
外部記憶装置１１３は、暗号化された状態のコンテンツを蓄積するためのものである。この外部記憶装置１１３に格納されるデータ７００は、図２に示すように、ＤＲＭ１方式で暗号化された暗号コンテンツ７０２と、タイトル鍵Ｋｔ１とを備えている。タイトル鍵Ｋｔ１は、ＤＲＭ１機能部１０４においてコンテンツ鍵Ｋｃ１を生成するときに使用されるデータである。コンテンツ鍵Ｋｃ１とは、コンテンツをＤＲＭ１方式で暗号化または復号化するための鍵データである。ＤＲＭ１暗号コンテンツ７０２は、コンテンツ鍵Ｋｃ１で暗号化された状態のコンテンツデータである。
【００１８】
図１のネットワーク制御部１１４は、ネットワーク上の外部機器１２０との通信を行うためのものである。上記ネットワーク制御部１１４は、ネットワークを介して外部機器１２０に接続されている。この外部機器１２０は、ＤＲＭ２方式に対応しており、ＤＲＭ２方式で保護されたコンテンツを、相手機器（この場合、情報機器１）から受信可能である。
【００１９】
上記記憶装置１００は、記憶部１０３、ＤＲＭ１機能部１０４、ＤＲＭ２機能部１０５、不揮発性メモリ１０６、及びこれら各部１０３〜１０６を制御する制御部１０１を備えている。上記各部１０１，１０３〜１０６は内部バス１０２で接続されており、この内部バス１０２を通じて互いにデータの受け渡しを行う。また、前述の外部バス１１５は、制御部１０１に接続されており、記憶装置１００の外部バス１１５経由のデータ授受は、すべて制御部１０１を介して行われる。なお、この記憶装置１００の構成は、例えば、ＲＡＭ、ＦＲＡＳＨ  ＲＯＭ、ＨＤＤ等に適用される。
【００２０】
記憶部１０３は読書き可能な大容量記憶の記憶容量をもち、例えば、ＨＤＤのディスク部に対応する。ＤＲＭ１機能部１０４は、ＤＲＭ１方式に対応するコンテンツ処理（以下、「ＤＲＭ１処理」という）を行う演算部である。このＤＲＭ１機能部１０４は、外部記憶装置１１３に保存されたコンテンツを保護するための、暗号用の鍵生成処理や暗号の復号処理などの機能を持つ。詳細は後述するが、このＤＲＭ１機能部１０４は、記憶部１０３の制御データエリア２１１にＤＲＭ１用のコマンドコードが書き込まれたときに、制御部１０１の制御下で各処理を実行する。
【００２１】
ＤＲＭ２機能部１０５は、ＤＲＭ２方式に対応するコンテンツ処理（以下、「ＤＲＭ２処理」という）を行う演算部である。ＤＲＭ２機能部１０５は、ネットワーク上のコンテンツ保護に関して、外部機器１２０と認証・鍵交換を行うための処理や、鍵生成処理、暗号処理などの機能を持つ。詳細は後述するが、ＤＲＭ２機能部１０５は、記憶部１０３の制御データエリア２１１にＤＲＭ２用のコマンドコードが書き込まれたときに、制御部１０１の制御下で各処理を実行する。尚、ＤＲＭ１機能部１０４及びＤＲＭ２機能部１０５の実現方法としては、ハードウェアであるか、制御部１０１等が実行するソフトウェアであるかを問わない。また、ハードウェアとソフトウェアを組み合わせて実装することも可能である。
【００２２】
図３に、不揮発性メモリ１０６のアドレスマップ３００を示す。図のように、不揮発性メモリ１０６は、ＤＲＭ１処理及びＤＲＭ２処理に用いる秘密情報を格納しておくためのもので、ＤＲＭ１方式用のデバイス鍵Ｋｄ１やＤＲＭ２方式用のデバイス鍵Ｋｄ２も、不揮発性メモリ１０６に格納されている。ＤＲＭ１用秘密データ３１０には、ＤＲＭ１処理中に利用する秘密情報が格納される。ＤＲＭ１用秘密データ内のデバイス鍵Ｋｄ１は、ＤＲＭ１処理で暗号化されたコンテンツを、暗号化または復号化するためのコンテンツ鍵Ｋｃ１を生成するときに利用する秘密情報である。コンテンツ鍵Ｋｃ１は、ＤＲＭ１機能部１０４が、このデバイス鍵Ｋｄ１とタイトル鍵Ｋｔ１とをもとに生成する。
【００２３】
ＤＲＭ２用秘密データ３２０には、ＤＲＭ２処理で利用する秘密情報が格納される。ＤＲＭ２用秘密データ内のデバイス鍵Ｋｄ２は、ＤＲＭ２方式で相手機器（ここでは、外部機器１２０）と通信するときに、認証データＫｓＢを検証したり(Ｓ９０１)、認証データＫｓＡを生成したりする（Ｓ９０３）ときに利用する秘密情報である。ここで、上記不揮発性メモリ１０６のアドレスマップ３００は、外部バス１１５上の装置からはアクセス不可能な、記憶装置１００内専用のアドレス空間にマッピングされているものである。また、不揮発性メモリ１０６に格納された秘密情報が外部に洩れることを防ぐため、秘密情報には、ＤＲＭ１機能部１０４とＤＲＭ機能部１０５のみが、内部バス１０２経由でアクセスするものとする。
【００２４】
このような記憶装置１００には、「通常モード」及び「ＤＲＭモード」といった切替え可能な２種類の動作モードが設定されており、記憶装置１００は何れかの動作モードで動作する。記憶装置１００が「通常モード」で動作する場合、制御部１０１によって、記憶部１０３の全領域は、ＣＰＵ１１１からフルにアクセス可能な領域として割り当てられる。すなわち、図４（ａ）に示すように、記憶部１０３のアドレスマップ２００は、全アドレス空間が自由に読書き可能なフリー領域としてマッピングされ、記憶装置１００は単なる記憶媒体として機能することになる。
【００２５】
一方、記憶装置１００が「ＤＲＭモード（制限モード）」で動作する場合、制御部１０１によって、記憶部１０３の一部の領域は、ＤＲＭ１機能部１０４及びＤＲＭ２機能部１０５によるＤＲＭ１方式及びＤＲＭ２方式の演算処理に用いられる作業用領域として割り当てられ、この領域には、上記演算処理中に発生する各テンポラリデータが書き込まれる。具体的には、図４（ｂ）に示すように、ＤＲＭモード動作時における記憶部１０３のアドレスマップ２１０では、自由に読書き可能なフリー領域２１６と、演算処理時に利用される領域２１１〜２１５とがマッピングされる。
【００２６】
このうち、制御データエリア２１１は、記憶装置１００を制御するための各種コマンドコードを書込むための領域である。また、コマンド実行するときに引数として受渡しするデータを読書きするための領域としても利用される。非公開データエリア２１２は、ＤＲＭ１処理又はＤＲＭ２処理に関するコマンドを実行したときに発生する秘密情報を格納しておくための領域である。中間コンテンツ用エリア２１３は、復号化された状態のコンテンツデータを格納しておくための領域である。非公開データエリア２１２及び中間コンテンツ用エリア２１３には、秘密情報や復号化された状態のコンテンツデータが格納されるので、コンテンツ保護方式の保護とコンテンツの保護のため、制御部１０１は両領域に格納されたデータを外部バス１１５上に流さないように制御する。具体的には、外部バス１１５経由の上記非公開データエリア（読み出し不可領域）２１２又は中間コンテンツ用エリア（読み出し不可領域）２１３に対しての読出しアクセスを不許可とし、当該エリア２１２，２１３に対して外部バス１１５経由の読出しアクセスがあった場合には、制御部１０１は常に”０”のデータを固定で返すこととしている。
【００２７】
ＤＲＭ１用コンテンツエリア２１４は、ＤＲＭ１方式で保護されたコンテンツを復号化するときに利用する領域である。ＤＲＭ１用コンテンツエリアには、ＤＲＭ１方式の復号処理のときに、外部記憶装置１１３から読み出された暗号化状態のコンテンツが格納される。ＤＲＭ２用コンテンツエリア２１５は、ＤＲＭ２方式でコンテンツを暗号化するときに利用する領域である。ＤＲＭ２用コンテンツエリアには、ＤＲＭ２方式の暗号化処理のときに、ＤＲＭ２機能部１０５が暗号化したコンテンツデータが格納される。
【００２８】
続いて、この記憶装置１００の制御に利用されるコマンドについて説明する。図５は、記憶装置１００を制御するときに利用するコマンドの仕様を示したテーブルである。このテーブル中のコマンドコードが、記憶部１０３の制御データエリア２１１中のコマンドアドレスに書き込まれると、制御部１０１がコマンドコードに対応する処理を実行するものとする。
【００２９】
ＤＲＭモード遷移コマンド４０１は、記憶装置１００の動作モードを、通常モードからＤＲＭモードに遷移させる。本コマンドについては、ＤＲＭモードへ遷移するためのコマンドコードの書込みと、通常モードでのデータ書込みを区別するため、コマンドコードが１０回連続で書き込まれた時点で確定されるものとする。記憶装置１００がＤＲＭモードに遷移すると、記憶装置１００内部のコンテンツ保護機能であるＤＲＭ１機能部１０４とＤＲＭ２機能部１０５が有効化され、記憶部１０３のアドレスマップがＤＲＭモード用のアドレスマップ２１０（図４（ｂ））に切り替わる。
【００３０】
通常モード復帰コマンド４０２は、記憶装置の動作モードを、コンテンツ保護機能が利用可能なＤＲＭモードから、通常の記憶装置として利用可能な通常モードに復帰させる。通常モードに復帰すると、記憶装置１００内部のコンテンツ保護機能をもつＤＲＭ１機能部１０４とＤＲＭ２機能部１０５とが無効化され、記憶部１０３のアドレスマップが通常モード用のアドレスマップ２００（図４（ａ））に切り替わる。
【００３１】
すなわち、制御部１０１は、対応するコマンドアドレスにＤＲＭモード遷移コマンド４０１が書き込まれたときに、通常モードからＤＲＭモードに切替え、対応するコマンドアドレスに通常モード復帰コマンド４０２が書き込まれたときに、ＤＲＭモードから通常モードに切替える。制御部１０１は、ＤＲＭモードのときに、後述するＤＲＭ１用のコマンド５０１〜５０３及びＤＲＭ２用のコマンド６０１〜６０７をサポートし、コマンドに従ってＤＲＭ１機能部１０４やＤＲＭ２機能部１０５を制御してコンテンツ保護に必要な演算処理（ＤＲＭ１処理、ＤＲＭ２処理）を実行する。
【００３２】
次に、図６は、記憶装置１００をＤＲＭ１処理用に制御するときに利用するコマンドの仕様を示したテーブルである。このテーブル中のコマンドコードが、制御データエリア２１１中のコマンドアドレスに書き込まれると、制御部１０１とＤＲＭ１機能部１０４とがコマンドコードに対応する処理を実行するものとする。タイトル鍵Ｋｔ１セットコマンド５０１は、ＤＲＭ１用のタイトル鍵Ｋｔ１をセットする。本コマンドコードに続いて書き込まれる20バイト分のコマンドの引数データが、タイトル鍵Ｋｔ１として制御データエリア２１１に格納される。
【００３３】
コンテンツ鍵Ｋｃ１生成コマンド５０２は、ＤＲＭ１用のコンテンツ鍵Ｋｃ１を生成する。コンテンツ鍵Ｋｃ１は、前記タイトル鍵Ｋｔ１とデバイス鍵Ｋｄ１をもとに、ＤＲＭ１機能部１０４によって生成され、非公開データエリア２１２へ格納される。復号開始コマンド５０３は、ＤＲＭ１方式の暗号コンテンツを復号化する。ＤＲＭ１機能部１０４が、コンテンツ鍵Ｋｃ１で、ＤＲＭ１用コンテンツエリア２１４に格納された暗号化コンテンツを復号化して、中間コンテンツ用エリア２１３へ格納する。
【００３４】
次に、図７は、記憶装置１００をＤＲＭ２用に制御するときに利用するコマンドの仕様を示したテーブルである。テーブル中のコマンドコードが、制御データエリア２１１中のコマンドアドレスに書き込まれると、制御部１０１とＤＲＭ２機能部１０５がコマンドコードに対応する処理を実行するものとする。認証データＫｓＢ検証コマンド６０１は、ＤＲＭ２対応機器から受信した認証用データＫｓＢを検証する。本コマンドコードに続いて書き込まれる４０Byteのコマンドの引数データは、認証用データＫｓＢとして制御データエリア２１１に格納される。認証用データＫｓＢは、ＤＲＭ２機能部１０５で検証され、検証処理の結果として出力される検証結果データは、非公開データエリア２１２へ格納される。
【００３５】
認証鍵Ｋａ２生成コマンド６０２は、ＤＲＭ２用の認証鍵Ｋａ２を生成する。認証鍵Ｋａ２は、ＤＲＭ２機能部１０５が、上記認証データＫｓ検証コマンドで発生した検証結果データとデバイス鍵Ｋｄ２とを元に生成する。生成された認証鍵Ｋａ２は、非公開データエリア２１２に格納される。認証データＫｓＡ生成コマンド６０３は、ＤＲＭ２対応機器に送信する認証データＫｓＡを生成する。認証データＫｓＡは、ＤＲＭ２機能部１０５でデバイス鍵Ｋｄ２をもとに生成され、制御データエリア２１１のコマンドアドレスに続いて格納される。交換鍵Ｋｘ２生成コマンド６０４は、ＤＲＭ２用の交換鍵Ｋｘ２を生成する。ＤＲＭ２機能部１０５内の演算処理が交換鍵Ｋｘ２を生成する。生成された交換鍵Ｋｘ２は、非公開データエリア２１２に格納される。
【００３６】
交換鍵Ｋｘ２暗号化コマンド６０５は、ＤＲＭ２用の交換鍵Ｋｘ２を認証鍵Ｋａ２で暗号化する。ＤＲＭ２機能部１０５が交換鍵Ｋｘ２を認証鍵Ｋａ２で暗号化する。暗号化された交換鍵Ｋｘ２は、制御データエリア２１１のコマンドアドレスに続いて格納される。コンテンツ鍵Ｋｃ２生成コマンド６０６は、ＤＲＭ２用のコンテンツ鍵Ｋｃ２を生成する。コンテンツ鍵Ｋｃ２は、ＤＲＭ２機能部１０５が交換鍵Ｋｘ２をもとにして生成する。生成されたコンテンツ鍵Ｋｃ２は、非公開データエリア２１２に格納され、コンテンツの暗号化に利用される。暗号開始コマンド６０７は、ＤＲＭ２方式でコンテンツを暗号化する。ＤＲＭ２機能部１０５が、中間コンテンツ用エリア２１３のコンテンツをコンテンツ鍵Ｋｃ２で暗号化し、ＤＲＭ２用コンテンツエリア２１５へ格納する。
【００３７】
続いて、情報機器１により実行されるメインプログラムについて説明する。メインプログラムは、ＤＲＭ１方式で暗号化された状態で外部記憶装置１１３に格納されたコンテンツを、ＤＲＭ２方式で暗号化された状態に変換して、外部機器１２０に送信するためのプログラムである。
【００３８】
図８に示すように、記憶装置１００が通常モードで動作しているときに、ＤＲＭモード遷移コマンド４０１を実行し、記憶装置１００の動作モードをＤＲＭモードに遷移させる（Ｓ８０１）。その後、ＤＲＭ１方式で暗号化され外部記憶装置１１３に格納されているコンテンツの復号化処理が行われ、復号化した後のデータが、中間コンテンツ用エリア２１３に格納される（ＤＲＭ１処理；Ｓ８０２）。次に、ＤＲＭ２方式のコンテンツの暗号化処理が行われ、中間コンテンツ用エリア２１３に格納されたコンテンツが暗号化されて、ネットワーク制御部１１４を介して外部機器１２０に送信される（ＤＲＭ２処理；Ｓ８０３）。上記Ｓ８０２，Ｓ８０３の処理の詳細については後述する。その後、通常モード復帰コマンド４０２を実行し、記憶装置１００をＤＲＭモードから通常モードに遷移させて、処理を終了する。
【００３９】
続いて、上記ＤＲＭ１処理（Ｓ８０２）について図９を参照し更に詳細に説明する。
【００４０】
まず、外部記憶装置１１３に格納されているコンテンツデータ７００の、タイトル鍵Ｋｔ１部分が読み出される（Ｓ９０１）。そして、タイトル鍵Ｋｔ１セットコマンド５０１が実行され（Ｓ９０２）、ＤＲＭ１機能部１０４は、タイトル鍵Ｋｔ１を記憶部１０３の制御データエリア２１１に格納する。次に、コンテンツ鍵Ｋｃ１生成コマンド５０２が実行され（Ｓ９０３）ＤＲＭ１機能部１０４は、コンテンツ鍵Ｋｃ１を非公開データエリア２１２に格納する。次に、ＤＲＭ１機能部１０４は、外部記憶装置１１３に格納されているコンテンツデータ７００のＤＲＭ１暗号コンテンツ７０２部分を読出し、ＤＲＭ１用コンテンツエリア２１４に格納する（Ｓ９０４）。次に、復号開始コマンド５０３が実行され（Ｓ９０５）。この結果、中間コンテンツ用エリア２１３に復号化されたコンテンツが格納される。
【００４１】
続いて、上記ＤＲＭ２処理（Ｓ８０３）について図１０及び図１１を参照し更に詳細に説明する。
【００４２】
まず、情報機器１が外部機器１２０からネットワーク制御部１１４を介して認証データＫｓＢを受信すると（Ｓ１００１）、認証データＫｓＢ検証コマンド６０１が実行され、ＤＲＭ２機能部１０５は、受信された認証データＫｓＢを検証する（Ｓ１００２）。その結果として出力される検証データは、非公開データエリア２１２に格納され、次のステップで認証鍵Ｋａ２を生成するときに利用される。次に、認証鍵Ｋａ２生成コマンド６０２が実行され、ＤＲＭ２機能部１０５は、認証鍵Ｋａ２を生成する。ここでは、認証鍵Ｋａ２は、ＤＲＭ２機能部１０５において前ステップＳ１００２で出力された検証データと、デバイス鍵Ｋｄ２とを元に生成され、非公開データエリア２１２に格納される（Ｓ１００３）。
【００４３】
次に、認証データＫｓＡ生成コマンド６０３が実行され、ＤＲＭ２機能部１０５は、デバイス鍵Ｋｄ２を元に認証データＫｓＡを生成する。生成された認証データＫｓＡは、制御データエリア２１１にコマンドアドレスに続いて格納される（Ｓ１００４）。その後、上記認証データＫｓＡは、ネットワーク制御部１１４を介して、外部機器１２０へ送信される（Ｓ１００５）。次に、交換鍵Ｋｘ２生成コマンド６０４が実行され、ＤＲＭ２機能部１０５が交換鍵Ｋｘ２を生成する。生成された交換鍵Ｋｘ２は、非公開データエリア２１２に格納される（Ｓ１００６）。
【００４４】
次に、交換鍵Ｋｘ２暗号化コマンド６０５が実行され、ＤＲＭ２機能部１０５は、交換鍵Ｋｘ２を認証鍵Ｋａ２で暗号化する。暗号化された交換鍵Ｋｘ２は、次ステップで外部機器１２０へ送信するために、制御データエリア２１１に格納される（Ｓ１００７）。その後、認証鍵Ｋａ２で暗号化された交換鍵Ｋｘ２は、ネットワーク制御部１１４を介して外部機器１２０へ送信される（Ｓ１００８）。次に、コンテンツ鍵Ｋｃ２生成コマンド６０６が実行され、ＤＲＭ２機能部１０５は、交換鍵Ｋｘ２を元にコンテンツ鍵Ｋｃ２を生成する。生成されたコンテンツ鍵Ｋｃ２は、非公開データエリア２１２に格納される（Ｓ１００９）。
【００４５】
次に、暗号開始コマンド６０７が実行され、ＤＲＭ２機能部１０５は、ＤＲＭ２方式でコンテンツデータを暗号化する。ここでは、中間コンテンツ用エリア２１３に格納されている復号状態のコンテンツが、ＤＲＭ２機能部１０５で暗号化され、ＤＲＭ２用コンテンツエリア２１５に格納される（Ｓ１０１０）。その後、ＤＲＭ２方式で暗号化されたコンテンツは、ネットワーク制御部１１４を介して外部機器１２０へ送信される（Ｓ１０１１）。なお、図１２に示すように、ここで送信されるデータ８００には、上記コンテンツ鍵Ｋｃ２を使って暗号化された状態のＤＲＭ２暗号コンテンツ８０２と、コンテンツのサイズ情報やコピー制御情報を含むヘッダ情報８０１と、が含まれている。このように、ＤＲＭ２によってネットワーク上に流れるコンテンツが保護され、情報機器１から外部機器１２０へのセキュアなコンテンツ通信が実現される。
【００４６】
以上説明したように、情報機器１及び記憶装置１００によれば、コンテンツを外部機器１２０に送信する処理において、利用されたり発生したりする秘密情報や、復号化状態のコンテンツデータは、記憶装置１００内にのみ現れることになる。すなわち、外部バス１１５上には復号化された状態のコンテンツや、秘密情報が現れることは無い。また、秘密の処理やデータは、記憶装置１００内部のＤＲＭ１機能部１０４と、ＤＲＭ２機能部１０５、不揮発性メモリ１０６に実装されているので、記憶装置１００の外（例えば、プログラムメモリ１１２内のプログラム内）にはＤＲＭ１処理及びＤＲＭ２処理に関する秘密情報が存在しない。
【００４７】
また、コンテンツ送信の処理中において、記憶部１０３の非公開データエリア２１２又は中間コンテンツ用エリア２１３には、各暗号鍵や復号状態のコンテンツといったような秘密情報が、テンポラリデータとして現れる。これに対して、制御部１０１は、コンテンツ送信の処理中において、記憶部１０３の非公開データエリア２１２又は中間コンテンツ用エリア２１３に対して、外部バス１１５からの読出しアクセスがあった場合には、常に”０”のデータを固定で返すこととしている。このことから、処理中に非公開データエリア２１２又は中間コンテンツ用エリア２１３に現れる秘密情報が、外部バス１１５に流れることが防止される。
【００４８】
以上のように、コンテンツ保護機能の秘密の処理と秘密情報を記憶装置１００内部に封じ込めたまま暗号化・復号化の処理を行うことができるので、外部にコンテンツ保護機能の秘密が洩れる危険を少なくすることができる。例えば、復号化された状態のコンテンツやコンテンツ保護機能を実行中に発生する鍵などの秘密のデータが、外部バス１１５上に現れることを防ぐことができるので、データが不正に読み取られてコンテンツの不正コピーに利用される危険を少なくすることができる。また、記憶装置１００を制御する制御プログラム内に秘密の処理やデータを実装する必要が無いため、制御プログラムが解析されたとしても秘密情報が洩れる危険が無い。従って、情報機器１では、プログラムを不正に解析する行為からプログラムを守るための仕組みを実装する必要も無い。
【００４９】
また、コンテンツ保護機能を実現するときに必要な要素である、記憶部１０３、不揮発性メモリ１０６、暗号化機能を持つＤＲＭ２機能部１０５、復号化機能を持つＤＲＭ１機能部１０４を記憶装置１００内部に実装しているので、部品点数の削減や実装面積を低減する効果もある。
【００５０】
また、記憶装置１００は、動作モードの切り替えによって、通常の記憶装置として動作したり（通常モード）、コンテンツ保護機能用の装置として動作したり（ＤＲＭモード）することができる。近年、デジタル放送等の普及により大容量記憶装置でデジタルコンテンツを扱う機会が増えており、ＲＡＭ、ＦＲＡＳＨ  ＲＯＭ、或いはＨＤＤ等の大容量記憶装置は、大容量化され低価格化が進んでいる。そういった状況で、この記憶装置１００は、コンテンツ保護機能を内蔵しデジタルコンテンツを容易に扱えるようになるので、大きな付加価値をもつ記憶装置を提供することができる。
【図面の簡単な説明】
【００５１】
【図１】本発明に係る情報機器及び記憶装置の一実施形態を示すブロック図である。
【図２】図１に示す外部記憶装置に蓄積されるコンテンツを示す図である。
【図３】図１に示す不揮発性メモリのアドレスマップを示す図である。
【図４】（ａ）は、通常モードにおける記憶部のアドレスマップ、（ｂ）は、ＤＲＭモードにおける記憶部のアドレスマップを示す図である。
【図５】図１に示す記憶装置の制御に係るコマンドの一覧表である。
【図６】図１に示す記憶装置の制御に係るコマンドの一覧表である。
【図７】図１に示す記憶装置の制御に係るコマンドの一覧表である。
【図８】図１の情報機器におけるメインプログラムのフローチャートである。
【図９】図１の情報機器におけるＤＲＭ１処理のフローチャートである。
【図１０】図１の情報機器におけるＤＲＭ２処理のフローチャートである。
【図１１】図１の情報機器におけるＤＲＭ２処理のシーケンス図である。
【図１２】図１の情報機器から外部機器への送信データを示す図である。
【図１３】従来の情報機器の一例を示す図である。
【符号の説明】
【００５２】
１…情報機器、１００…記憶装置、１０１…制御部、１０３…記憶部（データ保存部）、１０４…ＤＲＭ１機能部（第１のコンテンツ処理演算部）、１０５…ＤＲＭ２機能部（第２のコンテンツ処理演算部）、１０６…不揮発性メモリ（秘密情報格納部）、１１５…外部バス、２１２…非公開データエリア（読み出し不可領域）、２１３…中間コンテンツ用エリア（読み出し不可領域）、７００…コンテンツデータ、８００…送信データ。
【図１】
2008310678.tif 000003
【図２】
2008310678.tif 000004
【図３】
2008310678.tif 000005
【図４】
2008310678.tif 000006
【図５】
2008310678.tif 000007
【図６】
2008310678.tif 000008
【図７】
2008310678.tif 000009
【図８】
2008310678.tif 000010
【図９】
2008310678.tif 000011
【図１０】
2008310678.tif 000012
【図１１】
2008310678.tif 000013
【図１２】
2008310678.tif 000014
【図１３】
2008310678.tif 000015