説明

認証システム、及びメディア

【課題】コンテンツ配信システムのセキュリティを向上させる。
【解決手段】メモリカード1000のコントローラ200は、コントローラ鍵K及びコントローラに固有の第1コントローラ識別情報IDcuを保持している。コントローラ200は、コントローラ鍵及び第1コントローラ識別情報に基づいてコントローラ毎に固有のコントローラユニーク鍵Kcuを生成すると共に、第1コントローラ識別情報に基づいて第2コントローラ識別情報IDcntrを生成する。復号器は、暗号化メディアデバイス鍵Enc(Kcu、Kmd_i)をコントローラユニーク鍵を用いて復号してメディアデバイス鍵Kmd_iを得る。認証鍵交換処理部213は、メディアデバイス鍵、メディアデバイス鍵証明書、及び第2コントローラ識別情報とを用いて、インタフェース部202を介してホスト装置2000と認証鍵交換処理を行い、セキュアチャネルを確立する。

【発明の詳細な説明】
【技術分野】
【0001】
本明細書に記載の実施の形態は、認証システム、及びメディアに関する。
【背景技術】
【0002】
近年、情報化社会の発展に伴い、本、新聞、音楽や動画などを電子化したコンテンツを
配信し、ユーザ端末或いはユーザ端末を介して記録媒体に記録されたコンテンツをユーザ
端末やPC環境などで閲覧可能とするコンテンツ配信システムが広く利用されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2005−341156号公報
【特許文献2】特開2010−268417号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
以下に説明する実施の形態は、セキュリティを向上させることを目的とする。
【課題を解決するための手段】
【0005】
以下に説明する実施の形態の情報記録装置は、各種データを格納するメモリ部と、与え
られメモリ部を制御するように構成されたコントローラと、ホスト装置とセキュアチャネ
ルを介したデータ通信を行うためのインタフェース部とを備えている。コントローラは、
コントローラ鍵及びコントローラに固有の第1コントローラ識別情報を保持している。
【0006】
コントローラは、コントローラ鍵及び第1コントローラ識別情報に基づいてコントロー
ラ毎に固有のコントローラユニーク鍵を生成するコントローラユニーク鍵生成部と、第1
コントローラ識別情報に基づいて第2コントローラ識別情報を生成するコントローラ識別
情報生成部と、復号器と、ホスト装置との間で認証鍵交換処理を実行する認証鍵交換処理
部を備える。
【0007】
メモリ部は、外部から自由にアクセス可能な通常記録部と、秘密記録部と、システム情
報記録部とを備えている。秘密記録部は、所定の認証処理の完了を条件としてアクセス可
能とされる。システム情報記録部は、公開鍵暗号方式の秘密鍵として機能するメディアデ
バイス鍵をコントローラユニーク鍵で暗号化した暗号化メディアデバイス鍵と、公開鍵暗
号方式の公開鍵として機能するメディアデバイス鍵証明書とを格納する。
【0008】
復号器は、暗号化メディアデバイス鍵をコントローラユニーク鍵を用いて復号してメデ
ィアデバイス鍵を得ることが可能に構成される。
【0009】
認証鍵交換処理部は、メディアデバイス鍵、メディアデバイス鍵証明書、及び第2コン
トローラ識別情報を用いて、インタフェース部を介してホスト装置と認証鍵交換処理を行
う。セキュアチャネルを確立した後、メディアデバイス鍵、メディアデバイス鍵証明書、
及び第2コントローラ識別情報をセキュアチャネル及びインタフェース部を介してホスト
部に送信する。
【0010】
以下に記載する実施の形態の情報記録装置の処理方法は、情報記録装置と、ホスト装置
との間で認証処理を実行する方法である。情報記録装置は、メモリ部と、このメモリ部を
制御するコントローラを有している。また情報記録装置は、コントローラ鍵及び第1コン
トローラ識別情報を与えられ、更に公開鍵暗号方式の秘密鍵として機能するメディアデバ
イス鍵と、公開鍵暗号方式の公開鍵として機能するメディアデバイス鍵証明書とをメモリ
部内の秘密記録部に保持する。メディアデバイス鍵は、コントローラ鍵及び第1コントロ
ーラ識別情報に基づいて生成されたコントローラユニーク鍵により暗号化されて暗号化メ
ディアデバイス鍵として前記秘密記録部に記録される。
【0011】
ホスト装置は、公開鍵暗号方式の秘密鍵として機能するホストデバイス鍵と、公開鍵暗
号方式の公開鍵として機能するホストデバイス鍵証明書とを保持している。
【0012】
この方法は、次のステップからなる。
【0013】
(1)第1コントローラ識別情報に基づいて第2コントローラ識別情報(IDcntr)
を生成するステップ
(2)暗号化メディアデバイス鍵、メディアデバイス鍵証明書、及び第2コントローラ識
別情報、並びにホストデバイス鍵及びホストデバイス証明書に基づいて認証鍵交換処理を
実行して、メディアデバイス鍵証明書の中に埋め込まれたメディアデバイス鍵証明書情報
及び第2コントローラ識別情報をホスト装置において取得するステップ
(3)ホスト装置が受領したメディアデバイス鍵証明書情報及び第2コントローラ識別情
報に基づいて情報記録装置識別情報を生成するステップ
(4)情報記録装置識別情報に基づいてメディアユニーク鍵を生成するステップ
【図面の簡単な説明】
【0014】
【図1】第1の実施の形態に係る情報記録システムに用いられるメモリカード1000の構成を示すブロック図である。
【図2】図1のメモリ100(NAND型フラッシュメモリ)の構成を示す等価回路図である。
【図3】第1の実施の形態において、メモリカード1000に対する暗号化メディアデバイス鍵及びメディアデバイス鍵証明書の書き込み方法を説明する概略図である。
【図4】第1の実施の形態に係る情報記録システムに含まれるメモリカード1000及びホスト装置2000の構成及び動作を示すブロック図である。
【図5】第1の実施の形態に係る情報記録システムに含まれるメモリカード1000及びホスト装置2000の構成及び動作を示すブロック図である。
【図6】第2の実施の形態に係る情報記録システムに含まれるメモリカード1000及びホスト装置2000の構成及び動作を示すブロック図である。
【図7】第2の実施の形態に係る情報記録システムの動作を示す流れ図である。
【発明を実施するための形態】
【0015】
電子化されたコンテンツ(以下、単にコンテンツという)は、容易に複製可能なため、
コンテンツに付随する著作権を無視した不正行為が生じ易い。このような不正行為からコ
ンテンツを保護する観点から、コンテンツは通常、暗号化された上で記録媒体に記録され
、正当な機器においてのみ再生時に復号される。
【0016】
また、コンテンツを暗号化するためのコンテンツ鍵が二種類の鍵で二重に暗号化された
暗号化二重鍵方式が考えられている。暗号化鍵の内、記録媒体に固有の鍵(例えば、メデ
ィアユニーク鍵)は記録媒体の秘匿領域にセキュアに記録され、記録媒体外部からはアク
セスができないようになっている。このため、例えば暗号化コンテンツ鍵データのみが不
正にコピーされたとしても、暗号化コンテンツ鍵を復号するために必要なメディアユニー
ク鍵がなければコンテンツを利用(復号)することができない。
【0017】
しかし、このようなメディアユニーク鍵が何らかの手法によって不正に読み出され、不
正記録媒体(メモリカード)製造業者に渡されると、正規の記録媒体(メモリカード)を
コピーしたクローンカードが出回る結果となり、コンテンツデータが不正に利用されるこ
とが起こり得る。
【0018】
以下、図面を参照しながら本発明の実施形態を説明する。
【0019】
[第1の実施形態]
図1は、第1の実施の形態による情報記録システムに用いられるメモリカード(不揮発
性メモリシステム)1000の構成を示す。このメモリカード1000は、コンテンツデ
ータを暗号化して格納することが可能に構成されている。なお、不揮発性メモリシステム
は必ずしもメモリカードの形状である必要はなく、ホスト装置2000からメモリカード
1000が着脱不可能な態様で実装されていてもよい。
【0020】
また、このメモリカード1000は、ホスト装置2000(図1では図示せず)に接続
可能に構成され、このホスト装置2000との間で所定の認証鍵交換処理を実行可能に構
成されている。認証鍵交換処理が完了すると、ホスト装置2000からメモリカード10
00のシステム情報記録部及び秘密記録部にデータを書き込み或いは読み出しが可能にな
る。また、ホスト装置2000又はこれに接続される再生装置により、メモリカード10
00に格納されている暗号化コンテンツデータの復号に必要なデータの読み出しが可能と
なり,コンテンツデータの再生が可能になる。
【0021】
そして、本実施の形態のメモリカード1000は、ホスト装置2000との間の認証鍵
交換処理のために、公開鍵暗号方式の秘密鍵であるメディアデバイス鍵Kmd_iと、公
開鍵暗号方式の公開鍵を含んでいるメディアデバイス鍵証明書Certmediaを格納
可能に構成されている。詳しくは後述する。
【0022】
このメモリカード1000は、NAND型フラッシュメモリ100(以下、メモリ10
0という)と、そのメモリ100における読み出し動作/書き込み動作を制御するコント
ローラ200により構成される。ここでは、メモリ100の一例としてNAND型フラッ
シュメモリを採用する場合について説明するが、データを不揮発に記憶することができる
他のメモリ装置(磁気ディスクドライブ装置、抵抗変化メモリ、強誘電体メモリ、磁気抵
抗メモリ、相変化メモリ等)をメモリ100として採用することも可能である。
【0023】
コントローラ200は、メモリ100との間でデータ転送を行うためのNANDフラッ
シュインタフェース201、ホスト装置2000等の外部装置との間でデータ転送を行う
ためのホストインタフェース202、読み出し/書き込みデータ等を一時保持するバッフ
ァRAM203、データ転送制御を行うMPU204、NAND型フラッシュメモリ21
内のファームウェア(FW)の読み出し/書き込みのシーケンス制御等に用いられるハー
ドウェアシーケンサ205、復号器206、及び暗号化器207、及びヒューズ回路20
8を有する。
【0024】
NANDフラッシュインタフェース201は、誤り訂正回路(ECC)を含んでいる。
NANDフラッシュインタフェース201は、NANDフラッシュメモリにデータを書き
込む際に、誤り訂正回路を用いて誤り訂正符号を計算し、データ及び誤り訂正符号をNA
NDフラッシュメモリ21に書き込む。また、NANDフラッシュインタフェース201
は、NANDフラッシュメモリからデータを読み出す際に、データ及び誤り訂正符号から
シンドロームを計算し、所定の誤り訂正能力範囲内でデータの誤りを訂正する。
【0025】
コントローラ200にとって必要なファームウェア(FW)は、電源投入後自動的に実
行される初期化動作(パワーオン・イニシャルセットアップ動作)において、メモリ10
0から自動的に読み出されて、データレジスタ(バッファRAM)203に転送される。
この読み出し制御は、ハードウェアシーケンサ205により行われる。なお、ファームウ
ェアは、コントローラ200内のROMに格納されていてもよい。この実施の形態でのフ
ァームウェアは、後述するように、一方向性変換器211、ID生成器212、認証鍵交
換処理部213などを含む。
【0026】
ヒューズ回路208は、コントローラ鍵Kc、及びコントローラ20を識別するための
コントローラユニークID(IDcu)を記憶している。コントローラ鍵Kcとコントロ
ーラユニークID(IDcu)は、後述するようにコントローラユニーク鍵Kcuを生成
するのに用いられる。コントローラユニーク鍵Kcuは、前述のメディアデバイス鍵Km
d_iをメモリカード1000のシステム情報記録部103に記録する際に暗号化するの
に用いられる。コントローラユニーク鍵Kcuは、一方向性変換器211において、コン
トローラ鍵KcとコントローラユニークID(IDcu)を入力値として生成される。す
なわち、一方向性変換器211は、コントローラユニーク鍵を生成するためのコントロー
ラユニーク鍵生成部の一態様である。
【0027】
また、ID生成器212(コントローラ識別情報生成部)は、コントローラ鍵Kcとコ
ントローラユニークID(IDcu)を入力値として、外部に送信される公開コントロー
ラユニークID(IDcntr)を生成する。
【0028】
認証鍵交換処理部213は、メディアデバイス鍵Kmd_i、及びメディアデバイス鍵
証明書Certmediaに基づいてホスト装置2000との間で認証鍵交換処理を実行
する。
【0029】
メモリ100は、図2に示すように、複数の電気的書き換え可能な複数の不揮発性メモ
リセル(図の例では32個のメモリセル)M0−M31が直列接続されたNANDセルユ
ニット(NANDストリング)NUを配列して構成される。
【0030】
NANDセルユニットNUの一端は、選択ゲートトランジスタS1を介してビット線B
Lo,BLeに、他端は選択ゲートトランジスタS2を介して共通ソース線CELSRC
に接続される。メモリセルM0−M31の制御ゲートはそれぞれワード線WL0−WL3
1に接続され、選択ゲートトランジスタS1,S2のゲートは選択ゲート線SGD,SG
Sに接続される。
【0031】
ワード線方向に配列されるNANDセルユニットの集合が、データ消去の最小単位とな
るブロックを構成し、図示するようにビット線の方向に複数のブロックBLK0−BLK
n−1が配置される。複数のブロックBLKのうち、一部は、ユーザが特別の認証処理無
しに自由にアクセス可能な通常記録部101として設定されており、他の一部は一定の認
証鍵交換処理の後にアクセスが可能になる秘密記録部102として設定されており、更に
別の一部は予め決められた情報をメモリカード製造時に記録しておくシステム情報記録部
103として設定されている。通常記録部101、秘密記録部102、システム情報記録
部103は、それぞれ論理アドレスを割り当てられている。秘密記録部102の論理アド
レスの指定は、後述する認証鍵交換処理が完了した場合にのみ許容される。
【0032】
なお、通常記録部101には、1つのメモリセルに2ビット以上のデータを格納するこ
とができる。一方、秘密記録部102及びシステム情報記録部103は、そのデータ信頼
性を確保する観点から、1つのメモリセルに1ビットのデータのみを格納可能とすること
ができる。また、通常記録部11においては論理アドレスと物理アドレスとの対応関係が
データ更新に伴い動的に変更されるが、秘密記録部12及びシステム情報記録部103に
ついては、そのデータ信頼性を確保する観点から、論理アドレスと物理アドレスとの対応
関係を静的に固定するよう制御してもよい。
【0033】
ビット線BLe,BLoの一端側に、セルデータの読み出し及び書き込みに供させるセ
ンスアンプ回路3が配置され、ワード線の一端側にワード線及び選択ゲート線の選択駆動
を行うロウデコーダ2が配置される。図では、隣接する偶数番ビット線BLeと奇数番ビ
ット線BLoがビット線選択回路により選択的にセンスアンプ回路3の各センスアンプS
Aに接続される場合を示している。
【0034】
次に、図3を参照して、メモリカード1000の製造工程、及び、図1のメディアデバ
イス鍵Kmd_i、及びメディアデバイス鍵証明書Certmediaを書き込む方法を
説明する。
【0035】
メモリカード1000に書き込むメディアデバイス鍵Kmd_i及びメディアデバイス
鍵証明書Certmediaは鍵発行/管理センタ3000からメモリカード製造業者C
に提供され、コントローラ200を介してメモリカード1000を構成しているメモリ1
00のシステム情報記録部103に書き込まれる。なお、図1では省略しているが、メモ
リカード1000は、所定の通信機能を有する機器(パソコン、携帯電話端末、公衆端末
など)に接続される。このような通信機能を有する機器を介して、鍵発行/管理センタ3
000から発行されたデータがメモリカード1000に書き込まれる。
【0036】
前述したように、メディアデバイス鍵Kmd_iは公開鍵暗号方式の秘密鍵であり、一
方、メディアデバイス鍵証明書Certmediaは秘密鍵としてのメディアデバイス鍵
Kmd_iに対応した公開鍵を含むデータである。メディアデバイス鍵証明書Cert
ediaには、証明書固有の識別情報であるメディアデバイス鍵証明書ID(IDm_c
ert)も埋め込まれている。
【0037】
メモリカード1000の製造においては、コントローラ200はコントローラ製造業者
Aから、メモリ100はメモリ製造業者Bからメモリカード製造業者Cに提供される。な
お、製造業者A,B、Cのいずれかまたは全てが同一企業である場合もある。メモリカー
ド1000が動作可能な状態とされるために、メモリカード製造業者Cは、メモリ100
に必要な情報を書き込む。
【0038】
コントローラ製造業者Aはコントローラ200の製造時において、コントローラ200
の内部に、秘匿情報としてコントローラ鍵Kc及びコントローラユニークID(IDcu
)を書き込む。コントローラ鍵Kcは、製造工程上の理由等から、複数のコントローラ2
00で共通の鍵とされることがある。一方、コントローラユニークIDは、コントローラ
200毎に異なっており、あるコントローラ200内で生成されるコントローラユニーク
鍵と、別のコントローラ200内で生成されるコントローラユニーク鍵とは必ず異なる。
【0039】
コントローラ製造業者Aは、鍵発行/管理センタ3000に、コントローラ200に付
与したコントローラ鍵Kcのデータを開示する。なお、コントローラ鍵Kcは、PGP暗
号などを用いて、コントローラ製造業者Aから鍵発行/管理センタ3000に送信するこ
とができる。
【0040】
鍵発行/管理センタ3000は、メディアデバイス鍵Kmd_iやメディアデバイス鍵
証明書Certmediaを生成する鍵生成部3002と、生成したメディアデバイス鍵
Kmd_i及びメディアデバイス鍵証明書Certmediaを管理するデバイス鍵デー
タベース3001と、コントローラ製造業者Aから受け取ったコントローラ鍵Kcを用い
てメディアデバイス鍵Kmd_iを暗号化する暗号化部3003を備えている。
【0041】
コントローラ鍵Kcは、鍵発行/管理センタ3000において、メディアデバイス鍵K
md_iを暗号化するのに用いられる。メディアデバイス鍵Kmd_iは、鍵生成器30
02で生成された後、デバイス鍵データベース3001に格納される。暗号化器3003
は、デバイス鍵データベース3001から対応するメディアデバイス鍵Kmd_iを供給
され、これをコントローラ鍵Kcで暗号化して暗号化メディアデバイス鍵Enc(Kc、
Kmd_i)を生成する。
【0042】
コントローラ鍵Kcは、コントローラ製造業者Aと鍵発行/管理センタ3000しか知
りえない情報である。しかし、何らかの事故や事情によってコントローラ鍵Kcの情報が
外部に漏れた時の被害を軽減するためには、例えば生産ロット毎など、一定量のコントロ
ーラ単位で変更することが望ましい。
【0043】
なお、鍵生成器3002やデバイス鍵データベース3001では、メモリカード100
0用のメディアデバイス鍵Kmd_iやメディアデバイス鍵証明書Certmedia
けでなく、後述するホスト装置2000用のホストデバイス鍵Khd_iやホストデバイ
ス証明書Certhostも同様に生成・管理する。
【0044】
メモリカード製造業者Cは、コントローラ製造業者Aからコントローラ200の供給を
受けると共に、当該コントローラ200向けに暗号化されたメディアデバイス鍵(暗号化
メディアデバイス鍵Enc(Kc、Kmd_i)、及びそれに対応するメディアデバイス
鍵証明書Certmediaを鍵発行/鍵管理センタ3000から受け取る。所望の暗号
化メディアデバイス鍵Enc(Kc、Kmd_i)を受け取るためには、例えばコントロ
ーラ200の型番や製造ロット番号などを提示することで正しいコントローラ鍵Kcで暗
号化されたメディアデバイス鍵を受け取ることが可能である。
【0045】
暗号化メディアデバイス鍵Enc(Kc、 Kmd_i)は、コントローラ200のバ
ッファRAM203に一旦書き込まれる。すると、コントローラ200は当該暗号化メデ
ィアデバイス鍵Enc(Kc、 Kmd_i)を復号器206において自らが有するコン
トローラ鍵Kcを用いて復号する。これによりコントローラ200においてメディアデバ
イス鍵Kmd_iが得られる。
【0046】
一方、一方向性変換器211は、コントローラ200に保持されているコントローラ鍵
KcとコントローラユニークID(IDcu)を入力値として一方向性関数を演算し、コ
ントローラユニーク鍵Kcuを生成する。この新たに生成されたコントローラユニーク鍵
Kcuを用いてメディアデバイス鍵Kmd_iを再び暗号化器207において暗号化し、
暗号化メディアデバイス鍵Enc(Kcu、 Kmd_i)を生成する。この暗号化メデ
ィアデバイス鍵Enc(Kcu、Kmd_i)はメモリ製造業者Bから供給されたメモリ
100のシステム情報記録部103に格納される。この時書き込んだ暗号化メディアデバ
イス鍵Enc(Kcu、Kmd_i)に対応するメディアデバイス鍵証明書Certme
diaも同様にシステム情報記録部103に格納される。
【0047】
コントローラユニーク鍵(Kcu)は、コントローラ200内に秘匿されているコント
ローラ鍵Kc及びコントローラユニークID(IDcu)を用いて生成される。このため
、暗号化メディアデバイス鍵Enc(Kcu、Kmd_i)の復号に必要な情報が外部に
漏れる危険は少なく、一旦メモリ100に書き込まれた暗号化メディアデバイス鍵Enc
(Kcu、Kmd_i)を別個のコントローラ200で利用可能な状態とするため、不正
に再暗号化(元のコントローラユニーク鍵Kcu1で復号後に、別のコントローラユニー
ク鍵Kcu2で暗号化)することは非常に困難となっている。
【0048】
この第1の実施の形態では、コントローラ鍵KcとコントローラユニークID(IDc
u)からコントローラユニーク鍵Kcuを生成する際に一方向性関数を用いているが、2
つの入力データから1つの出力データを生成することのできる関数であればよく、特に一
方向性関数に限定されるものではない。
【0049】
次に、図4を参照して、第1の実施の形態の情報記録システムの全体構成及び動作を説
明する。上記のようにして暗号化メディアデバイス鍵Enc(Kcu、Kmd_i)及び
メディアデバイス鍵証明書Certmediaを与えられたメモリカード1000は、図
4に示すように、ホスト装置2000に接続されることにより、コンテンツデータCをホ
スト装置2000から書き込まれたり、或いは取り込まれたコンテンツデータCをホスト
装置2000に向けて出力したりすることができる。このメモリカード1000と、ホス
ト装置2000とにより、1つの情報記録システムが構成される。
【0050】
ここで、ホスト装置2000の構造について説明する。ホスト装置2000は、保持部
401、認証鍵交換処理部402、ID結合部403、一方向性変換器404、乱数生成
器405、暗復号器406、暗復号器407を備えている。
【0051】
保持部401は、前述したホストデバイス鍵Khd_j、及びホストデバイス証明書C
erthostを格納している。ホストデバイス鍵Khd_jは、公開鍵暗号方式の秘密
鍵であり、ホストデバイス証明書Certhostは、ホストデバイス鍵Khd_jと対
をなす公開鍵を含むデータである。
【0052】
認証鍵交換処理部402は、インタフェース部500、202及びセキュアチャネルを
介して、メモリカード1000の認証鍵交換処理部213との間で認証鍵交換処理を実行
してメディアデバイス鍵証明書ID(IDm_cert)を出力する機能を有する。また
、ID結合部403は、公開コントローラユニークID(IDcntr)とメディアデバ
イス鍵証明書ID(IDm_cert)とに基づきメモリカードユニークID(IDmc
)を生成するよう構成されている。このID結合部403は、コントローラユニークID
(IDcntr)及びメディアデバイス鍵証明書ID(IDm_cert)に基づいてメ
モリカードユニークID(IDmc)を生成する識別情報生成部として機能する。このI
D結合部403は、単に2つのIDを結合することにより別の新規のIDを生成するもの
である。このような単なる結合に代えて、例えば一方向性関数や暗号アルゴリズムを用い
て新しいIDを生成してもよい。
【0053】
一方向性変換器404は、このメモリカードユニークID(IDmc)、乱数生成器4
05によって生成されたメディア鍵Kmを入力とした一方向性関数により、メディアユニ
ーク鍵Kmuを生成する。乱数生成器405は、乱数を発生させて、取得された乱数に基
づいてメディア鍵Km及びタイトル鍵Ktを生成する。暗復号器406は、上述のメディ
アユニーク鍵Kmuによりタイトル鍵Ktを暗号化する。また、暗復号器407は、タイ
トル鍵KtによりコンテンツデータCを暗号化する(暗号化コンテンツデータEnc(K
t、C)を取得する)。
【0054】
なお、メディアユニーク鍵Kmuは、ホスト装置2000によって生成され、本実施の
形態では、タイトル鍵Ktの暗号化のための暗号化鍵として使用されている。従来のコン
テンツ保護技術と同様に、秘密記録部102に記録するメディアユニーク鍵Kmuをコン
テンツデータCの暗号化に直接利用するなどの形態も可能である。また、メディアユニー
ク鍵Kmuでユーザに固有のユーザ鍵Kuを暗号化し、ユーザ鍵Kuで更にコンテンツ鍵
Kctを暗号化し、更にコンテンツ鍵Kctでコンテンツデータを暗号化する二重暗号化
方式にも適用可能である。
【0055】
また、メディア鍵Kmやタイトル鍵Ktはホスト装置内で生成されるだけでなく、予め
メモリカードに書き込まれている場合や外部装置(図示せず)から与えられる場合もある

【0056】
次に、このようなホスト装置2000から、メモリカード1000に対してコンテンツ
データCの書き込む場合の動作を、図4を参照して説明する。最初に、メモリカード10
00は、一方向性変換器211を用いて、コントローラ鍵KcとコントローラユニークI
D(IDcu)からコントローラユニーク鍵Kcuを生成する。そして、このコントロー
ラユニーク鍵Kcuを用いて、暗号化メディアデバイス鍵Enc(Kcu、Kmd_i)
を復号してメディアデバイス鍵Kmd_iを得る。このメディアデバイス鍵Kmd_iと
メディアデバイス鍵証明書Certmediaは、認証鍵交換処理部213に転送される

【0057】
一方、ホスト装置2000は、ホストデバイス鍵Khd_jとホストデバイス鍵証明書
Certhostを認証鍵交換処理部402に転送する。これにより、認証鍵交換処理部
213及び402において認証鍵交換処理が実行される。処理が完了すると、メモリカー
ド1000とホスト装置2000との間にセキュアチャネルが確立される。なお、セキュ
アチャネルが確立されると、ID生成器212は、自身が生成した公開コントローラユニ
ークID(IDcntr)をインタフェース部を介してセキュアチャネルを通して出力可
能になる。
【0058】
セキュアチャネルが確立されると、ID生成器403は、公開コントローラユニークI
D(IDcntr)とメディアデバイス鍵証明書ID(IDm_cert)とを結合させ
てメモリカードユニークID(IDmc)を生成する。
【0059】
ホスト装置2000は、乱数生成器405によりメディア鍵(Km)を生成し、生成し
たメディア鍵Kmをセキュアチャネル及びインタフェース部500、202経由でメモリ
カード1000の秘密記録部102に記録する。
【0060】
ホスト装置2000は、一方向性変換器404を用いてメディア鍵Kmとメモリカード
ユニークID(IDmc)からメディアユニーク鍵Kmuを生成する。
【0061】
ホスト装置2000は、乱数生成器405を用いてタイトル鍵Ktを生成し、更に暗復
号器406を用いてタイトル鍵Ktをメディアユニーク鍵Kmuで暗号化し、暗号化タイ
トル鍵Kte=Enc(Kmu,Kt)をメモリカード100の通常記録部101に記録
する。また、ホスト装置2000は、タイトル鍵Ktを用いてコンテンツデータCを暗号
化し、暗号化コンテンツデータCe= Enc(Kt、 C))をメモリカード1000の
通常記録部101に記録する。以上により、コンテンツデータCの記録動作が完了する。
【0062】
次に、メモリカード1000からホスト装置2000に対し、コンテンツデータCを読
み出す場合の動作を、図5を参照して説明する。認証鍵交換処理部213、402による
認証鍵交換処理、及びID結合部403における動作は、書き込み動作の場合(図4)と
略同一である。
【0063】
認証鍵交換処理が完了し、セキュアチャネルが確立されると、秘密記録部102及びシ
ステム情報記録部103へのアクセスが可能になり(すなわち、秘密記録部102及びシ
ステム情報記録部103の論理アドレスの指定が可能になる)、メモリカード1000の
秘密記録部102に記録されているメディア鍵Kmが、セキュアチャネルを介してホスト
装置2000の一方向性変換器404に提供される。一方向性変換器404は、このメデ
ィア鍵Kmと、前述のメモリカードユニークID(IDmc)とを用いてメディアユニー
ク鍵Kmuを生成する。暗復号器407は、このメディアユニーク鍵Kmuを用いて、メ
モリカード100に格納されている暗号化タイトル鍵Enc(Kmu、Kt)を復号して
タイトル鍵Ktを得る。そして、この得られたタイトル鍵Ktを用いて、メモリカード1
00に格納されている暗号化コンテンツデータEnc(Kt、C)を復号してコンテンツ
データCを得る。
【0064】
以上説明したように、この実施の形態では、公開鍵暗号方式に従ったメディアデバイス
鍵Kmd_i及びメディアデバイス鍵証明書Certmediaが認証鍵交換処理に用い
られる。しかし、コントローラ200のコントローラ鍵Kc及びコントローラユニークI
D(IDcu)に基づいてコントローラユニークID(IDcntr)が生成される、こ
のコントローラユニークID(IDcntr)は、セキュアチャネルを介してホスト装置
2000に供給される。セキュアチャネルを介しての送信であるため、コントローラユニ
ークID(IDcntr)が外部に漏れることはなく、改竄も防止されている。また、こ
のコントローラユニークID(IDcntr)とメディアデバイス鍵証明書ID(IDm
_cert)とに基づいて、ID結合部403により、メモリカードユニークID(ID
mc)が生成される。このメモリカードユニークID(IDmc)に基づいて、メモリカ
ード1000内のメモリ100のメディアユニーク鍵Kmuが生成される。このように、
本実施の形態によれば、公開鍵暗号方式による認証鍵交換処理を行った場合においても、
公開鍵・秘密鍵のペアとコントローラ200に固有のコントローラユニークID(IDc
ntr)を互いに関連付けることができ、これによりクローンカードの蔓延を防止するこ
とができる。
【0065】
[第2の実施形態]
図6は、第2の実施の形態による情報記録システムの構成を示すブロック図である。メ
モリカード1000のハードウエア構成は図1、図2に示したものと同様で良いので、以
下では説明は省略する。本実施の形態では、図6に示すように、認証鍵交換処理部213
の動作が異なっている。すなわち、ここでの認証鍵交換処理部213は、ID生成器21
2で生成されたコントローラユニークID(IDcntr)を、直接ホスト装置2000
に送信するのではなく、コントローラ200内の認証鍵交換処理部213に送信する。そ
して、このコントローラユニークID(IDcntr)は、認証鍵交換処理のパラメータ
の1つとして用いられる。認証鍵交換処理が完了すると、コントローラユニークID(I
Dcntr)は、メディアデバイス鍵証明書ID(IDm_cert)と共にID結合部
403に送信される。以後の動作は、第1の実施の形態と略同様である。
【0066】
図7は、楕円曲線暗号をベースとした標準的な認証鍵交換を用いた場合の動作手順を説
明している。
【0067】
ホスト装置は乱数RNhを生成(ステップS1)し,ホストデバイス鍵証明書Cert
hostと共にメモリカード1000に送る(ステップS2)。メモリカード1000は
受信したホストデバイス鍵証明書Certhostに付けられているデジタル署名を検証
すると共に乱数RNmを生成する(ステップS3)。
【0068】
続いて、メモリカード1000は乱数RNmとメディアデバイス鍵証明書(Cert
edia)をホスト装置に送る(ステップS4)。これを受けて、ホスト装置2000は
受信したメディアデバイス鍵証明書Certmediaに付けられているデジタル署名を
検証する。なお、メモリカード1000はステップS4の処理を行うと共に,楕円曲線暗
号におけるDiffie−Hellman鍵交換処理に必要な乱数Mkを生成し、楕円曲
線のベースポイントGを用いてチャレンジ用の値Mv(=Mk*G)を計算する。そして
、ID生成器212でIDcntrを生成し、メディアデバイス鍵Kmd_iを用いてチ
ャレンジ用の値Mv、ステップS2で受け取った乱数RNh及びコントローラユニークI
D(IDcntr)に対するデジタル署名を生成する(ステップS6)。メモリカード1
000はステップS6で生成したチャレンジ用の値Mv、コントローラユニークID(I
Dcntr)およびデジタル署名をホスト装置2000に送る(ステップS7)。
【0069】
ホスト装置2000はステップS7で受信した署名を検証し、楕円曲線暗号におけるD
iffie−Hellman鍵交換処理に必要な乱数Hkを生成し、楕円曲線のベースポ
イントGを用いてチャレンジ用の値Hv(=Hk*G)を計算する。そして、ホストデバ
イス鍵Khd_jを用いてチャレンジ用の値Hv及びステップS4で受け取った乱数RNm
に対するデジタル署名を生成すると共に、本認証鍵交換処理によって共有される共有鍵K
s(=Hk*Mv)を計算する(ステップS8)。ホスト装置2000はステップS8で
生成したチャレンジ用の値Hvおよびデジタル署名をメモリカード1000に送る(ステ
ップS9)。これを受けてメモリカード1000はステップS9で受け取ったデジタル署
名を検証し、共有鍵Ks(=Mk*Hv)を計算する。上記処理のデジタル署名検証処理
において署名が正しく検証できなかった場合には,何れのステップにおいてもそれ以降の
処理を中止する。
【0070】
以上の認証鍵交換処理を行うことにより、ホスト装置とメモリカードは共有鍵を秘密裏
に共有することができる。認証鍵交換処理においてはホスト装置とメモリカードが互いに
生成したチャレンジを用いて共有鍵が計算されるため、共有鍵の値は認証鍵交換処理のた
びに異なる。
【0071】
以上、本発明のいくつかの実施の形態を説明したが、これらの実施の形態は、例として
提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施の
形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範
囲で、種々の省略、置き換え、変更を行うことができる。これら実施の形態やその変形は
、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の
範囲に含まれる。例えば、上記実施の形態においては、ID生成器212において、コン
トローラ鍵KcとコントローラユニークID(IDcu)の対に基づいてコントローラユ
ニークID(IDcntr)を生成している。しかし、これに代えて、コントローラユニ
ークID(IDcu)のみに基づいてコントローラユニークID(IDcntr)を生成
してもよい。コントローラ200が秘匿しているコントローラユニークID(IDcu)
を秘匿した状態のまま、外部に開示可能な別の固有情報を生成することができれば、用い
られるパラメータは不問である。ただし、生成に用いる関数は、一方向性関数など、不可
逆的であり、得られたコントロールユニークID(IDcntr)から逆計算を行って元
のコントロールユニークID(IDcu)が求められないようなものを選択する必要があ
る。
【0072】
以下にいくつかの実施形態を付記する。
【0073】
[1]、ホスト鍵情報と、ホスト証明情報とが格納され、第1乱数を生成し、該第1乱
数と、第1署名情報が付けられた前記ホスト証明情報とをメディアに送り、前記メディア
から、第2乱数と、前記メディアに格納されたメディア証明情報と、メディア鍵情報を用
いて署名処理された、前記第1乱数と、前記第2乱数とは異なる第3乱数及び楕円曲線の
ベースポイントを用いて計算された第1値と、前記メディアに格納されたコントローラ鍵
情報及びコントローラ識別情報に基づいて一方向性関数演算を実行して生成されたユニー
クID情報と、を受け、前記メディアから送られた前記メディア証明情報に付けられてい
る第2署名情報を検証し、第4乱数を生成し、該第4乱数及び前記楕円曲線のベースポイ
ントを用いて第2値を計算し、前記ホスト鍵情報を用いて、前記第2値及び前記メディア
から送られた前記第2乱数に対して署名処理を実施し、前記メディアとの鍵交換処理で共
有される共有鍵情報を生成する。
【0074】
[2]、[1]の記載において、前記第2署名情報の検証が失敗した場合、該検証以降
の処理を中止する。
【0075】
[3]、[1]の記載において、前記共有鍵情報を、前記第4乱数と前記第1値とに基
づき生成する。
【0076】
[4]、[1]の記載において、前記第2値を前記メディアに送り、前記メディアに、
前記第3乱数と前記第2値とに基づき新たに共有鍵情報を生成させることを可能とする。
【0077】
[5]、[1]の記載において、前記共有鍵情報を、前記鍵交換処理の実施のたびに異
なる値とさせる。
【0078】
[6]、ホスト証明情報を有し、第1乱数を生成し、該第1乱数と前記ホスト証明情報
とをメディアに送り、前記メディアから、第2乱数と、メディア証明情報と、楕円曲線の
ベースポイント及び第3乱数を用いて計算された第1値と、前記メディアに格納されたコ
ントローラ鍵情報及びコントローラ識別情報に基づいて一方向性関数演算を実行して生成
されるとともにメディア鍵情報を用いて署名処理されたユニークID情報と、を受け、第
4乱数を生成し、該第4乱数と前記楕円曲線のベースポイントとを用いて第2値を計算し
、前記第1値と前記第4乱数とに基づき前記メディアとの鍵交換処理で共有される共有鍵
情報を生成する。
【0079】
[7]、第1乱数とホスト証明情報とをメディアに送り、前記メディアから、第2乱数
と、メディア証明情報と、第3乱数を用いて計算された値と、前記メディアのコントロー
ラ鍵情報及びコントローラ識別情報に基づいて生成されるとともにメディア鍵情報を用い
て署名処理されたユニークID情報と、を受け、第4乱数を生成し、前記第4乱数と、前
記第3乱数を用いて計算された値と、に基づき共有鍵情報を生成する。
【0080】
[8]、ホスト証明情報をメディアに送り、前記メディアから、メディア証明情報を受
けると、該メディア証明情報の署名情報を検証し、前記メディアから、該メディアで生成
された乱数を用いて計算された値と、コントローラ鍵情報及びコントローラ識別情報に基
づいて生成されたユニークID情報を含む情報にメディア鍵情報を用いて署名処理がなさ
れた第2署名情報とを受けると、該第2署名情報を検証する。
【符号の説明】
【0081】
1000・・・メモリカード、 2000・・・ホスト装置、 3000・・・鍵発行/
管理センタ、 100・・・メモリ、 200・・・コントローラ。



【特許請求の範囲】
【請求項1】
鍵情報を用いて認証を行うメディアとホストとの間の認証システムにおいて、
前記メディアは、メモリと該メモリを制御するコントローラとを備えるとともに、メデ
ィア鍵情報と、メディア証明情報と、コントローラ鍵情報と、コントローラ識別情報とを
格納し、
前記ホストは、ホスト鍵情報と、ホスト証明情報とを格納し、
前記ホストは、
第1乱数を生成し、該第1乱数と前記ホスト証明情報とを前記メディアに送り、
前記メディアは、
前記ホストから送られた前記ホスト証明情報に付けられている第1署名情報を検証し、
第2乱数と楕円曲線暗号に基づき計算される第3乱数とを生成し、該第3乱数と楕円曲
線のベースポイントとを用いて第1値を計算し、
前記コントローラ鍵情報と前記コントローラ識別情報とに基づいて一方向性関数演算を
実行し、ユニークID情報を生成し、
前記メディア鍵情報を用いて前記第1乱数、前記第1値、及び前記ユニークID情報に
対して署名処理を実施し、
前記第1乱数、前記第1値、前記ユニークID情報、及び前記メディア証明情報を前記
ホストに送り、
前記ホストは、
前記メディアから送られた前記メディア証明情報に付けられている第2署名情報を検証
する
ことを特徴とする認証システム。
【請求項2】
請求項1に記載の認証システムにおいて、
前記メディアは、前記第1署名情報の検証が失敗した場合、該検証以降の処理を中止す
る認証システム。
【請求項3】
請求項1または請求項2に記載の認証システムにおいて、
前記ホストは、前記第2署名情報の検証が失敗した場合、該検証以降の処理を中止する
認証システム。
【請求項4】
請求項1または請求項3に記載の認証システムにおいて、
前記ホストは、
楕円曲線暗号に基づき計算される第4乱数を生成し、該第4乱数と楕円曲線のベースポ
イントとを用いて第2値を計算し、
前記ホスト鍵情報を用いて、前記第2乱数、前記第2値に対して署名処理を実施し、
前記メディアとの鍵交換処理で共有される共有鍵情報を生成する認証システム。
【請求項5】
請求項4に記載の認証システムにおいて、
前記共有鍵情報は、前記第3乱数と前記第2値とに基づき生成される認証システム。
【請求項6】
請求項4に記載の認証システムにおいて、
前記ホストは、
前記第2値を前記メディアに送り、
前記メディアは、前記第3乱数と前記第2値とに基づき新たに共有鍵情報を生成する認
証システム。
【請求項7】
請求項4または請求項6に記載の認証システムにおいて、
前記共有鍵情報は、前記鍵交換処理の実施のたびに異なる値となる認証システム。
【請求項8】
ホスト証明情報を有したホストと、メディア鍵情報とメディア証明情報とコントローラ
鍵情報とコントローラ識別情報とを有したメディアとの間の認証システムにおいて、
前記ホストは、
第1乱数を生成し、該第1乱数と前記ホスト証明情報とを前記メディアに送り、
前記メディアは、
前記ホストから送られた前記ホスト証明情報に付けられている第1署名情報を検証し、
第2乱数と楕円曲線暗号に基づき計算される第3乱数とを生成し、該第3乱数と楕円曲
線のベースポイントとを用いて第1値を計算し、
前記コントローラ鍵情報と前記コントローラ識別情報とに基づいて一方向性関数演算を
実行し、ユニークID情報を生成し、
前記メディア鍵情報を用いて前記第1乱数、前記第1値、及び前記ユニークID情報に
対して署名処理を実施し、
前記第1乱数、前記第1値、前記ユニークID情報、及び前記メディア証明情報を前記
ホストに送る
ことを特徴とする認証システム。
【請求項9】
メモリと、
前記メモリを制御するコントローラと、を備えるとともに、
メディア鍵情報と、メディア証明情報と、コントローラ鍵情報と、コントローラ識別情
報とが格納され、
ホストから、第1乱数とホスト証明情報とを受けると、該ホスト証明情報に付けられて
いる第1署名情報を検証し、
前記第1署名情報の検証が成功と判定された場合、第2乱数と楕円曲線暗号に基づき計
算される第3乱数とを生成し、該第3乱数と楕円曲線のベースポイントとを用いて第1値
を計算し、前記コントローラ鍵情報と前記コントローラ識別情報とに基づいて一方向性関
数演算を実行し、ユニークID情報を生成し、前記メディア鍵情報を用いて前記第1乱数
、前記第1値、及び前記ユニークID情報に対して署名処理を実施し、前記第2乱数、前
記第1値、前記ユニークID情報、及び前記メディア証明情報を前記ホストに送り、
前記メディア証明情報は、第2署名情報を付けた状態で送られ、前記ホストでの前記第
2署名情報の検証が失敗すると、該検証以降の処理が中止されることを特徴とするメディ
ア。
【請求項10】
メモリを制御するコントローラを備えるとともに、
メディア鍵情報と、メディア証明情報と、コントローラ鍵情報と、コントローラ識別情
報とを有し、
ホストから、第1乱数とホスト証明情報とを受けると、該ホスト証明情報に付けられて
いる第1署名情報を検証し、
第2乱数と楕円曲線暗号に基づき計算される第3乱数とを生成し、該第3乱数と楕円曲
線のベースポイントとを用いて第1値を計算し、
前記コントローラ鍵情報と前記コントローラ識別情報とに基づいて一方向性関数演算を
実行し、ユニークID情報を生成し、
前記メディア鍵情報を用いて前記第1乱数、前記第1値、及び前記ユニークID情報に
対して署名処理を実施し、
前記第2乱数、前記第1値、前記ユニークID情報、及び前記メディア証明情報を前記
ホストに送る
ことを特徴とするメディア。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2013−62867(P2013−62867A)
【公開日】平成25年4月4日(2013.4.4)
【国際特許分類】
【出願番号】特願2012−262869(P2012−262869)
【出願日】平成24年11月30日(2012.11.30)
【分割の表示】特願2011−102436(P2011−102436)の分割
【原出願日】平成23年4月28日(2011.4.28)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】