(57)【特許請求の範囲】
【請求項１】
鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢを記憶した第１更新可能記憶手段と、前記鍵管理センタ装置が生成したデバイス鍵Ｋｄ及びセンタ公開鍵Kk-pubを記憶した第１更新不可記憶手段とを少なくとも備えたホスト計算機と、
前記鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍを記憶した第２更新可能記憶手段と、前記鍵管理センタ装置が生成したセンタ公開鍵Kk-pub、記録媒体証明書Kc-CERT及び記録媒体秘密鍵Kc-priを記憶した第２更新不可記憶手段とを備えた記録媒体とに関し、前記ホスト計算機と前記記録媒体とが実行する認証方法であって、
前記ホスト計算機が、前記記録媒体から第２更新可能記憶手段内のメディア鍵ブロックＭＫＢと第２更新不可記憶手段内の記録媒体証明書Kc-CERTを読み出す工程と、
前記ホスト計算機のＭＫＢ検証・更新手段が、前記記録媒体から読み出したメディア鍵ブロックＭＫＢのバージョン番号と、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢのバージョン番号とを互いに比較する工程と、
この比較の結果、前記記録媒体からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記ＭＫＢ検証・更新手段が、前記第１更新不可記憶手段内のセンタ公開鍵Kk-pubに基づいて、前記記録媒体からのメディア鍵ブロックＭＫＢの鍵生成センタ署名を検証する工程と、
この検証が成功すると、前記ＭＫＢ検証・更新手段が、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢを記録媒体からのメディア鍵ブロックＭＫＢに書き換える工程と、
この書き換えの後、前記ホスト計算機の証明書検証手段が、前記第１更新不可記憶手段内のセンタ公開鍵Kk-pubに基づいて記録媒体証明書Kc-CERTの鍵生成センタ署名を検証する工程と、
この検証が成功すると、前記ホスト計算機の記録媒体検証手段が、前記記録媒体証明書Kc-CERTからメディアＩＤを読み出して、このメディアＩＤが第１更新可能記憶手段内のメディア鍵ブロックＭＫＢにある記録媒体無効化リストにあるか否かを判定する工程と、
前記判定の結果、前記メディアＩＤが記録媒体無効化リスト内にない場合、前記ホスト計算機のＭＫＢ処理手段が、前記第１更新不可記憶手段内のデバイス鍵Ｋｄに基づいて、前記記録媒体からのメディア鍵ブロックＭＫＢをＭＫＢ処理してメディア鍵Ｋｍを算出する工程と、
前記ホスト計算機の第１Ｋｍｕ作成手段が、前記記録媒体証明書Kc-CERT内のメディアＩＤとメディア鍵Ｋｍとに基づいてメディア固有鍵Ｋｍｕを作成する工程と、
前記ホスト計算機の第１ＡＫＥ実行手段が、このメディア固有鍵Ｋｍｕに基づいて、前記記録媒体の第２ＡＫＥ実行手段との間で認証及び鍵交換ＡＫＥ処理を実行する工程と
を備えたことを特徴とする認証方法。
【請求項２】
請求項１に記載の認証方法において、
前記記録媒体は、データ検証処理手段、公開鍵復号処理手段及び第２Ｋｍｕ作成手段を更に備えており、
前記比較の結果、前記ホスト計算機内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記記録媒体検証手段が、前記記録媒体証明書Kc-CERTからメディアＩＤを読み出して、このメディアＩＤが前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢにある記録媒体無効化リストにあるか否かを判定する工程と、
前記判定の結果、前記メディアＩＤが記録媒体無効化リスト内にない場合、前記ＭＫＢ処理手段が、前記第１更新不可記憶手段内のデバイス鍵Ｋｄに基づいて、前記記録媒体からのメディア鍵ブロックＭＫＢをＭＫＢ処理してメディア鍵Ｋｍを算出する工程と、
前記公開鍵暗号処理手段が、この算出されたメディア鍵Ｋｍを記録媒体証明書Kc-CERT内の記録媒体公開鍵Kc-pubで暗号化し、暗号化メディア鍵Enc（Kc-pub，Ｋｍ）を作成する工程と、
前記ホスト計算機が、この暗号化メディア鍵Enc（Kc-pub，Ｋｍ）と、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢとを前記記録媒体に送信する工程と、
前記記録媒体が暗号化メディア鍵Enc（Kc-pub，Ｋｍ）及びメディア鍵ブロックＭＫＢを受信すると、前記データ検証処理手段が、前記ホスト計算機からのメディア鍵ブロックＭＫＢのバージョン番号と、前記第２更新可能記憶手段内のメディア鍵ブロックＭＫＢのバージョン番号とを互いに比較する工程と、
この比較の結果、前記ホスト計算機からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記データ検証処理手段が、前記第２更新不可記憶手段内のセンタ公開鍵Kk-pubに基づいて、前記ホスト計算機からのメディア鍵ブロックＭＫＢ内の鍵生成センタ署名を検証する工程と、
この検証が成功すると、前記公開鍵復号処理手段が、前記ホスト計算機からの暗号化メディア鍵Enc（Kc-pub，Ｋｍ）を、前記第２更新不可記憶手段内の記録媒体秘密鍵Kc-priで復号する工程と、
前記公開鍵復号処理手段が、前記復号したメディア鍵Ｋｍを前記ホスト計算機からのメディア鍵ブロックＭＫＢ内の検証データで検証する工程と、
この検証が成功すると、前記データ検証処理手段が、前記第２更新可能記憶手段内のメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍを、前記ホスト計算機から受けたメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍに書き換える工程と、
前記第２Ｋｍｕ作成手段が、この書換え後のメディア鍵Ｋｍと、前記第２更新不可記憶手段内の記録媒体証明書Kc-CERT内のメディアＩＤとに基づいてメディア固有鍵Ｋｍｕを作成する工程と、
前記ホスト計算機が、前記暗号化メディア鍵Enc（Kc-pub，Ｋｍ）及びメディア鍵ブロックＭＫＢの送信後、前記記録媒体からメディア鍵ブロックＭＫＢと記録媒体証明書Kc-CERTを読み出す工程に戻る工程と、
を備えたことを特徴とする認証方法。
【請求項３】
鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢ、メディア鍵Ｋｍ、センタ公開鍵Kk-pub、記録媒体証明書Kc-CERT及び記録媒体秘密鍵Kc-priを記憶した記録媒体と通信可能なホスト計算機であって、
前記鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢを記憶した第１更新可能記憶手段と、
前記鍵管理センタ装置が生成したデバイス鍵Ｋｄ及びセンタ公開鍵Kk-pubを記憶した第１更新不可記憶手段と、
前記記録媒体からメディア鍵ブロックＭＫＢ及び記録媒体証明書Kc-CERTを読み出す手段と、
前記記録媒体から読み出したメディア鍵ブロックＭＫＢのバージョン番号と、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢのバージョン番号とを互いに比較する手段と、
この比較の結果、前記記録媒体からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記第１更新不可記憶手段内のセンタ公開鍵Kk-pubに基づいて、前記記録媒体からのメディア鍵ブロックＭＫＢの鍵生成センタ署名を検証する手段と、
この検証が成功すると、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢを記録媒体からのメディア鍵ブロックＭＫＢに書き換える手段と、
この書き換えの後、前記第１更新不可記憶手段内のセンタ公開鍵Kk-pubに基づいて記録媒体証明書Kc-CERTの鍵生成センタ署名を検証する手段と、
この検証が成功すると、前記記録媒体証明書Kc-CERTからメディアＩＤを読み出して、このメディアＩＤが第１更新可能記憶手段内のメディア鍵ブロックＭＫＢにある記録媒体無効化リストにあるか否かを判定する手段と、
前記判定の結果、前記メディアＩＤが記録媒体無効化リスト内にない場合、前記第１更新不可記憶手段内のデバイス鍵Ｋｄに基づいて、前記記録媒体からのメディア鍵ブロックＭＫＢをＭＫＢ処理し、メディア鍵Ｋｍを得る手段と、
前記記録媒体証明書Kc-CERT内のメディアＩＤと前記作成したメディア鍵Ｋｍとに基づいて一方向性関数を計算することにより、メディア固有鍵Ｋｍｕを作成する手段と、
このメディア固有鍵Ｋｍｕに基づいて、前記記録媒体との間で認証及び鍵交換ＡＫＥ処理を実行する手段と
を備えたことを特徴とするホスト計算機。
【請求項４】
請求項３に記載のホスト計算機において、
前記比較の結果、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記記録媒体証明書Kc-CERTからメディアＩＤを読み出して、このメディアＩＤが第１更新可能記憶手段内のメディア鍵ブロックＭＫＢにある記録媒体無効化リストにあるか否かを判定する手段と、
前記判定の結果、前記メディアＩＤが記録媒体無効化リスト内にない場合、前記第１更新不可記憶手段内のデバイス鍵Ｋｄに基づいて、前記記録媒体からのメディア鍵ブロックＭＫＢをＭＫＢ処理し、メディア鍵Ｋｍを得る手段と、
このメディア鍵Ｋｍを記録媒体証明書Kc-CERT内の記録媒体公開鍵Kc-pubで暗号化し、暗号化メディア鍵Enc（Kc-pub，Ｋｍ）を作成する手段と、
この暗号化メディア鍵Enc（Kc-pub，Ｋｍ）と、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢとを前記記録媒体に送信する手段と、
前記暗号化メディア鍵Enc（Kc-pub，Ｋｍ）及びメディア鍵ブロックＭＫＢの送信後、前記記録媒体からメディア鍵ブロックＭＫＢと記録媒体証明書Kc-CERTを読み出す手段を再実行させる手段と、
を備えたことを特徴とするホスト計算機。
【請求項５】
鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢ、デバイス鍵Ｋｄ及びセンタ公開鍵Kk-pubを記憶したホスト計算機と通信可能な記録媒体であって、
前記鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍを記憶した第２更新可能記憶手段と、
前記鍵管理センタ装置が生成したセンタ公開鍵Kk-pub、記録媒体証明書Kc-CERT及び記録媒体秘密鍵Kc-priを記憶した第２更新不可記憶手段と、
前記ホスト計算機から前記第２更新可能記憶手段内のメディア鍵ブロックＭＫＢと第２更新不可記憶手段内の記録媒体証明書Kc-CERTが読み出された後、前記記録媒体から読み出されたメディア鍵ブロックＭＫＢのバージョン番号が前記ホスト計算機内のメディア鍵ブロックＭＫＢのバージョン番号よりも新しい場合、前記ホスト計算機が前記センタ公開鍵Kk-pubに基づいて、前記記録媒体からのメディア鍵ブロックＭＫＢの鍵生成センタ署名を検証し、この検証が成功すると、前記ホスト計算機内のメディア鍵ブロックＭＫＢを記録媒体からのメディア鍵ブロックＭＫＢに書き換えた後、前記ホスト計算機がセンタ公開鍵Kk-pubに基づいて記録媒体証明書Kc-CERTの鍵生成センタ署名を検証し、この検証が成功すると、前記記録媒体証明書Kc-CERT内のメディアＩＤが更新後のメディア鍵ブロックＭＫＢ内の記録媒体無効化リストにない場合、前記ホスト計算機内のデバイス鍵Ｋｄに基づいて、前記読み出されたメディア鍵ブロックＭＫＢがＭＫＢ処理されて得られたメディア鍵Ｋｍと、前記読み出された記録媒体証明書Kc-CERT内のメディアＩＤとに基づいて一方向性関数が前記ホスト計算機により計算されてなるメディア固有鍵Ｋｍｕに対し、前記第２更新可能記憶手段内のメディア鍵Ｋｍと前記第２更新不可記憶手段に記憶された記録媒体証明書Kc-CERT内のメディアＩＤとに基づいて一方向性関数が計算されてなるメディア固有鍵Ｋｍｕに基づき、前記ホスト計算機との間で認証及び鍵交換ＡＫＥ処理を実行する手段と
を備えたことを特徴とする記録媒体。
【請求項６】
請求項５に記載の記録媒体において、
前記記録媒体から読み出されたメディア鍵ブロックＭＫＢのバージョン番号よりも前記ホスト計算機内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記ホスト計算機が前記記録媒体証明書Kc-CERTから読み出したメディアＩＤが前記ホスト計算機内のメディア鍵ブロックＭＫＢ内の記録媒体無効化リストにない場合、前記ホスト計算機内のデバイス鍵Ｋｄに基づいて、前記記録媒体からのメディア鍵ブロックＭＫＢをＭＫＢ処理して得られたメディア鍵Ｋｍを記録媒体証明書Kc-CERT内の記録媒体公開鍵Kc-pubで暗号化して作成された暗号化メディア鍵Enc（Kc-pub，Ｋｍ）と、前記ホスト計算機内のメディア鍵ブロックＭＫＢとを前記ホスト計算機から受信する手段と、
前記ホスト計算機からのメディア鍵ブロックＭＫＢのバージョン番号と、前記第２更新可能記憶手段内のメディア鍵ブロックのバージョン番号とを互いに比較する手段と、
この比較の結果、前記ホスト計算機からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記第２更新不可記憶手段内のセンタ公開鍵Kk-pubに基づいて、前記ホスト計算機からのメディア鍵ブロックＭＫＢ内の鍵生成センタ署名を検証する手段と、
この検証が成功すると、前記ホスト計算機からの暗号化メディア鍵を、前記第２更新不可記憶手段内の記録媒体秘密鍵Kc-priで復号する手段と、
前記復号したメディア鍵Ｋｍをホスト計算機からのメディア鍵ブロックＭＫＢ内の検証データで検証する手段と、
この検証が成功すると、前記第２更新可能記憶手段内のメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍを、前記ホスト計算機から受けたメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍに書き換える手段と、
この書換え後のメディア鍵Ｋｍと、前記第２更新不可記憶手段内の記録媒体証明書Kc-CERT内のメディアＩＤとに基づいてメディア固有鍵Ｋｍｕを作成する手段と、
このメディア固有鍵Ｋｍｕに基づき、前記ホスト計算機との間で認証及び鍵交換ＡＫＥ処理を実行する手段と、
を備えたことを特徴とする記録媒体。
【請求項７】
鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢを記憶した第１更新可能記憶手段と、前記鍵管理センタ装置が生成したデバイス鍵Ｋｄ_hを記憶した第１更新不可記憶手段とを少なくとも備えたホスト計算機と、
前記鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍを記憶した第２更新可能記憶手段と、前記鍵管理センタ装置が生成したデバイス鍵Ｋｄ_c及びメディアＩＤを記憶した第２更新不可記憶手段とを備えた記録媒体とに関し、前記ホスト計算機と前記記録媒体とが実行する認証方法であって、
前記ホスト計算機が、前記記録媒体から第２更新可能記憶手段内のメディア鍵ブロックＭＫＢと第２更新不可記憶手段内のメディアＩＤを読み出す工程と、
前記ホスト計算機のＭＫＢ処理手段が、前記第１更新不可記憶手段内のデバイス鍵Ｋｄ_hに基づいて、前記記録媒体から読み出されたメディア鍵ブロックＭＫＢをＭＫＢ処理する工程と、
前記ホスト計算機のＭＫＢ比較手段が、前記記録媒体から読み出したメディア鍵ブロックＭＫＢのバージョン番号と、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢのバージョン番号とを互いに比較する工程と、
この比較の結果、前記記録媒体からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記ＭＫＢ比較手段が、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢを記録媒体からのメディア鍵ブロックＭＫＢに書き換える工程と、
この書き換えの後、前記ホスト計算機の第１Ｋｍｕ作成手段が、前記記録媒体から読み出されたメディアＩＤと前記ＭＫＢ処理により得られたメディア鍵Ｋｍとに基づいてメディア固有鍵Ｋｍｕを作成する工程と、
前記ホスト計算機の第１ＡＫＥ実行手段が、このメディア固有鍵Ｋｍｕに基づいて、前記記録媒体の第２ＡＫＥ実行手段との間で認証及び鍵交換ＡＫＥ処理を実行する工程と
を備えたことを特徴とする認証方法。
【請求項８】
請求項７に記載の認証方法において、
前記記録媒体は、ＭＫＢ処理手段、ＭＫＢ比較手段及び第２Ｋｍｕ作成手段を更に備えており、
前記比較の結果、前記ホスト計算機内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記ホスト計算機が、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢを前記記録媒体に送信する工程と、
前記記録媒体がこのメディア鍵ブロックＭＫＢを受信すると、前記ＭＫＢ処理手段が、前記第２更新不可記憶手段内のデバイス鍵Ｋｄ_cに基づいて、前記ホスト計算機からのメディア鍵ブロックＭＫＢをＭＫＢ処理すると共に、前記記録媒体からのメディア鍵ブロックＭＫＢを前記ＭＫＢ比較手段に送出する工程と、
前記ＭＫＢ比較手段が、前記ホスト計算機からのメディア鍵ブロックＭＫＢのバージョン番号と、前記第２更新可能記憶手段内のメディア鍵ブロックＭＫＢのバージョン番号とを互いに比較する工程と、
この比較の結果、前記ホスト計算機からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記ＭＫＢ処理手段が、前記ホスト計算機からのメディア鍵ブロックＭＫＢから得られたメディア鍵Ｋｍを前記ホスト計算機からのメディア鍵ブロックＭＫＢ内の検証データで検証する工程と、
この検証が成功すると、前記ＭＫＢ処理手段が、前記第２更新可能記憶手段内のメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍを、前記ホスト計算機から受けたメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍに書き換える工程と、
前記第２Ｋｍｕ作成手段が、この書換え後のメディア鍵Ｋｍと、前記第２更新不可記憶手段内のメディアＩＤとに基づいてメディア固有鍵Ｋｍｕを作成する工程と、
前記ホスト計算機が、前記メディア鍵ブロックＭＫＢの送信後、前記記録媒体からメディア鍵ブロックＭＫＢとメディアＩＤを読み出す工程に戻る工程と、
を備えたことを特徴とする認証方法。
【請求項９】
鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢ、メディア鍵Ｋｍ、デバイス鍵Ｋｄ_c及びメディアＩＤを記憶した記録媒体と通信可能なホスト計算機であって、
前記鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢを記憶した第１更新可能記憶手段と、
前記鍵管理センタ装置が生成したデバイス鍵Ｋｄ_hを記憶した第１更新不可記憶手段と、
前記記録媒体からメディア鍵ブロックＭＫＢ及びメディアＩＤを読み出す手段と、
前記第１更新不可記憶手段内のデバイス鍵Ｋｄ_hに基づいて、前記記録媒体から読み出されたメディア鍵ブロックＭＫＢをＭＫＢ処理する手段と、
前記記録媒体から読み出したメディア鍵ブロックＭＫＢのバージョン番号と、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢのバージョン番号とを互いに比較する手段と、
この比較の結果、前記記録媒体からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢを記録媒体からのメディア鍵ブロックＭＫＢに書き換える手段と、
この書き換えの後、前記記録媒体から読み出されたメディアＩＤと前記ＭＫＢ処理により得られたメディア鍵Ｋｍとに基づいてメディア固有鍵Ｋｍｕを作成する手段と、
このメディア固有鍵Ｋｍｕに基づいて、前記記録媒体との間で認証及び鍵交換ＡＫＥ処理を実行する手段と
を備えたことを特徴とするホスト計算機。
【請求項１０】
請求項９に記載のホスト計算機において、
前記比較の結果、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢを前記記録媒体に送信する手段と、
前記メディア鍵ブロックＭＫＢの送信後、前記記録媒体からメディア鍵ブロックＭＫＢとメディアＩＤを読み出す手段を再実行させる手段と、
を備えたことを特徴とするホスト計算機。
【請求項１１】
鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢ及びデバイス鍵Ｋｄ_hを記憶したホスト計算機と通信可能な記録媒体であって、
前記鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍを記憶した第２更新可能記憶手段と、
前記鍵管理センタ装置が生成したデバイス鍵Ｋｄ_c及びメディアＩＤを記憶した第２更新不可記憶手段と、
前記ホスト計算機から前記第２更新可能記憶手段内のメディア鍵ブロックＭＫＢと第２更新不可記憶手段内のメディアＩＤが読み出された後、前記ホスト計算機が前記デバイス鍵Ｋｄ_hに基づいて、前記記録媒体から読み出されたメディア鍵ブロックＭＫＢをＭＫＢ処理し、前記ホスト計算機が、前記記録媒体から読み出されたメディア鍵ブロックＭＫＢのバージョン番号と前記ホスト計算機内のメディア鍵ブロックＭＫＢのバージョン番号とを比較し、前記記録媒体から読み出されたメディア鍵ブロックＭＫＢのバージョン番号が前記ホスト計算機内のメディア鍵ブロックＭＫＢのバージョン番号よりも新しい場合、前記ホスト計算機が当該ホスト計算機内のメディア鍵ブロックＭＫＢを記録媒体からのメディア鍵ブロックＭＫＢに書き換えた後、前記ＭＫＢ処理により得られたメディア鍵Ｋｍと、前記記録媒体から読み出されたメディアＩＤとに基づいて作成されてなるメディア固有鍵Ｋｍｕに対し、前記第２更新可能記憶手段内のメディア鍵Ｋｍと前記第２更新不可記憶手段に記憶されたメディアＩＤとに基づいて作成されてなるメディア固有鍵Ｋｍｕに基づき、前記ホスト計算機との間で認証及び鍵交換ＡＫＥ処理を実行する手段と
を備えたことを特徴とする記録媒体。
【請求項１２】
請求項１１に記載の記録媒体において、
前記記録媒体から読み出されたメディア鍵ブロックＭＫＢのバージョン番号よりも前記ホスト計算機内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記ホスト計算機内のメディア鍵ブロックＭＫＢを前記ホスト計算機から受信する手段と、
前記ホスト計算機からのメディア鍵ブロックＭＫＢのバージョン番号と、前記第２更新可能記憶手段内のメディア鍵ブロックのバージョン番号とを互いに比較する手段と、
この比較の結果、前記ホスト計算機からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記ホスト計算機からのメディア鍵ブロックＭＫＢから得られたメディア鍵Ｋｍを前記ホスト計算機からのメディア鍵ブロックＭＫＢ内の検証データで検証する手段と、
この検証が成功すると、前記第２更新可能記憶手段内のメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍを、前記ホスト計算機から受けたメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍに書き換える手段と、
この書換え後のメディア鍵Ｋｍと、前記第２更新不可記憶手段内のメディアＩＤとに基づいてメディア固有鍵Ｋｍｕを作成する手段と、
このメディア固有鍵Ｋｍｕに基づき、前記ホスト計算機との間で認証及び鍵交換ＡＫＥ処理を実行する手段と、
を備えたことを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、認証方法、ホスト計算機及び記録媒体に係り、例えば、不正機器を排除する既存の仕組みを維持したまま、記録媒体とホスト計算機の間の相互認証処理の負荷を軽減し得る認証方法、ホスト計算機及び記録媒体に関する。
【背景技術】
【０００２】
従来から、ＲＯＭメディアやインターネットなどの通信ネットワークを介して動画、音楽、プログラムなどのコンテンツを作成者からユーザ側まで配信することが広く行われている。この種のコンテンツ配信では、第三者からの秘匿のため、コンテンツを暗号化した状態で記録媒体に配信する場合がある。そして、暗号化されたコンテンツを復号するためのメディア鍵が暗号化コンテンツを閲覧するデバイスに必要になる。そのメディア鍵は暗号化されてＭＫＢ(Media Key Block：メディア鍵ブロック)と呼ばれるデータとして提供される。（例えば、非特許文献１参照）
ここで、記録媒体は、秘密情報を知らないホスト計算機からでもアクセス可能な一般領域又はユーザ領域と、秘密情報を知っているホスト計算機からのみアクセス可能な保護領域とを備えているものとする。
【０００３】
記録媒体の保護領域とは、ホスト計算機が秘密情報に基づいてアクセス可能な記憶領域である。記録媒体の一例であるＳＤカードは保護領域を備えており、デバイス鍵(Device Key)をもつホスト計算機がホスト計算機−記録媒体（ＳＤカード）間の認証処理を経て、ＳＤカードとホスト計算機がそれぞれ同じセッション鍵（Session Key）を認証処理毎に生成する。そして、セッション鍵を用いた暗号化通信により、ホスト計算機から保護領域のデータの読み書きが可能となる。
【０００４】
また、デバイス鍵をもたないホスト計算機は、ホスト計算機−記録媒体間の認証処理に失敗するため、保護領域のデータの読み書きが不可能となる。また、セッション鍵を知らないと保護領域のデータを正しく読み書きすることができない。さらに、ホスト計算機自体は、秘密情報を外部からアクセスできないようにする耐タンパ性が要求される。なお、ホスト計算機から秘密情報が外部に漏えいした場合、漏えいした秘密情報をもつホスト計算機からのアクセスを無効にする仕組みもホスト計算機−記録媒体間の認証処理では備えている（例えば、特許文献１参照。）。
【０００５】
保護領域を備えた記録媒体は、認証無しで読み書き可能な一般領域も備えている。例えば動画コンテンツを暗号化鍵により暗号化し、得られた暗号化コンテンツをその記録媒体の一般領域に記録し、当該暗号化鍵を保護領域に記憶しておく。これにより、特定の再生プログラムを実行する閲覧機器は、記録媒体の保護領域から暗号化鍵を読み出し、一般領域内の暗号化コンテンツを当該暗号化鍵により復号し、得られた動画コンテンツを再生可能となっている。
【０００６】
また、記録媒体は、音楽、映像、プログラムなどのコンテンツと呼ばれるデジタルデータを記録する媒体として利用される場合がある。この場合、コンテンツ提供者が提供するコンテンツが記録媒体に記録されるまでの間に改ざんされる可能性がある。改ざんを防ぐ方式として、コンテンツに電子署名処理を施して電子署名を付加し、記録媒体内で電子署名を検証することにより、途中での改ざんを検出可能な方法がある。
【０００７】
ここで、改ざん検出用の公開鍵と呼ばれる情報が必要となる。この公開鍵は公開されても構わないが、書き換えられないように記録媒体に保存される必要がある。公開鍵アルゴリズムは、例えば非特許文献２に記載されている。上述したホスト計算機−記録媒体間の認証処理は、コンテンツ記録において重要な役割を果たしている。
【０００８】
しかしながら、例えば、記録媒体の保護領域内の秘密情報をホスト計算機がアクセス可能なデータとして公開するといった不正な処理が実行されると、コンテンツ記録のシステム系に問題が生じてしまう。そのため、問題のある記録媒体及びホスト計算機を不正機器として排除する仕組みがある（例えば、非特許文献４参照。）。非特許文献４に記載方式では、記録媒体−ホスト計算機間での相互認証を行う。
【０００９】
しかし、この種の相互認証としては、（ｉ）記録媒体及びホスト計算機の両者が共通鍵を有する方式や、（ｉｉ）記録媒体及びホスト計算機の両者が公開鍵アルゴリズムに基づく暗号化処理と復号処理の両方を実行する方式がある。特に、（ｉｉ）の方式は、回路規模や演算処理等の負荷が高い。
【００１０】
また、コンテンツ改ざん検出機能を備えた記録媒体は、内部に秘密情報や書き換え不可の情報を持つ必要がある。これらを満たす記録媒体は、かかる情報を外部からアクセスできないような耐タンパ性を有する必要がある。但し、耐タンパ性の実装には高度な技術を要するため、場合によっては不十分な耐タンパ性の記録媒体が市場に出てくる可能性が否定できない。このような不十分な耐タンパ性の記録媒体についても不正な機器と同様に排除する必要がある。
【００１１】
また、記録媒体は、計算メモリや計算能力等の資源が限られることが多いため、既存の仕組みとの親和性が求められている。
【特許文献１】特開２００４-２２０３１７号公報
【非特許文献１】Content Protection for Recordable Media Specification for SD Memory Card, Revision 0.961, May 3, 2007.http://www.4centity.com/
【非特許文献２】Alfred J. Menezes, Paul C. Van Oorschot, Scott A. Vanstone, Handbook of Applied Cryptography, CRC Press, 1996
【非特許文献３】Content Protection for Recordable Media Specification, Introduction and Common Cryptographic Elements, Revision 1.01, May 3,2007http://www.4centity.com/
【非特許文献４】Advanced Access Content System, Introduction and Common Cryptographic Elements, Revision 0.91, February 16, 2006http://www.aacsla.com/
【発明の開示】
【発明が解決しようとする課題】
【００１２】
以上をまとめると、記録媒体とホスト計算機との間において、不正機器を排除する既存の仕組みを維持したまま、記録媒体とホスト計算機の間の相互認証処理の負荷を軽減することが望まれている。
【００１３】
本発明は上記実情を考慮してなされたもので、不正機器を排除する既存の仕組みを維持したまま、記録媒体とホスト計算機の間の相互認証処理の負荷を軽減し得る認証方法、ホスト計算機及び記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明の第１の局面は、鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢを記憶した第１更新可能記憶手段と、前記鍵管理センタ装置が生成したデバイス鍵Ｋｄ及びセンタ公開鍵Kk-pubを記憶した第１更新不可記憶手段とを少なくとも備えたホスト計算機と、前記鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍを記憶した第２更新可能記憶手段と、前記鍵管理センタ装置が生成したセンタ公開鍵Kk-pub、記録媒体証明書Kc-CERT及び記録媒体秘密鍵Kc-priを記憶した第２更新不可記憶手段とを備えた記録媒体とに関し、前記ホスト計算機と前記記録媒体とが実行する認証方法であって、前記ホスト計算機が、前記記録媒体から第２更新可能記憶手段内のメディア鍵ブロックＭＫＢと第２更新不可記憶手段内の記録媒体証明書Kc-CERTを読み出す工程と、前記ホスト計算機のＭＫＢ検証・更新手段が、前記記録媒体から読み出したメディア鍵ブロックＭＫＢのバージョン番号と、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢのバージョン番号とを互いに比較する工程と、この比較の結果、前記記録媒体からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記ＭＫＢ検証・更新手段が、前記第１更新不可記憶手段内のセンタ公開鍵Kk-pubに基づいて、前記記録媒体からのメディア鍵ブロックＭＫＢの鍵生成センタ署名を検証する工程と、この検証が成功すると、前記ＭＫＢ検証・更新手段が、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢを記録媒体からのメディア鍵ブロックＭＫＢに書き換える工程と、この書き換えの後、前記ホスト計算機の証明書検証手段が、前記第１更新不可記憶手段内のセンタ公開鍵Kk-pubに基づいて記録媒体証明書Kc-CERTの鍵生成センタ署名を検証する工程と、この検証が成功すると、前記ホスト計算機の記録媒体検証手段が、前記記録媒体証明書Kc-CERTからメディアＩＤを読み出して、このメディアＩＤが第１更新可能記憶手段内のメディア鍵ブロックＭＫＢにある記録媒体無効化リストにあるか否かを判定する工程と、前記判定の結果、前記メディアＩＤが記録媒体無効化リスト内にない場合、前記ホスト計算機のＭＫＢ処理手段が、前記第１更新不可記憶手段内のデバイス鍵Ｋｄに基づいて、前記記録媒体からのメディア鍵ブロックＭＫＢをＭＫＢ処理してメディア鍵Ｋｍを算出する工程と、前記ホスト計算機の第１Ｋｍｕ作成手段が、前記記録媒体証明書Kc-CERT内のメディアＩＤとメディア鍵Ｋｍとに基づいてメディア固有鍵Ｋｍｕを作成する工程と、前記ホスト計算機の第１ＡＫＥ実行手段が、このメディア固有鍵Ｋｍｕに基づいて、前記記録媒体の第２ＡＫＥ実行手段との間で認証及び鍵交換ＡＫＥ処理を実行する工程とを備えた認証方法である。
【００１５】
本発明の第２の局面は、前述した第１の局面に加え、前記記録媒体としては、データ検証処理手段、公開鍵復号処理手段及び第２Ｋｍｕ作成手段を更に備えており、前記比較の結果、前記ホスト計算機内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記記録媒体検証手段が、前記記録媒体証明書Kc-CERTからメディアＩＤを読み出して、このメディアＩＤが前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢにある記録媒体無効化リストにあるか否かを判定する工程と、前記判定の結果、前記メディアＩＤが記録媒体無効化リスト内にない場合、前記ＭＫＢ処理手段が、前記第１更新不可記憶手段内のデバイス鍵Ｋｄに基づいて、前記記録媒体からのメディア鍵ブロックＭＫＢをＭＫＢ処理してメディア鍵Ｋｍを算出する工程と、前記公開鍵暗号処理手段が、この算出されたメディア鍵Ｋｍを記録媒体証明書Kc-CERT内の記録媒体公開鍵Kc-pubで暗号化し、暗号化メディア鍵Enc（Kc-pub，Ｋｍ）を作成する工程と、前記ホスト計算機が、この暗号化メディア鍵Enc（Kc-pub，Ｋｍ）と、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢとを前記記録媒体に送信する工程と、前記記録媒体が暗号化メディア鍵Enc（Kc-pub，Ｋｍ）及びメディア鍵ブロックＭＫＢを受信すると、前記データ検証処理手段が、前記ホスト計算機からのメディア鍵ブロックＭＫＢのバージョン番号と、前記第２更新可能記憶手段内のメディア鍵ブロックＭＫＢのバージョン番号とを互いに比較する工程と、この比較の結果、前記記録媒体のＭＫＢのバージョン番号が新しい場合、前記データ検証処理手段が、前記第２更新不可記憶手段内のセンタ公開鍵Kk-pubに基づいて、前記ホスト計算機からのメディア鍵ブロックＭＫＢ内の鍵生成センタ署名を検証する工程と、この検証が成功すると、前記公開鍵復号処理手段が、前記ホスト計算機からの暗号化メディア鍵Enc（Kc-pub，Ｋｍ）を、前記第２更新不可記憶手段内の記録媒体秘密鍵Kc-priで復号する工程と、前記公開鍵復号処理手段が、前記復号したメディア鍵Ｋｍを前記ホスト計算機からのメディア鍵ブロックＭＫＢ内の検証データで検証する工程と、この検証が成功すると、前記データ検証処理手段が、前記第２更新可能記憶手段内のメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍを、前記ホスト計算機から受けたメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍに書き換える工程と、前記第２Ｋｍｕ作成手段が、この書換え後のメディア鍵Ｋｍと、前記第２更新不可記憶手段内の記録媒体証明書Kc-CERT内のメディアＩＤとに基づいてメディア固有鍵Ｋｍｕを作成する工程と、前記ホスト計算機が、前記暗号化メディア鍵Enc（Kc-pub，Ｋｍ）及びメディア鍵ブロックＭＫＢの送信後、前記記録媒体からメディア鍵ブロックＭＫＢと記録媒体証明書Kc-CERTを読み出す工程に戻る工程と、を備えた認証方法である。
【００１６】
本発明の第３の局面は、鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢを記憶した第１更新可能記憶手段と、前記鍵管理センタ装置が生成したデバイス鍵Ｋｄ_hを記憶した第１更新不可記憶手段とを少なくとも備えたホスト計算機と、前記鍵管理センタ装置が生成したメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍを記憶した第２更新可能記憶手段と、前記鍵管理センタ装置が生成したデバイス鍵Ｋｄ_c及びメディアＩＤを記憶した第２更新不可記憶手段とを備えた記録媒体とに関し、前記ホスト計算機と前記記録媒体とが実行する認証方法であって、前記ホスト計算機が、前記記録媒体から第２更新可能記憶手段内のメディア鍵ブロックＭＫＢと第２更新不可記憶手段内のメディアＩＤを読み出す工程と、前記ホスト計算機のＭＫＢ処理手段が、前記第１更新不可記憶手段内のデバイス鍵Ｋｄ_hに基づいて、前記記録媒体から読み出されたメディア鍵ブロックＭＫＢをＭＫＢ処理する工程と、前記ホスト計算機のＭＫＢ比較手段が、前記記録媒体から読み出したメディア鍵ブロックＭＫＢのバージョン番号と、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢのバージョン番号とを互いに比較する工程と、この比較の結果、前記記録媒体からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記ＭＫＢ比較手段が、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢを記録媒体からのメディア鍵ブロックＭＫＢに書き換える工程と、この書き換えの後、前記ホスト計算機の第１Ｋｍｕ作成手段が、前記記録媒体から読み出されたメディアＩＤと前記ＭＫＢ処理により得られたメディア鍵Ｋｍとに基づいてメディア固有鍵Ｋｍｕを作成する工程と、前記ホスト計算機の第１ＡＫＥ実行手段が、このメディア固有鍵Ｋｍｕに基づいて、前記記録媒体の第２ＡＫＥ実行手段との間で認証及び鍵交換ＡＫＥ処理を実行する工程とを備えた認証方法である。
【００１７】
本発明の第４の局面は、第３の局面において、前記記録媒体としては、ＭＫＢ処理手段、ＭＫＢ比較手段及び第２Ｋｍｕ作成手段を更に備えており、前記比較の結果、前記ホスト計算機内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記ホスト計算機が、前記第１更新可能記憶手段内のメディア鍵ブロックＭＫＢを前記記録媒体に送信する工程と、前記記録媒体がこのメディア鍵ブロックＭＫＢを受信すると、前記ＭＫＢ処理手段が、前記第２更新不可記憶手段内のデバイス鍵Ｋｄ_cに基づいて、前記ホスト計算機からのメディア鍵ブロックＭＫＢをＭＫＢ処理すると共に、前記記録媒体からのメディア鍵ブロックＭＫＢを前記ＭＫＢ比較手段に送出する工程と、前記ＭＫＢ比較手段が、前記ホスト計算機からのメディア鍵ブロックＭＫＢのバージョン番号と、前記第２更新可能記憶手段内のメディア鍵ブロックＭＫＢのバージョン番号とを互いに比較する工程と、この比較の結果、前記ホスト計算機からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合、前記ＭＫＢ処理手段が、前記ホスト計算機からのメディア鍵ブロックＭＫＢから得られたメディア鍵Ｋｍを前記ホスト計算機からのメディア鍵ブロックＭＫＢ内の検証データで検証する工程と、この検証が成功すると、前記ＭＫＢ処理手段が、前記第２更新可能記憶手段内のメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍを、前記ホスト計算機から受けたメディア鍵ブロックＭＫＢ及びメディア鍵Ｋｍに書き換える工程と、前記第２Ｋｍｕ作成手段が、この書換え後のメディア鍵Ｋｍと、前記第２更新不可記憶手段内のメディアＩＤとに基づいてメディア固有鍵Ｋｍｕを作成する工程と、前記ホスト計算機が、前記メディア鍵ブロックＭＫＢの送信後、前記記録媒体からメディア鍵ブロックＭＫＢとメディアＩＤを読み出す工程に戻る工程と、を備えた認証方法である。
【００１８】
なお、以上の各局面は、各装置が実行する方法として表現したが、これに限らず、装置毎に、装置、方法、プログラム、又はプログラムを記憶したコンピュータ読み取り可能な記憶媒体として表現してもよい。
【００１９】
（作用）
本発明の第１の局面によれば、ホスト計算機内のメディア鍵ブロックＭＫＢのバージョン番号よりも記録媒体からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合において、記録媒体証明書Kc-CERT及びメディア鍵ブロックＭＫＢの検証と、記録媒体無効化リストの確認という不正機器を排除する既存の仕組みを維持しつつ、ホスト計算機がＡＫＥ以外の処理を実行することにより記録媒体の負荷を軽減するので、記録媒体とホスト計算機の間の相互認証処理の負荷を軽減できる。
【００２０】
本発明の第２の局面によれば、記録媒体からのメディア鍵ブロックＭＫＢのバージョン番号よりもホスト計算機内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合において、記録媒体証明書Kc-CERT及びメディア鍵ブロックＭＫＢの検証と、記録媒体無効化リストの確認という不正機器を排除する既存の仕組みを維持しつつ、ホスト計算機が公開鍵暗号方式の暗号化処理を実行し、記録媒体が公開鍵暗号方式の復号処理を実行することにより、従来の両者が暗号化処理及び復号処理をそれぞれ実行する場合に比べて記録媒体の負荷を軽減するので、記録媒体とホスト計算機の間の相互認証処理の負荷を軽減できる。
【００２１】
本発明の第３の局面によれば、ホスト計算機内のメディア鍵ブロックＭＫＢのバージョン番号よりも記録媒体からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合において、デバイス鍵Ｋｄ_hによるメディア鍵ブロックＭＫＢのＭＫＢ処理という不正機器を排除する既存の仕組みを維持しつつ、ホスト計算機がＡＫＥ以外の処理を実行することにより記録媒体の負荷を軽減するので、記録媒体とホスト計算機の間の相互認証処理の負荷を軽減できる。
【００２２】
本発明の第４の局面によれば、記録媒体からのメディア鍵ブロックＭＫＢのバージョン番号よりもホスト計算機内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合において、デバイス鍵Ｋｄ_hによるメディア鍵ブロックＭＫＢのＭＫＢ処理という不正機器を排除する既存の仕組みを維持しつつ、従来の両者が公開鍵暗号方式の暗号化処理及び復号処理をそれぞれ実行する場合に比べて記録媒体の負荷を軽減するので、記録媒体とホスト計算機の間の相互認証処理の負荷を軽減できる。
【発明の効果】
【００２３】
以上説明したように本発明によれば、不正機器を排除する既存の仕組みを維持したまま、記録媒体とホスト計算機の間の相互認証処理の負荷を軽減できる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の各実施形態について図面を用いて説明する。なお、以下の各装置は、装置毎に、ハードウェア構成、又はハードウェア資源とソフトウェアとの組合せ構成のいずれでも実施可能となっている。組合せ構成のソフトウェアとしては、予めネットワーク又は記憶媒体から対応する装置のコンピュータにインストールされ、対応する装置の機能を実現させるためのプログラムが用いられる。また、第１の実施形態は公開鍵を利用する形態であり、第２の実施形態は公開鍵を利用しない形態である。
【００２５】
（第１の実施形態）
図１は本発明の第１の実施形態に係る認証システムの全体概要図である。この認証システムは、鍵生成センタ装置１００、ホスト計算機２００及び記録媒体３００から構成されている。なお、実際には、１台の鍵生成センタ装置、複数台のホスト計算機、及び複数個の記録媒体により全体システムが構成されるが、ここではホスト計算機と記録媒体が一つずつの場合を代表例に挙げて説明する。
【００２６】
鍵生成センタ装置１００は、鍵ペア記憶部１０１、デバイス鍵ＤＢ１１０、ＭＫＢ生成部１２０、メディアＩＤ生成部１３０、公開鍵生成部１４０、一方向性関数算出部１５０及び証明書生成部１６０を備えて構成されている。なお、一方向性関数算出部１５０は省略してもよく、この場合、記録媒体３００の更新可能メモリ３０２はメディア鍵Ｋｍを記憶する。
【００２７】
鍵ペア記憶部１０１は、読出／書込可能な記憶装置であり、予め生成された一対のセンタ公開鍵Kk-pub及びセンタ秘密鍵Kk-priからなる公開鍵ペアが保存される。
【００２８】
デバイス鍵ＤＢ(Database)１１０は、読出／書込可能な記憶装置であり、予め生成されたデバイス鍵Ｋｄ_1〜Ｋｄ_xが保存される。
【００２９】
ＭＫＢ生成部１２０は、乱数生成によりメディア鍵Ｋｍを生成する機能と、デバイス鍵ＤＢ１１０内のデバイス鍵Ｋｄ_1〜Ｋｄ_xに基づいて、メディア鍵Ｋｍを暗号化し、暗号化メディア鍵Enc（Ｋｄ_1，Ｋｍ），…，Enc（Ｋｄ_x，Ｋｍ）を生成する機能と、メディア鍵Ｋｍを一方向関数算出部１５０に入力し、一方向関数算出部１５０からメディア鍵関数値Ｋｍ’を受ける機能と、所定の固有データをそれぞれメディア鍵Ｋｍ及びメディア鍵関数値Ｋｍ’により暗号化して検証データEnc（Ｋｍ，固定データ），Enc（Ｋｍ’，固定データ）を生成する機能と、図示しない入力部から入力されたバージョン番号及び記録媒体無効化リストを用い、これらバージョン番号、検証データ、暗号化メディア鍵及び記録媒体無効化リストに対し、鍵ペア記憶部１０１内のセンタ秘密鍵Kk-priにより電子署名処理を施し、鍵生成センタ署名を生成する機能と、これらバージョン番号、検証データ、暗号化メディア鍵、記録媒体無効化リスト及び鍵生成センタ署名からなるメディア鍵ブロックＭＫＢを生成する機能とをもっている。
【００３０】
ここで、メディア鍵ブロックＭＫＢ（Media Key Block）は鍵管理情報と呼んでもよい。メディア鍵ブロックＭＫＢからはデバイス鍵Ｋｄ_1〜Ｋｄ_xを用いてＭＫＢ処理によりメディア鍵Ｋｍを算出可能となっている。ただしメディア鍵ブロックＭＫＢは、無効化したいデバイス鍵群からはＭＫＢ処理を実行してもメディア鍵が算出されない。所定のルール等を守らないホスト計算機を無効化する目的などでメディア鍵ブロックＭＫＢは利用される（例えば非特許文献１，３参照。）。また、メディア鍵ブロックＭＫＢで無効化されるホスト計算機や記録媒体が増えたなど、無効化されるホスト計算機と記録媒体の集合に変化があった場合、後述するメディア鍵ブロックＭＫＢのバージョン番号を新しくしていく。
【００３１】
メディア鍵ブロックＭＫＢは様々な方式があるが、例えば非特許文献１に示す方法が一般に用いられている。ここでは一例としてメディア鍵ブロックＭＫＢの簡単なモデルを図２に示す。このメディア鍵ブロックＭＫＢは、バージョン番号、検証データ（Verification Data）、暗号化メディア鍵、記録媒体無効化リスト、鍵生成センタ署名を備えている。
【００３２】
バージョン番号は、このメディア鍵ブロックＭＫＢの新しさを示すデータである。
【００３３】
検証データEnc（Ｋｍ，固定データ）及びEnc（Ｋｍ’，固定データ）は、それぞれ固定データをメディア鍵Ｋｍ又はメディア鍵関数値Ｋｍ’で暗号化してなる暗号化固有データである。なお、本明細書中、Enc（Ａ，Ｂ）の表記は、鍵ＡによりデータＢを暗号化してなる暗号化データを表しており、換言すると、鍵Ａにより暗号化された状態のデータＢを表している。検証データは、メディア鍵ブロックＭＫＢから読み出したメディア鍵Ｋｍ、及びメディア鍵関数値Ｋｍ’が正当なものか否かを調べるデータであり、この検証データをＭＫＢ処理から得られたメディア鍵Ｋｍ及びメディア鍵関数値Ｋｍ’で復号すると所定の固定データが復元される。これによりＭＫＢ処理の成功を確認可能となっている。
【００３４】
暗号化メディア鍵Enc（Ｋｄ_1，Ｋｍ），…，Enc（Ｋｄ_x，Ｋｍ）は、メディア鍵Ｋｍを所定のデバイス鍵Ｋｄ_1，…，Ｋｄ_xで暗号化したものである。メディア鍵Ｋｍは、暗号化メディア鍵Enc（Ｋｄ_1，Ｋｍ），…，Enc（Ｋｄ_x，Ｋｍ）をデバイス鍵Ｋｄ_1，…，Ｋｄ_xにより復号することにより、復元可能となっている。
【００３５】
記録媒体無効化リストは、無効化したい記録媒体を識別するメディアＩＤを一覧したリスト情報である。
【００３６】
鍵生成センタ署名は、以上のバージョン番号、検証データ、暗号化メディア鍵及び記録媒体無効化リストに対し、鍵生成センタ装置１００のセンタ秘密鍵Kk-priによる電子署名処理を施して得られた電子署名である。電子署名は、公開鍵アルゴリズムを利用してデータの改ざんを計算量的に困難にする技術であり、例えば非特許文献２記載の方法で実現可能である。
【００３７】
メディアＩＤ生成部１３０は、例えば、続き番号を発行する処理、又は乱数生成後に過去のメディアＩＤと照合する処理等により、過去に発生させたメディアＩＤと重ならないようにメディアＩＤを生成する機能をもっている。ここで、メディアＩＤ生成部１３０は、前述した続き番号の発行処理や乱数生成後の照合処理に限らず、過去に発生させたメディアＩＤと重ならないようにメディアＩＤを生成する処理であれば、任意の処理を適用可能となっている。このことは、以下の各実施形態でも同様である。
【００３８】
公開鍵生成部１４０は、例えばＲＳＡ等の公開鍵アルゴリズムにより、一対の記録媒体公開鍵Kc-pubと記録媒体秘密鍵Kc-priからなる公開鍵ペアを生成する機能をもっている。
【００３９】
一方向性関数算出部１５０は、ＭＫＢ生成部１２０から受けたメディア鍵Ｋｍの一方向関数を演算し、演算結果としてのメディア鍵関数値Ｋｍ’を算出する機能をもっている。一方向性関数とはその関数からの出力からもとの入力値の推測が計算量的に困難な性質を持つ関数であり、例えば非特許文献３記載の計算式で実現することが可能である。なお、メディア鍵関数値Ｋｍ’は、メディア鍵ハッシュ値Ｋｍ’と呼んでもよい。
【００４０】
証明書生成部１６０は、メディアＩＤ及び記録媒体公開鍵Kc-pubから所定のフォーマットデータを作成し、このフォーマットデータにセンタ秘密鍵Kk-priに基づいて電子署名処理を施して鍵生成センタ署名を作成する機能と、図３に示すように、これらメディアＩＤ、記録媒体公開鍵Kc-pub及び鍵生成センタ署名からなる記録媒体証明書Kc-CERTを生成する機能とをもっている。電子署名アルゴリズムは、例えば、非特許文献２記載の方式を用いる。
【００４１】
ホスト計算機２００は、更新可能メモリ２０１、更新不可メモリ２０２、ＭＫＢ処理部２１０、ＭＫＢ検証・更新部２２０、記録媒体検証部２３０、一方向性関数算出部２４０、証明書検証部２５０、Ｋｍｕ’作成部２６０、ＡＫＥ実行部２７０及び公開鍵暗号処理部２８０を備えて構成されている。なお、一方向性関数算出部２４０は省略してもよく、この場合、メディア鍵関数値Ｋｍ’に代えてメディア鍵Ｋｍが用いられると共に、メディア固有鍵Ｋｍｕ’＝one way（Ｋｍ’，メディアＩＤ）に代えてメディア固有鍵Ｋｍｕ＝one way（Ｋｍ，メディアＩＤ）が用いられる。
【００４２】
更新可能メモリ２０１は、各部２１０〜２８０から読出／書込可能であって更新可能なメモリであり、メディア鍵ブロックＭＫＢが保存されている。ここで、更新可能とは、メディア鍵ブロックＭＫＢが書換え可能であることを意味する。
【００４３】
更新不可メモリ２０２は、各部２１０〜２８０から読出可能であって更新不可能なメモリであり、１つのデバイス鍵Ｋｄ_1及びセンタ公開鍵Kk-pubが保存されている。なお、１つのデバイス鍵Ｋｄ_1は、ｘ個のデバイス鍵Ｋｄ_1〜Ｋｄ_xのうち、いずれでもよいが、ここでは一例としてＫｄ_1を用いた。また、更新不可能とは、デバイス鍵及びセンタ公開鍵Kk-pubの書換えが不可能であることを意味する。
【００４４】
ＭＫＢ処理部２１０は、記録媒体検証部２３０による判定の結果、記録媒体３００が無効化対象ではない場合、更新不可メモリ２０２内のデバイス鍵Ｋｄに基づいて、記録媒体３００からのメディア鍵ブロックＭＫＢをＭＫＢ処理する機能と、このＭＫＢ処理によって得られたメディア鍵Ｋｍを一方向性関数算出部２４０に送出する機能とをもっている。
【００４５】
ＭＫＢ検証・更新部２２０は、記録媒体３００から読み出したメディア鍵ブロックＭＫＢのバージョン番号と、更新可能メモリ２０１内のメディア鍵ブロックＭＫＢのバージョン番号とを互いに比較する機能と、この比較の結果、両者のバージョン番号が同じ場合又更新可能メモリ２０１内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合には、メディア鍵ブロックＭＫＢの更新処理を実行しない機能と、この比較の結果、記録媒体３００から読み出したメディア鍵ブロックＭＫＢのバージョン番号が新しい場合には、更新不可メモリ２０２内のセンタ公開鍵Kk-pubに基づいて、記録媒体３００からのメディア鍵ブロックＭＫＢの鍵生成センタ署名を検証する機能と、この検証が成功すると、更新可能メモリ２０１内のメディア鍵ブロックＭＫＢを記録媒体３００からのメディア鍵ブロックＭＫＢに書き換える機能とをもっている。
【００４６】
記録媒体検証部２３０は、後述の証明書検証部２５０による検証が成功した場合、記録媒体証明書Kc-CERTからメディアＩＤを読み出す機能と、この読み出したメディアＩＤが更新可能メモリ２０１内のメディア鍵ブロックＭＫＢにある記録媒体無効化リストにあるか否かを判定する機能と、この判定の結果、記録媒体証明書Kc-CERT内のメディアＩＤが記録媒体無効化リスト内にあれば、記録媒体３００が無効化対象である、として処理を中止する機能とをもっている。
【００４７】
一方向性関数算出部２４０は、ＭＫＢ処理部２１０から送出されたメディア鍵Ｋｍの一方向性関数を演算してメディア鍵関数値Ｋｍ’を作成する機能と、このメディア鍵関数値Ｋｍ’をＫｍｕ’作成部２６０に送出する機能とをもっている。
【００４８】
証明書検証部２５０は、ＭＫＢ検証・更新部２２０による比較の結果、両者のバージョン番号が同じ場合、更新不可メモリ２０２内のセンタ公開鍵Kk-pubに基づいて記録媒体証明書Kc-CERTの鍵生成センタ署名を検証する機能と、検証失敗の場合には処理を中止する機能とをもっている。
【００４９】
Ｋｍｕ’作成部２６０は、記録媒体３００から読み出された記録媒体証明書Kc-CERT内のメディアＩＤと、一方向性関数算出部２４０から受けたメディア鍵関数値Ｋｍ’とに基づいて一方向性関数one way()を計算することにより、メディア固有鍵Ｋｍｕ’＝one way（Ｋｍ’，メディアＩＤ）を作成する機能と、このメディア固有鍵Ｋｍｕ’をＡＫＥ実行部２７０又は公開鍵暗号処理部２８０に送出する機能とをもっている。
【００５０】
ＡＫＥ実行部２７０は、Ｋｍｕ’作成部２６０から受けたメディア固有鍵Ｋｍｕ’に基づいて、記録媒体３００との間でＡＫＥ処理を実行する機能をもっている。
【００５１】
公開鍵暗号処理部２８０は、一方向性関数算出部２４０から受けたメディア鍵関数値Ｋｍ’を記録媒体証明書Kc-CERT内の記録媒体公開鍵Kc-pubで暗号化し、暗号化メディア鍵関数値Enc（Kc-pub，Ｋｍ’）を作成する機能をもっている。
【００５２】
記録媒体３００は、更新可能メモリ３０１、更新不可メモリ３０２、データ検証処理部３１０、公開鍵復号処理部３２０、ＡＫＥ実行部３３０及びＫｍｕ’作成部３４０を備えて構成されている。
【００５３】
更新可能メモリ３０１は、各部３１０〜３４０から読出／書込可能であって更新可能なメモリであり、メディア鍵ブロックＭＫＢ及びメディア鍵関数値Ｋｍ’が保存されている。なお、メディア鍵関数値Ｋｍ’に代えて、メディア鍵Ｋｍを保存してもよい。ここで、更新可能とは、メディア鍵ブロックＭＫＢ及びメディア鍵関数値Ｋｍ’が書換え可能であることを意味する。
【００５４】
更新不可メモリ３０２は、各部３１０〜３４０から読出可能であって更新不可能なメモリであり、記録媒体証明書Kc-CERT、記録媒体秘密鍵Kc-pri及びセンタ公開鍵Kk-CERTが保存されている。ここで、更新不可能とは、記録媒体証明書Kc-CERT、記録媒体秘密鍵Kc-pri及びセンタ公開鍵Kk-pubの書換えが不可能であることを意味する。
【００５５】
データ検証処理部３１０は、ホスト計算機２００からのメディア鍵ブロックＭＫＢのバージョン番号と、更新可能メモリ３０１内のメディア鍵ブロックのバージョン番号とを互いに比較する機能と、この比較の結果、ホスト計算機２００のＭＫＢのバージョン番号が新しい場合には、更新不可メモリ３０２内のセンタ公開鍵Kk-pubに基づいて、ホスト計算機２００からのメディア鍵ブロックＭＫＢ内の鍵生成センタ署名を検証する機能と、この検証が成功した場合には、公開鍵復号処理部３２０を起動する機能と、公開鍵復号処理部３２０による検証が成功した場合には、更新可能メモリ３０１内のメディア鍵ブロックＭＫＢ及びメディア鍵関数値Ｋｍ’（又はメディア鍵Ｋｍ）を、ホスト計算機２００から受けたメディア鍵ブロックＭＫＢ及びメディア鍵関数値Ｋｍ’（又はメディア鍵Ｋｍ）に書き換える機能とをもっている。
【００５６】
公開鍵復号処理部３２０は、データ検証処理部３１０による検証が成功すると、ホスト計算機２００からの暗号化メディア鍵関数値Enc（Kc-pub，Ｋｍ’）を、更新不可メモリ３０２内の記録媒体秘密鍵Kc-priで復号する機能と、復号により得られたメディア鍵関数値Ｋｍ’をホスト計算機２００からのメディア鍵ブロックＭＫＢ内の検証データEnc（Ｋｍ’，固定データ）で検証する機能とをもっている。この検証は、得られたメディア鍵関数値Ｋｍ’に基づき、ＭＫＢ内の検証データEnc（Ｋｍ’，固定データ）を復号し、固定データを正しく復元できたか否かを判定することにより行う。なお、一方向性関数算出部１５０，２４０が省略される場合、暗号化メディア鍵関数値Enc（Kc-pub，Ｋｍ’）、メディア鍵関数値Ｋｍ’及び検証データEnc（Ｋｍ’，固定データ）に代えて、暗号化メディア鍵Enc（Kc-pub，Ｋｍ）、メディア鍵Ｋｍ及び検証データEnc（Ｋｍ，固定データ）が用いられる。
【００５７】
ＡＫＥ実行部３３０は、Ｋｍｕ’作成部３４０から受けたメディア固有鍵Ｋｍｕ’に基づいて、ホスト計算機２００との間でＡＫＥ処理を実行する機能をもっている。
【００５８】
Ｋｍｕ’作成部３４０は、データ検証処理部３１０による書換え後の更新可能メモリ３０１内のメディア鍵関数値Ｋｍ’と、更新不可メモリ３０２内の記録媒体証明書Kc-CERT内のメディアＩＤとの一方向性関数を演算してメディア固有鍵Ｋｍｕ’を作成する機能と、このメディア固有鍵Ｋｍｕ’をＡＫＥ実行部３３０に送出する機能とをもっている。なお、一方向性関数算出部１５０，２４０が省略される場合、メディア鍵関数値Ｋｍ’及びメディア固有鍵Ｋｍｕ’に代えて、メディア鍵Ｋｍ及びメディア固有鍵Ｋｍｕが用いられる。
【００５９】
次に、以上のように構成された認証システムの動作を図４乃至図１１を用いて説明する。始めに、鍵生成センタ装置１００は初期設定と鍵等のデータ配布を行う。ホスト計算機製造者及び記録媒体製造者は、それぞれ鍵生成センタ装置１００から配布されたデータを各ホスト計算機２００及び各記録媒体３００に記録する。但し、鍵生成センタ装置１００が鍵等のデータを各ホスト計算機２００及び各記録媒体３００に記録する構成としてもよい。また、各ホスト計算機２００及び各記録媒体３００は、それぞれ流通してユーザに入手され、ユーザの手元でホスト計算機−記録媒体間の認証処理が実行される。以下、順次説明する。
【００６０】
（初期設定とデータ配布）
鍵生成センタ装置１００は、図４及び図５に示すように、この認証システムに用いられるデバイス鍵Ｋｄを将来利用される分（Ｋｄ_1〜Ｋｄ_x）も含めて生成しておき（ＳＴ１）、これらデバイス鍵Ｋｄ_1〜Ｋｄ_xをデバイス鍵ＤＢに保存しておく。
【００６１】
また、鍵生成センタ装置１００は、予め鍵生成センタ装置１００の公開鍵ペアを生成し（ＳＴ２）、この公開鍵ペアを鍵ペア記憶部１０１に保存しておく。
【００６２】
鍵生成センタ装置１００においては、ＭＫＢ生成部１２０が、乱数を生成してメディア鍵Ｋｍとする。なお、この乱数は外部から与えられてもよい。
【００６３】
次に、ＭＫＢ生成部１２０は、デバイス鍵ＤＢ１１０内のデバイス鍵Ｋｄ_1〜Ｋｄ_xに基づいて、メディア鍵Ｋｍを暗号化し、暗号化メディア鍵Enc（Ｋｄ_1，Ｋｍ），…，Enc（Ｋｄ_x，Ｋｍ）を生成する。
【００６４】
また、ＭＫＢ生成部１２０は、メディア鍵Ｋｍを一方向関数算出部１５０に入力し、一方向関数算出部１５０からメディア鍵関数値Ｋｍ’を受ける。
【００６５】
さらに、ＭＫＢ生成部１２０は、所定の固有データをそれぞれメディア鍵Ｋｍ及びメディア鍵関数値Ｋｍ’により暗号化して検証データEnc（Ｋｍ，固定データ），Enc（Ｋｍ’，固定データ）を生成する。
【００６６】
また、ＭＫＢ生成部１２０は、図示しない入力部から入力されたバージョン番号及び記録媒体無効化リストを用い、これらバージョン番号、検証データ、暗号化メディア鍵及び記録媒体無効化リストに対し、鍵ペア記憶部１０１内のセンタ秘密鍵Kk-priにより電子署名処理を施し、鍵生成センタ署名を生成する。
【００６７】
しかる後、ＭＫＢ生成部１２０は、図２に示すように、これらバージョン番号、検証データ、暗号化メディア鍵、記録媒体無効化リスト及び鍵生成センタ署名からなるメディア鍵ブロックＭＫＢを生成する（ＳＴ３）。
【００６８】
以上のようなデバイス鍵Ｋｄ_1〜Ｋｄ_xのいずれか１つ、センタ公開鍵Kk-pub及びメディア鍵ブロックＭＫＢは、ホスト計算機製造者を介してホスト計算機２００の更新可能メモリ２０１又は更新不可メモリ２０２に書き込まれる（ＳＴ４）。なお、デバイス鍵は、ホスト計算機１００の一台（例、製造番号）毎に異なる場合と、ホスト計算機１００のモデル（例、型番）毎に異なる場合とがあるが、このようなデバイス鍵の与え方はシステム運用上で決定される。また、メディア鍵ブロックＭＫＢは、ホスト計算機製造者によりホスト計算機１００に書き込まれる場合に限らず、ホスト計算機１００を購入したユーザが鍵生成センタ装置１００からダウンロードして書き込んでもよい。但し、ホスト計算機製造者が書き込んだ場合は最新のメディア鍵ブロックＭＫＢをこの認証システムに早く浸透させる効果がある。
【００６９】
続いて、記録媒体３００に与えるデータの作成手順を述べる。
【００７０】
鍵生成センタ装置１００においては、公開鍵生成部１４０が、例えばＲＳＡ等の公開鍵アルゴリズムにより、一対の記録媒体公開鍵Kc-pubと記録媒体秘密鍵Kc-priからなる公開鍵ペアを生成する（ＳＴ５）。
【００７１】
鍵生成センタ装置１００においては、メディアＩＤ生成部１３０が例えば続き番号を発行するなどで過去に発生させたメディアＩＤと重ならないようにメディアＩＤを生成する。なお、メディアＩＤは、鍵生成センタ装置１００内で生成する場合に限らず、外部から与えられてもよい。また、公開鍵生成部１４０及びメディアＩＤ生成部１３０の動作はいずれが先でもよい。
【００７２】
次に、鍵生成センタ装置１００においては、証明書生成部１６０が、図３に示すように、メディアＩＤ及び記録媒体公開鍵Kc-pubに対し、センタ秘密鍵Kk-priに基づいて電子署名を作成することにより、記録媒体証明書Kc-CERTを作成する（ＳＴ６）。
【００７３】
また、鍵生成センタ装置１００においては、一方向性関数算出部１５０が、ＭＫＢ生成部１２０から受けたメディア鍵Ｋｍから一方向性関数によりメディア鍵関数値Ｋｍ’を算出する（ＳＴ７）。
【００７４】
以上のようなメディア鍵ブロックＭＫＢ、このメディア鍵ブロックＭＫＢに対応したメディア鍵関数値Ｋｍ’、記録媒体証明書Kc-CERT、記録媒体秘密鍵Kc-pri、センタ公開鍵Kk-pubは、記録媒体製造者を介して記録媒体３００の更新可能メモリ３０１又は更新不可メモリ３０２に書き込まれる（ＳＴ８）。
【００７５】
（ホスト計算機−記録媒体間の認証）
始めに概要を述べる。  
ホスト計算機２００と記録媒体３００間の認証動作は、ホスト計算機２００内のメディア鍵ブロックＭＫＢのバージョン番号と、記録媒体３００内のメディア鍵ブロックＭＫＢのバージョン番号とを比較した結果に応じて異なる動作となる。ここで、バージョン番号の比較結果は、次の３つの場合のいずれかとなる。
【００７６】
（１）ホスト計算機２００と記録媒体３００のメディア鍵ブロックＭＫＢのバージョン番号が同じ場合。
【００７７】
（２）記録媒体３００のメディア鍵ブロックＭＫＢのバージョン番号がホスト計算機２００のものよりも新しい場合。
【００７８】
（３）ホスト計算機２００のメディア鍵ブロックＭＫＢのバージョン番号が記録媒体３００のものよりも新しい場合。
【００７９】
ここで（２）又は（３）の場合、古い方のメディア鍵ブロックＭＫＢが更新処理される。このＭＫＢ更新処理の終了後、ホスト計算機２００と記録媒体３００とは、認証及び鍵交換処理ＡＫＥ（Authentication and Key Exchange）を実行する。認証及び鍵交換処理ＡＫＥは、例えば非特許文献２に記載されている。この認証及び鍵交換処理ＡＫＥについては詳細な説明を省略するが、ホスト計算機２００及び記録媒体３００は、それぞれＡＫＥで利用される共通のメディア固有鍵Ｋｍｕ’を、メディア鍵関数値Ｋｍ’（もしくはメディア鍵Ｋｍ）及びメディアＩＤから一方向性関数により計算する。例えば、メディア鍵関数値Ｋｍ’ （もしくはメディア鍵Ｋｍ）とメディアＩＤが記録されたときに内部で計算するように実装してもよい。
【００８０】
次に、上述した（１）〜（３）の場合について詳細に説明する。  
（１）ホスト計算機２００と記録媒体３００のメディア鍵ブロックＭＫＢのバージョン番号が同じ場合（図６及び図７参照）。
【００８１】
ホスト計算機２００は、記録媒体３００から更新可能メモリ３０１内のメディア鍵ブロックＭＫＢと更新不可メモリ３０２内の記録媒体証明書Kc-CERTを読み出す（ＳＴ１０）。続いて、ホスト計算機２００においては、ＭＫＢ検証・更新部２２０が、記録媒体３００から読み出したメディア鍵ブロックＭＫＢのバージョン番号と、更新可能メモリ２０１内のメディア鍵ブロックＭＫＢのバージョン番号とを互いに比較する（ＳＴ２０）。
【００８２】
この比較の結果、両者のバージョン番号が同じ場合（ＳＴ３０）、メディア鍵ブロックＭＫＢの更新処理を実行しない。
【００８３】
次に、ホスト計算機２００においては、証明書検証部２５０が、更新不可メモリ２０２内のセンタ公開鍵Kk-pubに基づいて記録媒体証明書Kc-CERTの鍵生成センタ署名を検証し（ＳＴ３１）、検証失敗の場合には処理を中止するが、ここでは検証が成功する場合を述べる。
【００８４】
検証が成功すると、記録媒体検証部２３０は、記録媒体証明書Kc-CERTからメディアＩＤを読み出して（ＳＴ３２）、このメディアＩＤが更新可能メモリ２０１内のメディア鍵ブロックＭＫＢにある記録媒体無効化リストにあるか否かを判定する（ＳＴ３３）。
【００８５】
ステップＳＴ３３の判定の結果、記録媒体証明書Kc-CERT内のメディアＩＤが記録媒体無効化リスト内にあれば、記録媒体３００の無効化処理を行うが、ここでは無効化リストにない場合を述べる。なお、無効化処理としては、例えば（ａ）そのまま処理を進める、（ｂ）処理を中止する、又は（ｃ）記録媒体３００からの読出処理を行うが書込処理を行わない、などが運用上のポリシーに基づいて適宜実行可能である。無効化処理については、例えば（ａ）〜（ｃ）のいずれを実行するかを予め定めておけば、定めた処理をホスト計算機２００が実行する。
【００８６】
一方、ステップＳＴ３３の判定の結果、記録媒体３００が無効化対象ではない場合、ＭＫＢ処理部２１０は、更新不可メモリ２０２内のデバイス鍵Ｋｄに基づいて、記録媒体３００からのメディア鍵ブロックＭＫＢをＭＫＢ処理し（ＳＴ３４）、このＭＫＢ処理によって得られたメディア鍵Ｋｍを一方向性関数算出部２４０に送出する。
【００８７】
一方向性関数算出部２４０は、このメディア鍵Ｋｍの一方向性関数を演算してメディア鍵関数値Ｋｍ’を作成し（ＳＴ３５）、このメディア鍵関数値Ｋｍ’をＫｍｕ’作成部２６０に送出する。
【００８８】
Ｋｍｕ’作成部２６０は、記録媒体証明書Kc-CERT内のメディアＩＤとメディア鍵関数値Ｋｍ’とに基づいて一方向性関数one way()を計算することにより、メディア固有鍵Ｋｍｕ’＝one way（Ｋｍ’，メディアＩＤ）を作成する（ＳＴ３６）。このメディア固有鍵Ｋｍｕ’は、Ｋｍｕ’作成部２６０からＡＫＥ実行部２７０に送出される。
【００８９】
ＡＫＥ実行部２７０は、このメディア固有鍵Ｋｍｕ’に基づいて、記録媒体３００のＡＫＥ実行部３３０との間でＡＫＥ処理を実行する。
【００９０】
なお、記録媒体３００のＫｍｕ’作成部３４０は、前述したように、ＡＫＥで利用される共通のメディア固有鍵Ｋｍｕ’を、例えばメディア鍵関数値Ｋｍ’及びメディアＩＤが記録されたときに、当該メディア鍵関数値Ｋｍ’とメディアＩＤから一方向性関数により計算してＡＫＥ実行部３３０に入力している。このため、記録媒体３００のＡＫＥ実行部３３０は、共通のメディア固有鍵Ｋｍｕ’を利用可能となっている。
【００９１】
（２）記録媒体のメディア鍵ブロックＭＫＢのバージョン番号がホスト計算機のものよりも新しい場合（図８及び図７参照）。
【００９２】
ホスト計算機２００は、前述同様に、ステップＳＴ１０〜ＳＴ２０を実行し、ステップＳＴ２０の比較処理の結果、記録媒体３００からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合（ＳＴ３０ａ）であったとする。
【００９３】
ホスト計算機２００においては、前述同様にステップＳＴ３１の検証を実行し、検証失敗の場合には処理を中止するが、ここでは検証が成功する場合を述べる。
【００９４】
検証が成功すると、ＭＫＢ検証・更新部２２０は、更新不可メモリ２０２内のセンタ公開鍵Kk-pubに基づいて、記録媒体３００からのメディア鍵ブロックＭＫＢの鍵生成センタ署名を検証し（ＳＴ３１ａ−１）、失敗した場合は処理を中止するが、ここでは検証が成功したとする。
【００９５】
ステップＳＴ３１ａ−１の検証が成功すると、ＭＫＢ検証・更新部２２０は、更新可能メモリ２０１内のメディア鍵ブロックＭＫＢを記録媒体３００からのメディア鍵ブロックＭＫＢに書き換える（ＳＴ３１ａ−２）。
【００９６】
この書き換えの後、ホスト計算機２００は、前述した（１）と同様に、ステップＳＴ３２〜ＳＴ３６の処理を実行した後、ＡＫＥ処理を実行する。
【００９７】
（３）ホスト計算機のメディア鍵ブロックＭＫＢのバージョン番号が記録媒体のものよりも新しい場合（図９乃至図１１参照）。
【００９８】
ホスト計算機２００は、前述同様に、ステップＳＴ１０〜ＳＴ２０を実行し、ステップＳＴ２０の比較処理の結果、ホスト計算機２００内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合（ＳＴ３０ｂ）であったとする。
【００９９】
この場合、ホスト計算機２００は、前述した（１）と同様に、ステップＳＴ３２〜ＳＴ３５の処理を実行し、一方向性関数算出部２４０がメディア鍵関数値Ｋｍ’を作成する（ＳＴ３５）。一方向性関数算出部２４０は、このメディア鍵関数値Ｋｍ’を公開鍵暗号処理部２８０に送出する。
【０１００】
公開鍵暗号処理部２８０は、このメディア鍵関数値Ｋｍ’を記録媒体証明書Kc-CERT内の記録媒体公開鍵Kc-pubで暗号化し（ＳＴ３６ｂ）、暗号化メディア鍵関数値Enc（Kc-pub，Ｋｍ’）を作成する（図中、暗号化Ｋｍ’と表記）。
【０１０１】
しかる後、ホスト計算機２００は、この暗号化メディア鍵関数値Enc（Kc-pub，Ｋｍ’）と、更新可能メモリ２０１内のメディア鍵ブロックＭＫＢとを記録媒体３００に送信する（ＳＴ３７）。
【０１０２】
記録媒体３００においては、暗号化メディア鍵関数値Enc（Kc-pub，Ｋｍ’）及びメディア鍵ブロックＭＫＢを受信すると、データ検証処理部３１０が、ホスト計算機２００からのメディア鍵ブロックＭＫＢのバージョン番号と、更新可能メモリ３０１内のメディア鍵ブロックのバージョン番号とを互いに比較する（ＳＴ３８）。
【０１０３】
この比較の結果、記録媒体３００のＭＫＢのバージョン番号が新しいか同じ場合、処理を中止する。ホスト計算機２００のＭＫＢのバージョン番号が新しい場合は先に進む。
【０１０４】
次に、データ検証処理部３１０は、更新不可メモリ３０２内のセンタ公開鍵Kk-pubに基づいて、ホスト計算機２００からのメディア鍵ブロックＭＫＢ内の鍵生成センタ署名を検証し（ＳＴ３９）、検証失敗の場合には処理を中止するが、ここでは検証が成功する場合を述べる。
【０１０５】
検証が成功すると、公開鍵復号処理部３２０は、ホスト計算機２００からの暗号化メディア鍵関数値Enc（Kc-pub，Ｋｍ’）を、更新不可メモリ３０２内の記録媒体秘密鍵Kc-priで復号する（ＳＴ４０）。続いて、公開鍵復号処理部３２０は、この復号したメディア鍵関数値Ｋｍ’をホスト計算機２００からのメディア鍵ブロックＭＫＢ内の検証データEnc（Ｋｍ’，固定データ）で検証する（ＳＴ４１）。ステップＳＴ４１の検証においては、ステップＳＴ４０の復号処理により得られたメディア鍵関数値Ｋｍ’に基づいて検証データEnc（Ｋｍ’，固定データ）を復号し、この復号により得られた固定データと、予め公開鍵復号処理部３２０が保持する固定データとを比較し、両固定データが一致した場合には検証成功と判定し、両固定データが不一致の場合には検証失敗と判定する。ステップＳＴ４１の検証が失敗した場合には処理を中止するが、ここでは検証が成功した場合を述べる。
【０１０６】
ステップＳＴ４１の検証が成功すると、データ検証処理部３１０は、更新可能メモリ３０１内のメディア鍵ブロックＭＫＢ及びメディア鍵関数値Ｋｍ’を、ホスト計算機２００から受けたメディア鍵ブロックＭＫＢ及びメディア鍵関数値Ｋｍ’に書き換える（ＳＴ４２）。Ｋｍｕ’作成部３４０は、ステップＳＴ４２の書換え後のメディア鍵関数値Ｋｍ’と、更新不可メモリ３０２内の記録媒体証明書Kc-CERT内のメディアＩＤとの一方向性関数を演算してメディア固有鍵Ｋｍｕ’を作成する。
【０１０７】
一方、ホスト計算機２００は、ステップＳＴ３７のデータ送信後、ステップＳＴ１０に戻って処理を再実行する。記録媒体３００での更新が成功した場合には、再実行時のステップＳＴ２０の比較結果が両者のバージョン番号が同じ場合となるため、（１）の処理［ホスト計算機２００と記録媒体３００のメディア鍵ブロックＭＫＢのバージョン番号が同じ場合］が実行される。また、記録媒体３００内で処理を中止した場合には、処理の中止に関する情報をメッセージとしてホスト計算機２００に通知する構成としてもよい。
【０１０８】
上述したように本実施形態によれば、ホスト計算機２００内のメディア鍵ブロックＭＫＢのバージョン番号よりも記録媒体３００からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合において、記録媒体証明書Kc-CERT及びメディア鍵ブロックＭＫＢの検証と、記録媒体無効化リストの確認という不正機器を排除する既存の仕組みを維持しつつ、ホスト計算機がＡＫＥ以外の処理を実行することにより記録媒体の負荷を軽減するので、記録媒体とホスト計算機の間の相互認証処理の負荷を軽減できる。
【０１０９】
また、記録媒体３００からのメディア鍵ブロックＭＫＢのバージョン番号よりもホスト計算機２００内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合において、記録媒体証明書Kc-CERT及びメディア鍵ブロックＭＫＢの検証と、記録媒体無効化リストの確認という不正機器を排除する既存の仕組みを維持しつつ、ホスト計算機が公開鍵暗号方式の暗号化処理を実行し、記録媒体が公開鍵暗号方式の復号処理を実行することにより、従来の両者が暗号化処理及び復号処理をそれぞれ実行する場合に比べて記録媒体の負荷を軽減するので、記録媒体とホスト計算機の間の相互認証処理の負荷を軽減できる。
【０１１０】
また、記録媒体３００側の計算処理を軽減しつつホスト計算機２００と記録媒体３００のメディア鍵ブロックＭＫＢを最新にする方法を実現することができる。
【０１１１】
また、記録媒体３００とホスト計算機２００で、最新のメディア鍵ブロックＭＫＢを所有するようにし、ホスト計算機２００側でメディア鍵ブロックＭＫＢを更新するべきか否かを判断し、ホスト計算機２００側のメディア鍵ブロックＭＫＢを更新するか、記録媒体３００のメディア鍵ブロックＭＫＢを更新するよう処理を行う。
【０１１２】
また、記録媒体３００での計算処理を軽減しつつ相互認証処理をメディア鍵ブロックＭＫＢの利用により、データの正当性、ホスト計算機２００と記録媒体３００の認証制御を同時に達成することができる。
【０１１３】
（第２の実施形態）
図１２は本発明の第２の実施形態に係る認証システムの全体概要図である。この認証システムは、鍵生成センタ装置５００、ホスト計算機６００及び記録媒体７００から構成されている。なお、実際には、１台の鍵生成センタ装置、複数台のホスト計算機、及び複数個の記録媒体により全体システムが構成されるが、ここではホスト計算機と記録媒体が一つずつの場合を代表例に挙げて説明する。
【０１１４】
鍵生成センタ装置５００は、デバイス鍵ＤＢ５１０、ＭＫＢ生成部５２０、バージョン番号生成部５３０、Ｋｍ生成部５４０、一方向性関数算出部５５０及びメディアＩＤ生成部５６０を備えて構成されている。なお、一方向性関数算出部５５０は省略してもよく、この場合、記録媒体７００の更新可能メモリ７０２はメディア鍵Ｋｍを記憶する。
【０１１５】
デバイス鍵ＤＢ(Database)５１０は、読出／書込可能な記憶装置であり、予め生成されたデバイス鍵Ｋｄ_h1〜Ｋｄ_hx，Ｋｄ_c1〜Ｋｄ_cyが保存される。なお、添字にhを含むデバイス鍵Ｋｄ_h1〜Ｋｄ_hxはホスト計算機６００に利用され、添字にcを含むデバイス鍵Ｋｄ_c1〜Ｋｄ_cyは記録媒体７００に利用される。
【０１１６】
ＭＫＢ生成部５２０は、バージョン番号生成部５３０からバージョン番号を受けると、メディア鍵Ｋｍと当該バージョン番号との排他的論理和ｘｏｒを算出してメディア鍵ｘｏｒ値を得る機能と、デバイス鍵ＤＢ５１０内のデバイス鍵Ｋｄ_h1〜Ｋｄ_hxに基づいて、メディア鍵ｘｏｒ値を暗号化し、暗号化メディア鍵ｘｏｒ値Enc（Ｋｄ_h1，Ｋｍ xor バージョン番号），…，Enc（Ｋｄ_hx，Ｋｍ xor バージョン番号）を生成する機能と、一方向関数算出部５５０からメディア鍵関数値Ｋｍ’を受ける機能と、メディア鍵関数値Ｋｍ’とバージョン番号との排他的論理和ｘｏｒを算出してメディア鍵関数ｘｏｒ値を得る機能と、デバイス鍵ＤＢ５１０内のデバイス鍵Ｋｄ_c1〜Ｋｄ_cyに基づいて、メディア鍵関数ｘｏｒ値を暗号化し、暗号化メディア鍵関数ｘｏｒ値Enc（Ｋｄ_c1，Ｋｍ’ xor バージョン番号），…，Enc（Ｋｄ_cy，Ｋｍ’ xor バージョン番号）を生成する機能と、これらバージョン番号、検証データ、暗号化メディア鍵ｘｏｒ値及び暗号化メディア鍵関数ｘｏｒ値からなるメディア鍵ブロックＭＫＢを生成する機能とをもっている。
【０１１７】
ここで、本実施形態のメディア鍵ブロックＭＫＢは、第１の実施形態とは異なり、記録媒体無効化リスト及び鍵生成センタ署名を含まず、図１３に示すように、バージョン番号、検証データ（Verification Data）、暗号化メディア鍵ｘｏｒ値及び暗号化メディア鍵関数ｘｏｒ値を備えている。
【０１１８】
バージョン番号及び検証データEnc（Ｋｍ，固定データ），Enc（Ｋｍ’，固定データ）は、前述した通りである。
【０１１９】
暗号化メディア鍵ｘｏｒ値Enc（Ｋｄ_h1，Ｋｍ xor バージョン番号），…，Enc（Ｋｄ_hx，Ｋｍ xor バージョン番号）は、メディア鍵ｘｏｒ値（Ｋｍ xor バージョン番号）を所定のデバイス鍵Ｋｄ_h1，…，Ｋｄ_hxで暗号化したものである。メディア鍵ｘｏｒ値は、メディア鍵Ｋｍとバージョン番号との排他的論理和の算出結果であり、暗号化メディア鍵ｘｏｒ値をデバイス鍵Ｋｄ_h1，…，Ｋｄ_hxにより復号することにより、復元可能となっている。メディア鍵Ｋｍは、メディア鍵ｘｏｒ値（Ｋｍ xor バージョン番号）と、バージョン番号との排他的論理和の算出結果として復元可能となっている。
【０１２０】
暗号化メディア鍵関数ｘｏｒ値Enc（Ｋｄ_c1，Ｋｍ’ xor バージョン番号），…，Enc（Ｋｄ_cx，Ｋｍ’ xor バージョン番号）は、メディア鍵関数ｘｏｒ値（Ｋｍ’ xor バージョン番号）を所定のデバイス鍵Ｋｄ_c1，…，Ｋｄ_cyで暗号化したものである。メディア鍵関数ｘｏｒ値は、メディア鍵関数値Ｋｍ’とバージョン番号との排他的論理和の算出結果であり、暗号化メディア鍵関数ｘｏｒ値をデバイス鍵Ｋｄ_c1，…，Ｋｄ_cyにより復号することにより、復元可能となっている。メディア鍵関数Ｋｍ’は、メディア鍵関数ｘｏｒ値（Ｋｍ’ xor バージョン番号）と、バージョン番号との排他的論理和の算出結果として復元可能となっている。
【０１２１】
つまり、本実施形態のメディア鍵ブロックＭＫＢはホスト計算機６００に格納されるデバイス鍵Ｋｄ_hからメディア鍵Ｋｍと後述するようにメディア鍵関数値Ｋｍ’の双方が導出できるのに対し、記憶媒体７００に格納されるデバイス鍵Ｋｄ_ｃからはメディア鍵関数値Ｋｍ’のみが導出できる特徴がある。
【０１２２】
なお、不正なホスト計算機と認定されたものに紐づいているデバイス鍵Ｋｄ_h1，…，Ｋｄ_hxからは正しいメディア鍵Ｋｍが導出されないようになっている。さらに、不正な記憶媒体として認定されたものに紐づいているデバイス鍵Ｋｄ_cからは正しいメディア鍵Ｋｍ’が導出されないようになっている。
【０１２３】
バージョン番号生成部５３０は、ＭＫＢ処理部５２０からバージョン番号生成要求を受けると、ＭＫＢの最新のバージョン番号を生成してＭＫＢ生成部５２０に送出する機能をもっている。
【０１２４】
Ｋｍ生成部５４０は、乱数生成によりメディア鍵Ｋｍを生成する機能と、このメディア鍵ＫｍをＭＫＢ生成部５２０及び一方向性関数算出部５５０に送出する機能とをもっている。
【０１２５】
一方向性関数算出部５５０は、Ｋｍ生成部５４０から受けたメディア鍵Ｋｍの一方向関数を演算し、演算結果としてのメディア鍵関数値Ｋｍ’を算出する機能と、このメディア鍵関数値Ｋｍ’をＭＫＢ生成部５２０に送出する機能とをもっている。なお、メディア鍵関数値Ｋｍ’は、メディア鍵ハッシュ値Ｋｍ’と呼んでもよい。
【０１２６】
メディアＩＤ生成部５６０は、前述同様に、続き番号の発行等により、過去に発生させたメディアＩＤと重ならないようにメディアＩＤを生成する機能をもっている。
【０１２７】
ホスト計算機６００は、更新可能メモリ６０１、更新不可メモリ６０２、ＭＫＢ処理部６１０、ＭＫＢ比較部６２０、一方向性関数算出部６３０、Ｋｍｕ’作成部６４０及びＡＫＥ実行部６５０を備えて構成されている。なお、一方向性関数算出部６３０は省略してもよく、この場合、メディア鍵関数値Ｋｍ’に代えてメディア鍵Ｋｍが用いられると共に、メディア固有鍵Ｋｍｕ’＝one way（Ｋｍ’，メディアＩＤ）に代えてメディア固有鍵Ｋｍｕ＝one way（Ｋｍ，メディアＩＤ）が用いられる。
【０１２８】
更新可能メモリ６０１は、各部６１０〜６５０から読出／書込可能であって更新可能なメモリであり、メディア鍵ブロックＭＫＢが保存されている。更新可能とは、前述同様に、メディア鍵ブロックＭＫＢが書換え可能であることを意味する。
【０１２９】
更新不可メモリ６０２は、各部６１０〜６５０から読出可能であって更新不可能なメモリであり、１つのデバイス鍵Ｋｄ_hが保存されている。なお、１つのデバイス鍵Ｋｄ_hは、ｘ個のデバイス鍵Ｋｄ_h1〜Ｋｄ_hxのうち、いずれでもよい。また、更新不可能とは、デバイス鍵及びメディアＩＤの書換えが不可能であることを意味する。
【０１３０】
ＭＫＢ処理部６１０は、更新不可メモリ６０２内のデバイス鍵Ｋｄ_hに基づいて、記録媒体７００からのメディア鍵ブロックＭＫＢをＭＫＢ処理する機能と、記録媒体７００からのメディア鍵ブロックＭＫＢをＭＫＢ比較部６２０に送出する機能と、このＭＫＢ処理によって得られたメディア鍵Ｋｍを一方向性関数算出部２４０に送出する機能とをもっている。
【０１３１】
ＭＫＢ比較部６２０は、ＭＫＢ処理部６１０から受けた記録媒体７００からのメディア鍵ブロックＭＫＢのバージョン番号と、更新可能メモリ６０１内のメディア鍵ブロックＭＫＢのバージョン番号とを互いに比較する機能と、この比較の結果、両者のバージョン番号が同じ場合又更新可能メモリ２０１内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合には、メディア鍵ブロックＭＫＢの更新処理を実行しない機能と、この比較の結果、記録媒体７００から読み出したメディア鍵ブロックＭＫＢのバージョン番号が新しい場合には、更新可能メモリ６０１内のメディア鍵ブロックＭＫＢを記録媒体７００からのメディア鍵ブロックＭＫＢに書き換える機能とをもっている。
【０１３２】
一方向性関数算出部６３０は、ＭＫＢ処理部６１０から送出されたメディア鍵Ｋｍの一方向性関数を演算してメディア鍵関数値Ｋｍ’を作成する機能と、このメディア鍵関数値Ｋｍ’をＫｍｕ’作成部６４０に送出する機能とをもっている。
【０１３３】
Ｋｍｕ’作成部６４０は、記録媒体７００から読み出されたメディアＩＤと、一方向性関数算出部６３０から受けたメディア鍵関数値Ｋｍ’とに基づいて一方向性関数one way()を計算することにより、メディア固有鍵Ｋｍｕ’＝one way（Ｋｍ’，メディアＩＤ）を作成する機能と、このメディア固有鍵Ｋｍｕ’をＡＫＥ実行部６５０に送出する機能とをもっている。
【０１３４】
ＡＫＥ実行部６５０は、Ｋｍｕ’作成部６４０から受けたメディア固有鍵Ｋｍｕ’に基づいて、記録媒体７００との間でＡＫＥ処理を実行する機能をもっている。
【０１３５】
記録媒体７００は、更新可能メモリ７０１、更新不可メモリ７０２、ＭＫＢ処理部７１０、ＭＫＢ比較部７２０、ＡＫＥ実行部７３０及びＫｍｕ’作成部７４０を備えて構成されている。
【０１３６】
更新可能メモリ７０１は、各部７１０〜７４０から読出／書込可能であって更新可能なメモリであり、メディア鍵ブロックＭＫＢ及びメディア鍵関数値Ｋｍ’が保存されている。なお、メディア鍵関数値Ｋｍ’に代えて、メディア鍵Ｋｍを保存してもよい。ここで、更新可能とは、メディア鍵ブロックＭＫＢ及びメディア鍵関数値Ｋｍ’が書換え可能であることを意味する。
【０１３７】
更新不可メモリ７０２は、各部７１０〜７４０から読出可能であって更新不可能なメモリであり、デバイス鍵Ｋｄ_c及びメディアＩＤが保存されている。ここで、更新不可能とは、デバイス鍵Ｋｄ_c及びメディアＩＤの書換えが不可能であることを意味する。
【０１３８】
ＭＫＢ処理部７１０は、更新不可メモリ７０２内のデバイス鍵Ｋｄ_cに基づいて、ホスト計算機６００からのメディア鍵ブロックＭＫＢをＭＫＢ処理する機能と、記録媒体７００からのメディア鍵ブロックＭＫＢをＭＫＢ比較部７２０に送出する機能と、ＭＫＢ比較部７２０による比較の結果、ホスト計算機６００のＭＫＢのバージョン番号が新しい場合には、ホスト計算機６００からのＭＫＢ内の暗号化メディア鍵関数ｘｏｒ値Enc（Ｋｄ_c，Ｋｍ’ xor バージョン番号）を、更新不可メモリ７０２内のデバイス鍵Ｋｄ_cで復号する機能と、この復号したメディア鍵関数ｘｏｒ値と、ホスト計算機６００からのＭＫＢ内のバージョン番号との排他的論理和を算出し、この算出によりメディア鍵関数値Ｋｍ’を得る機能と、このメディア鍵関数値Ｋｍ’をホスト計算機６００からのメディア鍵ブロックＭＫＢ内の検証データEnc（Ｋｍ’，固定データ）で検証する機能と、この検証が成功すると、更新可能メモリ７０１内のメディア鍵ブロックＭＫＢ及びメディア鍵関数値Ｋｍ’を、ホスト計算機６００から受けたメディア鍵ブロックＭＫＢ及びこのＭＫＢから得られたメディア鍵関数値Ｋｍ’に書き換える機能とをもっている。なお、一方向性関数算出部５５０，６３０が省略される場合、暗号化メディア鍵関数ｘｏｒ値Enc（Ｋｄ_c，Ｋｍ’ xor バージョン番号）、メディア鍵関数値Ｋｍ’及び検証データEnc（Ｋｍ’，固定データ）に代えて、暗号化メディア鍵ｘｏｒ値Enc（Ｋｄ_c，Ｋｍ xor バージョン番号）、メディア鍵Ｋｍ及び検証データEnc（Ｋｍ，固定データ）が用いられる。
【０１３９】
ＭＫＢ比較部７２０は、ＭＫＢ処理部７１０から受けたホスト計算機６００からのメディア鍵ブロックＭＫＢのバージョン番号と、更新可能メモリ７０１内のメディア鍵ブロックのバージョン番号とを互いに比較する機能と、比較結果をＭＫＢ処理部７１０に送出する機能とをもっている。
【０１４０】
ＡＫＥ実行部７３０は、Ｋｍｕ’作成部７４０から受けたメディア固有鍵Ｋｍｕ’に基づいて、ホスト計算機６００との間でＡＫＥ処理を実行する機能をもっている。
【０１４１】
Ｋｍｕ’作成部７４０は、ＭＫＢ処理部７１０による書換え後の更新可能メモリ７０１内のメディア鍵関数値Ｋｍ’と、更新不可メモリ７０２内のメディアＩＤとの一方向性関数を演算してメディア固有鍵Ｋｍｕ’を作成する機能と、このメディア固有鍵Ｋｍｕ’をＡＫＥ実行部７３０に送出する機能とをもっている。なお、一方向性関数算出部５５０，６３０が省略される場合、メディア鍵関数値Ｋｍ’及びメディア固有鍵Ｋｍｕ’に代えて、メディア鍵Ｋｍ及びメディア固有鍵Ｋｍｕが用いられる。
【０１４２】
次に、以上のように構成された認証システムの動作を図１４乃至図２０を用いて説明する。始めに、鍵生成センタ装置５００は初期設定と鍵等のデータ配布を行う。ホスト計算機製造者及び記録媒体製造者は、それぞれ鍵生成センタ装置５００から配布されたデータを各ホスト計算機６００及び各記録媒体７００に記録する。但し、鍵生成センタ装置５００が鍵等のデータを各ホスト計算機６００及び各記録媒体７００に記録する構成としてもよい。また、各ホスト計算機６００及び各記録媒体７００は、それぞれ流通してユーザに入手され、ユーザの手元でホスト計算機−記録媒体間の認証処理が実行される。以下、順次説明する。
【０１４３】
（初期設定とデータ配布）
鍵生成センタ装置５００は、図１４及び図１５に示すように、この認証システムに用いられるデバイス鍵Ｋｄを将来利用される分（Ｋｄ_h1〜Ｋｄ_hx，Ｋｄ_c1〜Ｋｄ_cy）も含めて生成しておき（ＳＴ１０１）、これらデバイス鍵Ｋｄ_h1〜Ｋｄ_hx，Ｋｄ_c1〜Ｋｄ_cyをデバイス鍵ＤＢに保存しておく。
【０１４４】
また、鍵生成センタ装置５００においては、Ｋｍ生成部５４０が、乱数を生成してメディア鍵Ｋｍとし（ＳＴ１０２）、このメディア鍵ＫｍをＭＫＢ生成部５２０及び一方向性関数算出部５５０に送出する。なお、この乱数は外部から与えられてもよい。
【０１４５】
一方向性関数算出部５５０は、このメディア鍵Ｋｍに基づいて一方向性関数を算出することにより、メディア鍵関数値Ｋｍ’を作成し（ＳＴ１０３）、このメディア鍵関数値Ｋｍ’をＭＫＢ生成部５２０に送出する。
【０１４６】
ＭＫＢ生成部５２０は、バージョン番号生成部５３０にバージョン番号生成要求を送出する。バージョン番号生成部５３０は、バージョン番号生成要求を受けると、ＭＫＢのバージョン番号を生成してＭＫＢ生成部５２０に送出する。
【０１４７】
次に、ＭＫＢ生成部５２０は、バージョン番号を受けると、メディア鍵Ｋｍと当該バージョン番号との排他的論理和ｘｏｒを算出し、この算出によりメディア鍵ｘｏｒ値を得る。
【０１４８】
ＭＫＢ生成部５２０は、デバイス鍵ＤＢ５１０内のデバイス鍵Ｋｄ_h1〜Ｋｄ_hxに基づいて、メディア鍵ｘｏｒ値を暗号化し、暗号化メディア鍵ｘｏｒ値Enc（Ｋｄ_h1，Ｋｍ xor バージョン番号），…，Enc（Ｋｄ_hx，Ｋｍ xor バージョン番号）を生成する。
【０１４９】
同様に、ＭＫＢ生成部５２０は、メディア鍵関数値Ｋｍ’とバージョン番号との排他的論理和ｘｏｒを算出し、この算出によりメディア鍵関数ｘｏｒ値を得る。
【０１５０】
ＭＫＢ生成部５２０は、デバイス鍵ＤＢ５１０内のデバイス鍵Ｋｄ_c1〜Ｋｄ_cyに基づいて、メディア鍵関数ｘｏｒ値を暗号化し、暗号化メディア鍵関数ｘｏｒ値Enc（Ｋｄ_c1，Ｋｍ’ xor バージョン番号），…，Enc（Ｋｄ_cy，Ｋｍ’ xor バージョン番号）を生成する。
【０１５１】
さらに、ＭＫＢ生成部５２０は、所定の固有データをそれぞれメディア鍵Ｋｍ及びメディア鍵関数値Ｋｍ’により暗号化して検証データEnc（Ｋｍ，固定データ），Enc（Ｋｍ’，固定データ）を生成する。
【０１５２】
しかる後、ＭＫＢ生成部５２０は、図１３に示すように、これらバージョン番号、検証データ、暗号化メディア鍵ｘｏｒ値及び暗号化メディア鍵関数ｘｏｒ値からなるメディア鍵ブロックＭＫＢを生成する（ＳＴ１０４）。
【０１５３】
以上のようなデバイス鍵Ｋｄ_h1〜Ｋｄ_hxのうちのいずれか１つのデバイス鍵Ｋｄ_h、及びメディア鍵ブロックＭＫＢは、ホスト計算機製造者を介してホスト計算機６００の更新可能メモリ６０１又は更新不可メモリ６０２に書き込まれる（ＳＴ１０５）。なお、デバイス鍵の与え方は、前述同様にシステム運用上で決定される。また、メディア鍵ブロックＭＫＢは、前述同様に、ユーザが鍵生成センタ装置５００からダウンロードしてホスト計算機６００に書き込んでもよい。
【０１５４】
続いて、記録媒体７００に与えるデータの作成手順を述べる。
【０１５５】
鍵生成センタ装置５００においては、メディアＩＤ生成部５６０が続き番号の発行等によりメディアＩＤを生成する（ＳＴ１０６）。なお、メディアＩＤは、鍵生成センタ装置５００内で生成する場合に限らず、外部から与えられてもよい。
【０１５６】
以上のようなデバイス鍵Ｋｄ_c1〜Ｋｄ_cyのうちのいずれか１つのデバイス鍵Ｋｄ_c、メディアＩＤ、メディア鍵ブロックＭＫＢ、このメディア鍵ブロックＭＫＢに対応したメディア鍵関数値Ｋｍ’は、記録媒体製造者を介して記録媒体７００の更新可能メモリ７０１又は更新不可メモリ７０２に書き込まれる（ＳＴ１０７）。なお、メディア鍵関数値Ｋｍ’の代わりにあらかじめ計算しておいたメディア固有鍵Ｋｍｕ’としてもよい。
【０１５７】
（ホスト計算機−記録媒体間の認証）
始めに概要を述べる。  
ホスト計算機６００と記録媒体７００間の認証動作は、前述同様に、ホスト計算機６００内のメディア鍵ブロックＭＫＢのバージョン番号と、記録媒体７００内のメディア鍵ブロックＭＫＢのバージョン番号とを比較した結果（１）〜（３）に応じて異なる。また、ＭＫＢ更新処理の終了後、前述同様に、認証及び鍵交換処理ＡＫＥが実行される。
【０１５８】
次に、上述した（１）〜（３）の場合について詳細に説明する。  
（１）ホスト計算機６００と記録媒体７００のメディア鍵ブロックＭＫＢのバージョン番号が同じ場合（図１６及び図１７参照）。
【０１５９】
ホスト計算機６００は、記録媒体７００から更新可能メモリ７０１内のメディア鍵ブロックＭＫＢと更新不可メモリ７０２内のメディアＩＤを読み出す（ＳＴ１１０）。
【０１６０】
続いて、ホスト計算機６００においては、ＭＫＢ処理部６１０が、更新不可メモリ６０２内のデバイス鍵Ｋｄ_hに基づいて、記録媒体７００からのメディア鍵ブロックＭＫＢをＭＫＢ処理すると共に（ＳＴ１２０）、記録媒体７００からのメディア鍵ブロックＭＫＢをＭＫＢ比較部６２０に送出する。
【０１６１】
ＭＫＢ比較部６２０は、記録媒体７００からのメディア鍵ブロックＭＫＢのバージョン番号と、更新可能メモリ６０１内のメディア鍵ブロックＭＫＢのバージョン番号とを互いに比較する（ＳＴ１３０）。
【０１６２】
この比較の結果、両者のバージョン番号が同じ場合（ＳＴ１４０）、メディア鍵ブロックＭＫＢの更新処理を実行しない。
【０１６３】
次に、ホスト計算機６００においては、ＭＫＢ処理部６１０は、ステップＳＴ１２０のＭＫＢ処理によって得られたメディア鍵Ｋｍを一方向性関数算出部６３０に送出する。
【０１６４】
一方向性関数算出部６３０は、このメディア鍵Ｋｍの一方向性関数を演算してメディア鍵関数値Ｋｍ’を作成し（ＳＴ１４１）、このメディア鍵関数値Ｋｍ’をＫｍｕ’作成部６４０に送出する。
【０１６５】
Ｋｍｕ’作成部６４０は、記録媒体７００から読み出されたメディアＩＤと、このメディア鍵関数値Ｋｍ’とに基づいて一方向性関数one way()を計算することにより、メディア固有鍵Ｋｍｕ’＝one way（Ｋｍ’，メディアＩＤ）を作成する（ＳＴ１４２）。メディア固有鍵Ｋｍｕ’があらかじめ記録されている場合にはこの処理を省略することができる。このメディア固有鍵Ｋｍｕ’は、Ｋｍｕ’作成部６４０からＡＫＥ実行部６５０に送出される。
【０１６６】
ＡＫＥ実行部６５０は、このメディア固有鍵Ｋｍｕ’に基づいて、記憶媒体７００のＡＫＥ実行部７３０との間でＡＫＥ処理を実行する。
【０１６７】
なお、記憶媒体７００のＫｍｕ’作成部７４０は、前述同様に、ＡＫＥで利用される共通のメディア固有鍵Ｋｍｕ’をメディア鍵関数値Ｋｍ’とメディアＩＤから計算してＡＫＥ実行部３３０に入力している。このため、記憶媒体７００のＡＫＥ実行部７３０は、共通のメディア固有鍵Ｋｍｕ’を利用可能となっている。
【０１６８】
（２）記録媒体のメディア鍵ブロックＭＫＢのバージョン番号がホスト計算機のものよりも新しい場合（図１８及び図１７参照）。
【０１６９】
ホスト計算機６００は、前述同様に、ステップＳＴ１１０〜ＳＴ１３０を実行し、ステップＳＴ１３０の比較処理の結果、記録媒体７００からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合（ＳＴ１４０ａ）であったとする。
【０１７０】
この場合、ＭＫＢ比較部６２０は、更新可能メモリ６０１内のメディア鍵ブロックＭＫＢを記録媒体７００からのメディア鍵ブロックＭＫＢに書き換える（ＳＴ１４０ａ−１）。
【０１７１】
この書き換えの後、ホスト計算機６００は、前述した（１）と同様に、ステップＳＴ１４１〜ＳＴ１４２の処理を実行した後、ＡＫＥ処理を実行する。
【０１７２】
（３）ホスト計算機のメディア鍵ブロックＭＫＢのバージョン番号が記録媒体のものよりも新しい場合（図１９及び図２０参照）。
【０１７３】
ホスト計算機６００は、前述同様に、ステップＳＴ１１０〜ＳＴ１３０を実行し、ステップＳＴ１３０の比較処理の結果、ホスト計算機６００内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合（ＳＴ１４０ｂ）であったとする。
【０１７４】
この場合、ホスト計算機６００は、更新可能メモリ６０１内のメディア鍵ブロックＭＫＢを記録媒体７００に送信する（ＳＴ１５０）。
【０１７５】
記録媒体７００においては、メディア鍵ブロックＭＫＢを受信すると、ＭＫＢ処理部７１０が、更新不可メモリ７０２内のデバイス鍵Ｋｄ_cに基づいて、ホスト計算機６００からのメディア鍵ブロックＭＫＢをＭＫＢ処理すると共に（ＳＴ１５１）、記録媒体７００からのメディア鍵ブロックＭＫＢをＭＫＢ比較部７２０に送出する。
【０１７６】
ＭＫＢ比較部７２０は、ホスト計算機６００からのメディア鍵ブロックＭＫＢのバージョン番号と、更新可能メモリ７０１内のメディア鍵ブロックのバージョン番号とを互いに比較し（ＳＴ１５２）、比較結果をＭＫＢ処理部７１０に送出する。
【０１７７】
この比較の結果、記録媒体７００のＭＫＢのバージョン番号が新しいか同じ場合、処理を中止する。ホスト計算機６００のＭＫＢのバージョン番号が新しい場合は先に進む。
【０１７８】
ここで、ホスト計算機６００のＭＫＢのバージョン番号が新しい場合、ＭＫＢ処理部７１０としては、ＭＫＢのフォーマットに応じて４通りの処理（１）〜（４）が可能である。
【０１７９】
（１）図１３に示すＭＫＢの場合、ＭＫＢ内の暗号化メディア鍵関数ｘｏｒ値Enc（Ｋｄ_c，Ｋｍ’ xor バージョン番号）から復号処理及びｘｏｒ演算により、メディア鍵関数値Ｋｍ’を求める処理と、求めたメディア鍵関数値Ｋｍ’をＭＫＢ内の検証データEnc（Ｋｍ’，固定データ）で検証する処理。
【０１８０】
（２）図１３に示す暗号化メディア鍵関数ｘｏｒ値Enc（Ｋｄ_c，Ｋｍ’ xor バージョン番号）に代えて、暗号化メディア鍵関数可逆演算値Enc（Ｋｄ_c，Ｋｍ’ ＋ バージョン番号）を用いる場合、この暗号化メディア鍵関数可逆演算値Enc（Ｋｄ_c，Ｋｍ’ ＋ バージョン番号）から復号処理及び可逆演算（例、加算“＋”に対する減算“−”）により、メディア鍵関数値Ｋｍ’を求める処理と、求めたメディア鍵関数値Ｋｍ’をＭＫＢ内の検証データEnc（Ｋｍ’，固定データ）で検証する処理。なお、可逆演算は、加算“＋”に対する減算“−”、又はその逆（減算“−”に対する加算“＋”）に限らず、任意の演算が適用可能となっている。なお、上記（１）の排他的論理和も可逆演算の一例である。
【０１８１】
（３）図１３に示す暗号化メディア鍵関数ｘｏｒ値Enc（Ｋｄ_c，Ｋｍ’ xor バージョン番号）に代えて、メディア鍵関数ｘｏｒ値にバージョン番号を連接した連接データを暗号化されてなる暗号化メディア鍵関数ｘｏｒ値Enc（Ｋｄ_c，Ｋｍ’ xor バージョン番号‖バージョン番号）を用いる場合、この暗号化メディア鍵関数ｘｏｒ値Enc（Ｋｄ_c，Ｋｍ’ xor バージョン番号‖バージョン番号）から復号処理により、連接データ“Ｋｍ’ xor バージョン番号‖バージョン番号”を求める処理と、この連接データの一部の“バージョン番号”と、ＭＫＢ内のバージョン番号とを比較して両者の一致によりバージョン番号が改ざんされていないことを確認する処理と、この処理の後、上記（１）と同様にｘｏｒ演算によりメディア鍵関数値Ｋｍ’を求める処理と、求めたメディア鍵関数値Ｋｍ’をＭＫＢ内の検証データEnc（Ｋｍ’，固定データ）で検証する処理。
【０１８２】
（４）図１３に示す検証データEnc（Ｋｍ’，固定データ）に代えて、固定データにバージョン番号を連接した連接データが暗号化されてなる検証データEnc（Ｋｍ’，固定データ‖バージョン番号）を用いる場合、上記（１）又は（２）と同様の処理により、メディア鍵関数値Ｋｍ’を求める処理と、求めたメディア鍵関数値Ｋｍ’に基づいてＭＫＢ内の検証データEnc（Ｋｍ’，固定データ‖バージョン番号）を復号する処理と、復号された連接データ“固定データ‖バージョン番号”の一部の“バージョン番号”と、ＭＫＢ内のバージョン番号とを比較して両者の一致によりバージョン番号が改ざんされていないことを確認する処理と、この確認の後、連接データの一部の“固定データ”を検証する処理。
【０１８３】
但し、ここでは第１番目の処理（１）を実行する場合を述べる。
【０１８４】
次に、ＭＫＢ処理部７１０は、ホスト計算機６００からのＭＫＢ内の暗号化メディア鍵関数ｘｏｒ値Enc（Ｋｄ_c，Ｋｍ’ xor バージョン番号）を、更新不可メモリ７０２内のデバイス鍵Ｋｄ_cで復号する。続いて、ＭＫＢ処理部７１０は、この復号したメディア鍵関数ｘｏｒ値と、ホスト計算機６００からのＭＫＢ内のバージョン番号との排他的論理和を算出し、この算出によりメディア鍵関数値Ｋｍ’を得る。
【０１８５】
しかる後、ＭＫＢ処理部７１０は、このメディア鍵関数値Ｋｍ’をホスト計算機６００からのメディア鍵ブロックＭＫＢ内の検証データEnc（Ｋｍ’，固定データ）で検証する。この検証は、前述同様に、復号処理等により得られたメディア鍵関数値Ｋｍ’に基づいて検証データEnc（Ｋｍ’，固定データ）を復号し、この復号により得られた固定データと、予めＭＫＢ処理部７１０が保持する固定データとを比較し、両固定データが一致した場合には検証成功と判定し、両固定データが不一致の場合には検証失敗と判定する。
【０１８６】
この検証が成功すると、ＭＫＢ処理部７１０は、更新可能メモリ７０１内のメディア鍵ブロックＭＫＢ及びメディア鍵関数値Ｋｍ’を、ホスト計算機６００から受けたメディア鍵ブロックＭＫＢ及びこのＭＫＢから得られたメディア鍵関数値Ｋｍ’に書き換える（ＳＴ１５３）。Ｋｍｕ’作成部７４０は、ステップＳＴ１５３の書換え後のメディア鍵関数値Ｋｍ’と、更新不可メモリ７０２内のメディアＩＤとの一方向性関数を演算してメディア固有鍵Ｋｍｕ’を作成する。
【０１８７】
この検証が失敗すると、記憶媒体７００はＭＫＢ更新処理を中止する。つまり、記憶媒体７００の更新不可メモリ７０２に保持されているデバイス鍵Ｋｄ_cは不正な記憶媒体として排除されており、ＭＫＢの更新ができない。なお、ここで続くＡＫＥ処理を行うかどうかは、例えば（ａ）そのまま処理を進める、（ｂ）処理を中止する、又は（ｃ）記録媒体７００からの読出処理を行うが書込処理を行わない、などが運用上のポリシーに基づいて適宜実行可能である。
【０１８８】
一方、ホスト計算機６００は、ステップＳＴ１５０のデータ送信後、ステップＳＴ１１０に戻って処理を再実行する。記録媒体７００での更新が成功した場合には、再実行時のステップＳＴ１３０の比較結果が両者のバージョン番号が同じ場合となるため、（１）の処理［ホスト計算機６００と記録媒体７００のメディア鍵ブロックＭＫＢのバージョン番号が同じ場合］が実行される。また、記録媒体７００内で処理を中止した場合には、処理の中止に関する情報をメッセージとしてホスト計算機６００に通知する構成としてもよい。
【０１８９】
上述したように本実施形態によれば、ホスト計算機６００内のメディア鍵ブロックＭＫＢのバージョン番号よりも記録媒体７００からのメディア鍵ブロックＭＫＢのバージョン番号が新しい場合において、デバイス鍵Ｋｄ_hによるメディア鍵ブロックＭＫＢのＭＫＢ処理という不正機器を排除する既存の仕組みを維持しつつ、ホスト計算機がＡＫＥ以外の処理を実行することにより記録媒体の負荷を軽減するので、記録媒体とホスト計算機の間の相互認証処理の負荷を軽減できる。
【０１９０】
同様に、記録媒体７００からのメディア鍵ブロックＭＫＢのバージョン番号よりもホスト計算機６００内のメディア鍵ブロックＭＫＢのバージョン番号が新しい場合において、デバイス鍵Ｋｄ_hによるメディア鍵ブロックＭＫＢのＭＫＢ処理という不正機器を排除する既存の仕組みを維持しつつ、従来の両者が公開鍵暗号方式の暗号化処理及び復号処理をそれぞれ実行する場合に比べて記録媒体の負荷を軽減するので、記録媒体とホスト計算機の間の相互認証処理の負荷を軽減できる。
【０１９１】
また、記録媒体７００側の計算処理を軽減しつつホスト計算機６００と記録媒体７００のメディア鍵ブロックＭＫＢを最新にする方法を実現することができる。
【０１９２】
また、記録媒体７００とホスト計算機６００で、最新のメディア鍵ブロックＭＫＢを所有するようにし、ホスト計算機６００側でメディア鍵ブロックＭＫＢを更新するべきか否かを判断し、ホスト計算機６００側のメディア鍵ブロックＭＫＢを更新するか、記録媒体７００のメディア鍵ブロックＭＫＢを更新するよう処理を行う。
【０１９３】
また、記録媒体７００での計算処理を軽減しつつ相互認証処理をメディア鍵ブロックＭＫＢの利用により、データの正当性、ホスト計算機６００と記録媒体７００の認証制御を同時に達成することができる。
【０１９４】
なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤなど）、光磁気ディスク（ＭＯ）、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【０１９５】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【０１９６】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーティングシステム）や、データベース管理ソフト、ネットワークソフト等のＭＷ（ミドルウェア）等が上記実施形態を実現するための各処理の一部を実行しても良い。
【０１９７】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【０１９８】
また、記憶媒体は１つに限らず、複数の媒体から上記実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【０１９９】
尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記実施形態における各処理を実行するものであって、パソコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【０２００】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【０２０１】
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
【図面の簡単な説明】
【０２０２】
【図１】本発明の第１の実施形態に係る認証システムの全体概要図である。
【図２】同実施形態におけるＭＫＢデータの構成例を示す模式図である。
【図３】同実施形態における記録媒体証明書データの構成例を示す模式図である
【図４】同実施形態における鍵生成センタの動作を説明するためのシーケンス図である。
【図５】同実施形態における初期設定とデータ配布を説明するための模式図である。
【図６】同実施形態におけるホスト計算機の動作を説明するためのシーケンス図である。
【図７】同実施形態における認証処理を説明するための模式図である。
【図８】同実施形態におけるホスト計算機の動作を説明するためのシーケンス図である。
【図９】同実施形態におけるホスト計算機の動作を説明するためのシーケンス図である。
【図１０】同実施形態における記録媒体の動作を説明するためのシーケンス図である。
【図１１】同実施形態における認証処理を説明するための模式図である。
【図１２】本発明の第２の実施形態に係る認証システムの全体概要図である。
【図１３】同実施形態におけるＭＫＢデータの構成例を示す模式図である。
【図１４】同実施形態における鍵生成センタの動作を説明するためのシーケンス図である。
【図１５】同実施形態における初期設定とデータ配布を説明するための模式図である。
【図１６】同実施形態におけるホスト計算機の動作を説明するためのシーケンス図である。
【図１７】同実施形態における認証処理を説明するための模式図である。
【図１８】同実施形態におけるホスト計算機の動作を説明するためのシーケンス図である。
【図１９】同実施形態におけるホスト計算機及び記録媒体の動作を説明するためのシーケンス図である。
【図２０】同実施形態における認証処理を説明するための模式図である。
【符号の説明】
【０２０３】
１００，５００…鍵生成センタ装置、１０１…鍵ペア記憶部、１１０，５１０…デバイス鍵ＤＢ、１２０，５２０…ＭＫＢ生成部、１３０，５６０…メディアＩＤ生成部、１４０…公開鍵生成部、１５０，２４０，５５０，６３０…一方向性関数算出部、１６０…証明書生成部、２００，６００…ホスト計算機、２０１，３０１，６０１，７０１…更新可能メモリ、２０２，３０２，６０２，７０２…更新不可メモリ、２１０，６１０，７１０…ＭＫＢ処理部、２２０…ＭＫＢ検証・更新部、２３０…記録媒体検証部、２５０…証明書検証部、２６０，３４０，６４０，７４０…Ｋｍｕ’作成部、２７０，３３０，６５０，７３０…ＡＫＥ実行部、２８０…公開鍵暗号処理部、３００，７００…記録媒体、３１０…データ検証処理部、３２０…公開鍵復号処理部，５３０…バージョン番号生成部、５４０…Ｋｍ生成部、６２０，７２０…ＭＫＢ比較部。
【図１】
0005025009.tif 000002
【図２】
0005025009.tif 000003
【図３】
0005025009.tif 000004
【図４】
0005025009.tif 000005
【図５】
0005025009.tif 000006
【図６】
0005025009.tif 000007
【図７】
0005025009.tif 000008
【図８】
0005025009.tif 000009
【図９】
0005025009.tif 000010
【図１０】
0005025009.tif 000011
【図１１】
0005025009.tif 000012
【図１２】
0005025009.tif 000013
【図１３】
0005025009.tif 000014
【図１４】
0005025009.tif 000015
【図１５】
0005025009.tif 000016
【図１６】
0005025009.tif 000017
【図１７】
0005025009.tif 000018
【図１８】
0005025009.tif 000019
【図１９】
0005025009.tif 000020
【図２０】
0005025009.tif 000021