"各種データを格納するメモリ部と、コントローラ鍵及び前記コントローラに固有の第1コントローラ識別情報を与えられ前記メモリ部を制御するように構成されたコントローラと、ホスト装置とセキュアチャネルを介したデータ通信を行うためのインタフェース部とを備え、前記コントローラは、前記コントローラ鍵及び前記第1コントローラ識別情報に基づいて前記コントローラ毎に固有のコントローラユニーク鍵を生成するコントローラユニーク鍵生成部と、前記第1コントローラ識別情報に基づいて第2コントローラ識別情報を生成するコントローラ識別情報生成部と、復号器と、前記ホスト装置との間で認証鍵交換処理を実行する認証鍵交換処理部と、を備え、前記メモリ部は、外部から自由にアクセス可能な通常記録部と、公開鍵暗号方式の秘密鍵として機能するメディアデバイス鍵を前記コントローラユニーク鍵で暗号化した暗号化メディアデバイス鍵と、前記公開鍵暗号方式の公開鍵として機能するメディアデバイス鍵証明書とを格納するシステム情報記録部と、所定の認証処理の完了を条件としてアクセス可能となる秘密記録部とを備え、前記復号器は、前記暗号化メディアデバイス鍵を前記コントローラユニーク鍵を用いて復号して前記メディアデバイス鍵を得ることが可能に構成され、前記認証鍵交換処理部は、前記メディアデバイス鍵、前記メディアデバイス鍵証明書、及び前記第2コントローラ識別情報を用いて、前記インタフェース部を介して前記ホスト装置と認証鍵交換処理を行い、前記セキュアチャネルを確立した後、前記前記メディアデバイス鍵、前記メディアデバイス鍵証明書、及び前記第2コントローラ識別情報を前記セキュアチャネル及び前記インタフェース部を介して前記ホスト部に送信するよう構成されたことを特徴とする情報記録装置。前記コントローラは、前記セキュアチャネルが確立された場合に、前記システム情報記録部へのアクセスを許容する請求項2記載の情報記録装置。前記コントローラ識別情報生成部は、前記コントローラ鍵と前記第1コントローラ識別情報に基づいて第2コントローラ識別情報を生成する請求項1乃至2のいずれかに記載の情報記録装置。情報記録装置と、ホスト装置との間で認証処理を実行する方法であって、前記情報記録装置は、メモリ部と、このメモリ部を制御するコントローラを有していると共に、コントローラ鍵及び第1コントローラ識別情報を与えられ、更に公開鍵暗号方式の秘密鍵として機能するメディアデバイス鍵と、前記公開鍵暗号方式の公開鍵として機能するメディアデバイス鍵証明書とを前記メモリ部内のシステム情報記録部に保持すると共に、前記メディアデバイス鍵は、前記コントローラ鍵及び前記第1コントローラ識別情報に基づいて生成されたコントローラユニーク鍵により暗号化されて暗号化メディアデバイス鍵として前記システム情報記録部に記録され、前記ホスト装置は、公開鍵暗号方式の秘密鍵として機能するホストデバイス鍵と、公開鍵暗号方式の公開鍵として機能するホストデバイス鍵証明書とを保持し、前記方法は、前記第1コントローラ識別情報に基づいて第2コントローラ識別情報を生成するステップと、前記暗号化メディアデバイス鍵、前記メディアデバイス鍵証明書、及び前記第2コントローラ識別情報、並びに前記ホストデバイス鍵及び前記ホストデバイス証明書に基づいて認証鍵交換処理を実行して、前記メディアデバイス鍵証明書の中に埋め込まれたメディアデバイス鍵証明書情報及び前記第2コントローラ識別情報を前記ホスト装置において取得するステップと、前記ホスト装置が受領した前記メディアデバイス鍵証明書情報及び前記第2コントローラ識別情報に基づいて情報記録装置識別情報を生成するステップと、前記情報記録装置識別情報に基づいてメディアユニーク鍵を生成するステップとを備えたことを特徴とする情報記録装置の処理方法。第2コントローラ識別情報は、前記コントローラ鍵と前記第1コントローラ識別情報とに基づいて生成される請求項4に記載の情報記録装置の処理方法。以下に説明する実施の形態は、公開鍵暗号をベースとした認証方式が利用される場合においても、クローンカードの蔓延を防止することを目的とする。以下に説明する実施の形態の情報記録装置は、各種データを格納するメモリ部と、与えられメモリ部を制御するように構成されたコントローラと、ホスト装置とセキュアチャネルを介したデータ通信を行うためのインタフェース部とを備えている。コントローラは、コントローラ鍵及びコントローラに固有の第1コントローラ識別情報を保持している。コントローラは、コントローラ鍵及び第1コントローラ識別情報に基づいてコントローラ毎に固有のコントローラユニーク鍵を生成するコントローラユニーク鍵生成部と、第1コントローラ識別情報に基づいて第2コントローラ識別情報を生成するコントローラ識別情報生成部と、復号器と、ホスト装置との間で認証鍵交換処理を実行する認証鍵交換処理部を備える。メモリ部は、外部から自由にアクセス可能な通常記録部と、秘密記録部と、システム情報記録部とを備えている。秘密記録部は、所定の認証処理の完了を条件としてアクセス可能とされる。システム情報記録部は、公開鍵暗号方式の秘密鍵として機能するメディアデバイス鍵をコントローラユニーク鍵で暗号化した暗号化メディアデバイス鍵と、公開鍵暗号方式の公開鍵として機能するメディアデバイス鍵証明書とを格納する。復号器は、暗号化メディアデバイス鍵をコントローラユニーク鍵を用いて復号してメディアデバイス鍵を得ることが可能に構成される。認証鍵交換処理部は、メディアデバイス鍵、メディアデバイス鍵証明書、及び第2コントローラ識別情報を用いて、インタフェース部を介してホスト装置と認証鍵交換処理を行う。セキュアチャネルを確立した後、メディアデバイス鍵、メディアデバイス鍵証明書、及び第2コントローラ識別情報をセキュアチャネル及びインタフェース部を介してホスト部に送信する。以下に記載する実施の形態の情報記録装置の処理方法は、情報記録装置と、ホスト装置との間で認証処理を実行する方法である。情報記録装置は、メモリ部と、このメモリ部を制御するコントローラを有している。また情報記録装置は、コントローラ鍵及び第1コントローラ識別情報を与えられ、更に公開鍵暗号方式の秘密鍵として機能するメディアデバイス鍵と、公開鍵暗号方式の公開鍵として機能するメディアデバイス鍵証明書とをメモリ部内の秘密記録部に保持する。メディアデバイス鍵は、コントローラ鍵及び第1コントローラ識別情報に基づいて生成されたコントローラユニーク鍵により暗号化されて暗号化メディアデバイス鍵として前記秘密記録部に記録される。ホスト装置は、公開鍵暗号方式の秘密鍵として機能するホストデバイス鍵と、公開鍵暗号方式の公開鍵として機能するホストデバイス鍵証明書とを保持している。この方法は、次のステップからなる。1第1コントローラ識別情報に基づいて第2コントローラ識別情報IDcntrを生成するステップ2暗号化メディアデバイス鍵、メディアデバイス鍵証明書、及び第2コントローラ識別情報、並びにホストデバイス鍵及びホストデバイス証明書に基づいて認証鍵交換処理を実行して、メディアデバイス鍵証明書の中に埋め込まれたメディアデバイス鍵証明書情報及び第2コントローラ識別情報をホスト装置において取得するステップ3ホスト装置が受領したメディアデバイス鍵証明書情報及び第2コントローラ識別情報に基づいて情報記録装置識別情報を生成するステップ4情報記録装置識別情報に基づいてメディアユニーク鍵を生成するステップ電子化されたコンテンツ以下、単にコンテンツというは、容易に複製可能なため、コンテンツに付随する著作権を無視した不正行為が生じ易い。このような不正行為からコンテンツを保護する観点から、コンテンツは通常、暗号化された上で記録媒体に記録され、正当な機器においてのみ再生時に復号される。また、コンテンツを暗号化するためのコンテンツ鍵が二種類の鍵で二重に暗号化された暗号化二重鍵方式が考えられている。暗号化鍵の内、記録媒体に固有の鍵例えば、メディアユニーク鍵は記録媒体の秘匿領域にセキュアに記録され、記録媒体外部からはアクセスができないようになっている。このため、例えば暗号化コンテンツ鍵データのみが不正にコピーされたとしても、暗号化コンテンツ鍵を復号するために必要なメディアユニーク鍵がなければコンテンツを利用復号することができない。しかし、このようなメディアユニーク鍵が何らかの手法によって不正に読み出され、不正記録媒体カード製造業者に渡されると、正規の記録媒体カードをコピーしたクローンカードが出回る結果となり、コンテンツデータが不正に利用されることが起こり得る。以下、図面を参照しながら本発明の実施形態を説明する。[第1の実施形態]図1は、第1の実施の形態による情報記録システムに用いられるメモリカード不揮発性メモリシステム1000の構成を示す。このメモリカード1000は、コンテンツデータを暗号化して格納することが可能に構成されている。なお、不揮発性メモリシステムは必ずしもメモリカードの形状である必要はなく、ホスト装置2000からメモリカード1000が着脱不可能な態様で実装されていてもよい。また、このメモリカード1000は、ホスト装置2000図1では図示せずに接続可能に構成され、このホスト装置2000との間で所定の認証鍵交換処理を実行可能に構成されている。認証鍵交換処理が完了すると、ホスト装置2000からメモリカード1000のシステム情報記録部及び秘密記録部にデータを書き込み或いは読み出しが可能になる。また、ホスト装置2000又はこれに接続される再生装置により、メモリカード1000に格納されている暗号化コンテンツデータの復号に必要なデータの読み出しが可能となり,コンテンツデータの再生が可能になる。そして、本実施の形態のメモリカード1000は、ホスト装置2000との間の認証鍵交換処理のために、公開鍵暗号方式の秘密鍵であるメディアデバイス鍵Kmd_iと、公開鍵暗号方式の公開鍵を含んでいるメディアデバイス鍵証明書Certmediaを格納可能に構成されている。詳しくは後述する。このメモリカード1000は、NAND型フラッシュメモリ100以下、メモリ100というと、そのメモリ100における読み出し動作/書き込み動作を制御するコントローラ200により構成される。ここでは、メモリ100の一例としてNAND型フラッシュメモリを採用する場合について説明するが、データを不揮発に記憶することができる他のメモリ装置磁気ディスクドライブ装置、抵抗変化メモリ、強誘電体メモリ、磁気抵抗メモリ、相変化メモリ等をメモリ100として採用することも可能である。コントローラ200は、メモリ100との間でデータ転送を行うためのNANDフラッシュインタフェース201、ホスト装置2000等の外部装置との間でデータ転送を行うためのホストインタフェース202、読み出し/書き込みデータ等を一時保持するバッファRAM203、データ転送制御を行うMPU204、NAND型フラッシュメモリ21内のファームウェアFWの読み出し/書き込みのシーケンス制御等に用いられるハードウェアシーケンサ205、復号器206、及び暗号化器207、及びヒューズ回路208を有する。NANDフラッシュインタフェース201は、誤り訂正回路ECCを含んでいる。NANDフラッシュインタフェース201は、NANDフラッシュメモリにデータを書き込む際に、誤り訂正回路を用いて誤り訂正符号を計算し、データ及び誤り訂正符号をNANDフラッシュメモリ21に書き込む。また、NANDフラッシュインタフェース201は、NANDフラッシュメモリからデータを読み出す際に、データ及び誤り訂正符号からシンドロームを計算し、所定の誤り訂正能力範囲内でデータの誤りを訂正する。コントローラ200にとって必要なファームウェアFWは、電源投入後自動的に実行される初期化動作パワーオンイニシャルセットアップ動作において、メモリ100から自動的に読み出されて、データレジスタバッファRAM203に転送される。この読み出し制御は、ハードウェアシーケンサ205により行われる。なお、ファームウェアは、コントローラ200内のROMに格納されていてもよい。この実施の形態でのファームウェアは、後述するように、一方向性変換器211、ID生成器212、認証鍵交換処理部213などを含む。ヒューズ回路208は、コントローラ鍵Kc、及びコントローラ20を識別するためのコントローラユニークIDIDcuを記憶している。コントローラ鍵KcとコントローラユニークIDIDcuは、後述するようにコントローラユニーク鍵Kcuを生成するのに用いられる。コントローラユニーク鍵Kcuは、前述のメディアデバイス鍵Kmd_iをメモリカード1000のシステム情報記録部103に記録する際に暗号化するのに用いられる。コントローラユニーク鍵Kcuは、一方向性変換器211において、コントローラ鍵KcとコントローラユニークIDIDcuを入力値として生成される。すなわち、一方向性変換器211は、コントローラユニーク鍵を生成するためのコントローラユニーク鍵生成部の一態様である。また、ID生成器212コントローラ識別情報生成部は、コントローラ鍵KcとコントローラユニークIDIDcuを入力値として、外部に送信される公開コントロールユニークIDIDcntrを生成する。認証鍵交換処理部213は、メディアデバイス鍵Kmd_i、及びメディアデバイス鍵証明書Certmediaに基づいてホスト装置2000との間で認証鍵交換処理を実行する。メモリ100は、図2に示すように、複数の電気的書き換え可能な複数の不揮発性メモリセル図の例では32個のメモリセルM0-M31が直列接続されたNANDセルユニットNANDストリングNUを配列して構成される。NANDセルユニットNUの一端は、選択ゲートトランジスタS1を介してビット線BLo,BLeに、他端は選択ゲートトランジスタS2を介して共通ソース線CELSRCに接続される。メモリセルM0-M31の制御ゲートはそれぞれワード線WL0-WL31に接続され、選択ゲートトランジスタS1,S2のゲートは選択ゲート線SGD,SGSに接続される。ワード線方向に配列されるNANDセルユニットの集合が、データ消去の最小単位となるブロックを構成し、図示のようにビット線の方向に複数のブロックBLK0-BLKn-1が配置される。複数のブロックBLKのうち、一部は、ユーザが特別の認証処理無しに自由にアクセス可能な通常記録部101として設定されており、他の一部は一定の認証鍵交換処理の後にアクセスが可能になる秘密記録部102として設定されており、更に別の一部は予め決められた情報をメモリカード製造時に記録しておくシステム情報記録部103として設定されている。通常記録部101、秘密記録部102、システム情報記録部103は、それぞれ論理アドレスを割り当てられている。秘密記録部102の論理アドレスの指定は、後述する認証鍵交換処理が完了した場合にのみ許容される。なお、通常記録部101には、1つのメモリセルに2ビット以上のデータを格納することができる。一方、秘密記録部102及びシステム情報記録部103は、そのデータ信頼性を確保する観点から、1つのメモリセルに1ビットのデータのみを格納可能とすることができる。また、通常記録部11においては論理アドレスと物理アドレスとの対応関係がデータ更新に伴い動的に変更されるが、秘密記録部12及びシステム情報記録部103については、そのデータ信頼性を確保する観点から、論理アドレスと物理アドレスとの対応関係を静的に固定するよう制御してもよい。ビット線BLe,BLoの一端側に、セルデータの読み出し及び書き込みに供させるセンスアンプ回路3が配置され、ワード線の一端側にワード線及び選択ゲート線の選択駆動を行うロウデコーダ2が配置される。図では、隣接する偶数番ビット線BLeと奇数番ビット線BLoがビット線選択回路により選択的にセンスアンプ回路3の各センスアンプSAに接続される場合を示している。次に、図3を参照して、メモリカード1000の製造工程、及び、図1のメディアデバイス鍵Kmd_i、及びメディアデバイス鍵証明書Certmediaを書き込む方法を説明する。メモリカード1000に書き込むメディアデバイス鍵Kmdi及びメディアデバイス鍵証明書Certmediaは鍵発行/管理センタ3000からメモリカード製造業者Cに提供され、コントローラ200を介してメモリカード1000を構成しているメモリ100のシステム情報記録部103に書き込まれる。なお、図1では省略しているが、メモリカード1000は、所定の通信機能を有する機器パソコン、携帯電話端末、公衆端末などに接続される。このような通信機能を有する機器を介して、鍵発行/管理センタ3000から発行されたデータがメモリカード1000に書き込まれる。前述したように、メディアデバイス鍵Kmd_iは公開鍵暗号方式の秘密鍵であり、一方、メディアデバイス鍵証明書Certmediaは秘密鍵としてのメディアデバイス鍵Kmd_iに対応した公開鍵を含むデータである。メディアデバイス鍵証明書Certmediaには、証明書固有の識別情報であるメディアデバイス鍵証明書IDIDmcertも埋め込まれている。メモリカード1000の製造においては、コントローラ200はコントローラ製造業者Aから、メモリ100はメモリ製造業者Bからメモリカード製造業者Cに提供される。なお、製造業者A,B、Cのいずれかまたは全てが同一企業である場合もある。メモリカード1000が動作可能な状態とされるために、メモリカード製造業者Cは、メモリ100に必要な情報を書き込む。コントローラ製造業者Aはコントローラ200の製造時において、コントローラ200の内部に、秘匿情報としてコントローラ鍵Kc及びコントローラユニークIDIDcuを書き込む。コントローラ鍵Kcは、製造工程上の理由等から、複数のコントローラ200で共通の鍵とされることがある。一方、コントローラユニークIDは、コントローラ200毎に異なっており、あるコントローラ200内で生成されるコントローラユニーク鍵と、別のコントローラ200内で生成されるコントローラユニーク鍵とは必ず異なる。コントローラ製造業者Aは、鍵発行/管理センタ3000に、コントローラ200に付与したコントロール鍵Kcのデータを開示する。なお、コントローラ鍵Kcは、PGP暗号などを用いて、コントローラ製造業者Aから鍵発行/管理センタ3000に送信することができる。鍵発行/管理センタ3000は、メディアデバイス鍵Kmd_iやメディアデバイス鍵証明書Certmediaを生成する鍵生成部3002と、生成したメディアデバイス鍵Kmd_i及びメディアデバイス鍵証明書Certmediaを管理するデバイス鍵データベース3001と、コントローラ製造業者Aから受け取ったコントローラ鍵Kcを用いてメディアデバイス鍵Kmd_iを暗号化する暗号化部3003を備えている。コントロール鍵Kcは、鍵発行/管理センタ3000において、メディアデバイス鍵Kmd_iを暗号化するのに用いられる。メディアデバイス鍵Kmd_iは、鍵生成器3002で生成された後、デバイス鍵データベース3001に格納される。暗号化器3003は、デバイス鍵データベース3001から対応するメディアデバイス鍵Kmd_iを供給され、これをコントローラ鍵Kcで暗号化して暗号化メディアデバイス鍵EncKc、Kmd_iを生成する。コントローラ鍵Kcは、コントローラ製造業者Aと鍵発行/管理センタ3000しか知りえない情報である。しかし、何らかの事故や事情によってコントローラ鍵Kcの情報が外部に漏れた時の被害を軽減するためには、例えば生産ロット毎など、一定量のコントローラ単位で変更することが望ましい。なお、鍵生成器3002やデバイス鍵データベース3001では、メモリカード1000用のメディアデバイス鍵Kmd_iやメディアデバイス鍵証明書Certmediaだけでなく、後述するホスト装置2000用のホストデバイス鍵Khd_iやホストデバイス証明書Certhostも同様に生成管理する。メモリカード製造業者Cは、コントローラ製造業者Aからコントローラ200の供給を受けると共に、当該コントローラ200向けに暗号化されたメディアデバイス鍵暗号化メディアデバイス鍵EncKc、Kmd_i、及びそれに対応するメディアデバイス鍵証明書Certmediaを鍵発行/鍵管理センタ3000から受け取る。所望の暗号化メディアデバイス鍵EncKc、Kmd_iを受け取るためには、例えばコントローラ200の型番や製造ロット番号などを提示することで正しいコントローラ鍵Kcで暗号化されたメディアデバイス鍵を受け取ることが可能である。暗号化メディアデバイス鍵EncKc、Kmd_iは、コントローラ200のバッファRAM203に一旦書き込まれる。すると、コントローラ200は当該暗号化メディアデバイス鍵EncKc、Kmd_iを復号器206において自らが有するコントローラ鍵Kcを用いて復号する。これによりコントローラ200においてメディアデバイス鍵Kmd_iが得られる。一方、一方向性変換器211は、コントローラ200に保持されているコントローラ鍵KcとコントローラユニークIDIDcuを入力値として一方向性関数を演算し、コントローラユニーク鍵Kcuを生成する。この新たに生成されたコントローラユニーク鍵Kcuを用いてメディアデバイス鍵Kmd_iを再び暗号化器207において暗号化し、暗号化メディアデバイス鍵EncKcu、Kmd_iを生成する。この暗号化メディアデバイス鍵EncKcu、Kmd_iはメモリ製造業者Bから供給されたメモリ100のシステム情報記録部103に格納される。この時書き込んだ暗号化メディアデバイス鍵EncKcu、Kmd_iに対応するメディアデバイス鍵証明書Certmediaも同様にシステム情報記録部103に格納される。コントローラユニーク鍵Kcuは、コントローラ200内に秘匿されているコントローラ鍵Kc及びコントローラユニークIDIDcuを用いて生成される。このため、暗号化メディアデバイス鍵EncKcu、Kmd_iの復号に必要な情報が外部に漏れる危険は少なく、一旦メモリ100に書き込まれた暗号化メディアデバイス鍵EncKcu、Kmd_iを別個のコントローラ200で利用可能な状態とするため、不正に再暗号化元のコントローラユニーク鍵Kcu1で復号後に、別のコントローラユニーク鍵Kcu2で暗号化することは非常に困難となっている。この第1の実施の形態では、コントローラ鍵KcとコントローラユニークIDIDcuからコントローラユニーク鍵Kcuを生成する際に一方向性関数を用いているが、2つの入力データから1つの出力データを生成することのできる関数であればよく、特に一方向性関数に限定されるものではない。次に、図4を参照して、第1の実施の形態の情報記録システムの全体構成及び動作を説明する。上記のようにして暗号化メディアデバイス鍵EncKcu、Kmd_i及びメディアデバイス鍵証明書Certmediaを与えられたメモリカード1000は、図4に示すように、ホスト装置2000に接続されることにより、コンテンツデータCをホスト装置2000から書き込まれたり、或いは取り込まれたコンテンツデータCをホスト装置2000に向けて出力したりすることができる。このメモリカード1000と、ホスト装置2000とにより、1つの情報記録システムが構成される。ここで、ホスト装置2000の構造について説明する。ホスト装置2000は、保持部401、認証鍵交換処理部402、ID結合部403、一方向性変換器404、乱数生成器405、暗復号器406、暗復号器407を備えている。保持部401は、前述したホストデバイス鍵Khd_j、及びホストデバイス証明書Certhostを格納している。ホストデバイス鍵Khd_jは、公開鍵暗号方式の秘密鍵であり、ホストデバイス証明書Certhostは、ホストデバイス鍵Khd_jと対をなす公開鍵を含むデータである。認証鍵交換処理部402は、インタフェース部500、202及びセキュアチャネルを介して、メモリカード1000の認証鍵交換処理部213との間で認証鍵交換処理を実行してメディアデバイス鍵証明書IDIDm_certを出力する機能を有する。また、ID結合部403は、公開コントローラユニークIDIDcntrとメディアデバイス鍵証明書IDIDm_certとに基づきメモリカードユニークIDIDmcを生成するよう構成されている。このID結合部403は、コントローラユニークIDIDcntr及びメディアデバイス鍵証明書IDIDm_certに基づいてメモリカードユニークIDIDmcを生成する識別情報生成部として機能する。このID結合部403は、単に2つのIDを結合することにより別の新規のIDを生成するものである。このような単なる結合に代えて、例えば一方向性関数や暗号アルゴリズムを用いて新しいIDを生成してもよい。一方向性変換器404は、このメモリカードユニークIDIDmc、乱数生成器405によって生成されたメディア鍵Kmを入力とした一方向性関数により、メディアユニーク鍵Kmuを生成する。乱数生成器405は、乱数を発生させて、取得された乱数に基づいてメディア鍵Km及びタイトル鍵Ktを生成する。暗復号器406は、上述のメディアユニーク鍵Kmuによりタイトル鍵Ktを暗号化する。また、暗復号器407は、タイトル鍵KtによりコンテンツデータCを暗号化する暗号化コンテンツデータEncKt、Cを取得する。なお、メディアユニーク鍵Kmuは、ホスト装置2000によって生成され、本実施の形態では、タイトル鍵Ktの暗号化のための暗号化鍵として使用されている。従来のコンテンツ保護技術と同様に、秘密記録部102に記録するメディアユニーク鍵KmuをコンテンツデータCの暗号化に直接利用するなどの形態も可能である。また、メディアユニーク鍵Kmuでユーザに固有のユーザ鍵Kuを暗号化し、ユーザ鍵Kuで更にコンテンツ鍵Kctを暗号化し、更にコンテンツ鍵Kctでコンテンツデータを暗号化する二重暗号化方式にも適用可能である。また、メディア鍵Kmやタイトル鍵Ktはホスト装置内で生成されるだけでなく、予めメモリカードに書き込まれている場合や外部装置図示せずから与えられる場合もある。次に、このようなホスト装置2000から、メモリカード1000に対してコンテンツデータCの書き込む場合の動作を、図4を参照して説明する。最初に、メモリカード1000は、一方向性関数器211を用いて、コントローラ鍵KcとコントローラユニークIDIDcuからコントローラユニーク鍵Kcuを生成する。そして、このコントローラユニーク鍵Kcuを用いて、暗号化メディアデバイス鍵EncKcu、Kmd_iを復号してメディアデバイス鍵Kmd_iを得る。このメディアデバイス鍵Kmd_iとメディアデバイス鍵証明書Certmediaは、認証鍵交換処理部213に転送される。一方、ホスト装置2000は、ホストデバイス鍵Khd_jとホストデバイス鍵証明書Certhostを認証鍵交換処理部402に転送する。これにより、認証鍵交換処理部213及び402において認証鍵交換処理が実行される。処理が完了すると、メモリカード1000とホスト装置2000との間にセキュアチャネルが確立される。なお、セキュアチャネルが確立されると、ID生成器212は、自身が生成した公開コントローラユニークIDIDcntrをインタフェース部を介してセキュアチャネルを通して出力可能になる。セキュアチャネルが確立されると、ID生成器403は、公開コントローラユニークIDIDcntrとメディアデバイス鍵証明書IDIDm_certとを結合させてメモリカードユニークIDIDmcを生成する。ホスト装置2000は、乱数生成器405によりメディア鍵Kmを生成し、生成したメディア鍵Kmをセキュアチャネル及びインタフェース部500、202経由でメモリカード1000の秘密記録部102に記録する。ホスト装置2000は、一方向性変換器404を用いてメディア鍵KmとメモリカードユニークIDIDmcからメディアユニーク鍵Kmuを生成する。ホスト装置2000は、乱数生成器405を用いてタイトル鍵Ktを生成し、更に暗復号器406を用いてタイトル鍵Ktをメディアユニーク鍵Kmuで暗号化し、暗号化タイトル鍵Kte=EncKmu,Ktをメモリカード100の通常記録部101に記録する。また、ホスト装置2000は、タイトル鍵Ktを用いてコンテンツデータCを暗号化し、暗号化コンテンツデータCe=EncKt、Cをメモリカード1000の通常記録部101に記録する。以上により、コンテンツデータCの記録動作が完了する。次に、メモリカード1000からホスト装置2000に対し、コンテンツデータCを読み出す場合の動作を、図5を参照して説明する。認証鍵交換処理部213、402による認証鍵交換処理、及びID結合部403における動作は、書き込み動作の場合図4と略同一である。認証鍵交換処理が完了し、セキュアチャネルが確立されると、秘密記録部102及びシステム情報記録部103へのアクセスが可能になりすなわち、秘密記録部102及びシステム情報記録部103の論理アドレスの指定が可能になる、メモリカード1000の秘密記録部102に記録されているメディア鍵Kmが、セキュアチャネルを介してホスト装置2000の一方向性変換器404に提供される。一方向性変換器404は、このメディア鍵Kmと、前述のメモリカードユニークIDIDmcとを用いてメディアユニーク鍵Kmuを生成する。暗復号器407は、このメディアユニーク鍵Kmuを用いて、メモリカード100に格納されている暗号化タイトル鍵EncKmu、Ktを復号してタイトル鍵Ktを得る。そして、この得られたタイトル鍵Ktを用いて、メモリカード100に格納されている暗号化コンテンツデータEncKt、Cを復号してコンテンツデータCを得る。以上説明したように、この実施の形態では、公開鍵暗号方式に従ったメディアデバイス鍵Kmd_i及びメディアデバイス鍵証明書Certmediaが認証鍵交換処理に用いられる。しかし、コントローラ200のコントローラ鍵Kc及びコントローラユニーク鍵Kcuに基づいてコントローラユニークIDIDcntrが生成される、このコントローラユニークIDIDcntrは、セキュアチャネルを介してホスト装置2000に供給される。セキュアチャネルを介しての送信であるため、コントローラユニークIDIDcntrが外部に漏れることはなく、改竄も防止されている。また、このコントローラユニークIDIDcntrとメディアデバイス鍵証明書IDIDm_certとに基づいて、ID結合部403により、メモリカードユニークIDIDmcが生成される。このメモリカードユニークIDIDmcに基づいて、メモリカード1000内のメモリ100のメディアユニーク鍵Kmuが生成される。このように、本実施の形態によれば、公開鍵暗号方式による認証鍵交換処理を行った場合においても、公開鍵秘密鍵のペアとコントローラ200に固有のコントローラユニークIDIDcntrを互いに関連付けることができ、これによりクローンカードの蔓延を防止することができる。[第2の実施形態]図6は、第2の実施の形態による情報記録システムの構成を示すブロック図である。メモリカード1000のハードウエア構成は図1、図2に示したものと同様で良いので、以下では説明は省略する。本実施の形態では、図6に示すように、認証鍵交換処理部213の動作が異なっている。すなわち、ここでの認証鍵交換処理部213は、ID生成器212で生成されたコントローラユニークIDIDcntrを、直接ホスト装置2000に送信するのではなく、コントローラ200内の認証鍵交換処理部213に送信する。そして、このコントローラユニークIDIDcntrは、認証鍵交換処理のパラメータの1つとして用いられる。認証鍵交換処理が完了すると、コントローラユニークIDIDcntrは、メディアデバイス鍵証明書IDIDm_certと共にID結合部403に送信される。以後の動作は、第1の実施の形態と略同様である。図7は、楕円曲線暗号をベースとした標準的な認証鍵交換を用いた場合の動作手順を説明している。ホスト装置は乱数RNhを生成ステップS1し,ホストデバイス鍵証明書Certhostと共にメモリカード1000に送るステップS2。メモリカード1000は受信したホストデバイス鍵証明書Certhostに付けられているデジタル署名を検証すると共に乱数RNmを生成するステップS3。続いて、メモリカード1000は乱数RNmとメディアデバイス鍵証明書Certmediaをホスト装置に送るステップS4。これを受けて、ホスト装置2000は受信したメディアデバイス鍵証明書Certmediaに付けられているデジタル署名を検証する。なお、メモリカード1000はステップS4の処理を行うと共に,楕円曲線暗号におけるDiffie-Hellman鍵交換処理に必要な乱数Mkを生成し、楕円曲線のベースポイントGを用いてチャレンジ用の値Mv=MkGを計算する。そして、ID生成器212でIDcntrを生成し、メディアデバイス鍵Kmd_iを用いてチャレンジ用の値Mv、ステップS2で受け取った乱数RNh及びコントローラユニークIDIDcntrに対するデジタル署名を生成するステップS6。メモリカード1000はステップS6で生成したチャレンジ用の値Mv、コントローラユニークIDIDcntrおよびデジタル署名をホスト装置2000に送るステップS7。ホスト装置2000はステップS7で受信した署名を検証し、楕円曲線暗号におけるDiffie-Hellman鍵交換処理に必要な乱数Hkを生成し、楕円曲線のベースポイントGを用いてチャレンジ用の値Hv=HkGを計算する。そして、ホストデバイス鍵Khdjを用いてチャレンジ用の値Hv及びステップS4で受け取った乱数RNmに対するデジタル署名を生成すると共に、本認証鍵交換処理によって共有される共有鍵Ks=HkMvを計算するステップS8。ホスト装置2000はステップS8で生成したチャレンジ用の値Hvおよびデジタル署名をメモリカード1000に送るステップS9。これを受けてメモリカード1000はステップS9で受け取ったデジタル署名を検証し、共有鍵Ks=MkHvを計算する。上記処理のデジタル署名検証処理において署名が正しく検証できなかった場合には,何れのステップにおいてもそれ以降の処理を中止する。以上の認証鍵交換処理を行うことにより、ホスト装置とメモリカードは共有鍵を秘密裏に共有することができる。認証鍵交換処理においてはホスト装置とメモリカードが互いに生成したチャレンジを用いて共有鍵が計算されるため、共有鍵の値は認証鍵交換処理のたびに異なる。以上、本発明のいくつかの実施の形態を説明したが、これらの実施の形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施の形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。例えば、上記実施の形態においては、ID生成器212において、コントローラ鍵KcとコントローラユニークIDIDcuの対に基づいてコントローラユニークIDIDcntrを生成している。しかし、これに代えて、コントローラユニークIDIDcuのみに基づいてコントローラユニークIDIDcntrを生成してもよい。コントローラ200が秘匿しているコントローラユニークIDIDcuを秘匿した状態のまま、外部に開示可能な別の固有情報を生成することができれば、用いられるパラメータは不問である。ただし、生成に用いる関数は、一方向性関数など、不可逆的であり、得られたコントロールユニークIDIDcntrから逆計算を行って元のコントロールユニークIDIDcuが求められないようなものを選択する必要がある。"