(57)【特許請求の範囲】
【請求項１】
記録媒体装置に組み込まれ、前記記録媒体装置のアクセス制御を実行するコントローラであって、
コントローラ製造装置により埋め込まれたコントローラ鍵を保持する保持手段と、
正当な鍵発行局が前記コントローラ鍵を用いて鍵情報を暗号化した暗号化鍵情報を、前記鍵発行局から受け取る受取手段と、
当該コントローラの固有情報を用いて、受け取った前記暗号化鍵情報を変換し、個別変換鍵情報を生成する変換手段と
前記個別変換鍵情報を、前記記録媒体装置の記録デバイスに書き込む書込手段と
前記記録デバイスから前記個別変換鍵情報を読み出し、前記固有情報と前記コントローラ鍵とを用いて前記個別変換鍵情報を復号し、前記鍵情報を生成する復号手段とを備え、
前記鍵情報は、前記鍵発行局により生成され、前記記録媒体装置に記録されるデータの保護に用いられる
ことを特徴とするコントローラ。
【請求項２】
前記コントローラは、さらに、
前記鍵情報を用いて、前記記録媒体装置に記録されたデータを再生するホスト装置と相互認証を行い、前記ホスト装置と共通鍵を共有する相互認証手段を備える
ことを特徴とする請求項１に記載のコントローラ。
【請求項３】
前記変換手段は、
前記暗号化鍵情報を、前記保持手段が保持する前記コントローラ鍵を用いて復号する復号部と、
復号された鍵情報を、前記固有情報を用いて暗号化することにより、前記個別変換鍵情報を生成する暗号部とを備える
ことを特徴とする請求項１に記載のコントローラ。
【請求項４】
前記受取手段が前記鍵発行局から受け取る前記暗号化鍵情報には、前記鍵発行局による署名が付与されており、
前記コントローラは、さらに、
前記鍵発行局の公開鍵を用いて前記署名を検証し、前記署名の検証に失敗した場合に、前記暗号部による前記個別変換鍵情報の生成を停止させる認証手段を備える
ことを特徴とする請求項３に記載のコントローラ。
【請求項５】
前記保持手段は、さらに、コントローラ製造装置により生成されたコントローラ固有番号を保持しており、
前記コントローラは、さらに、
前記コントローラ固有番号に所定の一方向性関数を施し、前記固有情報を生成する演算手段を備える
ことを特徴とする請求項４に記載のコントローラ。
【請求項６】
前記受取手段が前記鍵発行局から受け取る前記暗号化鍵情報には、前記鍵発行局による署名が付与されており、
前記コントローラは、さらに、
前記鍵発行局の公開鍵を用いて前記署名を検証し、前記署名の検証に失敗した場合に、前記変換手段による前記個別変換鍵情報の生成を停止させる認証手段を備える
ことを特徴とする請求項１に記載のコントローラ。
【請求項７】
コントローラと記録デバイスとから構成される記録媒体装置であって、
前記コントローラは、
コントローラ製造装置により埋め込まれたコントローラ鍵を保持する保持手段と、
正当な鍵発行局が前記コントローラ鍵を用いて鍵情報を暗号化した暗号化鍵情報を、前記鍵発行局から受け取る受取手段と、
当該コントローラの固有情報を用いて、受け取った前記暗号化鍵情報を変換し、個別変換鍵情報を生成する変換手段と
前記個別変換鍵情報を、前記記録媒体装置の記録デバイスに書き込む書込手段と
前記記録デバイスから前記個別変換鍵情報を読み出し、前記固有情報と前記コントローラ鍵とを用いて前記個別変換鍵情報を復号し、前記鍵情報を生成する復号手段とを備え、
前記鍵情報は、前記鍵発行局により生成され、前記記録媒体装置に記録されるデータの保護に用いられる
ことを特徴とする記録媒体装置。
【請求項８】
前記コントローラは、さらに、
前記鍵情報を用いて、前記記録媒体装置に記録されたデータを再生するホスト装置と相互認証を行い、前記ホスト装置と共通鍵を共有する相互認証手段を備える
ことを特徴とする請求項７に記載の記録媒体装置。
【請求項９】
前記コントローラは、さらに、
前記変換手段により生成された前記個別変換鍵情報を、前記記録デバイスに書き込む書込手段を備え、
前記記録デバイスは、
前記個別変換鍵情報を格納する鍵格納部を備える
ことを特徴とする請求項７に記載の記録媒体装置。
【請求項１０】
前記記録デバイスは、さらに、
当該記録デバイスに記録されるデータの保護に用いられるメディアＩＤの少なくとも一部であって、前記鍵発行局により生成された部分メディアＩＤと前記鍵情報の少なくとも一部と前記鍵発行局による署名とを含むメディア証明書を格納する証明書格納部を備える
ことを特徴とする請求項９に記載の記録媒体装置。
【請求項１１】
前記コントローラは、さらに、
前記メディア証明書を用いてホスト装置による認証を受け、前記ホスト装置の公開鍵証明書を用いて、前記ホスト装置を認証する相互認証手段を備え、
相互認証手段による相互認証が成功した場合に、前記ホスト装置との間で処理を行う
ことを特徴とする請求項１０に記載の記録媒体装置。
【請求項１２】
コントローラと記録デバイスとから構成される記録媒体装置に記録されたデータを再生するホスト装置であって、
前記コントローラは、
コントローラ製造装置により埋め込まれたコントローラ鍵を保持する保持手段と、
正当な鍵発行局が前記コントローラ鍵を用いて鍵情報を暗号化した暗号化鍵情報を、前記鍵発行局から受け取る受取手段と、
当該コントローラの固有情報を用いて、受け取った前記暗号化鍵情報を変換し、個別変換鍵情報を生成する変換手段と
前記個別変換鍵情報を、前記記録媒体装置の記録デバイスに書き込む書込手段と
前記記録デバイスから前記個別変換鍵情報を読み出し、前記固有情報と前記コントローラ鍵とを用いて前記個別変換鍵情報を復号し、前記鍵情報を生成する復号手段とを備え、
前記鍵情報は、前記鍵発行局により生成され、前記記録媒体装置に記録されるデータの保護に用いられ、
前記ホスト装置は、
前記鍵発行局により生成されたホスト装置の鍵情報を格納するホスト鍵格納手段と、
前記鍵情報を用いて、前記記録媒体装置と相互認証を行い、前記記録媒体装置と共通鍵を共有する相互認証手段とを備える
ことを特徴とするホスト装置。
【請求項１３】
前記ホスト装置は、さらに、
前記相互認証の後、タイトル鍵が前記共通鍵で暗号化された暗号化タイトル鍵を前記記録媒体装置から受信し、受信した前記暗号化タイトル鍵を、前記共通鍵で復号する暗号化タイトル鍵復号手段と、
前記記録媒体装置の前記記録デバイスから、前記暗号化データを読み出し、読み出した前記暗号化データを、前記タイトル鍵を用いて復号し、復号されたデータを再生する再生手段とを備え、
前記タイトル鍵は、前記記録媒体装置の前記記録デバイスに格納されている暗号化データの復号に用いられる
ことを特徴とする請求項１２に記載のホスト装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル配信されるデジタルコンテンツを記録する記録媒体装置に組み込まれるコントローラ、記録媒体装置、記録媒体装置の製造システム、および記録媒体装置の製造方法に関し、特に、デジタルコンテンツの著作権者の権利を保護する技術に関する。
【背景技術】
【０００２】
映画や音楽等のデジタル著作物であるデジタルコンテンツを、ネットワーク経由で、記録装置（例えば、ＫＩＯＳＫ端末、パーソナルコンピュータ等）に、デジタル配信し、記録装置を用いて記録媒体装置に記録し、記録媒体装置に記録されたコンテンツを再生装置（例えば、音楽プレーヤ、映像表示用携帯端末等）で再生するといったデジタルコンテンツ配信サービスが普及しつつある。
【０００３】
このとき、デジタルコンテンツの著作権者の権利を保護するため、一度、記録媒体装置に記録されたデジタルコンテンツが、他の記録媒体装置にコピーされて再生されることを防止する技術が必要である。
特許文献１によると、記録媒体装置に、当該記録媒体固有の書き替え不可能な一意の媒体固有番号を格納する。許諾側では、この記録媒体の媒体固有番号をもとに媒体固有鍵を生成し、この媒体固有鍵を用いて、暗号化データを復号するための復号鍵を暗号化して許諾情報として記録媒体に書き込む。使用側では、記録媒体から媒体固有番号を読み込み、読み込んだ媒体固有番号をもとに媒体固有鍵を生成し、この媒体固有鍵によって許諾情報である暗号化された復号鍵を復号して元の復号鍵を生成し、この復号鍵によって暗号化データを復号して、平文の電子化データを生成している。
【０００４】
この技術によると、正規の記録媒体装置に記録された暗号化データ及び許諾情報を他の不正な記録媒体にコピーし、不正な記録媒体装置から暗号化データを復号しようとしても、正規の記録媒体装置の媒体固有番号を不正な記録媒体装置にコピーできないので、前記他の記録媒体装置から、正規の記録媒体装置の媒体固有番号を取得できず、許諾情報である暗号化された復号鍵を正しく復号できない。その結果、暗号化データを正しく復号できない。
【０００５】
ところで、記録媒体装置を販売するカードメーカーは、コントローラやフラッシュメモリなどの部品を部品メーカーから購入し、それらを組み立てて記録媒体装置を製造する。そして上述した媒体固有情報および媒体固有鍵などコンテンツの著作権者の権利を保護するために必要な情報を、組み立てた記録媒体装置に埋め込んだ後に販売する、現在、これら媒体固有情報や媒体固有鍵などのユニーク性やセキュリティの担保は、カードメーカーに委ねられている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】日本国特開平０５−２５７８１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
そのため、カードメーカーが、複数のメモリカードに同じ媒体固有情報や媒体固有鍵を格納したり、媒体固有情報や媒体固有鍵の値は異なるが、それらを容易に改ざん可能な状態で格納したりする不正行為を行うと、コンテンツの著作権者の権利が保護できないという問題がある。
本発明は、上記の問題点に鑑みなされたものであって、カードメーカーによる不正行為を防止し、コンテンツの著作権者の権利を保護することができるコントローラ、記録媒体装置、記録媒体装置の製造システム、および記録媒体装置の製造方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために、本発明は、記録媒体装置に組み込まれ、前記記録媒体装置のアクセス制御を実行するコントローラであって、コントローラ製造装置により生成されたコントローラ鍵を保持する保持手段と、正当な鍵発行局により生成され前記記録媒体装置に記録されるデータの保護に用いられる鍵情報が、前記鍵発行局により前記コントローラ鍵を用いて暗号化された暗号化鍵情報を受け取る受取手段と、当該コントローラの固有情報を用いて、受け取った前記暗号化鍵情報を変換し、個別変換鍵情報を生成する変換手段とを備えることを特徴とする。
【発明の効果】
【０００９】
上記の構成によると、コントローラは、保持手段に保持されているコントローラ鍵で暗号化された暗号化鍵情報を受け取るので、暗号化されていない状態の鍵情報の値がコントローラの外部に出力されることがない。よって、記録媒体装置を組み立てるカードメーカーが、複数の記録媒体装置に同一の鍵情報を埋め込むような不正行為を行うことは不可能である。
【００１０】
ところで、同一のロットで製造されるコントローラには、通常、同一のコントローラ鍵が埋め込まれる。そのため、鍵情報を単にコントローラ鍵で暗号化するだけでは、同一のロットで製造されたコントローラ間においては、他の記録媒体装置に埋め込まれた鍵情報を入手することが可能となり、コンテンツの著作権者の権利を十分に保護することができない。
【００１１】
そこで、前記変換手段がコントローラに固有の情報を用いて暗号化鍵情報を変換することにより、同一のロットで製造されたコントローラ間であっても、他の記録媒体装置に埋め込まれた鍵情報を入手することが不可能となり、コンテンツの著作権者の権利を確実に保護することが可能となる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態１における、鍵発行局、コントローラ製造者、認証ソフトベンダ、メディア組み立て業者、ホワイトリスト発行局、鍵配信サーバの全体構成図である。
【図２】本発明の実施の形態１における鍵発行局１００の構成図である。
【図３】本発明の実施の形態１における鍵発行時の動作を示すフローチャートである。
【図４】本発明の実施の形態１におけるコントローラ製造者２００が所有する装置の構成図である。
【図５】本発明の実施の形態１におけるコントローラ製造時の動作を示すフローチャートである。
【図６】本発明の実施の形態１における認証ソフトベンダ３００が所有する装置の構成図である。
【図７】本発明の実施の形態１における認証ソフト生成時の動作を示すフローチャートである。
【図８】本発明の実施の形態１における記録媒体装置５００およびメディア製造業者４００が所有する装置の構成図である。
【図９】本発明の実施の形態１における記録媒体装置５００と認証ソフト６００の構成図である。
【図１０】相互認証処理の一例について説明するための図である。
【図１１】本発明の実施の形態１における記録媒体装置５００の製造時の動作を示すフローチャートである。
【図１２】本発明の実施の形態１におけるホワイトリスト発行局７００が所有する装置の構成図である。
【図１３】本発明の実施の形態１におけるホワイトリスト発行時の動作を示すフローチャートである。
【図１４】本発明の実施の形態１における鍵配信サーバ８００および記録媒体装置５００の構成図である。
【図１５】本発明の実施の形態１における鍵配信時の動作を示すフローチャートである。
【図１６】本発明の実施の形態２における記録媒体装置５００および再生装置９００の全体構成図である。
【図１７】本発明の実施の形態２における記録媒体装置５００および再生装置９００の構成図である。
【図１８】本発明の実施の形態２における再生時の動作を示すフローチャートである。
【図１９】本発明の実施の形態１および２における相互認証処理の詳細を示すフローチャートである。
【図２０】本発明の実施の形態１および２における相互認証処理の詳細を示すフローチャートである。
【発明を実施するための形態】
【００１３】
本発明の第１の態様であるコントローラは、記録媒体装置に組み込まれ、前記記録媒体装置のアクセス制御を実行するコントローラであって、コントローラ製造装置により生成されたコントローラ鍵を保持する保持手段と、正当な鍵発行局により生成され前記記録媒体装置に記録されるデータの保護に用いられる鍵情報が、前記鍵発行局により前記コントローラ鍵を用いて暗号化された暗号化鍵情報を受け取る受取手段と、当該コントローラの固有情報を用いて、受け取った前記暗号化鍵情報を変換し、個別変換鍵情報を生成する変換手段とを備えることを特徴とする。
【００１４】
本発明の第２の態様では、前記変換手段は、前記暗号化鍵情報を、前記保持手段が保持する前記コントローラ鍵を用いて復号する復号部と、復号された鍵情報を、前記固有情報を用いて暗号化することにより、前記個別変換鍵情報を生成する暗号部とを備えることを特徴とする。
この構成によると、たとえ同一のロットで製造された複数のコントローラが同一のコントローラ鍵を有していたとしても、各コントローラは、他の記録媒体装置に埋め込まれた鍵情報を入手することが不可能となり、コンテンツの著作権者の権利を確実に保護することが可能となる。
【００１５】
本発明の第３の態様では、前記受取手段が前記鍵発行局から受け取る前記暗号化鍵情報には、前記鍵発行局による署名が付与されており、前記コントローラは、さらに、前記鍵発行局の公開鍵を用いて前記署名を検証し、前記署名の検証に失敗した場合に、前記暗号部による前記個別変換鍵情報の生成を停止させる認証手段を備えることを特徴とする。
この構成によると、記録媒体装置を製造するカードメーカーが鍵発行局によって生成された暗号化鍵情報と異なる鍵情報をコントローラに入力することが不可能になる。そのため、カードメーカーが複数のコントローラに同一の鍵情報を入力する不正行為を行うことが不可能になる。
【００１６】
本発明の第４の態様では、前記保持手段は、さらに、コントローラ製造装置により生成されたコントローラ固有番号を保持しており、前記コントローラは、さらに、前記コントローラ固有番号に所定の一方向性関数を施し、前記コントローラ固有番号のビット長よりも長いビット長を有する前記固有情報を生成する演算手段を備える  ことを特徴とする。
この構成によると、鍵情報を暗号化するための暗号鍵である固有情報をコントローラの内部で生成することができるので、予めコントローラに付与するコントローラ固有番号のデータサイズを抑えることができる。例えば、ｅＦＵＳＥなどの技術を用いて短いビット数の固有番号を割り当てるだけで、安全なデータサイズの暗号鍵を生成することができる。
【００１７】
本発明の第５の態様である記録媒体装置は、コントローラ製造装置により生成されたコントローラ鍵を保持する保持手段と、正当な鍵発行局により生成され前記記録媒体装置に記録されるデータの保護に用いられる鍵情報が、前記鍵発行局により前記コントローラ鍵を用いて暗号化された暗号化鍵情報を受け取る受取手段と、当該コントローラの固有情報を用いて、受け取った前記暗号化鍵情報を変換し、個別変換鍵情報を生成する変換手段とを備えるコントローラと記録デバイスとから構成されることを特徴とする。
【００１８】
この構成によると、記録デバイスに記録されるコンテンツの著作権者の権利を確実に保護することが可能な記録媒体装置を提供することができる。
本発明の第６の態様では、前記コントローラは、さらに、前記変換手段により生成された前記個別変換鍵情報を、前記記録デバイスに書き込む書込手段を備え、前記記録デバイスは、前記個別変換鍵情報を格納する鍵格納部を備えることを特徴とする。
【００１９】
この構成によると、たとえ同一のロットで製造された複数のコントローラが同一のコントローラ鍵を有していたとしても、各コントローラは、他の記録媒体装置の記録デバイスに書き込まれた個別変換鍵情報から鍵情報を入手することが不可能となり、コンテンツの著作権者の権利を確実に保護することが可能となる。
本発明の第７の態様では、前記記録デバイスは、当該記録デバイスに記録されるデータの保護に用いられるメディアＩＤの少なくとも一部であって、前記鍵発行局により生成された部分メディアＩＤと前記鍵情報の少なくとも一部と前記鍵発行局による署名とを含むメディア証明書を格納する証明書格納部を備えることを特徴とする。
【００２０】
この構成によると、メディアＩＤの一部が正当な鍵発行局により生成されるので、カードメーカーが複数の記録媒体装置に同一のメディアＩＤを埋め込む不正行為を行うことが不可能になる。
本発明の第８の態様では、前記コントローラは、さらに、前記メディア証明書を用いてホスト装置による認証を受け、前記ホスト装置の公開鍵証明書を用いて、前記ホスト装置を認証する相互認証手段を備え、相互認証手段による相互認証が成功した場合に、前記ホスト装置との間で処理を行うことを特徴とする。
【００２１】
この構成によると、記録媒体装置に不正なメディアＩＤが埋め込まれている場合には、ホスト装置による処理を受けることができなくなる。例えば、ホスト装置が記録装置である場合は、不正な記録媒体装置にコンテンツを記録するのを抑制することができる。また、ホスト装置が再生装置である場合は、不正な記録媒体装置に記録されているコンテンツを再生するのを抑制することができる。
【００２２】
本発明の第９の態様である製造システムは、コントローラと記録デバイスとから構成される記録媒体装置を製造する製造システムであって、コントローラ鍵を生成し、生成した前記コントローラ鍵を埋め込んだコントローラを製造し、製造した前記コントローラをメディア組み立て装置に提供し、前記コントローラ鍵を鍵発行局に送信するコントローラ製造装置と、前記記録媒体装置に記録されるデータの保護に用いられる鍵情報を生成し、生成した前記鍵情報を前記コントローラ鍵で暗号化し、暗号化鍵情報を生成し、生成した前記暗号化鍵情報を前記メディア組み立て業者に発行する正当な鍵発行局と、前記コントローラ製造装置から受け取った前記コントローラと記録デバイスとから記録媒体装置を組み立て、前記暗号化鍵情報を前記コントローラに入力するメディア組み立て装置とから構成され、前記コントローラは、     前記コントローラ鍵を保持する保持手段と、前記暗号化鍵情報を受け取る受取手段と、当該コントローラの固有情報を用いて、受け取った前記暗号化鍵情報を変換し、個別変換鍵情報を生成する変換手段と、前記個別変換鍵情報を前記記録デバイスに書き込み書込手段とを備えることを特徴とする。
【００２３】
この構成によると、コントローラは、保持手段に保持されているコントローラ鍵で暗号化された暗号化鍵情報を受け取るので、暗号化されていない状態の鍵情報の値がコントローラの外部に出力されることがない。よって、記録媒体装置を組み立てるカードメーカーが、複数の記録媒体装置に同一の鍵情報を埋め込むような不正行為を行うことは不可能である。また、たとえ同一のロットで製造された複数のコントローラが同一のコントローラ鍵を有していたとしても、各コントローラは、他の記録媒体装置に埋め込まれた鍵情報を入手することが不可能となり、コンテンツの著作権者の権利を確実に保護することが可能となる。
【００２４】
本発明の第１０の態様では、前記メディア組み立て装置は、前記書込手段により鍵情報が書き込まれた複数の記録媒体装置から鍵情報を取得し、各記録媒体装置に異なる鍵情報が割り振られているか否かを検証する検証手段を備えることを特徴とする。
この構成によると、記録媒体装置を組み立てた後に、前記検証手段による検証処理を行うことにより、同一の鍵情報が埋め込まれた不正な記録媒体装置が市場に出回るのを防止することができる。
【００２５】
本発明の第１１の態様では、前記製造システムは、さらに、異なる鍵情報が割り振られていることが検証されたコントローラの固有情報を記載したリストを管理するホワイトリスト管理装置を備え、前記検証手段は、異なる鍵情報が割り振られていることが検証されたコントローラの固有情報を、前記ホワイトリスト管理装置に送信することを特徴とする。
【００２６】
この構成によると、カードメーカーが鍵情報に係る検証結果を外部のホワイトリスト管理装置にを登録することによって、システムの安全性を向上させることができる。
本発明の第１２の態様では、前記製造システムは、さらに、前記記録媒体装置に記録されるデータの暗号化および復号に用いられるタイトル鍵を格納している鍵配信サーバを備え、前記鍵配信サーバは、１のコントローラから当該コントローラの固有番号を含むタイトル鍵送信要求を受け付けると、前記ホワイトリスト管理装置が管理している前記リストを用いて、当該固有番号が記載されているか否かを判断し、記載されている場合に、前記コントローラに対して前記タイトル鍵を配信することを特徴とする。
【００２７】
この構成によると、同一の鍵情報が埋め込まれたコントローラに対してはタイトル鍵が配信されないため、コンテンツの著作権者の権利を確実に保護することが可能となる。
本発明の第１３の態様である製造方法は、コントローラと記録デバイスとから構成される記録媒体装置の製造方法であって、コントローラ製造装置が、コントローラ鍵を生成し、生成した前記コントローラ鍵を埋め込んだコントローラを製造するコントローラ製造ステップと、鍵発行局が、前記記録媒体装置に記録されるデータの保護に用いられる鍵情報を生成し、生成した前記鍵情報を前記コントローラ鍵で暗号化し、暗号化鍵情報を生成する鍵発行ステップと、メディア組み立て装置が、前記コントローラ製造ステップにより製造されたコントローラと記録デバイスとから記録媒体装置を組み立て、前記鍵発行ステップにより生成された前記暗号化鍵情報を前記コントローラに入力するメディア組み立てステップと、前記コントローラが、前記暗号化鍵情報を受け取り、当該コントローラの固有情報を用いて、受け取った前記暗号化鍵情報を変換し、個別変換鍵情報を生成する変換ステップと、前記コントローラが、生成された前記個別変換鍵情報を前記記録デバイスに書き込み書込ステップとを含むことを特徴とする。
【００２８】
この構成によると、コントローラは、コントローラ製造装置により生成されたコントローラ鍵で暗号化された暗号化鍵情報を受け取るので、暗号化されていない状態の鍵情報の値がコントローラの外部に出力されることがない。よって、記録媒体装置を組み立てるカードメーカーが、複数の記録媒体装置に同一の鍵情報を埋め込むような不正行為を行うことは不可能である。また、たとえ同一のロットで製造された複数のコントローラが同一のコントローラ鍵を有していたとしても、各コントローラは、他の記録媒体装置に埋め込まれた鍵情報を入手することが不可能となり、コンテンツの著作権者の権利を確実に保護することが可能となる。
【００２９】
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。
（実施の形態１）
＜全体構成＞
図１は、本発明の実施の形態１における記録媒体装置の製造システムの全体構成を示す図である。記録媒体装置の製造システムは、鍵発行局１００、コントローラ製造者２００、認証ソフトベンダ３００、メディア組み立て業者４００、ホワイトリスト発行局７００、鍵配信サーバ８００で構成される。
【００３０】
なお、鍵発行局１００、コントローラ製造者２００、認証ソフトベンダ３００、メディア組み立て業者４００、ホワイトリスト発行局７００は、それぞれ、鍵発行局１００、コントローラ製造者２００、認証ソフトベンダ３００、メディア組み立て業者４００、ホワイトリスト発行局７００が有する装置を表している。
なお、本実施の形態において、「鍵発行局」と表現しているものについては、その名称が特有の意味を有するものではない。例えば、鍵生成局、鍵管理局、鍵申請局、鍵運用局など、異なる名称で称しても良い。
【００３１】
以下では、記録媒体装置がメモリカードの場合について説明する。
＜鍵発行局の詳細構成＞
図２に、鍵発行局１００の詳細構成を示す。
図２に示すように、鍵発行局１００は、コントローラＩＤ受信部１１０、コントローラＩＤ格納部１１１、コントローラ鍵受信部１１２、コントローラ鍵格納部１１３、ルート鍵ペア生成部１２０、ルート鍵ペア格納部１２１、ルート公開鍵送信部１２２、デバイス鍵ペア生成部１３０、デバイス鍵ペア格納部１３１、メディア固有鍵生成部１３２、結合部１３３、暗号部１３４、暗号化メディア鍵送信部１３５、署名生成部１３６、署名送信部１３７、部分メディアＩＤ生成部１４０、結合部１４１、証明書生成部１４２、証明書送信部１４３、ホワイトリスト用鍵ペア生成部１５０、証明書生成部１５１、ホワイトリスト用秘密鍵・証明書送信部１５２で構成される。
【００３２】
コントローラＩＤ受信部１１０は、コントローラ製造者２００からコントローラＩＤを受け取る。
コントローラＩＤ格納部１１１は、コントローラＩＤ受信部１１０が受け取ったコントローラＩＤを格納する。
コントローラ鍵受信部１１２は、コントローラ製造者２００からコントローラ鍵を受け取る。
【００３３】
コントローラ鍵格納部１１３は、コントローラ鍵受信部１１２が受け取ったコントローラ鍵をコントローラＩＤ受信部１１０が受け取ったコントローラＩＤと紐付けて格納する。
ルート鍵ペア生成部１２０は、記録媒体装置の製造システムにおけるセキュリティの根幹となる鍵発行局１００のルート公開鍵・ルート秘密鍵の鍵ペアを生成する。
【００３４】
ルート鍵ペア格納部１２１は、ルート鍵ペア生成部１２０が生成したルート公開鍵・ルート秘密鍵の鍵ペアを格納する。
ルート公開鍵送信部１２２は、ルート鍵ペア格納部１２１が格納するルート公開鍵を、コントローラ製造者２００、認証ソフトベンダ３００、鍵配信サーバ８００に対して送信する。
【００３５】
デバイス鍵ペア生成部１３０は、記録媒体装置５００に埋め込む、メディアデバイス公開鍵・メディアデバイス秘密鍵からなるメディアデバイス鍵ペア、認証ソフト６００、鍵配信サーバ８００に埋め込む、ホストデバイス公開鍵・ホストデバイス秘密鍵からなるホストデバイス鍵ペアを生成する。
デバイス鍵ペア格納部１３１は、デバイス鍵ペア生成部１３０が生成したメディアデバイス鍵ペアとホストデバイス鍵ペアを格納する。
【００３６】
メディア固有鍵生成部１３２は、記録媒体装置５００に埋め込むメディア固有鍵を生成する。メディア固有鍵の生成方法は、乱数発生器によって生成した乱数を用いて、統計学的にユニークであってもよいし、シリアライズされた番号を用いてもよいし、シリアライズされた番号を、一方向性関数を用いて、ユニークな値としてもよい。
結合部１３３は、デバイス鍵ペア格納部１３１が格納しているメディアデバイス秘密鍵とメディア固有鍵生成部１３２が生成したメディア固有鍵を結合して、メディア鍵を生成する。
【００３７】
暗号部１３４は、コントローラ鍵格納部１１３に格納されているコントローラ鍵を用いて、結合部１３３が生成したメディア鍵を暗号化し、暗号化メディア鍵を生成する。
暗号化メディア鍵送信部１３５は、暗号部１３４が生成した暗号化メディア鍵をメディア組み立て業者４００に送信する。
署名生成部１３６は、ルート鍵ペア格納部１２１に格納されているルート秘密鍵を用いて、結合部１３３が生成したメディア鍵の署名を生成する。なお、署名生成部１３６は、結合部１３３が生成したメディア鍵の代わりに、暗号部１３４が生成した暗号化メディア鍵の署名を生成してもよい。ただし、この場合、暗号化メディア鍵の署名を受け取るメディア組み立て業者４００において、暗号化メディア鍵に対して署名検証を行う必要がある。
【００３８】
署名送信部１３７は、署名生成部１３６が生成したメディア鍵の署名をメディア組み立て業者４００に送信する。
部分メディアＩＤ生成部１４０は、記録媒体装置５００の識別情報（以降、メディアＩＤと呼ぶ）の一部に埋め込まれる、部分メディアＩＤを生成する。
結合部１４１は、部分メディアＩＤ生成部１４０により生成された部分メディアＩＤと、コントローラＩＤ格納部１１１に格納されているコントローラＩＤ、デバイス鍵ペア格納部１３１に格納されているメディアデバイス公開鍵とを結合し、メディア証明書元データを生成する。
【００３９】
証明書生成部１４２は、ルート鍵ペア格納部１２１が格納しているルート秘密鍵を用いて、結合部１４１が生成したメディア証明書元データに署名を付与し、メディア証明書を生成すると共に、デバイス鍵ペア格納部１３１が格納しているホストデバイス公開鍵に署名を付与し、ホスト証明書を生成する。
証明書送信部１４３は、証明書生成部１４２が生成したメディア証明書をメディア組み立て業者４００に、証明書生成部１４２が生成したホスト証明書を認証ソフトベンダ３００と鍵配信サーバ８００に送信する。
【００４０】
ホワイトリスト用鍵ペア生成部１５０は、ホワイトリスト発行局７００が生成するホワイトリストの署名に用いる、ホワイトリスト用公開鍵・ホワイトリスト用秘密鍵からなるホワイトリスト用鍵ペアを生成する。
ここでホワイトリストの目的を説明する。メディア組み立て業者４００において記録媒体装置５００に埋め込むメディア鍵が正しく埋め込まれた場合、どのメディア鍵（詳しくはどのメディア固有鍵）が、どのコントローラ固有番号に対応した状態で埋め込まれたか、製造した全記録媒体装置５００の対応表をホワイトリスト発行局７００に送信し、ホワイトリスト発行局７００は登録情報を元に正しく利用されているメディア固有鍵のリストを生成し、そのホワイトリストを鍵配信サーバ８００に提供する。
【００４１】
鍵配信サーバ８００は、コンテンツ購入やコンテンツ再生などの際に再生装置や記録装置からタイトル鍵の取得要求を受け取ったとき、記録媒体装置５００に鍵を配信する処理の過程で、記録媒体装置５００に格納されているメディア固有鍵をセキュアに受け取り、ホワイトリスト内に記載されているか否かを確認する。ホワイトリストに記載されていた場合は、鍵を配信しようとしている記録媒体装置５００が不正ではなく、鍵を配信してよい状態であり、ホワイトリストに記載されていない場合は、同一のメディア鍵が異なる複数の記録媒体装置５００に埋め込む不正が行われているため、鍵を配信すべきでない状態であると判断が可能である。
【００４２】
メディア組み立て業者４００は、製造した記録媒体装置５００を実際に市場で販売する前に、ホワイトリスト発行局７００にそのメディア固有鍵とコントローラ固有番号の対応表を登録する。そして、ホワイトリスト発行局７００は、登録されたデータをホワイトリスト内に追記して、鍵配信サーバ８００に配信する必要がある。
証明書生成部１５１は、ルート鍵ペア格納部１２１が格納するルート秘密鍵を使って、ホワイトリスト用鍵ペア生成部１５０が生成したホワイトリスト用公開鍵に署名を付与し、ホワイトリスト用公開鍵の証明書を生成する。
【００４３】
ホワイトリスト用秘密鍵・証明書送信部１５２は、ホワイトリスト用鍵ペア生成部１５０が生成したホワイトリスト用秘密鍵と、証明書生成部１５１が生成したホワイトリスト用公開鍵の証明書をホワイトリスト発行局７００に送信する。
ホスト鍵送信部１７０は、デバイス鍵ペア格納部１３１が格納しているホストデバイス秘密鍵を認証ソフトベンダ３００と鍵配信サーバ８００にセキュアに送信する。
【００４４】
＜鍵発行局１００の鍵発行フロー＞
図３に鍵発行局１００の鍵発行フローを示す。
鍵発行局１００は、ルート公開鍵・ルート秘密鍵のルート鍵ペアを生成し、格納する。さらに、ルート公開鍵は要求に応じて、コントローラ製造者２００、認証ソフトベンダ３００、鍵配信サーバ８００に送信する（Ｓ１１０）。鍵発行局１００は、メディアデバイス公開鍵・メディアデバイス秘密鍵の鍵ペアとホストデバイス公開鍵・ホストデバイス秘密鍵の鍵ペアを生成・格納する（Ｓ１２０）。
【００４５】
Ｓ１３０の破線内は、コントローラ製造者２００から受け取るコントローラ５０１に対応したコントローラＩＤとコントローラ鍵の受取りフローを示す。コントローラ製造者２００は、製造したコントローラ５０１に埋め込んだコントローラ鍵とコントローラＩＤの組を鍵発行局１００に送信し、鍵発行局１００は、コントローラ鍵とコントローラＩＤを紐付けて格納する（Ｓ１３１）。
【００４６】
Ｓ１４０の破線内は、メディア組み立て業者４００からの暗号化メディア鍵及びメディア証明書の取得要求に対する鍵発行フローを示す。鍵発行局１００は、メディア組み立て業者４００から暗号化メディア鍵及びメディア証明書の取得要求を受け取ると、デバイス鍵ペア格納部１３１が格納しているメディアデバイス秘密鍵とメディア固有鍵生成部１３２が生成したメディア固有鍵とが結合部１３３で結合されて生成されたメディア鍵をコントローラ鍵格納部１１３で格納しているコントローラ鍵で暗号化し、暗号化メディア鍵を生成する（Ｓ１４１）。鍵発行局１００は、ルート鍵ペア格納部１２１が格納しているルート秘密鍵を用いて、デバイス鍵ペア格納部１３１が格納しているメディアデバイス公開鍵とコントローラＩＤ格納部１１１が格納しているコントローラＩＤと部分メディアＩＤ生成部１４０が生成した部分メディアＩＤの３つが結合部１４１で結合されたメディア証明書元データに署名を生成し、メディア証明書を生成する（Ｓ１４２）。鍵発行局１００は、暗号化メディア鍵とメディア証明書をメディア組み立て業者４００に送付する（Ｓ１４３）。
【００４７】
Ｓ１５０の破線内は、認証ソフトベンダ３００、鍵配信サーバ８００、再生装置９００からのホストデバイス秘密鍵及びホスト証明書の取得要求に対する鍵発行フローを示す。鍵発行局１００は、認証ソフトベンダ３００、鍵配信サーバ８００、ないし、再生装置９００からホストデバイス秘密鍵及びホスト証明書の取得要求を受け取ると、ルート鍵ペア格納部１２１が格納しているルート秘密鍵を用いて、デバイス鍵ペア格納部１３１が格納しているホストデバイス公開鍵に署名を生成し、ホスト証明書を生成する（Ｓ１５１）。鍵発行局１００は、認証ソフトベンダ３００、鍵配信サーバ８００、ないし、再生装置９００に、生成したホスト証明書と対になるホストデバイス秘密鍵とをセキュアに送信する（Ｓ１５２）。
【００４８】
Ｓ１６０の破線内は、ホワイトリスト発行局７００からのホワイトリスト用秘密鍵およびホワイトリスト用公開鍵の証明書の取得要求に対する鍵発行フローを示す。ホワイトリスト発行局７００からホワイトリスト用秘密鍵およびホワイトリスト用公開鍵の証明書の取得要求を受けると、鍵発行局１００は、ホワイトリスト用鍵ペア生成部１５０がホワイトリスト用公開鍵とホワイトリスト用秘密鍵の鍵ペアを生成し、ルート鍵ペア格納部１２１が格納しているルート秘密鍵を用いて、ホワイトリスト用公開鍵に署名を生成し、ホワイトリスト用公開鍵の証明書を生成する（Ｓ１６１）。鍵発行局１００は、ホワイトリスト用秘密鍵とホワイトリスト用公開鍵の証明書をホワイトリスト発行局７００に送信する（Ｓ１６２）。
【００４９】
＜コントローラ製造者２００の詳細構成＞
図４に、コントローラ製造者２００の詳細構成を示す。
図４に示すように、コントローラ製造者２００は、コントローラ鍵生成部２１０、コントローラＩＤ生成部２１１、ルート公開鍵受信部２２０、コントローラ製造部２３１、コントローラ固有番号追加部２３２、コントローラ鍵送信部２４１、コントローラＩＤ送信部２４２、コントローラＩＤ送信部２４３、コントローラ送信部２４４で構成される。
【００５０】
コントローラ鍵生成部２１０は、コントローラに埋め込むコントローラ鍵を生成する。
コントローラＩＤ生成部２１１は、コントローラに紐付けるコントローラＩＤを生成する。
ルート公開鍵受信部２２０は、鍵発行局１００が発行するルート公開鍵を受け取る。
コントローラ製造部２３１は、コントローラ鍵、コントローラＩＤ、及び、ルート公開鍵を製造時に埋め込む形で設計し、コントローラを製造する。
【００５１】
コントローラ固有番号追加部２３２は、コントローラ製造部２３１が製造したコントローラにコントローラ固有のコントローラ固有番号を追加する。例えば、電子回路の一部を電気的に焼ききって、個体別に異なる番号を刻むｅＦＵＳＥといった技術で追加が可能である。
コントローラ鍵送信部２４１は、コントローラ鍵を対応するコントローラＩＤと対で鍵発行局１００に送信する。
【００５２】
コントローラＩＤ送信部２４２は、コントローラＩＤを対応するコントローラ鍵と対で鍵発行局１００に送信する。
コントローラＩＤ送信部２４３は、コントローラＩＤを対応するコントローラと対でメディア組み立て業者４００に送信する。
コントローラ送信部２４４は、コントローラ５０１を対応するコントローラＩＤと対でメディア組み立て業者４００に送信する。
【００５３】
＜コントローラ製造者２００の製造フロー＞
図５にコントローラ製造者２００の製造フローを示す。
コントローラ製造者２００は、コントローラＩＤ、及び、コントローラ鍵を生成する（Ｓ２５０）。コントローラ製造者２００は、鍵発行局１００からルート公開鍵を受け取る（Ｓ２５１）。コントローラ製造者２００は、生成したコントローラＩＤ、コントローラ鍵、及び、受け取ったルート公開鍵を内包するように、コントローラを製造する（Ｓ２５２）。コントローラ製造者２００は、ｅＦＵＳＥなどの技術を使い、Ｓ２５２で製造したコントローラに固体識別が可能となるコントローラ固有番号を追加する（Ｓ２５３）。コントローラ製造者２００は、コントローラＩＤ及びコントローラ鍵を鍵発行局１００に送信する（Ｓ２５４）。コントローラ製造者２００は、メディア組み立て業者４００からのコントローラの発行注文を受け取ると、メディア組み立て業者４００に、対となるコントローラ及びコントローラＩＤを送信する（Ｓ２５５）。
【００５４】
この製造フローにより製造されるコントローラのマスクには、コントローラＩＤ及びコントローラ鍵が埋め込まれている。そのため、同一マスクで製造されるすべてのコントローラには、同一のコントローラＩＤ及びコントローラ鍵が埋め込まれることになる。異なるマスクには異なるコントローラＩＤ及びコントローラ鍵が埋め込まれるので、ロット単位（同一マスクによるコントローラ製造数）が１万個とすると、１万個ずつコントローラ鍵及びコントローラＩＤの値が切り替わる。
【００５５】
＜認証ソフトベンダ３００の詳細構成＞
図６に、認証ソフトベンダ３００の詳細構成を示す。
図６に示すように、認証ソフトベンダ３００は、ルート公開鍵受信部３０９、認証ソフト生成部３１０、ホストデバイス秘密鍵受信部３２１、ホスト証明書受信部３２２、ホスト鍵埋め込み部３２３、認証ソフト送信部３２４で構成される。
【００５６】
ルート公開鍵受信部３０９は、鍵発行局１００が送信したルート公開鍵を受け取る。
認証ソフト生成部３１０は、ルート公開鍵受信部３０９が受け取ったルート公開鍵を内包するように認証ソフト６００を生成する。認証ソフト６００の詳細については後述する。
ホストデバイス秘密鍵受信部３２１は、鍵発行局１００が送信するホストデバイス秘密鍵を受け取る。
【００５７】
ホスト証明書受信部３２２は、鍵発行局１００が送信するホスト証明書を受け取る。
ホスト鍵埋め込み部３２３は、ホストデバイス秘密鍵受信部３２１が受け取ったホストデバイス秘密鍵、及び、ホスト証明書受信部３２２が受け取ったホスト証明書を、認証ソフト生成部３１０により生成された認証ソフト６００にセキュアに埋め込む。
認証ソフト送信部３２４は、完成した認証ソフト６００をメディア組み立て業者４００に送信する。
【００５８】
＜認証ソフトベンダ３００の認証ソフト製造フロー＞
図７に認証ソフトベンダ３００の認証ソフト６００の製造フローを示す。
認証ソフトベンダ３００は、認証ソフト６００を生成する（Ｓ３５１）。認証ソフトベンダ３００は、鍵発行局１００からホストデバイス秘密鍵をセキュアに受け取る（Ｓ３５２）。認証ソフトベンダ３００は、鍵発行局１００からホスト証明書を受け取る（Ｓ３５３）。認証ソフトベンダ３００は、耐タンパ実装を用いるなどしてセキュアな状態で、鍵発行局１００から受け取ったホストデバイス秘密鍵とホスト証明書を認証ソフト６００に埋め込む（Ｓ３５４）。認証ソフトベンダ３００は、認証ソフト６００をメディア組み立て業者４００に送信する（Ｓ３５５）。
【００５９】
＜メディア組み立て業者４００の鍵書込み処理関連の詳細構成＞
図８に、メディア組み立て業者４００の鍵書込み処理関連の詳細構成を示す。
図８に示すように、記録媒体装置５００は、コントローラ５０１およびフラッシュメモリ５０２から構成される。コントローラ５０１は、コントローラＩＤ格納部５１０、コントローラ鍵格納部５１１、コントローラ固有番号格納部５１２、復号部５２２、ルート公開鍵格納部５２３、認証部５２４、個別鍵生成部５２５、暗号部５２６で構成される。フラッシュメモリ５０２は、個別暗号化メディア鍵格納部５２７、証明書格納部５３１で構成される。メディア組み立て業者４００は、暗号化メディア鍵受信部５２０、署名受信部５２１、証明書受信部５３０で構成される。
【００６０】
コントローラ５０１は、メディア組み立て業者４００がコントローラ製造者２００から受け取ったＬＳＩデバイスであり、内部処理はセキュアに守られて、外部から値を読み出すことができない。
コントローラＩＤ格納部５１０は、コントローラＩＤを格納する。
本発明に係る保持手段としてのコントローラ鍵格納部５１１は、コントローラ鍵を格納する。
【００６１】
コントローラＩＤおよびコントローラ鍵は、ロット単位で値がユニークである。ロットとは、同一マスクを利用して製造する製造単位である。例えば１万個や１０万個といったロットとなる。
コントローラ固有番号格納部５１２は、コントローラ固有番号を格納する。コントローラ固有番号は個体別に値がユニークである。
【００６２】
本発明に係る受取手段および変換手段の一部としての復号部５２２は、暗号化メディア鍵受信部５２０から暗号化メディア鍵を受け取り、コントローラ鍵格納部５１１が格納するコントローラ鍵を用いて、受け取った暗号化メディア鍵を復号する。
ルート公開鍵格納部５２３は、ルート公開鍵を格納している。
本発明に係る認証手段としての認証部５２４は、ルート公開鍵格納部５２３が格納しているルート公開鍵を用いて、署名受信部５２１が受け取った署名の署名検証を実施し、復号部５２２が復号して生成したメディア鍵が正当であるか否かを判断する。認証部５２４は、署名検証に成功すると、暗号部５２６の処理を許可する。認証部５２４は、署名検証に失敗すると、暗号部５２６の処理を止める。
【００６３】
本発明に係る演算手段としての個別鍵生成部５２５は、コントローラ鍵格納部５１１が格納するコントローラ鍵とコントローラ固有番号格納部５１２が格納するコントローラ固有番号とを用いて、コントローラ５０１にユニークで、コントローラ５０１の外部からは取得できない個別鍵を生成する。
例えば、個別鍵生成部５２５は、コントローラ鍵とコントローラ固有番号とを結合して個別鍵を生成してもよいし、コントローラ鍵とコントローラ固有番号との排他的論理和（ＸＯＲ）を算出して個別鍵を算出してもよい。また、個別鍵生成部５２５は、コントローラ鍵とコントローラ固有番号とを結合したデータにＳＨＡ−１などのハッシュ関数を用いて個別鍵を算出してもよい。すなわち、個別鍵生成部５２５は、コントローラ５０１にユニークな値となる個別鍵が生成できるのであれば、どのような一方向性関数を用いてもよい。
【００６４】
上述したように、コントローラ固有番号は、コントローラ製造者により生成されたコントローラ５０１に固有の番号である。本実施の形態では、ｅＦＵＳＥなどの技術を用いてコントローラ固有番号を生成することを想定しているが、ｅＦＵＳＥでは、例えば３２ビット程度の固有番号しか生成することができない。そこで、本実施の形態では、個別鍵生成部５２５により、暗号鍵として十分安全なビット長（例えば、１２８ビット程度）を有する個別鍵を生成するというものである。仮に、コントローラ製造者２００により生成されたコントローラ固有番号が暗号鍵として十分安全なビット長を有するのであれば、コントローラ固有番号自体を個別鍵として用いてもよい。
【００６５】
本発明に係る変換手段の一部および書込手段としての暗号部５２６は、個別鍵生成部５２５が生成した個別鍵を用いて、復号部５２２が復号したメディア鍵を暗号化し、個別暗号化メディア鍵を生成する。そして、生成した個別暗号化メディア鍵を、フラッシュメモリ５０２の個別暗号化メディア鍵格納部５２７に書き込む。
フラッシュメモリ５０２は、メディア組み立て業者４００が図示していないフラッシュメモリ製造業者から受け取った記録デバイスである。
【００６６】
個別暗号化メディア鍵格納部５２７は、暗号部５２６が生成した個別暗号化メディア鍵を格納する。
証明書格納部５３１は、証明書受信部５３０が受け取ったメディア証明書を格納する。
なお、図示していないが、フラッシュメモリ５０２は、ユーザがデジタルコンテンツを記録するためのユーザ領域を備えていることは勿論である。
【００６７】
メディア組み立て業者４００は、コントローラ５０１とフラッシュメモリ５０２とから記録媒体装置５００を組み立てる。
暗号化メディア鍵受信部５２０は、鍵発行局１００が送信する暗号化メディア鍵を受け取る。暗号化メディア鍵受信部５２０は、暗号化メディア鍵をコントローラ５０１の復号部５２２へ出力する。
【００６８】
署名受信部５２１は、鍵発行局１００が送信するメディア鍵の署名を受け取る。署名受信部５２１は、メディア鍵の署名をコントローラ５０１の認証部５２４へ出力する。
証明書受信部５３０は、鍵発行局１００が送信するメディア証明書を受け取る。証明書受信部５３０は、メディア証明書をフラッシュメモリ５０２の証明書格納部５３１に格納する。
【００６９】
＜メディア組み立て業者４００の認証ソフト６００による認証処理関連の詳細構成＞
図９に、メディア組み立て業者４００の認証処理関連の詳細構成を示す。メディア組み立て業者４００は、記録媒体装置５００を組み立てた後、リテール（小売店）に出荷する前に認証ソフト６００を用いて、記録媒体装置５００の認証処理を行う。
図９に示すように、記録媒体装置５００は、コントローラ５０１およびフラッシュメモリ５０２から構成される。コントローラ５０１は、コントローラ鍵格納部５１１、コントローラ固有番号格納部５１２、ルート公開鍵格納部５２３、個別鍵生成部５２５、復号部５４１、ホスト／メディア認証部５４２、暗号部５４３で構成される。フラッシュメモリ５０２は、個別暗号化メディア鍵格納部５２７、証明書格納部５３１で構成される。
【００７０】
一方、認証ソフト６００は、ルート公開鍵格納部６０９、ホスト鍵格納部６１０、ホスト／メディア認証部６１１、復号部６１２、メディア固有鍵・固有番号格納部６１３、メディア固有鍵・固有番号出力部６１４で構成される。
コントローラ５０１は、メディア組み立て業者４００がコントローラ製造者２００から受け取ったＬＳＩデバイスであり、内部処理はセキュアに守られて、外部から値を読み出すことができない。
【００７１】
コントローラ鍵格納部５１１は、コントローラ鍵を格納する。コントローラ鍵はロット単位で値がユニークである。
コントローラ固有番号格納部５１２は、コントローラ固有番号を格納する。コントローラ固有番号は個体毎に値がユニークである。
個別鍵生成部５２５は、コントローラ鍵格納部５１１が格納するコントローラ鍵とコントローラ固有番号格納部５１２が格納するコントローラ固有番号とを用いて、コントローラ５０１にユニークで、コントローラ５０１の外部からは取得できない個別鍵を生成する。個別鍵の詳細については既に説明したとおりである。
【００７２】
復号部５４１は、個別鍵生成部５２５が生成した個別鍵を用いて、個別暗号化メディア鍵格納部５２７に格納されている個別暗号化メディア鍵を復号し、メディア鍵を生成する。なお、復号されて生成されたメディア鍵はコントローラ５０１内でのみ処理されるため、コントローラ５０１の外部から直接読み出すことができない。
本発明に係る相互認証手段としてのホスト／メディア認証部５４２は、復号部５４１が復号したメディア鍵に含まれるメディアデバイス秘密鍵と、証明書格納部５３１に格納されているメディア証明書と、ルート公開鍵格納部５２３が格納しているルート公開鍵とを用いて、認証ソフト６００のホスト／メディア認証部６１１との間で相互認証を行う。相互認証の詳細は後述する。
【００７３】
暗号部５４３は、ホスト／メディア認証部５４２が行った相互認証の結果生成された共通鍵を用いて、コントローラ固有番号格納部５１２が格納するコントローラ固有番号を暗号化し、暗号化コントローラ固有番号を生成する。
ルート公開鍵格納部５２３は、ルート公開鍵を格納している。
フラッシュメモリ５０２は、メディア組み立て業者４００がフラッシュメモリ製造業者から受け取った記録デバイスである。
【００７４】
本発明に係る鍵格納部としての個別暗号化メディア鍵格納部５２７は、個別暗号化メディア鍵を格納している。
証明書格納部５３１は、メディア証明書を格納している。
認証ソフト６００は、メモリ上のコンピュータプログラムである。本発明に係る検証手段は、認証ソフト６００とメディア組み立て業者４００のプロセッサとによって実現される。すなわち、メディア組み立て業者４００のプロセッサが認証ソフト６００を実行することにより、検証手段の機能が実現される。
【００７５】
ホスト鍵格納部６１０は、ホストデバイス秘密鍵とホストデバイス公開鍵とを含むホスト証明書を格納する。
ホスト／メディア認証部６１１は、ホスト鍵格納部６１０が格納するホストデバイス秘密鍵とホスト証明書とルート公開鍵格納部６０９が格納するルート公開鍵とを用いて、コントローラ５０１のホスト／メディア認証部５４２との間で相互認証を行う。相互認証の詳細は後述する。
【００７６】
復号部６１２は、ホスト／メディア認証部６１１が行った相互認証の結果生成された共通鍵を用いて、暗号部５４３が暗号化して生成した暗号化コントローラ固有番号を復号し、コントローラ固有番号を取得する。
メディア固有鍵・固有番号格納部６１３は、復号部６１２が取得したコントローラ固有番号と、ホスト／メディア認証部６１１が相互認証の過程で取得したメディア固有鍵とを格納する。
【００７７】
メディア固有鍵・固有番号出力部６１４は、メディア固有鍵・固有番号格納部６１３が格納したメディア固有鍵とコントローラ固有番号とを対応表にして出力する。認証ソフト６００が出力した対応表は、メディア組み立て業者４００がホワイトリスト発行局７００に送信する。
ここで、相互認証の一般的な手順を図１０に示す。
【００７８】
（ａ）ホスト／メディア認証部Ａの乱数生成部Ａ１０が、乱数Ｒ１を生成し、ホスト／メディア認証部Ｂに送信
（ｂ）ホスト／メディア認証部Ｂの暗号化部Ｂ１０が、乱数Ｒ１を固有鍵Ｋｓｃで暗号化（Ｅ（Ｋｓｃ，Ｒ１）し、ホスト／メディア認証部Ａに送信
（ｃ）ホスト／メディア認証部Ａの復号部Ａ２０は、固有鍵Ｋｓｃで受信したＥ（Ｋｓｃ，Ｒ１）を復号（Ｄ（Ｋｓｃ，（Ｅ（Ｋｓｃ，Ｒ１））（＝Ｒ１）
（ｄ）ホスト／メディア認証部Ａの乱数比較部Ａ３０は、（ｃ）で復号した結果と（ａ）で生成した乱数が一致することで正規のモジュールであることを認証
（ｅ）ホスト／メディア認証部Ｂの乱数生成部Ｂ２０が、乱数Ｒ２を生成し、ホスト／メディア認証部Ａに送信
（ｆ）ホスト／メディア認証部Ａの暗号化部Ａ４０が、乱数Ｒ２を固有鍵Ｋｓｃで暗号化（Ｅ（Ｋｓｃ，Ｒ２）し、ホスト／メディア認証部Ｂに送信
（ｇ）ホスト／メディア認証部Ｂの復号部Ｂ３０は、固有鍵Ｋｓｃで受信したＥ（Ｋｓｃ，Ｒ２）を復号（Ｄ（Ｋｓｃ，（Ｅ（Ｋｓｃ，Ｒ２））（＝Ｒ２）
（ｈ）ホスト／メディア認証部Ｂの乱数比較部Ｂ４０の（ｇ）で復号した結果と（ｅ）で生成した乱数が一致することでホスト／メディア認証部Ｂは相手が正規モジュールであることを認証。ホスト／メディア認証部Ａ、ホスト／メディア認証部Ｂ共に、Ｒ１||Ｒ２をＫｓｃを用いた一方向性関数で得た値を共通鍵とする。
【００７９】
なお、ここで示した相互認証の手順は一例であり、他の相互認証方式を用いてもよい。
＜メディア組み立て業者４００の記録媒体装置５００の製造フロー＞
図１１にメディア組み立て業者４００による記録媒体装置５００の製造フローを示す。
メディア組み立て業者４００は、コントローラ製造者２００にコントローラ５０１の発注を行うと、コントローラ製造者２００から、コントローラＩＤとコントローラ５０１とを受け取る（Ｓ４８１）。メディア組み立て業者４００は、受け取ったコントローラ５０１を使って、記録媒体装置５００を組み立てる（Ｓ４８２）。
【００８０】
メディア組み立て業者４００は、コントローラ製造者２００から受け取ったコントローラＩＤを指定して、鍵発行局１００に暗号化メディア鍵、メディア鍵の署名、メディア証明書の発行を要請し、鍵発行局１００が発行した暗号化メディア鍵、メディア鍵の署名、メディア証明書を受け取る（Ｓ４８３、Ｓ４８４、Ｓ４８５）。
なお、これらの暗号化メディア鍵、メディア鍵の署名、メディア証明書は、組になっているため、異なるコントローラＩＤを持つコントローラ５０１で利用できないだけでなく、暗号化メディア鍵、メディア鍵の署名、メディア証明書は、セットで同じ記録媒体装置５００に書き込む必要がある。
【００８１】
メディア組み立て業者４００は、受け取った暗号化メディア鍵、メディア鍵の署名、メディア証明書を記録媒体装置５００に書き込む（Ｓ４８６）。メディア組み立て業者４００は、認証ソフトベンダ３００から認証ソフト６００を受け取る（Ｓ４８７）。メディア組み立て業者４００は、認証ソフト６００を用いて認証を行う（Ｓ４８８）。メディア組み立て業者４００は、認証ソフト６００が出力したメディア固有鍵とコントローラ固有番号との対応表をホワイトリスト発行局７００に送信する（Ｓ４８９）。ホワイトリスト発行局７００から処理完了の旨を受け取ったら、メディア組み立て業者４００は記録媒体装置５００をリテールなどに発送する（Ｓ４９０）。
【００８２】
＜ホワイトリスト発行局７００の詳細構成＞
図１２に、本発明に係るホワイトリスト管理装置としてのホワイトリスト発行局７００の詳細構成を示す。
図１２に示すように、ホワイトリスト発行局７００は、メディア固有鍵・固有番号受信部７１０、ホワイトリスト生成部７１１、署名鍵・証明書受信部７２１、署名鍵・証明書格納部７２２、署名部７２３、ホワイトリスト発行部７３０で構成される。
【００８３】
メディア固有鍵・固有番号受信部７１０は、メディア組み立て業者４００から、メディア固有鍵とコントローラ固有番号との対応表を受け取る。
ホワイトリスト生成部７１１は、メディア固有鍵・固有番号受信部７１０が受け取ったメディア固有鍵とコントローラ固有番号との対応表からメディア固有鍵を抜き出して、ホワイトリストに追加する。
【００８４】
なお、鍵発行局１００が書き込みに失敗して同一のメディア鍵を複数の記録媒体装置５００に書き込んでしまった場合には、ホワイトリスト生成部７１１は、メディア固有鍵をホワイトリストに掲載しなくてもよい。当該メディア固有鍵をホワイトリストに掲載する場合には、属性情報として、メディアデバイス秘密鍵、ないし、メディア固有鍵は、間違って複数の記録媒体装置５００に書き込まれてしまった旨を示すフラグを追加するとよい。
【００８５】
このように、複数の記録媒体装置５００に書き込まれてしまったメディア鍵は、不正な状態であるが、そのメディア固有鍵が分かっているメディア鍵の場合、鍵配信サーバ８００は自己の判断でメディア鍵を配信してもよいし、メディア鍵配信を停止してもよい。例えば、ＳＤ画質やそれ以下の画質の価値の低いコンテンツであれば、メディア鍵配信を許容するが、ＨＤ画質やそれと相当の価値の高いコンテンツであれば、メディア鍵配信を止めるといったことが可能である。
【００８６】
署名鍵・証明書受信部７２１は、鍵発行局１００から、ホワイトリスト用秘密鍵、及び、ホワイトリスト用公開鍵の証明書をセキュアに受け取る。
署名鍵・証明書格納部７２２は、署名鍵・証明書受信部７２１が受け取ったホワイトリスト用秘密鍵、及び、ホワイトリスト用公開鍵の証明書を格納する。
署名部７２３は、署名鍵・証明書格納部７２２が格納しているホワイトリスト用秘密鍵を用いて、ホワイトリスト生成部７１１で更新されたホワイトリストに署名を付与する。
【００８７】
ホワイトリスト発行部７３０は、署名部７２３で署名が付与された最新版のホワイトリストを鍵配信サーバ８００に送信する。
＜ホワイトリスト発行局７００のホワイトリスト発行フロー＞
図１３にホワイトリスト発行局７００のホワイトリスト発行フローを示す。
メディア固有鍵・固有番号受信部７１０は、メディア組み立て業者４００から、書き込みが完了した記録媒体装置５００のメディア固有鍵とコントローラ固有番号の対応表を受け取る（Ｓ７５０）。ホワイトリスト発行局７００は、受け取ったメディア固有鍵とコントローラ固有番号の対応表を現状のホワイトリストに追加する（Ｓ７５１）。ホワイトリスト発行局７００は、鍵発行局１００からホワイトリスト用秘密鍵、及び、ホワイトリスト用公開鍵の証明書をセキュアに受け取る（Ｓ７５２）。受け取ったホワイトリスト用秘密鍵、及び、ホワイトリスト用公開鍵の証明書を格納する（Ｓ７５３）。署名鍵・証明書格納部７２２が格納しているホワイトリスト用秘密鍵を用いて、ホワイトリスト生成部７１１で更新されたホワイトリストに署名を付与する（Ｓ７５４）。ホワイトリスト発行局７００は、署名部７２３で署名が付与された最新版のホワイトリストを鍵配信サーバ８００に発行する。
【００８８】
＜鍵配信サーバ８００と記録媒体装置５００の詳細構成＞
図１４に、鍵配信サーバ８００と記録媒体装置５００の詳細構成を示す。
図１４に示すように、鍵配信サーバ８００は、ホスト鍵受信部８１０、ホスト鍵格納部８１１、ホスト／メディア認証部８１２、復号部８１３、ルート公開鍵受信部８３０、ホワイトリスト受信部８３１、ホワイトリスト格納部８３２、メディア固有鍵検証部８４１、タイトル鍵格納部８５１、暗号部８５２で構成される。
【００８９】
一方、記録媒体装置５００は、コントローラ５０１とフラッシュメモリ５０２とから構成される。コントローラ５０１は、コントローラ鍵格納部５１１、コントローラ固有番号格納部５１２、ルート公開鍵格納部５２３、個別鍵生成部５２５、復号部５４１、ホスト／メディア認証部５４２、暗号部５４３で構成され、フラッシュメモリ５０２は、個別暗号化メディア鍵格納部５２７、証明書格納部５３１、暗号化タイトル鍵格納部５５０で構成される。
【００９０】
鍵配信サーバ８００は、コンテンツ購入やコンテンツ再生などの際に記録装置や再生装置からタイトル鍵の取得要求を受け取ったとき、記録媒体装置５００に鍵を配信する装置である。
ホスト鍵受信部８１０は、鍵発行局１００からホストデバイス秘密鍵とホストデバイス公開鍵のホスト証明書とをセキュアに受け取る。
【００９１】
ホスト鍵格納部８１１は、ホスト鍵受信部８１０が受け取ったホストデバイス秘密鍵とホストデバイス公開鍵のホスト証明書とを格納する。
ホスト／メディア認証部８１２は、ホスト鍵格納部８１１が格納しているホストデバイス秘密鍵とホストデバイス公開鍵のホスト証明書とを用いて、記録媒体装置５００のコントローラ５０１のホスト／メディア認証部５４２との間で相互認証を行い、共通鍵を生成する。
【００９２】
復号部８１３は、ホスト／メディア認証部８１２が生成した共通鍵を用いて、記録媒体装置５００のコントローラ５０１の暗号部５４３が暗号化して生成した暗号化メディア固有鍵を復号する。
ルート公開鍵受信部８３０は、鍵発行局１００からルート公開鍵を受け取る。
ホワイトリスト受信部８３１は、ホワイトリスト発行局７００が発行したホワイトリストを受け取る。
【００９３】
ホワイトリスト格納部８３２は、ホワイトリスト受信部８３１が受け取ったホワイトリストを格納する。
メディア固有鍵検証部８４１は、復号部８１３が復号して取得したメディア固有鍵が、ホワイトリスト格納部８３２が格納しているホワイトリストに記載されているか否か確認する。記載されている場合、暗号部８５１の処理を許可する。記載されていない場合、暗号部８５１の処理を停止する。
【００９４】
タイトル鍵格納部８５１は、コンテンツの暗号化および復号に用いるタイトル鍵を格納している。
暗号部８５２は、復号部８１３が復号したメディア固有鍵を用いて、タイトル鍵格納部８５１に格納されているタイトル鍵を暗号化し、暗号化タイトル鍵を生成し、記録媒体装置５００に送信する。
【００９５】
コントローラ５０１は、ＬＳＩデバイスであり、フラッシュメモリ５０２は、記録デバイスである。
コントローラ鍵格納部５１１は、コントローラ鍵を格納している。コントローラ鍵はロット単位で値がユニークである。
コントローラ固有番号格納部５１２は、コントローラ固有番号を格納している。コントローラ固有番号は個体別に値がユニークである。
【００９６】
ルート公開鍵格納部５２３は、ルート公開鍵を格納している。
個別鍵生成部５２５は、コントローラ鍵格納部５１１に格納されているコントローラ鍵とコントローラ固有番号格納部５１２に格納されているコントローラ固有番号とを用いて、コントローラ５０１にユニークで、コントローラ５０１の外部からは取得できない個別鍵を生成する。
【００９７】
復号部５４１は、個別鍵生成部５２５が生成した個別鍵を用いて、個別暗号化メディア鍵格納部５２７に格納されている個別暗号化メディア鍵を復号し、メディア鍵を生成する。なお、復号されて生成されたメディア鍵はコントローラ５０１内でのみ処理されるため、コントローラ５０１の外部から直接読み出すことができない。
本発明に係る相互認証手段としてのホスト／メディア認証部５４２は、復号部５４１が復号したメディア鍵に含まれるメディアデバイス秘密鍵と、証明書格納部５３１に格納されているホスト証明書とルート公開鍵格納部５２３が格納しているルート公開鍵を用いて、鍵配信サーバ８００のホスト／メディア認証部８１２との間で相互認証を行う。ホスト／メディア認証部５４２は、相互認証の結果、共通鍵を生成する、
暗号部５４３は、ホスト／メディア認証部５４２で生成された共通鍵を用いて、復号部５４１が復号したメディア鍵に含まれるメディア固有鍵を暗号化して暗号化メディア固有鍵を生成する。暗号部５４３は、鍵配信サーバ８００の復号部８１３へ、生成した暗号化メディア固有鍵を送信する。
【００９８】
暗号化タイトル鍵格納部５５０は、鍵配信サーバ８００の暗号部８５２が暗号化して生成した暗号化タイトル鍵を受け取り、格納する。
個別暗号化メディア鍵格納部５２７は、個別暗号化メディア鍵を格納している。
証明書格納部５３１は、メディア証明書を格納している。
＜鍵配信サーバ８００と記録媒体装置５００間で処理される鍵配信フロー＞
図１５に鍵配信サーバ８００と記録媒体装置５００との間で処理される鍵配信フローを示す。
【００９９】
鍵配信サーバ８００は、鍵発行局１００からルート公開鍵を受け取る（Ｓ８７０）。鍵配信サーバ８００は、ホワイトリスト発行局７００からホワイトリストを受け取る（Ｓ８７１）。鍵配信サーバ８００は、ホワイトリストを格納する（Ｓ８７２）。鍵配信サーバ８００は、鍵発行局１００からホストデバイス秘密鍵とホストデバイス公開鍵のホスト証明書を受け取る（Ｓ８７５）。鍵配信サーバ８００は、ホストデバイス秘密鍵とホストデバイス公開鍵のホスト証明書を格納する（Ｓ８７６）。
【０１００】
ここまでの処理は、記録装置や再生装置からタイトル鍵の取得要求を受け取る前までに終了しておくことが望ましい。
記録媒体装置５００は、コントローラ鍵とコントローラ固有番号とを用いて、個別鍵を生成する（Ｓ８８０）。記録媒体装置５００は、個別鍵を用いて、個別暗号化メディア鍵を復号し、メディア鍵を取得する（Ｓ８８１）。鍵配信サーバ８００と記録媒体装置５００との間でホスト／メディアの相互認証を行い、双方共有鍵を生成する（Ｓ８８２）。記録媒体装置５００は、既に取得済みのメディア鍵に含まれるメディア固有鍵を相互認証で生成した共通鍵で暗号化し、暗号化メディア固有鍵を生成する（Ｓ８９０）。鍵配信サーバ８００は、記録媒体装置５００から暗号化メディア固有鍵を受け取り、相互認証で生成した共通鍵で復号し、メディア固有鍵を取得する（Ｓ８９１）。鍵配信サーバ８００は、既に取得済みのホワイトリストに取得したメディア固有鍵が記載されているか否か確認する（Ｓ８９２）。記載されている場合は、タイトル鍵暗号処理を許可し、記載されていない場合は、タイトル鍵暗号処理を許可しない。鍵配信サーバ８００は、コンテンツの暗号化および復号に用いるタイトル鍵をメディア固有鍵で暗号化し、暗号化タイトル鍵を生成する（Ｓ８９３）。記録媒体装置５００は、鍵配信サーバ８００から暗号化タイトル鍵を受け取り、格納する（Ｓ８９４）。
（実施の形態２）
＜全体構成＞
図１６は、本発明の実施の形態２における記録媒体装置の再生システムの構成を示す図である。記録媒体装置の再生システムは、記録媒体装置５００および再生装置９００から構成される。
【０１０１】
＜記録媒体装置５００と再生装置９００の詳細構成＞
図１７に、記録媒体装置５００と再生装置９００の詳細構成を示す。
記録媒体装置５００は、コントローラ５０１およびフラッシュメモリ５０２から構成される。コントローラ５０１は、コントローラ鍵格納部５１１、コントローラ固有番号格納部５１２、ルート公開鍵格納部５２３、個別鍵生成部５２５、復号部５４１、ホスト／メディア認証部５４２、暗号化タイトル鍵受信部５６１、復号部５６２、暗号部５６３で構成される。フラッシュメモリ５０２は、個別暗号化メディア鍵格納部５２７、証明書格納部５３１、暗号化タイトル鍵格納部５５０、暗号化コンテンツ格納部５６０で構成される。
【０１０２】
一方、再生装置９００は、ホスト鍵格納部９１１、ホスト／メディア認証部９１２、暗号化タイトル鍵読出部９２１、復号部９２２、タイトル鍵格納部９２３、再生部９２４で構成される。
コントローラ５０１は、ＬＳＩデバイスであり、内部処理はセキュアに守られて、外部から値を直接読み出すことができない。フラッシュメモリ５０２は、記録デバイスである。
【０１０３】
コントローラ鍵格納部５１１は、コントローラ鍵を格納している。コントローラ鍵はロット単位で値がユニークである。
コントローラ固有番号格納部５１２は、コントローラ固有番号を格納している。コントローラ固有番号は個体毎に値がユニークである。
ルート公開鍵格納部５２３は、ルート公開鍵を格納している。
【０１０４】
個別鍵生成部５２５は、コントローラ鍵格納部５１１に格納されているコントローラ鍵とコントローラ固有番号格納部５１２に格納されているコントローラ固有番号とを用いて、コントローラ５０１にユニークで、コントローラ５０１の外部からは取得できない個別鍵を生成する。
復号部５４１は、個別鍵生成部５２５が生成した個別鍵を用いて、個別暗号化メディア鍵格納部５２７に格納されている個別暗号化メディア鍵を復号し、メディア鍵を生成する。なお、復号されて生成されたメディア鍵は、コントローラ５０１内でのみ処理されるため、コントローラ５０１の外部から直接読み出すことができない。
【０１０５】
ホスト／メディア認証部５４２は、復号部５４１が復号したメディア鍵に含まれるメディアデバイス秘密鍵と、証明書格納部５３１に格納されているメディア証明書と、ルート公開鍵格納部５２３が格納しているルート公開鍵とを用いて、鍵配信サーバ８００のホスト／メディア認証部９１２との間で相互認証を行う。相互認証の結果、ホスト／メディア認証部５４２は、共通鍵を生成する。
【０１０６】
暗号化タイトル鍵受信部５６１は、再生装置９００から暗号化タイトル鍵を受け取る。
復号部５６２は、個別鍵生成部５２５が生成した個別鍵を用いて、再生装置９００から受け取った暗号化タイトル鍵を復号し、タイトル鍵を取得する。
暗号部５６３は、ホスト／メディア認証部５４２が生成した共通鍵を用いてタイトル鍵を暗号化し、共通鍵暗号化タイトル鍵を生成する。
【０１０７】
個別暗号化メディア鍵格納部５２７は、個別暗号化メディア鍵を格納している。
証明書格納部５３１は、メディア証明書を格納している。
暗号化タイトル鍵格納部５５０は、暗号化タイトル鍵を格納している。
暗号化コンテンツ格納部５６０は、図示していない記録装置によって記録された暗号化コンテンツを格納している。暗号化コンテンツは、タイトル鍵によって暗号化されたデジタルコンテンツである。
【０１０８】
ホスト鍵格納部９１１は、鍵発行局１００からセキュアに受け取ったホストデバイス秘密鍵とホストデバイス公開鍵とを含むホスト証明書を格納している。
ホスト／メディア認証部９１２は、ホスト鍵格納部９１１に格納されているホストデバイス秘密鍵とホストデバイス公開鍵を含むホスト証明書とを用いて、コントローラ５０１のホスト／メディア認証部５４２との間で相互認証を行い、共通鍵を生成する。
【０１０９】
暗号化タイトル鍵読出部９２１は、フラッシュメモリ５０２の暗号化タイトル鍵格納部５５０に格納されている暗号化タイトル鍵を読み出し、コントローラ５０１に対して、読み出した暗号化タイトル鍵を送信し、暗号化タイトル鍵の復号を要求する。
復号部９２２は、ホスト／メディア認証部９１２が生成した共通鍵を用いて、コントローラ５０１から受け取った共通鍵暗号化タイトル鍵を復号し、タイトル鍵を取得する。
【０１１０】
タイトル鍵格納部９２３は、復号部９２２が取得したタイトル鍵を格納する。
再生部９２４は、フラッシュメモリ５０２の暗号化コンテンツ格納部５６０から暗号化コンテンツを読み出し、読み出した暗号化コンテンツを、タイトル鍵格納部９２３に格納されているタイトル鍵を用いて復号する。再生部９２４は、復号したデジタルコンテンツを再生する。
【０１１１】
＜記録媒体装置５００と再生装置９００の間で処理される再生フロー＞
図１８に記録媒体装置５００と再生装置９００の間で処理される再生フローを示す。
再生装置９００は、フラッシュメモリ５０２の暗号化タイトル鍵格納部５５０に格納されている暗号化タイトル鍵を読み出し、コントローラ５０１に対して、暗号化コンテンツ鍵の復号を要求する（Ｓ９０１）。
【０１１２】
記録媒体装置５００は、再生装置９００から暗号化タイトル鍵と暗号化タイトル鍵の復号要求を受け取る（Ｓ９０２）。
記録媒体装置５００は、個別鍵を生成する（Ｓ９０３）。
記録媒体装置５００は、生成した個別鍵を用いて、個別暗号化メディア鍵を復号し、メディア鍵を取得する（Ｓ９０４）。
【０１１３】
記録媒体装置５００と再生装置９００との間で相互認証を行い、それぞれ共通鍵を生成する（Ｓ９０５）。
記録媒体装置５００は、メディア鍵に含まれるメディア固有鍵を用いて、暗号化タイトル鍵を復号し、タイトル鍵を取得する（Ｓ９１０）。
記録媒体装置５００は、相互認証で生成した共通鍵を用いて、タイトル鍵を暗号化し、共通鍵暗号タイトル鍵を生成し、生成した共通鍵暗号化タイトル鍵を、再生装置９００に送信する（Ｓ９１１）。
【０１１４】
再生装置９００は、記録媒体装置５００から共通鍵暗号タイトル鍵を受け取り、相互認証で生成した共通鍵を用いて復号し、タイトル鍵を取得する。再生装置９００は、タイトル鍵を格納する（Ｓ９１２）。
再生装置９００は、記録媒体装置５００から暗号化コンテンツを読み出す（Ｓ９１３）。
【０１１５】
再生装置９００は、読み出した暗号化コンテンツを、タイトル鍵を用いて復号し、デジタルコンテンツを生成し、生成したデジタルコンテンツを再生する（Ｓ９１４）。
＜変形例＞
（１）上記の実施の形態では、鍵情報として秘密鍵・公開鍵からなる鍵ペアを前提として、公開鍵暗号方式を用いた認証をベースにしたが、ＭｅｄｉａＫｅｙＢｌｏｃｋ（ＭＫＢ）技術をベースにしてもよいし、他の暗号方式の認証技術を使ってもよい。
【０１１６】
（２）上記の実施の形態では、記録媒体装置としてコントローラ（制御ＬＳＩ）とフラッシュメモリとから構成されるＳＤカードのようなメモリカードを想定したが、本発明はこれに限定されない。ＨＤＤのようなストレージデバイスに制御ＬＳＩを組み合わせた構成のデバイスであってもよいし、メモリカードのような脱着式のメモリでなく、携帯電話、ｅＢｏｏｋ、ＮｅｔＢｏｏｋなどに内蔵された内蔵型メモリデバイスに制御ＬＳＩを組み合わせた構成であってもよい。
【０１１７】
（３）上記の実施の形態では、コントローラ５０１は、暗号化メディア鍵をコントローラ鍵で一旦復号した後、個別鍵で再暗号化する構成を有する。しかし、これは一例であり本発明はこの構成に限定されない。例えば、コントローラ５０１は、個別鍵を用いて暗号化メディア鍵を更に暗号化して個別暗号化メディア鍵を生成するとしてもよい。また、暗号化以外の他の演算を用いて暗号化メディア鍵を変換してもよい。すなわち、本発明のコントローラ５０１は、コントローラ毎に固有の情報を用いて、暗号化メディア鍵をコントローラ毎に固有のデータに変換する変換手段を備える構成であればよい。
【０１１８】
（４）上記の実施の形態における鍵発行局１００、コントローラ製造者２００、認証ソフトベンダ３００、メディア組み立て業者４００、ホワイトリスト発行局７００は、それぞれ装置を表しているが、各装置は、プロセッサ、ＲＯＭ、ＲＡＭ、ハードディスクユニットなどのハードウェアを備えるコンピュータシステムである。
各装置のＲＯＭまたはハードディスクユニットにはコンピュータプログラムが記録されている。プロセッサはＲＡＭを用いて前記コンピュータプログラムを実行することにより、実施の形態において説明した各種の機能を実現するとしてもよい。
【０１１９】
（５）上記の実施の形態では、図８、図９、図１４、図１７に記録媒体装置５００を記載している。説明の便宜上これらの図面にはそれぞれ対応する明細書の説明に必要な機能のみを記載している。実際には、これらの図面に記載されている全ての機能が搭載されている一つのメモリカードが製造される。
（６）ここでは、図１９および図２０のフローチャートを用いて、相互認証処理の詳細について説明する。
【０１２０】
相互認証処理は、記録媒体装置５００のコントローラ５０１とホスト装置との間で実行される。上記の実施の形態では、メディア組み立て業者４００の装置で動作する検証ソフト６００（図９）、鍵配信サーバ８００（図１４）、および再生装置９００（図１７）がホスト装置になりうる。
そこで、ここに示す動作は、具体的には、コントローラ５０１のホスト／メディア認証部５４２と検証ソフト６００のホスト／メディア認証部６１１、コントローラ５０１のホスト／メディア認証部５４２と鍵配信サーバ８００のホスト／メディア認証部８１２、コントローラ５０１のホスト／メディア認証部５４２と再生装置９００のホスト／メディア認証部９１２との間で実行される。
【０１２１】
ここで、図１９および図２０において、Ｇｅｎ（）を鍵生成関数とし、Ｙを、システム固有のパラメータとする。鍵生成関数は、Ｇｅｎ（ｘ、Ｇｅｎ（Ｙ,ｚ））＝Ｇｅｎ（Ｙ,Ｇｅｎ（ｘ,ｚ））の関係を満たすものとする。なお、鍵生成関数は、ディフィーへルマン（ＤＨ）型公開鍵配送法など、任意の公知技術で実現可能なため詳細な説明は省略する。
【０１２２】
コントローラ５０１のホスト／メディア認証部５２４は、証明書格納部５３１からメディア証明書を読み出し（Ｓ１００１）、ホスト装置へ送信する（Ｓ１００２）。ホスト装置のホスト／メディア認証部は、受信したメディア証明書に含まれる署名データに対して、鍵発行局１００の公開鍵であるルート公開鍵を用いて署名検証アルゴリズムを施し、署名検証する（Ｓ１００３）。署名検証に失敗すると（Ｓ１００４でＮＯ）、ホスト装置は処理を終了する。署名検証に成功すると（Ｓ１００４でＹＥＳ）、ホスト／メディア認証部は、ホスト証明書を読み出して（Ｓ１００５）、コントローラ５０１に送信する（Ｓ１００６）。
【０１２３】
ホスト／メディア認証部５２４は、受信したホスト証明書に含まれる署名データに対して、ルート公開鍵を用いて署名検証アルゴリズムを施し、署名検証する（Ｓ１００７）。署名検証に失敗すると（Ｓ１００８でＮＯ）、コントローラ５０１は処理を終了する。署名検証に成功すると（Ｓ１００８でＹＥＳ）、ホスト／メディア認証部５２４は、Ｓ１０１１に進む。
【０１２４】
Ｓ１００６でホスト証明書を送信したホスト装置のホスト／メディア認証部は、乱数Ｒ１を生成し（Ｓ１００９）、生成した乱数Ｒ１を、ホスト／メディア認証部５２４に送信する（Ｓ１０１０）。
ホスト／メディア認証部５２４は、メディアデバイス秘密鍵を用いて、受信した乱数Ｒ１に署名生成アルゴリズムを施し、署名データを生成する（Ｓ１０１１）。ホスト／メディア認証部５２４は、生成した署名データをホスト装置へ送信する（Ｓ１０１２）。
【０１２５】
ホスト装置のホスト／メディア認証部は、メディア証明書に含まれるメディアデバイス公開鍵を用いて、受信した署名データに署名検証アルゴリズムを施し、署名検証する（Ｓ１０１３）。署名検証に失敗すると（Ｓ１０１４でＮＯ）、ホスト装置は処理を終了する。署名検証に成功すると（Ｓ１０１４でＹＥＳ）、ホスト装置は、Ｓ１０１７に進む。
Ｓ１０１２で署名データをホスト装置に送信したホスト／メディア認証部５２４は、乱数Ｒ２を生成し（Ｓ１０１５）、生成した乱数Ｒ２を、ホスト装置に送信する（Ｓ１０１６）。
【０１２６】
ホスト装置のホスト／メディア認証部は、ホストデバイス秘密鍵を用いて、受信した乱数Ｒ２に署名生成アルゴリズムを施し、署名データを生成する（Ｓ１０１７）。ホスト／メディア認証部は、生成した署名データをコントローラ５０１へ送信する（Ｓ１０１８）。
コントローラ５０１のホスト／メディア認証部５２４は、ホスト証明書に含まれるホストデバイス公開鍵を用いて、受信した署名データに署名検証アルゴリズムを施し、署名検証する（Ｓ１０１９）。署名検証に失敗すると（Ｓ１０２０でＮＯ）、コントローラ５０１は処理を終了する。署名検証に成功すると（Ｓ１０２０でＹＥＳ）、ホスト／メディア認証部５２４は、乱数ａを生成する（Ｓ１０２１）。さらに、生成した乱数ａを用いて、Ｋｅｙ−Ａ＝Ｇｅｎ（ａ，Ｙ）を生成し（ステップＳ１０２２）、生成したＫｅｙ−Ａを、ホスト装置へ送信する（Ｓ１０２３）。
【０１２７】
ホスト装置のホスト／メディア認証部は、Ｋｅｙ−Ａを受け取ると、乱数ｂを生成する（Ｓ１０２４）。そして、生成した乱数ｂを用いて、Ｋｅｙ−Ｂ＝Ｇｅｎ（ｂ，Ｙ）を生成し（Ｓ１０２５）、生成したＫｅｙ−Ｂを、コントローラ５０１へ送信する（Ｓ１０２６）。
コントローラ５０１のホスト／メディア認証部５２４は、ホスト装置からＫｅｙ−Ｂを受信すると、Ｓ１０２１で生成した乱数ａと受信したＫｅｙ−Ｂとから、共通鍵＝Ｇｅｎ（ａ，Ｋｅｙ−Ｂ）＝Ｇｅｎ（ａ，Ｇｅｎ（ｂ，Ｙ））を生成する（Ｓ１０２７）。
【０１２８】
一方、ホスト装置のホスト／メディア認証部は、コントローラ５０１から受信したＫｅｙ−ＡとＳ１０２４で生成した乱数ｂとを用いて、共通鍵＝Ｇｅｎ（ｂ，Ｋｅｙ−Ａ）＝Ｇｅｎ（ｂ，Ｇｅｎ（ａ，Ｙ））を生成する（Ｓ１０２８）。
（７）上記の実施の形態では、鍵発行局１００は、メディアＩＤの少なくとも一部である部分メディアＩＤを生成する構成を有していた。１２８ビットのメディアＩＤが必要な場合に、鍵発行局１００は、例えば、１２８ビットの内の６４ビットを部分メディアＩＤとして生成してもよい。この場合、残りの６４ビットは、コントローラ５０１の内部で生成してもよいし、メディア組み立て業者４００が生成するとしてもよい。
【０１２９】
コントローラ５０１は、記録媒体装置５００にデータを記録する記録装置、および、記録媒体装置５００に記録されているデータを再生する再生装置からメディアＩＤを要求されると、鍵発行局１００により生成された部分メディアＩＤを含むメディアＩＤを、記録装置および再生装置に出力すればよい。
また、本発明の鍵発行局１００は、メディアＩＤの一部ではなく、メディアＩＤのすべてを生成するとしてもよい。
【０１３０】
（８）上記の実施の形態では、ホワイトリスト発行局７００が正当なコントローラの固有番号を記載したホワイトリストを管理しており、ホワイトリストを用いて、不正なコントローラ（複数の記録媒体装置に同一の鍵が埋め込まれている）にタイトル鍵を配信するのを防止している。しかし、本発明は、ホワイトリストを用いる構成に限定されず、不正なコントローラの固有番号を記載したブラックリストを用いる構成でもよい。
【０１３１】
（９）本発明のコントローラは、以下のように構成してもよい。
記録媒体装置に組み込まれ、前記記録媒体装置のアクセス制御を実行するコントローラであって、前記コントローラは、プロセッサとメモリとから構成され、前記メモリにはコンピュータプログラムが記録されており、前記プロセッサが前記プログラムを実行することにより、コントローラ製造装置により生成されたコントローラ鍵を保持する保持手段と、正当な鍵発行局により生成され前記記録媒体装置に記録されるデータの保護に用いられる鍵情報が、前記鍵発行局により前記コントローラ鍵を用いて暗号化された暗号化鍵情報を受け取る受取手段と、当該コントローラの固有情報を用いて、受け取った前記暗号化鍵情報を変換し、個別変換鍵情報を生成する変換手段とを実現することを特徴とする。
【０１３２】
（１０）また、本発明のコントローラは、以下のように構成してもよい。
記録媒体装置に組み込まれ、前記記録媒体装置のアクセス制御を実行するコントローラであって、コントローラ製造装置により生成されたコントローラ鍵を保持する保持回路と、正当な鍵発行局により生成され前記記録媒体装置に記録されるデータの保護に用いられる鍵情報が、前記鍵発行局により前記コントローラ鍵を用いて暗号化された暗号化鍵情報を受け取る受取回路と、当該コントローラの固有情報を用いて、受け取った前記暗号化鍵情報を変換し、個別変換鍵情報を生成する変換回路とを備えることを特徴とする。
【０１３３】
＜実施の形態の効果＞
本発明の記録媒体装置によれば、コントローラ鍵及びメディアＩＤの一部をコントローラに埋め込むことで記録媒体装置の不正複製を防止するという効果が発揮される。
また、鍵発行局がメディアデバイス秘密鍵、メディア固有鍵等の記録媒体装置に書き込む鍵情報をメディア組み立て業者に発行する時に、これらの鍵情報をすでにコントローラに埋め込まれたコントローラ鍵を用いて暗号化することにより、対応するコントローラ鍵の埋め込まれたコントローラのみで暗号化された鍵情報を復号可能とすることにより、異なるマスクで製造された、異なるコントローラ鍵を有するコントローラ間での同一鍵情報の使用を防止するという効果が発揮される。
【０１３４】
また、同一マスクで製造されることで同一のコントローラ鍵が埋め込まれているコントローラ群に対し、コントローラ鍵で暗号化された鍵情報の書き込み後に認証ソフトを用いて、記録媒体装置に鍵情報が正しく書き込まれているか確認を行うと共に、メディア固有鍵とコントローラ固有番号の対応情報を取得し、その情報を元にメディア固有鍵の一覧であるホワイトリストを生成し、鍵配信サーバが鍵を記録媒体装置に配信する時に記録媒体装置が不正であるか否かのチェックにホワイトリストを用いて記録媒体装置を認証することにより、同一マスクで製造された同一コントローラ鍵を持つコントローラであっても、同一鍵情報の書き込みを行った記録媒体装置への鍵配信を停止され、不正利用を防止するという効果が発揮される。
【０１３５】
＜まとめ＞
カードメーカーが、各メモリカードに同じメディアＩＤを格納する場合を想定する。つまり、第１及び第２のメモリカードに、カードメーカーにより、同じメディアＩＤが格納されているものとする。また、第１メモリカードには、正規の暗号化コンテンツが格納されているものとする。この暗号化コンテンツは、メディアＩＤから生成されたコンテンツ鍵を用いて、コンテンツを暗号化して生成したものである。
【０１３６】
この場合に、第１メモリカードに格納されている暗号化コンテンツが第２メモリカードに不正にコピーされたとする。第２メモリカードにコピーされた暗号化コンテンツを不正に再生するために、第２メモリカードからメディアＩＤを取得し、取得したメディアＩＤからコンテンツ鍵を生成する。第２メモリカードに格納されているメディアＩＤは、第１メモリカードに格納されているメディアＩＤと同一であるので、第２メモリカードのメディアＩＤから生成したコンテンツ鍵は、第１メモリカードのメディアＩＤから生成したコンテンツ鍵と同一である。従って、生成したコンテンツ鍵を用いて、第２メモリカードにコピーされた暗号化コンテンツを復号しようとすると、復号が正しく行える。
【０１３７】
このように、従来の技術では、カードメーカーが、複数のメモリカードに同じメディアＩＤを格納するという不正を行った場合、デジタルコンテンツの著作権者の権利が保護できないという問題点がある。
本発明は、上記問題点を解決するため、記録媒体装置のメーカーが、複数の記録媒体装置に、識別情報を格納するという不正を防止することができる記録媒体装置、及び、記録媒体装置の製造方法を提供することを目的とする。
【０１３８】
そこで、本発明は、記録媒体装置に組み込むコントローラを製造するコントローラ製造者と、前記記録媒体装置に書き込む鍵情報を発行する鍵発行局と、前記コントローラと蓄積デバイスを使って前記記録媒体装置を組み立てるメディア組み立て業者とから構成されるデジタル著作権保護システムに用いられる前記記録媒体装置であって、前記コントローラ製造者は、コントローラ鍵を埋め込んだ前記コントローラを製造し、前記コントローラ鍵を前記鍵発行局に登録し、製造した前記コントローラを前記メディア組み立て業者に提供し、前記鍵発行局は、前記記録媒体装置に埋め込むための前記鍵情報を生成し、生成した前記鍵情報を前記コントローラ製造者から受け取った前記コントローラ鍵で暗号化した暗号化鍵情報を前記メディア組み立て業者に発行し、前記メディア組み立て業者は、前記コントローラ製造者から受け取った前記コントローラと前記蓄積デバイスを使って前記記録媒体装置を組み立て、前記鍵発行局から受け取った前記コントローラ鍵で暗号保護された前記暗号化鍵情報を前記記録媒体装置に書き込み、前記記録媒体装置は、前記コントローラ鍵で暗号化された前記暗号化鍵情報を前記記録媒体装置に書き込む時に、前記記録媒体装置に組み込まれた前記コントローラの持つ前記コントローラ鍵で前記暗号化鍵情報を復号し、取得した前記鍵情報をコントローラ固有の個別鍵で再暗号化して、前記蓄積デバイスに記録することを特徴とする。
【産業上の利用可能性】
【０１３９】
本発明は、ＳＤカードなどの記録媒体装置を製造および販売する産業、前記記録媒体装置に組み込まれるコントローラを製造および販売する産業において、カードメーカーによる不正を防止して、コンテンツの著作権者の権利を保護する仕組みとして利用することができる。
【符号の説明】
【０１４０】
１００  鍵発行局
２００  コントローラ製造者
３００  認証ソフトベンダ
４００  メディア組み立て業者
５００  記録媒体装置
６００  認証ソフト
７００  ホワイトリスト発行局
８００  鍵配信サーバ
９００  再生装置
【図１】
0005895230.tif 000002
【図２】
0005895230.tif 000003
【図３】
0005895230.tif 000004
【図４】
0005895230.tif 000005
【図５】
0005895230.tif 000006
【図６】
0005895230.tif 000007
【図７】
0005895230.tif 000008
【図８】
0005895230.tif 000009
【図９】
0005895230.tif 000010
【図１０】
0005895230.tif 000011
【図１１】
0005895230.tif 000012
【図１２】
0005895230.tif 000013
【図１３】
0005895230.tif 000014
【図１４】
0005895230.tif 000015
【図１５】
0005895230.tif 000016
【図１６】
0005895230.tif 000017
【図１７】
0005895230.tif 000018
【図１８】
0005895230.tif 000019
【図１９】
0005895230.tif 000020
【図２０】
0005895230.tif 000021