説明

データ記憶装置、情報処理装置、および情報処理方法、並びにプログラム

【課題】IDに基づく検証値を利用してコンテンツの不正利用を防止する構成を実現する。
【解決手段】データ記憶領域と制御部を有するフラッシュメモリ部と、フラッシュメモリ部に対するデータ記録と読み出し制御を実行するコントローラ部を有するメモリカードにコントローラ部が読み出すコントローラID(CID)と、フラッシュメモリ部の制御部が読み出すフラッシュID(FID)を記録する。コンテンツ記録処理を実行する記録装置は、CIDとFIDを利用したMAC等の検証値を生成してメモリカードに記録し、コンテンツ再生を実行する再生装置は、CIDとFIDに基づく算出検証値と照合用検証値を比較する検証処理を実行して検証成立を条件としてコンテンツ再生を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ記憶装置、情報処理装置、および情報処理方法、並びにプログラムに関する。特に、コンテンツの不正利用の防止構成を実現するデータ記憶装置、情報処理装置、および情報処理方法、並びにプログラムに関する。
【背景技術】
【0002】
昨今、データ記録媒体として、DVD(Digital Versatile Disc)や、Blu−ray Disc(登録商標)、あるいはフラッシュメモリなど、様々なメディアが利用されている。特に、昨今は、大容量のフラッシュメモリを搭載したメモリースティック(登録商標)、SDカード、USBメモリなどのメモリカードの利用が盛んになっている。ユーザは、このような様々な情報記録媒体(メディア)に音楽や映画などのコンテンツを記録して再生装置(プレーヤ)に装着してコンテンツの再生を行うことができる。
【0003】
また、近年、ネットワークを介したコンテンツの流通が盛んになり、ユーザによるコンテンツ購入処理の形態は、コンテンツを予め記録したディスクの購入処理から、ネットワーク接続したサーバからダウンロードする処理に次第にシフトしている。
【0004】
具体的なコンテンツ購入形態としては、ROMディスク等のメディアの購入を行う処理の他、例えば、以下のようなコンテンツ購入形態がある。
(a)ネットワーク接続可能な端末やPC等のユーザ装置を利用してコンテンツ提供サーバに接続して、コンテンツをダウンロードして購入するEST(Electric Sell Through)。
(b)コンビニや、駅等の公共スペースに設置された共用端末を利用して、ユーザのメディア(メモリカード等)にコンテンツを記録するMoD(Manufacturing on Demand)。
【0005】
このように、ユーザは、コンテンツ記録用のメモリカードなどのメディアを有していれば、様々なコンテンツ提供プロバイダ等のコンテンツソースから自由に様々なコンテンツを選択購入し、自分のメディアに記録することができる。
なお、EST、MoD等の処理については、例えば特許文献1(特開2008−98765号公報)に記載されている。
【0006】
しかし、音楽データ、画像データ等の多くのコンテンツは、その作成者あるいは販売者に著作権、頒布権等が保有されている。従って、ユーザにコンテンツを提供する場合には、一定の利用制限、すなわち正規な利用権を持つユーザのみにコンテンツの利用を許諾し、許可のないコピー等の無秩序な利用が行われないような制御を行うのが一般的となっている。
【0007】
コンテンツ利用制御の規定の1つにCPRM(Content Protection for Recordable Media)がある。これは、例えばメモリカードなどのデータ記録メディアにコンテンツを暗号化して記録し、さらにメディア固有のID(メディアID)に基づく検証値を記録し、メディアからのコンテンツの読み出し時にこの検証値に基づく検証処理を実行させてコンテンツの利用制御を実行する制御構成である。ここでメディアIDは、各メディア個別に異なるIDが記録されていることが前提である。
【0008】
しかし、例えばSDカード等のメモリカードの1枚ごとに異なる固有IDを記録するという管理が確実に行われているとは言えないのが現状である。
図1に一般的なメモリカードの製造シーケンスを示す。図1に示すようにメモリカード10には、コントローラ部11とフラッシュメモリ部12を有する。
コントローラ部11は、コントローラを製造するコントローラ製造会社(コントローラベンダー)20において製造される。
また、フラッシュメモリ部12は、フラッシュメモリ部を製造するフラッシュメモリ製造会社(フラッシュメモリベンダー)30において製造される。
それぞれのベンダーの製造したパーツを最終工程で組み立ててメディア10を完成させるのが一般的な工程となる。
【0009】
メディアIDは、コントローラ部11の製造者であるコントローラベンダー20の管理の下に記録されることが多い。コントローラベンダー20側において正しい管理の下でメディアIDの記録が実行されれば問題はないが、正しい管理がなされない場合、例えば同じメディアIDを持つ複数のメディアが大量に生産されユーザに供給される恐れもある。
【0010】
このような事態が発生すると、上述のCPRMに基づくコンテンツ管理、すなわちメディアIDが各メディア固有の値(固有値)であることに依存したコンテンツ利用制御が不可能となる。結果として、コンテンツの不正利用が行われる可能性を引き起こすという問題を発生させる。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】特開2008−98765号公報
【発明の概要】
【発明が解決しようとする課題】
【0012】
本発明は、例えば上記問題点に鑑みてなされたものであり、メディアIDを利用したコンテンツの利用制御を持つ構成において、より厳格なコンテンツ利用制御を実現するデータ記憶装置、情報処理装置、および情報処理方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【0013】
本発明の第1の側面は、
データ記憶領域と制御部を有するフラッシュメモリ部と、
前記フラッシュメモリ部に対するデータ記録と読み出し制御を実行するコントローラ部を有し、
前記コントローラ部が読み出し処理を行うコントローラIDと、
前記フラッシュメモリ部の制御部が読み出し処理を行うフラッシュIDを記録したメモリ部を有し、
前記コントローラ部は、外部装置からのコントローラID読み出し要求に応じて、コントローラIDを外部装置に対して出力し、
前記フラッシュメモリ部の制御部は、外部装置からのフラッシュID読み出し要求に応じて、フラッシュIDを外部装置に対して出力するデータ記憶装置にある。
【0014】
さらに、本発明のデータ記憶装置の一実施態様において、前記コントローラ部は、認証処理を実行する認証機能を有し、前記外部装置との認証処理の成立を条件として前記コントローラIDを外部装置に出力する処理を実行する。
【0015】
さらに、本発明のデータ記憶装置の一実施態様において、前記フラッシュメモリ部の制御部は、認証処理を実行する認証機能を有し、前記外部装置との認証処理の成立を条件として前記フラッシュIDを外部装置に出力する処理を実行する。
【0016】
さらに、本発明の第2の側面は、
メモリカードに対するコンテンツ記録を実行する情報処理装置であり、
前記メモリカードに対するコンテンツ記録処理を実行するデータ処理部を有し、
前記データ処理部は、
前記メモリカードのコントローラ部が読み出し処理を行うコントローラIDと、
前記メモリカードのフラッシュメモリ部内制御部が読み出し処理を行うフラッシュIDを取得し、
取得したコントローラIDとフラッシュIDを適用した検証値を生成して前記メモリカードに記録する処理を実行する情報処理装置にある。
【0017】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記検証値として、前記コントローラIDとフラッシュIDを含むデータに対するMAC(Message Authentication Code)を生成して前記メモリカードに記録する処理を実行する。
【0018】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記検証値として、前記コントローラIDに対するMACと、前記フラッシュIDに対するMACを個別に生成して前記メモリカードに記録する処理を実行する。
【0019】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記検証値として、前記コントローラIDとフラッシュIDを含むデータに対する署名データ(トークン)を生成して前記メモリカードに記録する処理を実行する。
【0020】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記検証値として、前記コントローラIDに対する署名データと、前記フラッシュIDに対する署名データを個別に生成して前記メモリカードに記録する処理を実行する。
【0021】
さらに、本発明の第3の側面は、
メモリカードに記録されたコンテンツを再生する情報処理装置であり、
前記メモリカードに記録されたコンテンツを読み出して再生するデータ処理部を有し、
前記データ処理部は、
前記メモリカードのコントローラ部が読み出し処理を行うコントローラIDと、
前記メモリカードのフラッシュメモリ部内制御部が読み出し処理を行うフラッシュIDを取得し、
取得したコントローラIDとフラッシュIDを適用した検証値を算出し、前記メモリカードに予め記録された照合用検証値との比較を実行して照合が成立したことを条件として、前記メモリカードに記録されたコンテンツの再生処理を実行する情報処理装置にある。
【0022】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記検証値の算出処理において、前記コントローラIDとフラッシュIDを含むデータに対するMAC(Message Authentication Code)を算出する。
【0023】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記検証値の算出処理において、前記コントローラIDに対するMACと、前記フラッシュIDに対するMACを個別に算出する。
【0024】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記検証値の算出処理において、前記コントローラIDとフラッシュIDを含むデータに対する署名データ(トークン)を算出する。
【0025】
さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記検証値の算出処理において、前記コントローラIDに対する署名データと、前記フラッシュIDに対する署名データを個別に算出する。
【0026】
さらに、本発明の第4の側面は、
メモリカードに対するコンテンツ記録を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置のデータ処理部が、
前記メモリカードのコントローラ部が読み出し処理を行うコントローラIDと、
前記メモリカードのフラッシュメモリ部内制御部が読み出し処理を行うフラッシュIDを取得し、
取得したコントローラIDとフラッシュIDを適用した検証値を生成して前記メモリカードに記録する処理を実行する情報処理方法にある。
【0027】
さらに、本発明の第5の側面は、
メモリカードに記録されたコンテンツを再生する情報処理装置において実行する情報処理方法であり、
前記情報処理装置のデータ処理部が、
前記メモリカードのコントローラ部が読み出し処理を行うコントローラIDと、
前記メモリカードのフラッシュメモリ部内制御部が読み出し処理を行うフラッシュIDを取得し、
取得したコントローラIDとフラッシュIDを適用した検証値を算出し、前記メモリカードに予め記録された照合用検証値との比較を実行して照合が成立したことを条件として、前記メモリカードに記録されたコンテンツの再生処理を実行する情報処理方法にある。
【0028】
さらに、本発明の第6の側面は、
メモリカードに対するコンテンツ記録を実行する情報処理装置に情報処理を実行させるプログラムであり、
前記情報処理装置のデータ処理部に、
前記メモリカードのコントローラ部が読み出し処理を行うコントローラIDと、
前記メモリカードのフラッシュメモリ部内制御部が読み出し処理を行うフラッシュIDを取得させ、
取得したコントローラIDとフラッシュIDを適用した検証値を生成して前記メモリカードに記録する処理を実行させるプログラムにある。
【0029】
さらに、本発明の第7の側面は、
メモリカードに記録されたコンテンツを再生する情報処理装置に情報処理を実行させるプログラムであり、
前記情報処理装置のデータ処理部に、
前記メモリカードのコントローラ部が読み出し処理を行うコントローラIDと、
前記メモリカードのフラッシュメモリ部内制御部が読み出し処理を行うフラッシュIDを取得させ、
取得したコントローラIDとフラッシュIDを適用した検証値を算出し、前記メモリカードに予め記録された照合用検証値との比較を実行して照合が成立したことを条件として、前記メモリカードに記録されたコンテンツの再生処理を実行させるプログラムにある。
【0030】
なお、本発明のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
【0031】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【0032】
本発明の一実施例の構成によれば、IDに基づく検証値を利用してコンテンツの不正利用を防止する構成が実現される。具体的には、データ記憶領域と制御部を有するフラッシュメモリ部と、フラッシュメモリ部に対するデータ記録と読み出し制御を実行するコントローラ部を有するメモリカードにコントローラ部が読み出すコントローラID(CID)と、フラッシュメモリ部の制御部が読み出すフラッシュID(FID)を記録する。コンテンツ記録処理を実行する記録装置は、CIDとFIDを利用したMAC等の検証値を生成してメモリカードに記録し、コンテンツ再生を実行する再生装置は、CIDとFIDに基づく算出検証値と照合用検証値を比較する検証処理を実行して検証成立を条件としてコンテンツ再生を行う。
【0033】
本構成により、コントローラ部の製造主体であるコントローラベンダー、またはフラッシュメモリ部の製造主体であるフラッシュメモリベンダーのいずれか一方が不正なID設定を行っても、いずれか一方が正しいID管理を行っている限り、コンテンツの不正利用を防止することが可能となる。
【図面の簡単な説明】
【0034】
【図1】メモリカードの製造プロセスについて説明する図である。
【図2】メモリカードの構成例について説明する図である。
【図3】本発明に従った検証値の生成と記録処理の概要について説明する図である。
【図4】本発明の情報処理装置の実行するコンテンツ記録処理における検証値の生成と記録処理の第1実施例について説明する図である。
【図5】本発明の情報処理装置の実行するコンテンツ記録処理における検証値の生成と記録処理の第1実施例の変形例について説明する図である。
【図6】本発明の情報処理装置の実行するコンテンツ記録処理における検証値の生成と記録処理の第2実施例について説明する図である。
【図7】本発明の情報処理装置の実行するコンテンツ記録処理における検証値の生成と記録処理の第3実施例について説明する図である。
【図8】本発明の情報処理装置の実行するコンテンツ記録処理における検証値の生成と記録処理の第4実施例について説明する図である。
【図9】本発明の情報処理装置の実行するコンテンツ再生処理のシーケンスを説明するフローチャートを示す図である。
【図10】情報処理装置のハードウェア構成例について説明する図である。
【図11】メモリカードのハードウェア構成例について説明する図である。
【発明を実施するための形態】
【0035】
以下、図面を参照しながら本発明のデータ記憶装置、情報処理装置、および情報処理方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行う。
1.データ記憶装置(メモリカード)の構成例について
2.コントローラID(CID)とフラッシュメモリID(FID)の利用処理の概要について
3.コンテンツ記録処理に際して実行する検証値の生成、記録処理の実施例1
4.コンテンツ記録処理に際して実行する検証値の生成、記録処理の実施例2
5.コンテンツ記録処理に際して実行する検証値の生成、記録処理の実施例3
6.コンテンツ記録処理に際して実行する検証値の生成、記録処理の実施例4
7.コンテンツ再生処理シーケンスについて
8.各装置のハードウェア構成例について
【0036】
[1.データ記憶装置(メモリカード)の構成例について]
【0037】
以下、図面を参照しながら本発明のデータ記憶装置、情報処理装置、および情報処理方法、並びにプログラムの詳細について説明する。
【0038】
まず、図2以下を参照して、データ記憶装置(メモリカード)の構成例について説明する。
図2は、本発明において適用可能なデータ記憶装置であるフラッシュメモリを備えたデータ記憶装置(メモリカード)100の構成例を示す図である。データ記憶装置(メモリカード)100は、例えばSDカード、USBメモリ、メモリースティック(登録商標)等である。
【0039】
先に図1を参照して簡単に説明したように、メモリカード100はコントローラ部110とフラッシュメモリ部120を有する。
コントローラ部110は、フラッシュメモリ部120に対するデータ記録と読み出し制御を実行する。また、例えばメモリカード100を装着した情報処理装置(ホスト)との通信制御や、フラッシュメモリ部120に対するアクセス制御などの制御処理を実行する。コントローラ部110は、CPUやRAM,ROM等のハードウェアによって構成される。
【0040】
さらに、コントローラ部110は、メモリカード100を装着した情報処理装置(ホスト)との認証処理や通信データの暗号化処理等を実行する。
また、後段で詳細に説明するが、コントローラ部110は、コントローラ部110の管理するIDであるコントローラID(CID)の読み出しを実行する。
【0041】
フラッシュメモリ部120は、データ記憶領域を有し、さらにフラッシュメモリ部内制御部121を有する。
データ記憶領域は、図に示すように保護領域(Protected Area)122と汎用領域(General Purpose Area)123によって構成される。
フラッシュメモリ部内制御部121は、例えばフラッシュメモリ部120の管理するIDであるフラッシュメモリID(FID)の読み出し処理を実行する。
【0042】
例えば、コントローラID(CID)は、先に図1を参照して説明したコントローラベンダーの管理下で設定されたIDであり、フラッシュメモリID(FID)は、フラッシュメモリベンダーの管理下で設定されたIDとなる。すなわち、これら2つのIDは、独自に個別管理されたIDとして設定される。
【0043】
コントローラID(CID)は、コントローラ部110によってのみ読み取り可能なIDであり、フラッシュメモリID(FID)はフラッシュメモリ部内制御部121によってのみ読み取り可能なIDとされる。
【0044】
なお、各IDの記録領域は特に限定されない。例えばコントローラID(CID)はコントローラ部内のメモリに記録してもよいし、フラッシュメモリ部120データ記憶領域内に記録してもよい。フラッシュメモリID(FID)は、フラッシュメモリ部120データ記憶領域内に記録される。
【0045】
なお、フラッシュメモリ部120のデータ記憶領域に設定される保護領域(Protected Area)122は、アクセス権限が認められた特定の装置のみがアクセス(データ書き込みやデータ読み取り)を実行することを可能としたアクセス制限領域である。
汎用領域(General Purpose Area)123は、アクセス制限のないデータ記録領域である。
【0046】
なお、保護領域(Protected Area)122に対してアクセスを実行しようとする情報処理装置は、コントローラ部110との間で所定の認証処理を実行し、例えば保護領域内の各区分領域(Protected Area#0,#1・・・)に対するアクセス権限を記載した証明書(Cert)をコントローラ部110に提示して、コントローラ部110の確認を受けることが必要となる。
【0047】
[2.コントローラID(CID)とフラッシュメモリID(FID)の利用処理の概要について]
次に、図3を参照して、コントローラID(CID)とフラッシュメモリID(FID)の利用処理の概要について説明する。
【0048】
本発明の構成では、メモリカード100に対するコンテンツ等のデータ記録処理に際して、コントローラID(CID)とフラッシュメモリID(FID)の2つのIDを利用した検証値を生成して記録コンテンツに併せてメモリカード100に記録する。
また、メモリカード100からのコンテンツの読み出し、再生処理を実行する場合には、コンテンツに併せて記録した検証値に基づく検証処理を実行し、検証処理が成立した場合にのみコンテンツの読み取り、再生処理を許容する構成とする。
【0049】
本発明の構成では、独自に管理される2つの異なるIDであるコントローラID(CID)とフラッシュメモリID(FID)の双方を利用した検証値を利用した構成としている。
なお、コントローラID(CID)は、メモリカード100のコントローラ部が読み出し処理を実行する。
フラッシュID(FID)はフラッシュメモリ部内の制御部が読み出し処理を実行する。
【0050】
この独自に管理される2つのコントローラID(CID)とフラッシュメモリID(FID)の双方を利用した検証値を利用した構成によって、例えばCIDまたはFIDのいずれかが不正な管理の下に不正に設定されたIDであっても、少なくとも一方が正しく管理されたIDであれば、その正しい管理下に基づくIDに従ったコンテンツ利用制御を実現可能とする。
【0051】
図3は、データ記憶装置(メモリカード)100に対するコンテンツ記録処理時に実行する処理シーケンスの概要を説明する図である。
図3には、
データ記憶装置(メモリカード)100と、
データ記憶装置(メモリカード)100に対するコンテンツ記録処理を実行する情報処理装置(ホスト)200、
を示している。
なお、情報処理装置(ホスト)200は、例えばユーザのPC、レコーダ等、メモリカード100を装着可能な装置である。あるいはユーザのPC等にネットワークを介して接続されたコンテンツ提供サーバ等であってもよい。
【0052】
情報処理装置(ホスト)200は、データ記憶装置(メモリカード)100に対するコンテンツ記録に先立ち、コントローラ部110の読み出し可能なIDであるコントローラID(CID)151と、フラッシュメモリ部120の制御部(図2に示すフラッシュメモリ部内制御部121)によって読み出し可能なIDであるフラッシュメモリID(FID)161を読み出す。
【0053】
なお、情報処理装置(ホスト)200は、コントローラID(CID)151をコントローラ部110から受領するために、情報処理装置(ホスト)200とコントローラ部110間で、予め規定された相互認証処理を実行し、認証処理が成立し、相互が信頼できることを確認する処理を実行する。すなわち、相互認証の成立を条件として情報処理装置(ホスト)200は、コントローラID(CID)151をコントローラ部110から受領する。
【0054】
情報処理装置(ホスト)200は、フラッシュメモリID(FID)161を、フラッシュメモリ部120の制御部(フラッシュメモリ部内制御部121)から受領する場合、同様に、情報処理装置(ホスト)200とフラッシュメモリ部内制御部121間で、予め規定された相互認証処理を実行して相互認証の成立を条件としてフラッシュメモリID(FID)161をコントローラ部110から受領する構成とすることが好ましい。
ただし、フラッシュメモリ部内制御部121に認証処理機能を有していない場合は、この認証処理は省略可能である。
【0055】
ただし、フラッシュメモリID(FID)161は、フラッシュメモリ部内制御部121によって読み取り可能なデータであり、コントローラ部110が、フラッシュメモリ部内制御部121の介在なしに直接読み出すことができない。例えば、フラッシュメモリID(FID)は、フラッシュメモリ部内制御部121のみが利用可能な特定アドレスの記憶領域に記録されている。
【0056】
情報処理装置(ホスト)200は、このように、データ記憶装置(メモリカード)100に対するコンテンツ記録に先立ち、コントローラ部110の読み出し可能なIDであるコントローラID(CID)151と、フラッシュメモリ部120の制御部(図2に示すフラッシュメモリ部内制御部121)によって読み出し可能なIDであるフラッシュメモリID(FID)161を読み出す。
【0057】
情報処理装置(ホスト)200は、ステップS11において、コントローラID(CID)151と、フラッシュメモリID(FID)161、これら2つのIDを適用した検証値を生成し、生成した検証値をメモリカード100に記録する。図に示す検証値181である。
【0058】
なお、検証値としては、例えばMAC(Message Authentication Code)や特定の署名鍵を適用した署名データとしてのトークン(Token)などが利用可能である。これらの具体的処理については後述する。
【0059】
さらに、情報処理装置(ホスト)200は、ステップS12においてメモリカード100に対するコンテンツ記録処理を実行する。図に示すコンテンツ182である。なお、このコンテンツは暗号化データとして記録することが好ましい。
【0060】
[3.コンテンツ記録処理に際して実行する検証値の生成、記録処理の実施例1]
次に、図4を参照してメモリカードに対するコンテンツ記録処理に際して実行する検証値の生成、記録処理の第1実施例について説明する。
【0061】
この第1実施例は、メモリカードに対するコンテンツ記録処理に際して検証値として、コントローラID(CID)とフラッシュメモリID(FID)の2つのIDに基づく1つのMAC(Message Authentication Code)を検証値として生成して記録する処理例である。
【0062】
図4には、
データ記憶装置(メモリカード)100と、
データ記憶装置(メモリカード)100に対するコンテンツ記録処理を実行する情報処理装置(ホスト)200、
これらを示している。
なお、情報処理装置(ホスト)200は、例えばユーザのPC、レコーダ等、メモリカード100を装着可能な装置である。あるいはユーザのPC等にネットワークを介して接続されたコンテンツ提供サーバ等であってもよい。
【0063】
メモリカード100には、
メモリカードのコントローラ部によってのみ読み取り可能なメモリカード識別子としてのコントローラID(CID)301、
メモリカードのフラッシュメモリ内制御部によってのみ読み取り可能なメモリカード識別子としてのフラッシュID(FID)302、
これら2つのIDが記録されている。これらのIDは不揮発性メモリに記録されている。
【0064】
メモリカード100は、所定のアクセス権の確認処理に基づいてアクセスの許容される保護領域(Protected Area)122と、アクセス権確認処理を実行することなくアクセスの許容される汎用領域(General Purpose Area)123を有する。
【0065】
メモリカード100に対してコンテンツを記録する情報処理装置(ホスト)200は、まず、メモリカード100のコントローラ部が読み出し可能なIDであるコントローラID(CID)301と、フラッシュメモリ部の制御部(図2に示すフラッシュメモリ部内制御部121)が読み出し可能なIDであるフラッシュメモリID(FID)302をメモリカード100から取得する。
【0066】
なお、情報処理装置(ホスト)200は、コントローラID(CID)301をメモリカード100から受領する前提として、情報処理装置(ホスト)200とメモリカード内のコントローラ部間で予め規定された相互認証処理を実行し、認証処理が成立し相互が信頼できることを確認する処理を実行する。すなわち、相互認証の成立を条件として情報処理装置(ホスト)200は、コントローラID(CID)301をメモリカード100のコントローラ部から受領する。
【0067】
フラッシュメモリID(FID)302の取得処理においては、図2を参照して説明したフラッシュメモリ内制御部121によるフラッシュメモリIDの読み取りが必要となる。情報処理装置(ホスト)200は、メモリカード100のコントローラ部を介してフラッシュメモリ内制御部121に対してフラッシュメモリIDの読み取り要求を出力する。フラッシュメモリ内制御部121が読み取ったフラッシュメモリIDは認証されたコントローラ部を介してを取得する。この場合、メモリカード100のコントローラ部はこれらの通信処理の通過点となるのみとなる。
【0068】
なお、フラッシュメモリ部内制御部121が認証機能を有する設定と有しない設定のいずれの構成の場合もあり得る。認証機能を有さない場合は、情報処理装置(ホスト)200と、フラッシュメモリ部内制御部121間の認証処理は実行しない。認証機能を有する場合は、情報処理装置(ホスト)200と、フラッシュメモリ部内制御部121間で、予め規定された相互認証処理を実行して相互認証の成立を条件としてフラッシュメモリID(FID)302をメモリカード100から受領する。
【0069】
情報処理装置(ホスト)200は、ステップS101において、メモリカード100から取得したコントローラID(CID)301と、フラッシュメモリID(FID)302に基づいて検証値としてのMAC(Message Authentication Code)を生成する。
【0070】
ここでは、MAC生成アルゴリズムの1つであるCMACを適用し、
MAC=CMAC(Kt,CID||FID)
上記式に従って検証値を生成する。
なお、上記式において、
Ktは、メモリカード100に格納するコンテンツの暗号化に適用する鍵であるタイトル鍵である。
CID||FIDは、コントローラID(CID)とフラッシュID(FID)の連結データを意味する。
CMAC(Kt,CID||FID)は、コントローラID(CID)とフラッシュID(FID)の連結データに対してタイトル鍵(Kt)を適用したCMACアルゴリズムを適用した暗号処理(MAC生成処理)を意味する。
【0071】
情報処理装置(ホスト)200が、ステップS101において生成した検証値(MAC)は、データ記憶装置(メモリカード)100の汎用領域123に格納する。図4に示す検証値(MAC)303である。
【0072】
次に、情報処理装置(ホスト)200は、ステップS102において、乱数生成処理によりバインド鍵(Kb)321を生成する。
バインド鍵(Kb)321は、コンテンツの暗号化に適用するタイトル鍵(Kt)323の暗号化処理に適用する鍵として生成される。
【0073】
なお、生成したバインド鍵(Kb)はメモリカード100の保護領域122に格納する。この保護領域に対するバインド鍵(Kb)の記録処理に際しては、メモリカード100のコントローラ部において情報処理装置(ホスト)200の保護領域122に対するアクセス権の確認処理が実行される。
例えば、メモリカード100のコントローラ部は、情報処理装置(ホスト)200の保持する公開鍵証明書などの証明書(Cert)を取得し、証明書(Cert)の記録情報に従って、情報処理装置(ホスト)200の保護領域122に対するアクセス権の確認処理を実行する。
【0074】
情報処理装置(ホスト)200の保護領域122に対するアクセス権が確認されたことを条件として、バインド鍵(Kb)の書き込みが実行される。
情報処理装置(ホスト)200の保護領域122に対するアクセス権が確認されない場合は、バインド鍵(Kb)の書き込みが実行されず、その後のコンテンツ記録処理も実行されないことになる。
【0075】
情報処理装置(ホスト)200の保護領域122に対するアクセス権が確認され、バインド鍵(Kb)の書き込みが完了した後、情報処理装置(ホスト)200はコンテンツの暗号化に適用するタイトル鍵の暗号化とメモリカードに対する書き込み処理を実行する。この処理は、図4に示すステップS103〜S105の処理である。
【0076】
まず、ステップS103において、利用制御情報(Usage file)322のハッシュ値算出(AES−H)を実行する。利用制御情報(Usage file)322は、メモリカード100に対して記録するコンテンツ324に対応する利用制御情報ファイルである。例えばコンテンツのコピー許容回数などのコンテンツの利用ルールを記録したファイルである。
【0077】
ステップS103において、利用制御情報(Usage file)322のハッシュ値算出(AES−H)を実行し、ステップS104において、タイトル鍵(Kt)323との排他的論理和演算処理を実行する。
【0078】
さらに、ステップS105において、排他的論理和演算結果に対してバインド鍵(Kb)321を適用した暗号化処理(AES−E)を実行して暗号化タイトル鍵を生成してメモリカード100の汎用領域123に記録する。図4に示す暗号化タイトル鍵(Encrypted Title Key)305である。また、利用制御情報もメモリカード100の汎用領域123に記録する。図4に示す利用制御情報(Usage file)304である。
【0079】
ステップS105における暗号化タイトル鍵(EncKt)の生成は、例えば以下の式に従って実行される。
EncKt=AES−128E(Kb,KtxorAES−H(Usage))
上記式において、
KtxorAES−H(Usage)は、利用制御情報(Usage file)のハッシュ値とタイトル鍵(Kt)の排他的論理和演算(xor)を示している、
この排他的論理和演算結果に対してバインド鍵(Kb)を適用して暗号化アルゴリズム(AES−128E)を適用した暗号化処理を実行して暗号化タイトル鍵(EncKt)を生成する。
【0080】
次に、情報処理装置(ホスト)200は、ステップS106においてコンテンツ324に対して、タイトル鍵(Kt)323を適用した暗号化処理を実行し、暗号化コンテンツをメモリカード100の汎用領域123に記録する。図4に示す暗号化コンテンツ(Encrypted Content)306である。
【0081】
このように、情報処理装置(ホスト)200は、メモリカード100に対して暗号化コンテンツ306を記録する際に、暗号化コンテンツ306に対応する検証値303としてのMACをコントローラID(CID)とフラッシュID(FID)の2つのIDに基づいて生成してメモリカード100に記録する。
【0082】
メモリカード100に格納された暗号化コンテンツ306を読み出して再生する再生装置は、この検証値303に基づく検証処理を実行する。
すなわち、再生装置はコンテンツの読み出し前の処理として、検証値303に基づく検証処理を実行する。検証が成立した場合にのみコンテンツの読み出し、再生が実行される。検証が不成立の場合は、コンテンツの読み出し、再生は許容されない。なお、コンテンツ再生処理の詳細シーケンスについては後述する。
【0083】
(実施例1の変形例)
次に、図4を参照して説明したメモリカードに対するコンテンツ記録処理に際して実行する検証値の生成、記録処理の第1実施例の変形例について図5を参照して説明する。
【0084】
図5に示す処理例は、図4を参照して説明した処理と同様、メモリカードに対するコンテンツ記録処理に際して検証値として、コントローラID(CID)とフラッシュメモリID(FID)の2つのIDに基づく1つのMAC(Message Authentication Code)を検証値として生成して記録する処理例である。
【0085】
図5に示す処理例は、図4を参照して説明した処理ステップであるステップS101〜S106のステップ中、ステップS103〜S105の処理を、図5に示すステップS121〜S122に変更した点のみが異なる。
【0086】
図5に示す処理では、ステップS121において、利用制御情報(Usage file)322に対する秘密鍵に基づく署名処理を実行し、署名を付加した利用制御情報(Usage file)を生成する。
この署名付きの利用制御情報をメモリカード100の汎用領域123に記録する。図5に示す利用制御情報(Usage file)304である。
【0087】
さらに、ステップS122において、タイトル鍵323に対して、バインド鍵(Kb)321を適用した暗号化処理を実行して暗号化タイトル鍵を生成してメモリカード100の汎用領域123に記録する。図5に示す暗号化タイトル鍵(Encrypted Title Key)305である。
【0088】
その後のステップS106の処理は、図4を参照して説明したと同様の処理であり、ステップS106においてコンテンツ324に対して、タイトル鍵(Kt)323を適用した暗号化処理を実行し、暗号化コンテンツをメモリカード100の汎用領域123に記録する。図4に示す暗号化コンテンツ(Encrypted Content)306である。
本処理例では、利用制御情報に署名を設定して記録する構成としており、利用制御情報の改ざん検証、改ざん防止の効果がもたらされる。
【0089】
[4.コンテンツ記録処理に際して実行する検証値の生成、記録処理の実施例2]
次に、図6を参照してメモリカードに対するコンテンツ記録処理に際して実行する検証値の生成、記録処理の第2実施例について説明する。
【0090】
この第2実施例は、メモリカードに対するコンテンツ記録処理に際して検証値として、コントローラID(CID)とフラッシュメモリID(FID)の2つのIDに基づいて、それぞれ個別のMAC(Message Authentication Code)を検証値として生成して記録する処理例である。
【0091】
図6には、図4と同様、
データ記憶装置(メモリカード)100と、
データ記憶装置(メモリカード)100に対するコンテンツ記録処理を実行する情報処理装置(ホスト)200、
これらを示している。
なお、情報処理装置(ホスト)200は、例えばユーザのPC、レコーダ等、メモリカード100を装着可能な装置である。あるいはユーザのPC等にネットワークを介して接続されたコンテンツ提供サーバ等であってもよい。
【0092】
メモリカード100には、
メモリカードのコントローラ部によってのみ読み取り可能なメモリカード識別子としてのコントローラID(CID)301、
メモリカードのフラッシュメモリ内制御部によってのみ読み取り可能なメモリカード識別子としてのフラッシュID(FID)302、
これら2つのIDが記録されている。これらのIDは不揮発性メモリに記録されている。
【0093】
図6に示す処理シーケンスと、図4に示す処理シーケンスとの差異は、
図4におけるステップS101の処理が、
図6においては、ステップS101aとステップS101bの2つの処理として設定されている点である。これら2つのステップにおいて、それぞれ、
(a)コントローラID(CID)に基づく第1検証値(MAC)、
(b)フラッシュID(FID)に基づく第2検証値(MAC)、
これら2つの検証値を生成してメモリカード100の汎用領域123に記録する。
その他の処理については、図4を参照して説明した処理と同様である。
【0094】
情報処理装置(ホスト)200は、まず、ステップS101aにおいて、メモリカード100から読み出したコントローラID(CID)301に基づいて第1検証値としてのMAC(Message Authentication Code)を生成する。
ここでは、MAC生成アルゴリズムの1つであるCMACを適用し、
MAC=CMAC(Kt,CID)
上記式に従ってコントローラID(CID)に基づく第1検証値を生成する。
【0095】
情報処理装置(ホスト)200が、ステップS101aにおいて生成した第1検証値(MAC)は、データ記憶装置(メモリカード)100の汎用領域123に格納する。図6に示す第1検証値(MAC)303aである。
【0096】
さらに、情報処理装置(ホスト)200は、ステップS101bにおいて、メモリカード100から読み出したフラッシュID(FID)302に基づいて第2検証値としてのMAC(Message Authentication Code)を生成する。
CIDに対する処理と同様に、MAC生成アルゴリズムの1つであるCMACを適用し、
MAC=CMAC(Kt,FID)
上記式に従ってフラッシュID(FID)に基づく第2検証値を生成する。
【0097】
情報処理装置(ホスト)200が、ステップS101bにおいて生成した第2検証値(MAC)は、データ記憶装置(メモリカード)100の汎用領域123に格納する。図6に示す第2検証値(MAC)303bである。
【0098】
ステップS102〜ステップS106の処理は、図4を参照して説明した第1実施例の処理と同様の処理である。
【0099】
本処理例において情報処理装置(ホスト)200は、メモリカード100に対して暗号化コンテンツ306を記録する際に、暗号化コンテンツ306に対応する検証値303として、
(a)コントローラID(CID)に基づく第1検証値(MAC)、
(b)フラッシュID(FID)に基づく第2検証値(MAC)、
これらの2つの検証値を個別に生成してメモリカード100に記録する。
【0100】
メモリカード100に格納された暗号化コンテンツ306を読み出して再生する再生装置は、このこの2つの検証値である第1検証値303aと第2検証値303bに基づく検証処理を実行する。
すなわち、再生装置はコンテンツの読み出し前の処理として、第1検証値303aと第2検証値303bに基づく検証処理を実行する。検証が成立した場合にのみコンテンツの読み出し、再生が実行される。検証が不成立の場合は、コンテンツの読み出し、再生は許容されない。なお、コンテンツ再生処理の詳細シーケンスについては後述する。
【0101】
なお、本処理例においても、先に図5を参照して説明したステップS121〜S122の処理と同様の処理を適用して、利用制御情報に対して署名を設定して記録する構成としてもよい。
【0102】
[5.コンテンツ記録処理に際して実行する検証値の生成、記録処理の実施例3]
次に、図7を参照してメモリカードに対するコンテンツ記録処理に際して実行する検証値の生成、記録処理の第3実施例について説明する。
【0103】
この第3実施例は、メモリカードに対するコンテンツ記録処理に際して検証値として、コントローラID(CID)とフラッシュメモリID(FID)の2つのIDに基づいて、署名鍵(Ksign)を適用した署名データを検証値(トークン(Token))として生成して記録する処理例である。
【0104】
図7には、図4、図6と同様、
データ記憶装置(メモリカード)100と、
データ記憶装置(メモリカード)100に対するコンテンツ記録処理を実行する情報処理装置(ホスト)200、
これらを示している。
なお、情報処理装置(ホスト)200は、例えばユーザのPC、レコーダ等、メモリカード100を装着可能な装置である。あるいはユーザのPC等にネットワークを介して接続されたコンテンツ提供サーバ等であってもよい。
【0105】
メモリカード100には、
メモリカードのコントローラ部によってのみ読み取り可能なメモリカード識別子としてのコントローラID(CID)301、
メモリカードのフラッシュメモリ内制御部によってのみ読み取り可能なメモリカード識別子としてのフラッシュID(FID)302、
これら2つのIDが記録されている。これらのIDは不揮発性メモリに記録されている。
【0106】
図7に示す処理シーケンスと、図4に示す処理シーケンスとの差異は、
図4におけるステップS101の処理が、
図7においては、ステップS201の署名データ(sign)生成処理に置き換えられている点である。
【0107】
情報処理装置(ホスト)200は、まず、ステップS201において、メモリカード100から読み出したコントローラID(CID)301とフラッシュID(FID)302に対して、情報処理装置(ホスト)200の保持する署名鍵(Ksign)を適用した署名データを生成する。例えば公開鍵暗号方式に従った秘密鍵を署名鍵として利用した署名データ生成処理を実行する。
【0108】
署名データとしてのトークン(Token)は例えば下記式に従って生成する。
Token=Sign(Ksign,CID||FID)
なお、上記式において、
Ksignは、署名鍵である。
CID||FIDは、コントローラID(CID)とフラッシュID(FID)の連結データを意味する。
Sign(Ksign,CID||FID)は、コントローラID(CID)とフラッシュID(FID)の連結データに対して署名鍵(Ksign)を適用した署名アルゴリズム(Sign)を適用した署名処理を意味する。
【0109】
情報処理装置(ホスト)200が、ステップS201において生成した検証値としてのトークン(Token)は、データ記憶装置(メモリカード)100の汎用領域123に格納する。図7に示す検証値(トークン)311である。
【0110】
ステップS202〜ステップS206の処理は、図4を参照して説明した第1実施例の処理ステップS102〜ステップS106の処理と同様の処理である。
【0111】
本処理例において情報処理装置(ホスト)200は、メモリカード100に対して暗号化コンテンツ306を記録する際に、暗号化コンテンツ306に対応する検証値311として、情報処理装置(ホスト)200の保持する署名鍵(Ksign)を適用した署名データ[トークン(Token)]を生成してメモリカード100に記録する。
【0112】
メモリカード100に格納された暗号化コンテンツ306を読み出して再生する再生装置は、この検証値311に基づく検証処理を実行する。
すなわち、再生装置はコンテンツの読み出し前の処理として、検証値311に基づく検証処理を実行する。検証が成立した場合にのみコンテンツの読み出し、再生が実行される。検証が不成立の場合は、コンテンツの読み出し、再生は許容されない。なお、コンテンツ再生処理の詳細シーケンスについては後述する。
【0113】
なお、本処理例においても、先に図5を参照して説明したステップS121〜S122の処理と同様の処理を適用して、利用制御情報に対して署名を設定して記録する構成としてもよい。
【0114】
[6.コンテンツ記録処理に際して実行する検証値の生成、記録処理の実施例4]
次に、図8を参照してメモリカードに対するコンテンツ記録処理に際して実行する検証値の生成、記録処理の第4実施例について説明する。
【0115】
この第2実施例は、メモリカードに対するコンテンツ記録処理に際して検証値として、コントローラID(CID)とフラッシュメモリID(FID)の2つのIDに基づいて、それぞれ署名鍵(Ksign)を適用した署名データを個別に生成して2つの検証値(トークン(Token))を生成して記録する処理例である。
【0116】
図8には、図4〜図7と同様、
データ記憶装置(メモリカード)100と、
データ記憶装置(メモリカード)100に対するコンテンツ記録処理を実行する情報処理装置(ホスト)200、
これらを示している。
なお、情報処理装置(ホスト)200は、例えばユーザのPC、レコーダ等、メモリカード100を装着可能な装置である。あるいはユーザのPC等にネットワークを介して接続されたコンテンツ提供サーバ等であってもよい。
【0117】
メモリカード100には、
メモリカードのコントローラ部によってのみ読み取り可能なメモリカード識別子としてのコントローラID(CID)301、
メモリカードのフラッシュメモリ内制御部によってのみ読み取り可能なメモリカード識別子としてのフラッシュID(FID)302、
これら2つのIDが記録されている。これらのIDは不揮発性メモリに記録されている。
【0118】
図8に示す処理シーケンスと、図7に示す処理シーケンスとの差異は、
図7におけるステップS201の処理が、
図8においては、ステップS201aとステップS201bの2つの処理として設定されている点である。これら2つのステップにおいて、それぞれ、
(a)コントローラID(CID)に基づく第1検証値(トークン)、
(b)フラッシュID(FID)に基づく第2検証値(トークン)、
これら2つの検証値を生成してメモリカード100の汎用領域123に記録する。
その他の処理については、図7を参照して説明した処理と同様である。
【0119】
情報処理装置(ホスト)200は、まず、ステップS201aにおいて、メモリカード100から読み出したコントローラID(CID)301に対して署名鍵(Ksign)を適用した署名データを第1検証値(Token)として生成する。
署名データとしてのトークン(Token)は例えば下記式に従って生成する。
Token=Sign(Ksign,CID)
なお、上記式において、
Ksignは、署名鍵である。
Sign(Ksign,CID)は、コントローラID(CID)に対して署名鍵(Ksign)を適用した署名アルゴリズム(Sign)を適用した署名処理を意味する。
【0120】
情報処理装置(ホスト)200が、ステップS201aにおいて生成した第1検証値(トークン)は、データ記憶装置(メモリカード)100の汎用領域123に格納する。図8に示す第1検証値(トークン)311aである。
【0121】
さらに、情報処理装置(ホスト)200は、ステップS201bにおいて、メモリカード100から読み出したフラッシュID(FID)302に対して署名鍵(Ksign)を適用した署名データを第2検証値(Token)として生成する。
署名データとしてのトークン(Token)は例えば下記式に従って生成する。
Token=Sign(Ksign,FID)
なお、上記式において、
Ksignは、署名鍵である。
Sign(Ksign,FID)は、フラッシュID(FID)に対して署名鍵(Ksign)を適用した署名アルゴリズム(Sign)を適用した署名処理を意味する。
【0122】
情報処理装置(ホスト)200が、ステップS201bにおいて生成した第2検証値(トークン)は、データ記憶装置(メモリカード)100の汎用領域123に格納する。図8に示す第2検証値(トークン)311bである。
【0123】
ステップS202〜ステップS206の処理は、図4を参照して説明した第1実施例の処理ステップS102〜S106の処理と同様の処理である。
【0124】
本処理例において情報処理装置(ホスト)200は、メモリカード100に対して暗号化コンテンツ306を記録する際に、暗号化コンテンツ306に対応する検証値303として、
(a)コントローラID(CID)に基づく第1検証値(トークン)、
(b)フラッシュID(FID)に基づく第2検証値(トークン)、
これらの2つの検証値を個別に生成してメモリカード100に記録する。
【0125】
メモリカード100に格納された暗号化コンテンツ306を読み出して再生する再生装置は、このこの2つの検証値である第1検証値311aと第2検証値311bに基づく検証処理を実行する。
すなわち、再生装置はコンテンツの読み出し前の処理として、第1検証値311aと第2検証値311bに基づく検証処理を実行する。検証が成立した場合にのみコンテンツの読み出し、再生が実行される。検証が不成立の場合は、コンテンツの読み出し、再生は許容されない。なお、コンテンツ再生処理の詳細シーケンスについては後述する。
【0126】
なお、本処理例においても、先に図5を参照して説明したステップS121〜S122の処理と同様の処理を適用して、利用制御情報に対して署名を設定して記録する構成としてもよい。
【0127】
[7.コンテンツ再生処理シーケンスについて]
次に、図9に示すフローチャートを参照してメモリカードに記録されたコンテンツの再生処理における処理シーケンスについて説明する。
【0128】
図9に示す再生処理シーケンスは、図4〜図8を先勝して説明した検証値のいずれかとコンテンツを格納したメモリカードを装着した再生装置において実行する処理シーケンスである。
【0129】
再生装置は、まずステップS301において、データ記憶装置(メモリカード)からコントローラID(CID)と、フラッシュID(FID)の読み出し処理を実行する。
なお、再生装置は、メモリカードからコントローラID(CID)を読み出す前に、再生装置とメモリカードのコントローラ部との相互認証を実行し相互認証が成立したことを条件としてコントローラIDを読み出す構成とすることが望ましい。
同様に、再生装置は、メモリカードからフラッシュID(FID)を読み出す前に、再生装置とメモリカードのフラッシュメモリ部内制御部との相互認証を実行し相互認証が成立したことを条件としてフラッシュIDを読み出す構成とすることが望ましい。
【0130】
次に、ステップS302において、再生装置はメモリカードから読み出したコントローラID(CID)とフラッシュID(FID)を適用した検証値を算出する。
ここで算出する検証値は、先に図4〜図8を参照して説明した実施例1〜4のいずれかの検証値である。具体的には、以下のいずれかの検証値となる。
(1)CIDとFIDの連結データに基づくMAC(実施例1(図4、図5)対応)
(2)CIDとFIDの個別データに基づく2つのMAC(実施例2(図6)対応)
(3)CIDとFIDの連結データに基づく署名データ(トークン)(実施例3(図7)対応)
(4)CIDとFIDの個別データに基づく2つの署名データ(トークン)(実施例4(図8)対応)
【0131】
次に、再生装置は、ステップS303において、メモリカードから照合用の検証値を読み取る。これは、先に図4〜図8を参照して説明した実施例1〜4のいずれかの検証値である。具体的には、以下のいずれかの検証値となる。
(1)図4、図5に示す実施例1の構成の場合、検証値(MAC)303となる。
(2)図6に示す実施例2の構成の場合、第1検証値(MAC)303aと、第2検証値(MAC)303bとなる。
(3)図7に示す実施例3の構成の場合、検証値(トークン)311となる。
(4)図8に示す実施例4の構成の場合、第1検証値(トークン)311aと、第2検証値(トークン)311bとなる。
【0132】
次に、再生装置は、ステップS304において、ステップS302で算出した算出検証値ともステップS303でメモリカードから読み出した照合用検証値を比較する。
【0133】
ステップS305において、
算出検証値=照合用検証値
上記式が成立するか否かを判定する。
上記式が成立する場合は、検証成功と判定し、ステップS306に進み、メモリカードから暗号化コンテンツを読み取り、復号、再生処理を実行する。
一方、上記式が成立しない場合は、検証失敗と判定し、ステップS306のコンテンツ再生処理を実行することなく処理を終了する。この場合、コンテンツ再生は許容されない。
【0134】
このように、本発明の構成では、メモリカードに、メモリカード内のコントローラ部が管理し、コントローラ部の管理の下に読み出し可能なコントローラID(CID)と、フラッシュメモリ部が管理し、フラッシュメモリ部内の制御部の管理の下で読み出し可能なフラッシュID(FID)を記録する構成とした。
【0135】
コンテンツ記録処理に際して、これらコントローラID(CID)とフラッシュID(FID)の2つのIDに基づく検証値を生成してコンテンツに併せて記録し、コンテンツ再生時には、コントローラID(CID)とフラッシュID(FID)の2つのIDに基づく検証値を算出して照合する検証処理を実行して検証の成立を条件としてコンテンツ再生を許容する構成とした。
【0136】
この構成により、コントローラ部の製造主体であるコントローラベンダー、またはフラッシュメモリ部の製造主体であるフラッシュメモリベンダーのいずれか一方が不正なID設定を行っても、いずれか一方が正しいID管理を行っている限り、コンテンツの不正利用を防止することが可能となる。
【0137】
[8.各装置のハードウェア構成例について]
最後に、図10以下を参照して、上述した処理を実行する各装置のハードウェア構成例について説明する。
まず、図10を参照して、メモリカードに対するコンテンツ記録処理または再生処理を実行する情報記録装置や情報再生装置のハードウェア構成例について説明する。
【0138】
CPU(Central Processing Unit)701は、ROM(Read Only Memory)702、または記憶部708に記憶されているプログラムに従って各種の処理を実行するデータ処理部として機能する。例えば、上述の各実施例において説明したメモリカード(図中のリムーバブルメディア711)に対する記録処理、メモリカード(図中のリムーバブルメディア711)からのデータ再生処理等を実行する。RAM(Random Access Memory)703には、CPU701が実行するプログラムやデータなどが適宜記憶される。これらのCPU701、ROM702、およびRAM703は、バス704により相互に接続されている。
【0139】
CPU701はバス704を介して入出力インタフェース705に接続され、入出力インタフェース705には、各種スイッチ、キーボード、マウス、マイクロホンなどよりなる入力部706、ディスプレイ、スピーカなどよりなる出力部707が接続されている。CPU701は、入力部706から入力される指令に対応して各種の処理を実行し、処理結果を例えば出力部707に出力する。
【0140】
入出力インタフェース705に接続されている記憶部708は、例えばハードディスク等からなり、CPU701が実行するプログラムや各種のデータを記憶する。通信部709は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【0141】
入出力インタフェース705に接続されているドライブ710は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア711を駆動し、記録されているコンテンツや鍵情報、プログラム等の各種データを取得する。例えば、取得されたプログラムに従ったデータ処理、あるいはコンテンツや鍵データを用いて、CPUによって実行するデータ処理、記録再生プログラムに従って鍵生成、コンテンツの暗号化、記録処理、復号、再生処理などが行われる。
【0142】
図11は、メモリカードのハードウェア構成例を示している。
先に、図2を参照して説明したようにメモリカードは、コントローラ部800とフラッシュメモリ部807を有する。データ記憶装置(メモリカード)100は、例えばSDカード、USBメモリ、メモリースティック(登録商標)等により構成される。
【0143】
コントローラ部800はCPU801、ROM802、RAM803を有する。
CPU(Central Processing Unit)801は、ROM(Read Only Memory)802、またはフラッシュメモリ部807に記憶されているプログラムに従って各種の処理を実行する。
【0144】
コントローラ部800は、例えば、先に説明したコントローラID(CID)の読み取りを実行する。なお、コントローラID(CID)は、コントローラ部800内のメモリに記録された設定としてもよいし、フラッシュメモリ部807の記憶素子領域812に記録された設定としてもよい。
【0145】
コントローラ部800は、さらに、サーバや記録装置や再生装置等のホスト機器との通信処理やデータのフラッシュメモリ部807に対する書き込み、読み取り等の処理、フラッシュメモリ部807の保護領域の区分領域単位のアクセス可否判定処理等を実行する。RAM(Random Access Memory)803には、CPU801が実行するプログラムやデータなどが適宜記憶される。これらのCPU801、ROM802、およびRAM803は、バス804により相互に接続されている。
【0146】
CPU801はバス804を介して入出力インタフェース805に接続され、入出力インタフェース805には、通信部806、フラッシュメモリ部807が接続されている。入出力インタフェース805に接続されている通信部804は、例えばサーバ、ホスト機器との通信を実行する。
【0147】
フラッシュメモリ部807は、図2に示すフラッシュメモリ部120に対応し、フラッシュメモリ部内の制御部811とも記憶素子領域812を有する。制御部811は、フラッシュID(FID)の読み取り処理を実行する。フラッシュID(FID)は、例えば記憶素子領域812に記録されている。
記憶素子領域812は、データの記憶領域であり、先に説明したようにアクセス制限のある保護領域(Protected Aea)と、自由にデータ記録読み取りができる汎用領域を有する。
【0148】
なお、上述の実施例は、特定のフラッシュメモリ型のメモリカードを例として説明したが、USBメモリ等の様々な形態のメモリにおいても本発明の適用は可能である。
【0149】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【0150】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LAN(Local Area Network)、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【0151】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【0152】
以上、説明したように、本発明の一実施例の構成によれば、IDに基づく検証値を利用してコンテンツの不正利用を防止する構成が実現される。具体的には、データ記憶領域と制御部を有するフラッシュメモリ部と、フラッシュメモリ部に対するデータ記録と読み出し制御を実行するコントローラ部を有するメモリカードにコントローラ部が読み出すコントローラID(CID)と、フラッシュメモリ部の制御部が読み出すフラッシュID(FID)を記録する。コンテンツ記録処理を実行する記録装置は、CIDとFIDを利用したMAC等の検証値を生成してメモリカードに記録し、コンテンツ再生を実行する再生装置は、CIDとFIDに基づく算出検証値と照合用検証値を比較する検証処理を実行して検証成立を条件としてコンテンツ再生を行う。
【0153】
本構成により、コントローラ部の製造主体であるコントローラベンダー、またはフラッシュメモリ部の製造主体であるフラッシュメモリベンダーのいずれか一方が不正なID設定を行っても、いずれか一方が正しいID管理を行っている限り、コンテンツの不正利用を防止することが可能となる。
【符号の説明】
【0154】
10 メモリカード
11 コントローラ部
12 フラッシュメモリ部
20 コントローラ製造会社(コントローラベンダー)
30 フラッシュメモリ製造会社(フラッシュメモリベンダー)
100 データ記憶装置(メモリカード)
110 コントローラ部
120 フラッシュメモリ部
121 フラッシュメモリ部内制御部
122 保護領域
123 汎用領域
151 コントローラID(CID)
161 フラッシュID(FID)
181 検証値
182 コンテンツ
200 情報処理装置
301 コントローラID(CID)
302 フラッシュID(FID)
303 検証値
304 利用制御情報
305 暗号化タイトル鍵
306 暗号化コンテンツ
311 検証値
321 バインド鍵
322 利用制御情報
323 タイトル鍵
324 コンテンツ
325 署名鍵
701 CPU
702 ROM
703 RAM
704 バス
705 入出力インタフェース
706 入力部
707 出力部
708 記憶部
709 通信部
710 ドライブ
711 リムーバブルメディア
800 コントローラ部
801 CPU
802 ROM
803 RAM
804 バス
805 入出力インタフェース
806 通信部
807 フラッシュメモリ部
811 制御部
812 記憶素子領域

【特許請求の範囲】
【請求項1】
データ記憶領域と制御部を有するフラッシュメモリ部と、
前記フラッシュメモリ部に対するデータ記録と読み出し制御を実行するコントローラ部を有し、
前記コントローラ部が読み出し処理を行うコントローラIDと、
前記フラッシュメモリ部の制御部が読み出し処理を行うフラッシュIDを記録したメモリ部を有し、
前記コントローラ部は、外部装置からのコントローラID読み出し要求に応じて、コントローラIDを外部装置に対して出力し、
前記フラッシュメモリ部の制御部は、外部装置からのフラッシュID読み出し要求に応じて、フラッシュIDを外部装置に対して出力するデータ記憶装置。
【請求項2】
前記コントローラ部は、
認証処理を実行する認証機能を有し、前記外部装置との認証処理の成立を条件として前記コントローラIDを外部装置に出力する処理を実行する請求項1に記載のデータ記憶装置。
【請求項3】
前記フラッシュメモリ部の制御部は、
認証処理を実行する認証機能を有し、前記外部装置との認証処理の成立を条件として前記フラッシュIDを外部装置に出力する処理を実行する請求項1に記載のデータ記憶装置。
【請求項4】
メモリカードに対するコンテンツ記録を実行する情報処理装置であり、
前記メモリカードに対するコンテンツ記録処理を実行するデータ処理部を有し、
前記データ処理部は、
前記メモリカードのコントローラ部が読み出し処理を行うコントローラIDと、
前記メモリカードのフラッシュメモリ部内制御部が読み出し処理を行うフラッシュIDを取得し、
取得したコントローラIDとフラッシュIDを適用した検証値を生成して前記メモリカードに記録する処理を実行する情報処理装置。
【請求項5】
前記データ処理部は、
前記検証値として、前記コントローラIDとフラッシュIDを含むデータに対するMAC(Message Authentication Code)を生成して前記メモリカードに記録する処理を実行する請求項4に記載の情報処理装置。
【請求項6】
前記データ処理部は、
前記検証値として、前記コントローラIDに対するMACと、前記フラッシュIDに対するMACを個別に生成して前記メモリカードに記録する処理を実行する請求項4に記載の情報処理装置。
【請求項7】
前記データ処理部は、
前記検証値として、前記コントローラIDとフラッシュIDを含むデータに対する署名データ(トークン)を生成して前記メモリカードに記録する処理を実行する請求項4に記載の情報処理装置。
【請求項8】
前記データ処理部は、
前記検証値として、前記コントローラIDに対する署名データと、前記フラッシュIDに対する署名データを個別に生成して前記メモリカードに記録する処理を実行する請求項4に記載の情報処理装置。
【請求項9】
メモリカードに記録されたコンテンツを再生する情報処理装置であり、
前記メモリカードに記録されたコンテンツを読み出して再生するデータ処理部を有し、
前記データ処理部は、
前記メモリカードのコントローラ部が読み出し処理を行うコントローラIDと、
前記メモリカードのフラッシュメモリ部内制御部が読み出し処理を行うフラッシュIDを取得し、
取得したコントローラIDとフラッシュIDを適用した検証値を算出し、前記メモリカードに予め記録された照合用検証値との比較を実行して照合が成立したことを条件として、前記メモリカードに記録されたコンテンツの再生処理を実行する情報処理装置。
【請求項10】
前記データ処理部は、
前記検証値の算出処理において、前記コントローラIDとフラッシュIDを含むデータに対するMAC(Message Authentication Code)を算出する請求項9に記載の情報処理装置。
【請求項11】
前記データ処理部は、
前記検証値の算出処理において、前記コントローラIDに対するMACと、前記フラッシュIDに対するMACを個別に算出する請求項9に記載の情報処理装置。
【請求項12】
前記データ処理部は、
前記検証値の算出処理において、前記コントローラIDとフラッシュIDを含むデータに対する署名データ(トークン)を算出する請求項9に記載の情報処理装置。
【請求項13】
前記データ処理部は、
前記検証値の算出処理において、前記コントローラIDに対する署名データと、前記フラッシュIDに対する署名データを個別に算出する請求項9に記載の情報処理装置。
【請求項14】
メモリカードに対するコンテンツ記録を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置のデータ処理部が、
前記メモリカードのコントローラ部が読み出し処理を行うコントローラIDと、
前記メモリカードのフラッシュメモリ部内制御部が読み出し処理を行うフラッシュIDを取得し、
取得したコントローラIDとフラッシュIDを適用した検証値を生成して前記メモリカードに記録する処理を実行する情報処理方法。
【請求項15】
メモリカードに記録されたコンテンツを再生する情報処理装置において実行する情報処理方法であり、
前記情報処理装置のデータ処理部が、
前記メモリカードのコントローラ部が読み出し処理を行うコントローラIDと、
前記メモリカードのフラッシュメモリ部内制御部が読み出し処理を行うフラッシュIDを取得し、
取得したコントローラIDとフラッシュIDを適用した検証値を算出し、前記メモリカードに予め記録された照合用検証値との比較を実行して照合が成立したことを条件として、前記メモリカードに記録されたコンテンツの再生処理を実行する情報処理方法。
【請求項16】
メモリカードに対するコンテンツ記録を実行する情報処理装置に情報処理を実行させるプログラムであり、
前記情報処理装置のデータ処理部に、
前記メモリカードのコントローラ部が読み出し処理を行うコントローラIDと、
前記メモリカードのフラッシュメモリ部内制御部が読み出し処理を行うフラッシュIDを取得させ、
取得したコントローラIDとフラッシュIDを適用した検証値を生成して前記メモリカードに記録する処理を実行させるプログラム。
【請求項17】
メモリカードに記録されたコンテンツを再生する情報処理装置に情報処理を実行させるプログラムであり、
前記情報処理装置のデータ処理部に、
前記メモリカードのコントローラ部が読み出し処理を行うコントローラIDと、
前記メモリカードのフラッシュメモリ部内制御部が読み出し処理を行うフラッシュIDを取得させ、
取得したコントローラIDとフラッシュIDを適用した検証値を算出し、前記メモリカードに予め記録された照合用検証値との比較を実行して照合が成立したことを条件として、前記メモリカードに記録されたコンテンツの再生処理を実行させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2012−141821(P2012−141821A)
【公開日】平成24年7月26日(2012.7.26)
【国際特許分類】
【出願番号】特願2010−294477(P2010−294477)
【出願日】平成22年12月29日(2010.12.29)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】