説明

コンテンツ保護装置およびコンテンツ保護方法

【課題】メモリカード内のコンテンツ鍵の不正利用を防止し、コンテンツを保護すること。
【解決手段】CKI0001.CILファイル内に保護が指定されたコンテンツに対応するコンテンツ鍵リンク情報CII_CK #2,#3と保護が指定されていないコンテンツに対応するコンテンツ鍵リンク情報CII_CK #1,#4,#5とが混在する場合、CKI0001.CILから保護が指定されたコンテンツに対応するコンテンツ鍵リンク情報を含むコンテンツ鍵管理情報ファイルCK0003.CILと保護が指定されていないコンテンツに対応するコンテンツ鍵リンク情報を含むコンテンツ鍵管理情報ファイルCK0004.CILとをそれぞれ再生成し、ファイル管理情報のコンテンツ鍵管理情報ファイルCK0003.CILが記録されているセクタに対して保護を示す情報を記録する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、メモリカードに記録されているコンテンツを保護するコンテンツ保護装置およびコンテンツ保護方法に関する。
【背景技術】
【0002】
SD Card Associationは、SD−SD(SD-Separate Delivery)規格を定めている。そして、4C Entity,LLCは、SD−SD規格を用いたCPRM(Content Protection for Recordable Media) for SD−SDを定めている(非特許文献1)。
【0003】
CPRM for SD−SDでは、ユーザ鍵およびコンテンツ鍵を用意し、ユーザ鍵を保護領域、コンテンツ鍵をユーザデータ領域に記録する。コンテンツは、コンテンツ鍵によって暗号化され、暗号化コンテンツはユーザデータ領域または外部記憶装置に記録される。コンテンツ鍵はユーザ鍵で暗号化され、ユーザ鍵はSDメモリカード固有のメディア固有鍵で暗号化される。CPRM for SD−SDにより、暗号化コンテンツと鍵とを分離して取り扱うことが可能になる。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】中野一典、外2名,「SDメモリカードを利用したデジタル著作権保護技術SDconnectTM」,東芝レビュー,株式会社 東芝,2008年7月1日、63巻、7号、p.31−34
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、SDカードは、携帯機器で使用することが多いので、携帯機器と共に紛失してしまうことがある。紛失した携帯機器が第3者に拾われると、第3者がSDカード内に記録されているコンテンツ鍵を不正に利用し、SDカード内のコンテンツを見られてしまう恐れがある。そのため、コンテンツを保護する仕組みを提供することが望まれている。
【0006】
本発明の目的は、メモリカード内のコンテンツ鍵の不正利用を防止し、コンテンツを保護することが可能なコンテンツ保護装置およびコンテンツ保護方法を提供することにある。
【課題を解決するための手段】
【0007】
本発明の一例に係わるコンテンツ保護装置は、メモリカード内に格納されている暗号化されている暗号化コンテンツを保護するコンテンツ保護装置であって、
前記メモリカードは、コンテンツがコンテンツ鍵によって暗号化された暗号化コンテンツと、コンテンツと当該コンテンツに対して与えられるコンテンツ識別子とを関連づけたコンテンツ情報が一つ以上記録されるコンテンツ管理ファイルと、コンテンツ識別子と、当該コンテンツ識別子に関連付けられているコンテンツの暗号化に用いたコンテンツ鍵を示すコンテンツ鍵情報とを関連づけた情報が記録されているコンテンツ識別子−コンテンツ鍵管理ファイルと、前記コンテンツ鍵をユーザ鍵によって暗号化した暗号化コンテンツ鍵を含むコンテンツ鍵データを記録するための複数のデータ領域を有する一つ以上のコンテンツ鍵管理ファイルと、暗号化コンテンツ鍵を暗号化したユーザ鍵が格納されているユーザ鍵管理ファイルを示す情報および当該ユーザ鍵管理ファイル中のユーザ鍵の記録位置を示す情報が記録されたユーザ鍵記録位置情報が一つ以上記録されているユーザ鍵記録位置情報管理ファイルと、前記コンテンツ識別子−コンテンツ鍵管理ファイルに記録されているコンテンツ鍵情報に対して、当該コンテンツ鍵情報が示すコンテンツ鍵を暗号化した暗号化コンテンツ鍵を含むコンテンツ鍵データが記録されているコンテンツ鍵管理ファイルを示す情報および当該コンテンツ鍵管理ファイル中の当該コンテンツ鍵データが記録されているデータ領域を示す情報が記録されるコンテンツ鍵記録位置情報、並びに当該コンテンツ鍵情報が示すコンテンツ鍵の暗号化に用いたユーザ鍵に対応するユーザ鍵記録位置情報の前記ユーザ鍵記録位置情報管理ファイル中の記録位置を示すユーザ鍵記録位置ポインタを関連づけたコンテンツ鍵リンク情報を複数有し、各コンテンツ鍵リンク情報にはコンテンツ鍵管理情報ファイルとが格納されるユーザデータ領域、ユーザ鍵と前記複数のデータ領域に記録されているデータのハッシュ値とが記録されているユーザ鍵管理ファイルが一つ以上格納される保護領域、前記ユーザデータ領域に格納されるファイルをセクタ単位で管理するためのファイル管理情報が記録されている管理領域であって、前記ファイル管理情報には前記セクタ毎に保護を示す情報が記録可能な管理領域、および認証情報が記録されているシステム領域を有する不揮発性メモリと、ホストから前記ファイル管理情報に保護を示す情報が記録されているセクタの読み出しを命令された場合に、当該ホストから入力された情報と前記認証情報とを用いて認証処理を実行し、前記認証処理が成功した場合に前記読み出し命令に対する処理を許可する手段とを具備し、
前記コンテンツ保護装置は、ユーザが保護を指定したコンテンツを保護するために、前記ファイル管理情報に保護を示す情報を記録する設定記録手段であって、前記ファイル管理情報の前記保護が指定されたコンテンツを復号するためのコンテンツ鍵を暗号化した暗号化コンテンツ鍵のコンテンツ鍵記録位置情報が記録されているコンテンツ鍵リンク情報を有するコンテンツ鍵管理情報ファイルが記録されているセクタに対して保護を示す情報を記録する、或いは前記ファイル管理情報の前記保護が指定されたコンテンツを暗号化したコンテンツ鍵を暗号化した暗号化コンテンツ鍵が記録されているコンテンツ鍵管理ファイルが記録されているセクタの少なくとも一部に対して保護を示す情報を記録する保護設定手段を具備することを特徴とする。
【発明の効果】
【0008】
本発明によれば、メモリカード内のコンテンツ鍵の不正利用を防止し、コンテンツを保護することが可能になる。
【図面の簡単な説明】
【0009】
【図1】本発明の一実施形態に係わるコンテンツ保護装置のシステム構成を示すブロック図。
【図2】図1に示すメモリカードの構成を示す図。
【図3】SD−SDのファイル構造を示す図。
【図4】CKnnn.CIL(CIL_CK)ファイルの構成を示す図。
【図5】SDnnn.CKM(CKMG)ファイルの構成を示す図。
【図6】本発明の一実施形態のコンテンツ保護方法の一例を説明するための図。
【図7】本発明の一実施形態のコンテンツ保護方法の一例を説明するための図。
【発明を実施するための形態】
【0010】
本発明の実施の形態を以下に図面を参照して説明する。
【0011】
まず、図1を参照して、本発明の一実施形態に係るコンテンツ保護装置の構成について説明する。この情報処理装置は、バッテリ駆動可能な携帯型のノートブック型パーソナルコンピュータとして実現されている。
【0012】
本コンピュータは、図1に示されているように、キーボード13、パワーボタン14、タッチパッド16、LCD(Liquid Crystal Display)17、CPU111、ノースブリッジ112、主メモリ113、グラフィクスコントローラ114、サウスブリッジ119、BIOS−ROM120、ハードディスクドライブ121、エンベデッドコントローラ/キーボードコントローラIC124、電源コントローラ125、ホストコントローラ131、およびカードスロット132等を備えている。
【0013】
CPU111は、本コンピュータの動作を制御するために設けられたプロセッサであり、ハードディスクドライブ121から主メモリ113にロードされる、オペレーティングシステム141、および、メモリカードデータ管理アプリケーションプログラム(保護設定手段)142等の各種アプリケーションプログラムを実行する。
【0014】
また、CPU111は、BIOS−ROM120に格納されたBIOSプログラムも実行する。BIOSプログラムはハードウェア制御のためのプログラムである。
【0015】
ノースブリッジ112はCPU111のローカルバスとサウスブリッジ119との間を接続するブリッジデバイスである。ノースブリッジ112には、主メモリ113をアクセス制御するメモリコントローラも内蔵されている。また、ノースブリッジ112には、PCI Expressバスなどを介してグラフィクスコントローラ114との通信を実行する機能も有している。
【0016】
グラフィクスコントローラ114は、本コンピュータのディスプレイモニタとして使用されるLCD17を制御する表示コントローラである。このグラフィクスコントローラ114はビデオメモリ114Aを有しており、OS/アプリケーションプログラムによってビデオメモリ114Aに書き込まれた表示データから、ディスプレイユニット12のLCD17に表示すべき表示イメージを形成する映像信号を生成する。
【0017】
サウスブリッジ119は、LPCバス上のデバイスを制御する。また、サウスブリッジ119は、HDD121を制御するためのIDEコントローラを内蔵している。さらに、サウスブリッジ119は、およびBIOS−ROM120をアクセス制御するための機能も有している。また、更にサウスブリッジ119は、USB規格をサポートした機器とのデータの伝送の制御を行うためのUSBコントローラ119Aを有している。
【0018】
ホストコントローラ131は、メモリカード133等のSDカードとの通信を行うインタフェースである。また、ホストコントローラ131は、USBコントローラ119Aと通信を行う機能を有する。メモリカード133は、著作権保護技術に対応したメモリカードである。データ管理アプリケーションは、メモリカード133内に記録されているデータの管理を行うためのソフトウェアである。
【0019】
次に、メモリカード133内の構成について説明する。図2は、メモリカードの構成を示すブロック図である。
図2に示すように、メモリカード133は、不揮発性メモリ210、およびコントローラ220等を備えている。不揮発性メモリ210は、例えばNAND型フラッシュメモリで構成される。コントローラ220は、ホストコントローラ131からの命令に応じて不揮発性メモリ210に対してデータの読み込み/書き込みを行う。また、コントローラ220は、後述するデータ保護システムに関する認証処理、鍵交換及び暗号通信を行なうものであり、暗号化/復号機能をもっている。
【0020】
不揮発性メモリ210は、管理領域211、ユーザデータ領域212、保護領域213、秘匿領域214、およびシステム領域215等を備えている。管理領域211には、ユーザデータ領域212、保護領域213、秘匿領域214、およびシステム領域215に記録されるファイルをセクタ単位で管理するためのファイル管理情報が記録される。ファイル管理情報は、セクタ単位でデータの保護を示すフラグ情報を格納することができる。
【0021】
セクタに対するフラグ情報が“True”の場合にセクタに記録されているデータが保護され、“False”の場合にセクタに記録されているデータは保護されない。
【0022】
ホストがメモリカード内の保護されているセクタのデータの読み出しを命令した場合、コントローラ220は、データの保護を行う。コントローラ220が実行するデータ保護について以下に説明する。コントローラ220は、ホストに対してパスワードの入力を要求する。コントローラ220はホストから送られたパスワードと、システム領域に格納されているパスワードとを比較して認証処理を行う。コントローラ220は、二つのパスワードが一致した場合に、認証処理が成功したと判断する。そして、コントローラ220は、ホストが要求したデータをホストに転送する処理を実行する。
【0023】
システム領域215は、読取専用でメモリカード133外部からアクセス可能な領域である。秘匿領域214は、読取専用でメモリカード133自身が参照する領域であり、外部からのアクセスが一切不可となっている。保護領域213は、認証に成功した場合にメモリカード133外部から読出/書込可能な領域である。ユーザデータ領域212は、メモリカード133外部から自由に読出/書込可能な領域である。
【0024】
次に、メモリカード133のデータ保護システムについて説明する。メモリカードデータ管理アプリケーションプログラム142を起動すると、メモリカードデータ管理アプリケーションプログラム142はメモリカード内に格納されているメディア鍵によって暗号化されているコンテンツの一覧をLCD17に表示する。ユーザはLCD17に表示されているコンテンツの一覧から保護したいコンテンツを選択する。メモリカードデータ管理アプリケーションプログラム142は、ユーザが選択したコンテンツに対応するデータを保護することにより、コンテンツを復号されないようにする。
【0025】
メモリカードデータ管理アプリケーションプログラム142は、コンテンツを復号されないようにするために、コンテンツを復号するために必要なデータがホストに読み出されないようにする。メモリカードデータ管理アプリケーションプログラム142は、コンテンツを復号するためのデータを読み出されないようにするために、ファイル管理情報中のコンテンツを復号するためのデータが格納されているセクタに対するフラグ情報を“True”にする。
【0026】
コンテンツを復号するためのデータを説明するために、SD−SDのファイル構造を説明する。
図3は、SD−SDのファイル構造を示す図である。
ユーザデータエリア(User Data Area)のROOTにSD_SDDATディレクトリおよびSD_SDKYXディレクトリが設けられている。SD_SDDATディレクトリ内に、ビデオコンテンツに関するデータ等が格納されるVIDEOディレクトリが設けられている。ビデオディレクトリ内にはVC.CLM(CLMG_VC)ファイル、VCnnn.CIL(nnnは3桁の数値)ファイル、VIDEO.GNMファイル、PLAYLISTディレクトリ、VDEOhhhディレクトリが設けられている。
【0027】
CLMG_VC(コンテンツ管理ファイル)ファイルは、ビデオコンテンツを管理するためのファイルである。VCnnn.CIL(CIL_VC)は、ビデオコンテンツとビデオコンテンツから生成されるID(コンテンツ識別子)とを関連付けたリスト(コンテンツ情報)を記述したファイルである。VIDEO.GNM(GNMG_VC)は、ビデオコンテンツの概要を管理するファイルである。
【0028】
PLAYLISTディレクトリ内には、PL.PLMファイルおよびPLnnn.PLT(nnnは001以上の数値)ファイルが設けられている。PL.PLM(PLMG_VC)ファイルはビデオコンテンツのプレイリストを管理するためのファイルである。PLnnn.PLTファイルは、プレイリストを記述したファイルである。
【0029】
VIDOhhhディレクトリ内には、VIDEO.PGMファイルおよびPVOhh.SSVファイルが設けられている。VIDEO.PGMファイルは、ビデオコンテンツを管理するためのファイルである。PVOhh.SSVファイルは、暗号化されているビデオコンテンツファイルである。
【0030】
SD_SDKYXディレクトリ内に、SD.SLMファイルおよびSVCnnnnn(nnnnnは001以上の数値)ディレクトリが設けられる。SD.SLMファイルはサービスの管理情報が記述されているファイルである。
【0031】
SVCnnnnnディレクトリは、サービス毎にディレクトリが設けられる。SVCnnnnnディレクトリに対するサービスはSD.SLMファイルに記述されている。SVCnnnnnディレクトリ内には、CK.CLM(CLMG_CK)ファイル、CKnnn.CIL(nnnは001以上の数値)ファイル、SD.UKM(UKMG)ファイル、SDnnn.CKM(nnnは001以上の数値)ファイルが格納される。
【0032】
CLMG_CKファイル(コンテンツ識別子−コンテンツ鍵管理ファイル)は、CIL_CKを管理するための情報が記述されたファイルである。CKnnn.CIL(CIL_CK)ファイル(コンテンツ鍵管理情報ファイル)は、図4に示すように、複数のコンテンツ鍵リンク情報CII_CK #n(n=1,2,3,…,N)を有する。各コンテンツ鍵リンク情報CII_CK #nには、コンテンツ鍵情報に対して、コンテンツ鍵を暗号化した暗号化コンテンツ鍵を含むコンテンツ鍵データを有するCKMGファイルを示す情報およびCKMGファイル内におけるコンテンツ鍵データの記録位置を示すコンテンツ鍵記録位置情報、およびUKMGファイル中における暗号化コンテンツ鍵を復号するためのユーザ鍵に対するユーザ鍵記録位置情報の記録位置を示すユーザ鍵記録位置情報が記録されている箇所を示すユーザ鍵記録位置ポインタを関連付けた情報が記録されている。なお、一つのCKnnn.CIL(CIL_CK)ファイル内において、コンテンツIDは昇順であること、またCILファイル内のコンテンツIDの最大値が次のCILファイル内のコンテンツIDの最小値よりも小さいまたは等しいことが要求される。
【0033】
コンテンツ鍵は、コンテンツの暗号化に用いた鍵である。コンテンツ鍵は、暗号化されてユーザデータ領域に記録されている。ユーザ鍵は、コンテンツ鍵の暗号化に用いた鍵である。
【0034】
UKMGファイル(ユーザ鍵情報管理ファイル)は、ユーザ鍵記録位置情報が記録されている。コンテンツに対するユーザ鍵記録位置情報の記録位置は、前述したようにCKnnn.CIL(CIL_CK)ファイルに記録されている。
【0035】
SDnnn.CKM(CKMG)ファイルは、図5に示すように、データ領域CKI_#1〜CKI_#1024と、CKI管理領域CKMGIとを有する。データ領域CKI_#1〜CKI_#1024にはコンテンツ鍵データが格納される。コンテンツ鍵データには、ユーザ鍵によってコンテンツ鍵を暗号化した暗号化コンテンツ鍵および使用ルール(Usage Rule)が記録されている。UKURMGファイルのハッシュ値記録領域UR_HASHには、CKI_#1〜CKI_#1024に記録されているデータのハッシュ値が記録される。
【0036】
保護エリア(Protected Area)のROOTにSD_SDディレクトリが設けられている。SD_SDディレクトリ内に、SD_SD.MMG(UKURMMG)ファイルおよびSDSDnnnn.KYX(UKURMG)ファイルが設けられている。UKURMMGファイルはUKURMGファイルを管理するための情報が記述されたファイルである。UKURMGファイル(ユーザ鍵管理ファイル)は、ユーザ鍵およびコンテンツ鍵のハッシュ値が記述されたファイルである。
【0037】
次に、上述したファイルを保護する方法の実装方法を以下に説明する。
(実装方法1)
最初の実装方法は、ユーザが保護を選択したコンテンツを提供したサービスに対応するSVCnnnnディレクトリ以下のSDnnnn.CKM(CKMG)ファイルを全てデータ保護システムによって保護する。つまり、メモリカードデータ管理アプリケーションプログラム142は、SDnnnn.CKM(CKMG)ファイルが記録されているセクタのフラグ情報を全て“True”にする。SDnnnn.CKM(CKMG)ファイルを全てデータ保護システムによって保護することで、不正なユーザは、コンテンツ鍵を取得することができず、コンテンツが復号されることがないのでコンテンツを保護することができる。
【0038】
この方法では、サービス毎にCKMGファイルをデータ保護システムで保護するので、サービス内のコンテンツが全て保護される。
【0039】
(実装方法2)
2番目の実装方法は、ユーザが保護を選択したコンテンツを提供したサービスに対応するSVCnnnnディレクトリ以下のCKnnn.CIL(CIL_CK)ファイルを全てデータ保護システムによって保護する。つまり、メモリカードデータ管理アプリケーションプログラム142は、ユーザが保護を選択したコンテンツを提供するサービスに対応するSVCnnnnディレクトリ以下のCKnnn.CIL(CIL_CK)が記録されているセクタのフラグ情報を全て“True”にする。
【0040】
上述した方法によれば、保護が指定されたコンテンツCIL_CKファイルを保護することで、不正なユーザはコンテンツ鍵リンク情報を得ることができず、コンテンツ鍵を取得することができない。よって、不正なユーザに対しては、コンテンツが復号されることがないのでコンテンツを保護することができる。
【0041】
この方法では、サービス毎にCIL_CKファイルをデータ保護システムで保護するので、サービス内のコンテンツが全て保護される。
【0042】
(実装方法3)
3番目の実装方法は、ユーザが保護を選択したコンテンツだけを含むCKnnn.CIL(CIL_CK)ファイル全体をデータ保護システムによって保護する。
【0043】
一つのCIL_CKファイル内に含まれるコンテンツが全てユーザが保護を選択したコンテンツであれば、CIL_CKファイル全体をデータ保護システムによって保護する。一つのCIL_CKファイル内に含まれる暗号化されたコンテンツ鍵に対応するコンテンツが全てユーザが保護を選択したコンテンツで無ければ、元のCIL_CKファイルをユーザが保護を選択したコンテンツを含むCIL_CKファイル、およびをユーザが保護を選択しなかったコンテンツを含むCIL_CKファイルに再構成する。そして、再構成されたファイルの中からユーザが保護を選択したコンテンツを含むCIL_CKファイル全体をデータ保護システムによって保護する。
【0044】
メモリカードデータ管理アプリケーションプログラム142は、CK.CLM(CLMG_CK)を参照することによってユーザが選択したコンテンツに対するCIL_CKファイルを参照する。次に、CIL_CK内のコンテンツIDに対応するコンテンツが全て保護対象である場合、CIL_CKファイル全体をデータ保護システムによって保護する。
【0045】
CIL_CKファイル内の一部のコンテンツIDに関連付けられているコンテンツが保護対象である場合、メモリカードデータ管理アプリケーションプログラム142は、選択したコンテンツだけを抜き出すように、CIL_CKファイルを再生成し、再生成されたCIL_CKファイルをデータ保護システムによって保護する。
【0046】
この方法の概要について図6を参照して説明する。図6(A)に示すように、SVCnnnnnディレクトリ以下にCK0001.CILファイルおよびCK0002.CILファイルが格納されている。CK0001.CILファイルにはコンテンツリンク情報データCII_CK #1、CII_CK #2、CII_CK #3、CII_CK #4、CII_CK #5が記述されている。CK0002.CILファイルにはコンテンツリンク情報データCII_CK #6、CII_CK #7、CII_CK #8、CII_CK #9が記述されている。
【0047】
ここでコンテンツリンク情報データCII_CK #2、CII_CK #3、CII_CK #6〜CII_CK #9が、ユーザが保護を指定したコンテンツに対応するものとする。
【0048】
そこで、メモリカードデータ管理アプリケーションプログラム142は、CK0001.CILファイルからCII_CK #2およびCII_CK #3を抜き出す。メモリカードデータ管理アプリケーションプログラム142は、CII_CK #2およびCII_CK #3を有する新しいCIL_CKファイルを作成する。CK0001.CILファイルが既に存在するので、図6(B)に示すように、メモリカードデータ管理アプリケーションプログラム142は、CII_CK #3を有するCK0003.CILファイルを作成する。そして、メモリカードデータ管理アプリケーションプログラム142は、CII_CK #3が格納されているセクタに対するフラグ情報を“True”にする。
【0049】
ところで、CII_CK #2,CII_CK #3を抜き出すと、CK0001.CILファイル内のコンテンツリンク情報データCII_CK #nに付与されて入れる番号が昇順ではなくなってしまう。規格上、CIL_CKファイル内のコンテンツリンク情報データCII_CK #nに付与されている番号が昇順かつ、CILファイル内のコンテンツIDの最大値が次のCILファイル内のコンテンツIDの最小値よりも小さいまたは等しくなくてはならない。よって、メモリカードデータ管理アプリケーションプログラム142は、CK0001.CILファイルからCII_CK #4およびCII_CK #5を抜き出し、CII_CK #4およびCII_CK #5を有するCIL_CKファイルを作成する。作成するファイルの名称は、CK0002.CILおよびCK0003.CILファイルは既に存在するので、図6(B)に示すように、CK0004.CILとする。
【0050】
また、CK0002.CILファイル内のCII_CK #6〜CII_CK #9ファイルは、全てユーザが保護を指定したコンテンツに対応するので、CK0002.CILファイルを保護対象とする。よって、メモリカードデータ管理アプリケーションプログラム142は、ファイル管理情報中のCK0002.CILファイルが記録されているセクタに対するフラグ情報を“True”にする。
【0051】
この方法によれば、保護が指定されたコンテンツに対応するCIL_CKファイルを保護することで、不正なユーザはコンテンツ鍵リンク情報を得ることができず、コンテンツ鍵を取得することができない。よって、不正なユーザに対しては、コンテンツが復号されることがないのでコンテンツを保護することができる。
【0052】
本実装方法によれば、CIL_CKファイル内に、ユーザが保護を指定したコンテンツに対応するコンテンツリンク情報データCII_CK #nと、ユーザが保護を指定していないコンテンツに対応するコンテンツリンク情報データCII_CK #nとが混在する場合に、CIL_CKファイル内において保護を指定したコンテンツに対応するコンテンツ鍵リンク情報CII_CK #nと、前記保護を指定していないコンテンツに対応するコンテンツ鍵リンク情報CII_CK #nとをそれぞれ抽出し、コンテンツIDが昇順となるよう抽出されたコンテンツ鍵リンク情報をそれぞれ含む一つ以上のコンテンツ鍵管理情報ファイルを生成する。そして、ファイル管理情報中の、CIL_CKファイル内において保護を指定したコンテンツに対応するコンテンツ鍵リンク情報CII_CK #nだけを含むCIL_CKファイルが記録されているセクタに対するフラグ情報を“True”にする。このように、保護を指定したコンテンツに対応するコンテンツ鍵リンク情報CII_CK #nだけを含むCIL_CKファイルを生成し、生成されたCIL_CKファイルに対して保護を設定することで、コンテンツ毎に保護を設定することができる。
【0053】
(実装方法4)
4番目の実装方法を以下に説明する。4番目の実装方法は、CKMGファイル内に格納されている、コンテンツ鍵および仕様ルールが記述されているCKIデータをデータ保護システムによって保護する。ところで、データを保護するための保護フラグは、セクタ単位で設定されるので、一つのセクタに保護データと非保護データを混在させることができない。そこで、本実装方法では、保護データと非保護データとが混在する場合、混在するセクタから保護データを未使用のデータ領域に移動させることによって、一つのセクタに保護データと非保護データとが混在しないようにする。以下に、本実装方法をより詳細に説明する。
【0054】
先ず、ユーザが保護したいコンテンツを選択する。次に、メモリカードデータ管理アプリケーションプログラム142は、コンテンツ鍵が記述されたCK。CLMファイルおよびCKnnn.CILファイルを参照し、ユーザが選択したコンテンツに対応するコンテンツ鍵が格納されているSDnnn.CKM(CKMG)ファイルを特定する。CKMGファイル内には、コンテンツ鍵および利用ルール(Usage Rule)を記述する一つ以上のCKIデータが格納されている。
【0055】
特定したCKMGファイル内のすべてのCKIデータが保護対象である場合、メモリカードデータ管理アプリケーションプログラム142は、CKMGファイル全体をデータ保護システムによって保護する。
【0056】
特定したCKMGファイル内の一部のCKIが保護対象である場合、メモリカードデータ管理アプリケーションプログラム142は、一つのセクタ内に保護対象と非保護対象が共存しているかを判別する。共存していない場合、メモリカードデータ管理アプリケーションプログラム142は、保護対象のセクタのみをデータ保護システムによって保護する。共存している場合、メモリカードデータ管理アプリケーションプログラム142は、一つのセクタ内に保護対象のCKIデータのみが存在するようにCKMGファイルを再生成し、保護対象のセクタのみをデータ保護システムによって保護する
図7を参照して実装方法4を説明する。図7(A)は保護前のCKMGファイルを示し、図7(B)は保護後のCKMGファイルを示している。
CKMGファイルは、CKI管理領域CKMGIおよびデータ領域CKI #1〜CKI #1024が確保されている。CKI管理領域CKMGIには、CKI #1〜CKI #1024の使用状況が記録される。
【0057】
なお、図7(A)に示すように、データ領域CKI #9〜CKI #1024はコンテンツ鍵および利用ルールが記述されておらず未使用であり、データCKI #1〜CKI #8が使用されている領域である。
【0058】
ここで、データ領域CKI #1,CKI #2,CKI #6,CKI #7にユーザが保護を選択したコンテンツに対応するコンテンツ鍵データが記録されているとする。データ領域CKI #8とデータ領域CKI #9とは同じn+3セクタに記録されている。しかし、データ領域CKI #1はnセクタに記録され、データ領域CKI #2はn+1セクタに記録され、保護を指定したコンテンツに対応するコンテンツ鍵データが記録されているデータ領域CKI #1とデータ領域CKI #2とは別々のセクタに記録されている。
【0059】
そこで、図7(B)に示すように、メモリカードデータ管理アプリケーションプログラム142は、データ領域CKI #1とCKI #2に記録されているコンテンツ鍵データを連続した未使用領域であるデータ領域CKI #10およびCKI #11に移動させ、データ領域CKI #1、CKI #2を未使用領域にする。そして、メモリカードデータ管理アプリケーションプログラム142は、データ領域CKI #1〜CKI #1024に記録されているデータのハッシュ値を演算し、演算されたハッシュ値によってUKURMGファイル内のハッシュ値記録領域UR_HASHの内容を書き換える。そして、メモリカードデータ管理アプリケーションプログラム142は、ファイル管理情報のデータ領域CKI #10およびCKI #11が記録されているn+5セクタに対するフラグ情報を“True”にする。
【0060】
また、データ領域CKI #1、CKI #2に記録されていたコンテンツ鍵データの移動に伴い、メモリカードデータ管理アプリケーションプログラム142は、CIL_CKファイル中のデータ領域CKI #1、CKI #2を示していたコンテンツ鍵リンク情報CIL_CK #nをそれぞれデータ領域CKI #10およびCKI #11に書き換える。
【0061】
また、保護が指定されたコンテンツに対応するコンテンツ鍵データが記録されているデータ領域CKI #6,CKI #7は同一のn+3セクタに記録されている。よって、メモリカードデータ管理アプリケーションプログラム142は、ファイル管理情報のデータ領域CKI #6およびCKI #7が記録されているn+3セクタに対するフラグ情報を“True”にする。
【0062】
この方法では、保護が指定されたコンテンツに対応するコンテンツ鍵を含むデータ領域が保護されているので、不正なユーザはコンテンツ鍵を取得することができず、コンテンツが復号されることがないので、コンテンツを保護することができる。
【0063】
本実装方法では、CKMGファイル内の一つのセクタ内に、前記保護を指定したコンテンツに対応するコンテンツ鍵データが記録されているデータ領域と、保護を指定していないコンテンツに対応するコンテンツ鍵データCKI #nが記録されているデータ領域とが混在する場合、混在するセクタから保護を指定したコンテンツに対応するコンテンツ鍵データを抽出する。そして、CKMGファイル内の一つのセクタ内に保護を指定したコンテンツに対応するコンテンツ鍵データだけが記録されるように抽出したコンテンツ鍵データを移動させる。そして、ファイル管理情報中の保護を指定したコンテンツに対応するコンテンツ鍵データを含むセクタに対して保護を示す情報を記録する。その後、コンテンツ鍵データの移動に応じて前記コンテンツ鍵管理情報ファイル内のコンテンツ鍵リンク情報を書き換える
このように、保護を指定したコンテンツに対応するコンテンツ鍵リンク情報CII_CK #nをだけ含むCIL_CKファイルを生成し、生成されたCIL_CKファイルに対して保護を設定することで、コンテンツ毎に保護を設定することができる。
【0064】
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【0065】
131…ホストコントローラ,132…カードスロット,133…メモリカード,142…メモリカードデータ管理アプリケーションプログラム,210…不揮発性メモリ,211…管理領域,212…ユーザデータ領域,213…保護領域,214…秘匿領域,215…システム領域,220…コントローラ。

【特許請求の範囲】
【請求項1】
メモリカード内に格納されている暗号化されている暗号化コンテンツを保護するコンテンツ保護装置であって、
前記メモリカードは、
コンテンツがコンテンツ鍵によって暗号化された暗号化コンテンツと、コンテンツと当該コンテンツに対して与えられるコンテンツ識別子とを関連づけたコンテンツ情報が一つ以上記録されるコンテンツ管理ファイルと、コンテンツ識別子と、当該コンテンツ識別子に関連付けられているコンテンツの暗号化に用いたコンテンツ鍵を示すコンテンツ鍵情報とを関連づけた情報が記録されているコンテンツ識別子−コンテンツ鍵管理ファイルと、前記コンテンツ鍵をユーザ鍵によって暗号化した暗号化コンテンツ鍵を含むコンテンツ鍵データを記録するための複数のデータ領域を有する一つ以上のコンテンツ鍵管理ファイルと、暗号化コンテンツ鍵を暗号化したユーザ鍵が格納されているユーザ鍵管理ファイルを示す情報および当該ユーザ鍵管理ファイル中のユーザ鍵の記録位置を示す情報が記録されたユーザ鍵記録位置情報が一つ以上記録されているユーザ鍵記録位置情報管理ファイルと、前記コンテンツ識別子−コンテンツ鍵管理ファイルに記録されているコンテンツ鍵情報に対して、当該コンテンツ鍵情報が示すコンテンツ鍵を暗号化した暗号化コンテンツ鍵を含むコンテンツ鍵データが記録されているコンテンツ鍵管理ファイルを示す情報および当該コンテンツ鍵管理ファイル中の当該コンテンツ鍵データが記録されているデータ領域を示す情報が記録されるコンテンツ鍵記録位置情報、並びに当該コンテンツ鍵情報が示すコンテンツ鍵の暗号化に用いたユーザ鍵に対応するユーザ鍵記録位置情報の前記ユーザ鍵記録位置情報管理ファイル中の記録位置を示すユーザ鍵記録位置ポインタを関連づけたコンテンツ鍵リンク情報を複数有し、各コンテンツ鍵リンク情報にはコンテンツ鍵管理情報ファイルとが格納されるユーザデータ領域、
ユーザ鍵と前記複数のデータ領域に記録されているデータのハッシュ値とが記録されているユーザ鍵管理ファイルが一つ以上格納される保護領域、
前記ユーザデータ領域に格納されるファイルをセクタ単位で管理するためのファイル管理情報が記録されている管理領域であって、前記ファイル管理情報には前記セクタ毎に保護を示す情報が記録可能な管理領域、および
認証情報が記録されているシステム領域を有する不揮発性メモリと、
ホストから前記ファイル管理情報に保護を示す情報が記録されているセクタの読み出しを命令された場合に、当該ホストから入力された情報と前記認証情報とを用いて認証処理を実行し、前記認証処理が成功した場合に前記読み出し命令に対する処理を許可する手段とを具備し、
前記コンテンツ保護装置は、
ユーザが保護を指定したコンテンツを保護するために、前記ファイル管理情報に保護を示す情報を記録する設定記録手段であって、前記ファイル管理情報の前記保護が指定されたコンテンツを復号するためのコンテンツ鍵を暗号化した暗号化コンテンツ鍵のコンテンツ鍵記録位置情報が記録されているコンテンツ鍵リンク情報を有するコンテンツ鍵管理情報ファイルが記録されているセクタに対して保護を示す情報を記録する、或いは前記ファイル管理情報の前記保護が指定されたコンテンツを暗号化したコンテンツ鍵を暗号化した暗号化コンテンツ鍵が記録されているコンテンツ鍵管理ファイルが記録されているセクタの少なくとも一部に対して保護を示す情報を記録する保護設定手段
を具備することを特徴とするコンテンツ保護装置。
【請求項2】
前記コンテンツ鍵管理情報ファイル内に前記保護が指定されたコンテンツに対応するコンテンツ鍵リンク情報と前記保護が指定されていないコンテンツに対応するコンテンツ鍵リンク情報とが混在する場合、
前記保護設定手段は、
前記コンテンツ鍵管理情報ファイルから前記保護が指定されたコンテンツに対応するコンテンツ鍵リンク情報を含むコンテンツ鍵管理情報ファイルと前記保護が指定されていないコンテンツに対応するコンテンツ鍵リンク情報を含むコンテンツ鍵管理情報ファイルとをそれぞれ再生成し、
前記ファイル管理情報中の前記保護が指定されたコンテンツに対応するコンテンツ鍵リンク情報を含む前記新たに生成されたコンテンツ鍵管理情報ファイルが記録されているセクタに対して保護を示す情報を記録することを特徴とする請求項1に記載のコンテンツ保護装置。
【請求項3】
前記コンテンツ鍵管理ファイルにおいて一つのセクタは複数のデータ領域を有し、
前記保護設定手段は、前記コンテンツ鍵管理ファイル内の一つのセクタ内に前記保護が指定されたコンテンツに対応するコンテンツ鍵データが記録されているデータ領域と前記ハッシュ値または前記保護が指定されていないコンテンツに対応するコンテンツ鍵データが記録されているデータ領域とが混在する場合、前記混在するセクタから前記保護が指定されたコンテンツに対応するコンテンツ鍵データを抽出し、前記コンテンツ鍵管理ファイル内の一つのセクタ内に前記保護が指定されたコンテンツに対応するコンテンツ鍵データだけが記録されるように前記抽出したコンテンツ鍵データを移動させ、
前記ファイル管理情報中の前記保護が指定されたコンテンツに対応するコンテンツ鍵データを含むセクタに対して保護を示す情報を記録し、前記コンテンツ鍵データの移動に応じて前記コンテンツ鍵管理情報ファイル内のコンテンツ鍵リンク情報を書き換える
ことを特徴とする請求項1に記載のコンテンツ保護装置。
【請求項4】
前記保護設定手段は、前記コンテンツ鍵データが記録されていないセクタ内に前記抽出したコンテンツ鍵データを移動させることを特徴とする請求項3に記載のコンテンツ保護装置。
【請求項5】
前記保護設定手段は、前記コンテンツ鍵管理ファイル内のデータ領域に記録されているデータのハッシュ値を演算し、演算されたハッシュ値によって前記抽出したコンテンツ鍵データを移動させることを特徴とする請求項3又は請求項4に記載のコンテンツ保護装置。
【請求項6】
前記保護設定手段は、前記ファイル管理情報の前記ユーザが指定したコンテンツを暗号化したコンテンツ鍵を暗号化した暗号化コンテンツ鍵が記録されているコンテンツ鍵管理ファイルが記録されているセクタの全てに保護を示す情報を記録することを特徴とする請求項1に記載のコンテンツ保護装置。
【請求項7】
メモリカード内に格納されている暗号化されている暗号化コンテンツを保護するコンテンツ保護方法であって、
前記メモリカードは、
コンテンツがコンテンツ鍵によって暗号化された暗号化コンテンツと、コンテンツと当該コンテンツに対して与えられるコンテンツ識別子とを関連づけたコンテンツ情報が一つ以上記録されるコンテンツ管理ファイルと、コンテンツ識別子と、当該コンテンツ識別子に関連付けられているコンテンツの暗号化に用いたコンテンツ鍵を示すコンテンツ鍵情報とを関連づけた情報が記録されているコンテンツ識別子−コンテンツ鍵管理ファイルと、前記コンテンツ鍵をユーザ鍵によって暗号化した暗号化コンテンツ鍵を含むコンテンツ鍵データを記録するための複数のデータ領域を有する一つ以上のコンテンツ鍵管理ファイルと、暗号化コンテンツ鍵を暗号化したユーザ鍵が格納されているユーザ鍵管理ファイルを示す情報および当該ユーザ鍵管理ファイル中のユーザ鍵の記録位置を示す情報が記録されたユーザ鍵記録位置情報が一つ以上記録されているユーザ鍵記録位置情報管理ファイルと、前記コンテンツ識別子−コンテンツ鍵管理ファイルに記録されているコンテンツ鍵情報に対して、当該コンテンツ鍵情報が示すコンテンツ鍵を暗号化した暗号化コンテンツ鍵を含むコンテンツ鍵データが記録されているコンテンツ鍵管理ファイルを示す情報および当該コンテンツ鍵管理ファイル中の当該コンテンツ鍵データが記録されているデータ領域を示す情報が記録されるコンテンツ鍵記録位置情報、並びに当該コンテンツ鍵情報が示すコンテンツ鍵の暗号化に用いたユーザ鍵に対応するユーザ鍵記録位置情報の前記ユーザ鍵記録位置情報管理ファイル中の記録位置を示すユーザ鍵記録位置ポインタを関連づけたコンテンツ鍵リンク情報を複数有し、各コンテンツ鍵リンク情報には連続する番号が割り当てられているコンテンツ鍵管理情報ファイルとが格納されるユーザデータ領域、
ユーザ鍵と前記複数のデータ領域に記録されているデータのハッシュ値とが記録されているユーザ鍵管理ファイルが一つ以上格納される保護領域、
前記ユーザデータ領域に格納されるファイルをセクタ単位で管理するためのファイル管理情報が記録されている管理領域であって、前記ファイル管理情報には前記セクタ毎に保護を示す情報が記録可能な管理領域、および
認証情報が記録されているシステム領域を有する不揮発性メモリと、
ホストから前記ファイル管理情報に保護を示す情報が記録されているセクタの読み出しを命令された場合に、当該ホストから入力された情報と前記認証情報とを用いて認証処理を実行し、前記認証処理が成功した場合に前記読み出し命令に対する処理を許可する手段とを具備し、
前記コンテンツ保護方法は、
ユーザが保護を指定したコンテンツに保護を設定するために、前記ファイル管理情報の前記ユーザが指定したコンテンツを示すコンテンツ識別子が記録されているコンテンツ鍵管理情報ファイルが記録されているセクタに対して保護を示す情報を記録する、或いは前記ファイル管理情報の前記ユーザが指定したコンテンツを暗号化したコンテンツ鍵を暗号化した暗号化コンテンツ鍵が記録されているコンテンツ鍵管理ファイルが記録されているセクタの少なくとも一部に対して保護を示す情報を記録する
ことを特徴とするコンテンツ保護方法。
【請求項8】
前記コンテンツ鍵管理情報ファイル内に前記保護が指定されたコンテンツに対応するコンテンツ鍵リンク情報と前記保護が指定されていないコンテンツに対応するコンテンツ鍵リンク情報とが混在する場合、
前記コンテンツ鍵管理情報ファイルから前記保護が指定されたコンテンツに対応するコンテンツ鍵リンク情報を含むコンテンツ鍵管理情報ファイルと前記保護が指定されていないコンテンツに対応するコンテンツ鍵リンク情報を含むコンテンツ鍵管理情報ファイルとをそれぞれ再生成し、
前記ファイル管理情報中の前記保護が指定されたコンテンツに対応するコンテンツ鍵リンク情報を含む前記新たに生成されたコンテンツ鍵管理情報ファイルが記録されているセクタに対して保護を示す情報を記録することを特徴とする請求項7に記載のコンテンツ保護方法。
【請求項9】
前記コンテンツ鍵管理ファイルにおいて一つのセクタは複数のデータ領域を有し、
前記コンテンツ鍵管理ファイル内の一つのセクタ内に前記保護が指定されたコンテンツに対応するコンテンツ鍵データが記録されているデータ領域と前記ハッシュ値または前記保護が指定されていないコンテンツに対応するコンテンツ鍵データが記録されているデータ領域とが混在する場合、前記混在するセクタから前記保護が指定されたコンテンツに対応するコンテンツ鍵データを抽出し、前記コンテンツ鍵管理ファイル内の一つのセクタ内に前記保護が指定されたコンテンツに対応するコンテンツ鍵データだけが記録されるように前記抽出したコンテンツ鍵データを移動させ、
前記ファイル管理情報中の前記保護が指定されたコンテンツに対応するコンテンツ鍵データを含むセクタに対して保護を示す情報を記録し、前記コンテンツ鍵データの移動に応じて前記コンテンツ鍵管理情報ファイル内のコンテンツ鍵リンク情報を書き換える
ことを特徴とする請求項7に記載のコンテンツ保護方法。
【請求項10】
前記コンテンツ鍵データが記録されていないセクタ内に前記抽出したコンテンツ鍵データを移動させることを特徴とする請求項9に記載のコンテンツ保護方法。
【請求項11】
前記コンテンツ鍵管理ファイル内のデータ領域に記録されているデータのハッシュ値を演算し、演算されたハッシュ値によって前記抽出したコンテンツ鍵データを移動させることを特徴とする請求項9又は請求項10に記載のコンテンツ保護方法。
【請求項12】
前記ファイル管理情報の前記ユーザが指定したコンテンツを暗号化したコンテンツ鍵を暗号化した暗号化コンテンツ鍵が記録されているコンテンツ鍵管理ファイルが記録されているセクタの全てに保護を示す情報を記録することを特徴とする請求項7に記載のコンテンツ保護方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2010−237480(P2010−237480A)
【公開日】平成22年10月21日(2010.10.21)
【国際特許分類】
【出願番号】特願2009−85881(P2009−85881)
【出願日】平成21年3月31日(2009.3.31)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】