JP4192499B2 - 情報処理装置、情報処理方法、およびコンテンツ入出力処理システム、コンテンツ入出力処理方法、並びにコンピュータ・プログラム - Google Patents

情報処理装置、情報処理方法、およびコンテンツ入出力処理システム、コンテンツ入出力処理方法、並びにコンピュータ・プログラム Download PDF

Info

Publication number
JP4192499B2
JP4192499B2 JP2002149266A JP2002149266A JP4192499B2 JP 4192499 B2 JP4192499 B2 JP 4192499B2 JP 2002149266 A JP2002149266 A JP 2002149266A JP 2002149266 A JP2002149266 A JP 2002149266A JP 4192499 B2 JP4192499 B2 JP 4192499B2
Authority
JP
Japan
Prior art keywords
content
key
ekb
information
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002149266A
Other languages
English (en)
Other versions
JP2003345660A (ja
Inventor
恵子 多田
隆二 石黒
敏弥 石坂
光浩 平林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2002149266A priority Critical patent/JP4192499B2/ja
Publication of JP2003345660A publication Critical patent/JP2003345660A/ja
Application granted granted Critical
Publication of JP4192499B2 publication Critical patent/JP4192499B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、情報処理装置、情報処理方法、およびコンテンツ入出力処理システム、コンテンツ入出力処理方法、並びにコンピュータ・プログラムに関する。特に、著作権保護等により、利用制限を付加することが好ましいコンテンツの機器間の移動(ムーブ)、複製(コピー)処理において、利用制限を考慮し効率的な処理を実現可能とした情報処理装置、情報処理方法、およびコンテンツ入出力処理システム、コンテンツ入出力処理方法、並びにコンピュータ・プログラムに関する。
【0002】
【従来の技術】
昨今、音楽データ、ゲームプログラム、画像データ等、様々なソフトウエアデータ(以下、これらをコンテンツ(Content)と呼ぶ)の、インターネット等のネットワーク、あるいは、メモリカード、HD、DVD、CD等の流通可能な記憶媒体を介した流通が盛んになっている。これらの流通コンテンツは、ユーザの所有するPC(Personal Computer)、記録再生器、再生専用器、あるいはゲーム機器内の記憶手段、例えばHD,フラッシュメモリを有するカード型記憶装置、CD、DVD等に格納され、再生処理が実行される。
【0003】
記録再生装置、ゲーム機器、PC等の情報機器には、コンテンツをネットワークから受信するためのインタフェース、あるいはメモリカード、HD、DVD、CD等にアクセスするためのインタフェースを有し、コンテンツの再生に必要となる制御手段、プログラム、データのメモリ領域として使用されるRAM、ROM等を有する。
【0004】
音楽データ、画像データ、あるいはプログラム等の様々なコンテンツは、再生機器として利用される記録再生装置、ゲーム機器、PC等の情報機器本体からのユーザ指示、あるいは接続された入力手段を介したユーザの指示により、例えば内蔵、あるいは着脱自在の記憶媒体から呼び出され、情報機器本体、あるいは接続されたディスプレイ、スピーカ等を通じて再生される。
【0005】
ゲームプログラム、音楽データ、画像データ等、多くのソフトウエア・コンテンツは、一般的にその作成者、販売者に頒布権等が保有されている。従って、これらのコンテンツの配布に際しては、一定の利用制限、すなわち、正規なユーザに対してのみ、ソフトウェアの使用を許諾し、許可のない複製等が行われないようにする、すなわちセキュリティを考慮した構成をとるのが一般的となっている。
【0006】
特に、近年においては、情報をデジタル的に記録する記録装置や記憶媒体が普及しつつある。このようなデジタル記録装置および記憶媒体によれば、例えば画像や音声を劣化させることなく記録、再生を繰り返すことができる。このようにデジタルデータは画質や音質を維持したまま何度もコピーを繰り返し実行することができるため、コピーが違法に行われた記憶媒体が市場に流通することになると、音楽、映画等各種コンテンツの著作権者、あるいは正当な販売権者等の利益が害されることになる。昨今では、このようなデジタルデータの不正なコピーを防ぐため、デジタル記録装置および記憶媒体に違法なコピーを防止するための様々な処理構成が実現または提案されている。
【0007】
例えば、音楽配信技術における各種の仕様を提案しているSDMI(Secure Digital music Initiative)では、ポータブルプレーヤにおける著作権保護機能の規格を提案している。著作権保護機能の実現形態としては、コンテンツのコピー数の制限、コンテンツの利用期間の制限など様々である。
【0008】
【発明が解決しようとする課題】
フラッシュメモリ、カード型HD、メモリカードなど小型の記憶媒体を適用してオーディオデータやビデオデータ等のコンテンツを記録再生するシステムでは、例えばDVD、CD等の記憶媒体から音楽等のコンテンツを小型の記憶媒体にコピーして、小型記憶媒体を装着したポータブルデバイスにおいてコピーコンテンツを再生するといった使用形態がある。また、ネットワークから配信されるコンテンツをパーソナルコンピュータに内蔵されるハードディスク、DVD、CD等の大容量記憶媒体に一旦蓄積し、その後、パーソナルコンピュータからメモリカードあるいは携帯型の小型ハードディスク(HD)にコンテンツを移動して、メモリカード、HDを装着可能なポータブルデバイスでコンテンツを再生する形態、すなわちPCをコンテンツのパーソナルサーバとして使用する形態も多く行われつつある。
【0009】
CD等の記憶媒体からのコンテンツや、インターネット等の通信を介して得たコンテンツを一旦ハードディスク、DVD、CD等の大容量記憶媒体に保存し、これらの記憶媒体からメモリカードにコンテンツをコピー又はムーブする。そしてメモリカード側でコンテンツの再生を行うようなコンテンツ利用が無秩序に行われることはコンテンツの著作権上問題がある。なおムーブ、すなわちコンテンツの移動とは、コンテンツを例えば大容量記憶媒体からメモリカードにコピー記録した後に、そのコピー元となる記憶媒体(HD、DVD、CD等)からコンテンツを消去することで実現される動作形態である。
【0010】
著作権保護の観点から、ある程度コピーやムーブが制限されるようにする必要がある。その一方で、完全にコピー/ムーブを禁止してしまうことは、上記のようなPCからポータブルメディアにコンテンツを移動して外でコンテンツの再生を楽しむといったコンテンツ利用を阻むことになり、適切ではない。従って、著作権保護を実現した上で、ユーザーの私的コピーの権利を維持できるような、適切なコピー/ムーブ管理を実現することが求められている。
【0011】
PCからポータブルデバイスへのコンテンツ転送処理、利用処理に際しては、コンテンツに対応して設定される利用条件によって許可された範囲で利用されることが好ましい。例えば利用期間、利用回数制限を設定し、コンテンツ利用に応じたステータスを記録して、ポータブルデバイス、PC等、それぞれの機器で利用条件の範囲内でコンテンツの利用が行なわれるべきである。
【0012】
PC等のように大容量記憶媒体を持ち、処理能力の高いプロセッサを有する機器においては、このようなコンテンツ利用条件情報に基づくコンテンツ利用可否判定のための処理負荷あるいはコンテンツ利用条件情報の記憶処理は、何ら問題がなく実行可能であるが、記憶容量が小さく、CPU能力の低いポータブルデバイス等の端末装置またはコンテンツ記憶装置においては、PC等と同等の処理および情報記憶を行なうことは、必ずしも容易ではない。
【0013】
コンテンツと、コンテンツに対応する利用権情報を別々に配布するシステムにおいては、ポータブルデバイス等の端末装置またはコンテンツ記憶装置において、両者の対応の正当性を検証するマッチング処理が必要となる。この処理は負荷が大きく、ポータブルデバイス等の端末装置において実行することは困難である。コンテンツを処理能力の低いポータブルデバイス等の端末装置で、コンテンツに対応する利用権データを探し出し、そのデータの正当性を検証した上で、そのコンテンツの利用を許可する処理を実行することは、ポータブルデバイス等の端末装置の有する限られたリソースを適用して実行することには困難性があった。
【0014】
本発明はこのような状況に鑑みてなされたものであり、データ記憶容量が小さくまたプロセッサ等の処理能力の低いポータブルデバイス等の情報処理装置においても、コンテンツに対応して設定されたコンテンツ利用条件に従ったコンテンツの利用を可能として、コンテンツの不正利用を防止可能とした情報処理装置、情報処理方法、およびコンテンツ入出力処理システム、コンテンツ入出力処理方法、並びにコンピュータ・プログラムを提供することを目的とするものである。
【0015】
【課題を解決するための手段】
本発明の第1の側面は、
コンテンツ再生処理を実行する情報処理装置であり、
暗号化コンテンツを格納するとともに、コンテンツ利用条件情報を含むインデックスファイルを記憶した記憶手段と、
前記インデックスファイル中のコンテンツ利用条件情報に基づいてコンテンツ利用可否を判定し、コンテンツ利用可の判定に基づいて、暗号化コンテンツの復号に適用するコンテンツキーKc取得処理を実行する制御手段と、
を有し、
前記コンテンツ利用条件情報は、
有効化キーブロック(EKB)配信ツリー構成におけるリーフ識別子としてのリーフIDと、
コンテンツ識別子としてのコンテンツIDと、
コンテンツの利用条件情報と、
コンテンツ利用ステータス情報とを含む構成であることを特徴とする情報処理装置にある。
【0016】
さらに、本発明の情報処理装置の一実施態様において、前記インデックスファイルには、少なくとも前記コンテンツ利用条件情報に基づいて生成された改竄検証値としてのメッセージ認証符号(MAC)を含み、前記制御手段は、前記MACと、前記コンテンツ利用条件情報に基づいて算出したMACとの比較に基づいて、前記コンテンツ利用条件情報の改竄の有無を判定し、改竄無しの判定を条件として、前記コンテンツキー取得処理を実行する構成を有することを特徴とする。
【0018】
さらに、本発明の情報処理装置の一実施態様において、前記暗号化コンテンツは、コンテンツキーKcにより暗号化されたコンテンツであり、前記コンテンツキーKcは、有効化キーブロック(EKB)配信ツリー構成を適用して提供される有効化キーブロック(EKB)の復号により取得可能なキーの適用によってのみ取得可能なキーであり、前記制御手段は、前記有効化キーブロック(EKB)の復号処理によるコンテンツキー取得処理を実行する構成であることを特徴とする。
【0019】
さらに、本発明の情報処理装置の一実施態様において、前記コンテンツ利用条件情報は、コンテンツの利用可能期間、利用可能回数を含む構成であることを特徴とする。
【0020】
さらに、本発明の情報処理装置の一実施態様において、前記インデックスファイルは、コンテンツに対応する属性情報を含むモバイルクイックタイムフォーマットに従ったデータ構成を有することを特徴とする。
【0021】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、外部のコンテンツ出力機器から前記暗号化コンテンツを含む暗号化コンテンツファィルと、前記インデックスファイルを入力し、前記制御手段は、前記暗号化コンテンツファイルと、前記インデックスファイルを前記記憶手段に格納するとともに、前記利用条件情報を含むデータに基づく改竄検証値としてのメッセージ認証符号(MAC)を前記記憶手段に格納する処理を実行する構成であることを特徴とする。
【0022】
さらに、本発明の情報処理装置の一実施態様において、前記制御手段は、前記利用条件情報を含むデータに基づく改竄検証値としてのメッセージ認証符号(MAC)を、特定のアクセス許可プログラムに従ってアクセス可能な前記記憶手段のリードインエリアに書き込む処理を実行する構成であることを特徴とする。
【0023】
さらに、本発明の情報処理装置の一実施態様において、前記制御手段は、前記利用条件情報を含むデータに基づく改竄検証値としてのメッセージ認証符号(MAC)と、コンテンツの復号処理に適用するコンテンツキーKcの生成に要するサブキーKsubを対応付けて、特定のアクセス許可プログラムに従ってアクセス可能な前記記憶手段のリードインエリアに書き込む処理を実行する構成であることを特徴とする。
【0024】
さらに、本発明の情報処理装置の一実施態様において、前記制御手段は、コンテンツをコンテンツキーKcで暗号化した暗号化コンテンツE(Kc,Content)と、有効化キーブロック(EKB)配信ツリー構成を適用して提供される有効化キーブロック(EKB)の復号により取得可能なキーKrootによって、コンテンツID(CID)と、前記コンテンツキーKcの生成に要するメインキーKcmとを暗号化したデータE(Kroot,CID+Kcm)と、前記有効化キーブロック(EKB)と、を含む暗号化コンテンツファイルを前記記憶手段に格納する処理を実行する構成であることを特徴とする。
【0025】
さらに、本発明の第の側面は、
情報処理装置においてコンテンツ再生処理を実行する情報処理方法であり、
コンテンツ利用条件情報を含むインデックスファイル中のコンテンツ利用条件情報に基づいてコンテンツ利用可否を判定する判定処理ステップと、
コンテンツ利用可の判定に基づいて、暗号化コンテンツの復号に適用するコンテンツキーKc取得処理を実行するコンテンツキー取得処理ステップと、
前記コンテンツキーKcに基づく暗号化コンテンツの復号を実行する復号処理ステップを有し、
前記コンテンツ利用条件情報は、
有効化キーブロック(EKB)配信ツリー構成におけるリーフ識別子としてのリーフIDと、
コンテンツ識別子としてのコンテンツIDと、
コンテンツの利用条件情報と、
コンテンツ利用ステータス情報とを含む構成であることを特徴とする情報処理方法にある。
【0026】
さらに、本発明の情報処理方法の一実施態様において、前記インデックスファイルには、少なくとも前記コンテンツ利用条件情報に基づいて生成された改竄検証値としてのメッセージ認証符号(MAC)を含み、前記情報処理方法は、さらに、前記MACと、前記コンテンツ利用条件情報に基づいて算出したMACとの比較に基づいて、前記コンテンツ利用条件情報の改竄の有無を判定するステップを有し、前記コンテンツキー取得処理ステップは、前記コンテンツ利用条件情報の改竄無しの判定を条件として実行することを特徴とする。
【0028】
さらに、本発明の情報処理方法の一実施態様において、前記暗号化コンテンツは、コンテンツキーKcにより暗号化されたコンテンツであり、前記コンテンツキーKcは、有効化キーブロック(EKB)配信ツリー構成を適用して提供される有効化キーブロック(EKB)の復号により取得可能なキーの適用によってのみ取得可能なキーであり、前記コンテンツキー取得処理ステップは、前記有効化キーブロック(EKB)の復号処理によるコンテンツキー取得処理を実行する構成であることを特徴とする。
【0029】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、外部のコンテンツ出力機器から前記暗号化コンテンツを含む暗号化コンテンツファイルと、前記インデックスファイルを入力するステップと、前記暗号化コンテンツファイルと、前記インデックスファイルを前記記憶手段に格納するとともに、前記利用条件情報を含むデータに基づく改竄検証値としてのメッセージ認証符号(MAC)を前記記憶手段に格納する処理を実行するステップと、を有することを特徴とする。
【0030】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理装置は、さらに、前記利用条件情報を含むデータに基づく改竄検証値としてのメッセージ認証符号(MAC)を、特定のアクセス許可プログラムに従ってアクセス可能な前記記憶手段のリードインエリアに書き込む処理を実行することを特徴とする。
【0031】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理装置は、さらに、前記利用条件情報を含むデータに基づく改竄検証値としてのメッセージ認証符号(MAC)と、コンテンツの復号処理に適用するコンテンツキーKcの生成に要するサブキーKsubを対応付けて、特定のアクセス許可プログラムに従ってアクセス可能な前記記憶手段のリードインエリアに書き込む処理を実行することを特徴とする。
【0032】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理装置は、さらに、コンテンツをコンテンツキーKcで暗号化した暗号化コンテンツE(Kc,Content)と、有効化キーブロック(EKB)配信ツリー構成を適用して提供される有効化キーブロック(EKB)の復号により取得可能なキーKrootによって、コンテンツID(CID)と、前記コンテンツキーKcの生成に要するメインキーKcmとを暗号化したデータE(Kroot,CID+Kcm)と、前記有効化キーブロック(EKB)と、を含む暗号化コンテンツファイルを前記記憶手段に格納する処理を実行することを特徴とする。
【0033】
さらに、本発明の第の側面は、
情報処理装置において、コンテンツ再生処理を実行する情報処理を実行せしめるコンピュータ・プログラムであって、
コンテンツ利用条件情報を含むインデックスファイル中のコンテンツ利用条件情報に基づいてコンテンツ利用可否を判定する判定処理ステップと、
コンテンツ利用可の判定に基づいて、暗号化コンテンツの復号に適用するコンテンツキーKc取得処理を実行するコンテンツキー取得処理ステップと、
前記コンテンツキーKcに基づく暗号化コンテンツの復号を実行する復号処理ステップを有し、
前記コンテンツ利用条件情報は、
有効化キーブロック(EKB)配信ツリー構成におけるリーフ識別子としてのリーフIDと、
コンテンツ識別子としてのコンテンツIDと、
コンテンツの利用条件情報と、
コンテンツ利用ステータス情報とを含む構成であることを特徴とするコンピュータ・プログラムにある。
【0034】
【作用】
本発明は、コンテンツ索引データとしてのインデックスファイルにコンテンツ利用条件情報を含む構成としたので、少ない記憶容量を持ち、プロセッサ等の処理能力の低いポータブルデバイスにおいても、インデックスファイルのコンテンツ利用条件情報を適用した正当なコンテンツ利用が可能となる。
【0035】
さらに、本発明の構成では、インデックスファイル中のコンテンツ利用条件情報に基づいてコンテンツ利用可否を判定し、コンテンツ利用可の判定に基づいて、暗号化コンテンツの復号に適用するコンテンツキーKc取得処理を実行する構成としたので、利用条件に基づくコンテンツ利用が認められた場合にのみコンテンツキー取得が可能となるので、厳格なコンテンツ利用条件の遵守が可能となる。
【0036】
さらに、本発明では、インデックスファイルにコンテンツ利用条件情報に基づいて生成された改竄検証値としてのメッセージ認証符号(MAC)を含み、MACと、コンテンツ利用条件情報に基づいて算出したMACとの比較に基づいて、コンテンツ利用条件情報の改竄の有無を判定し、改竄無しの判定を条件として、コンテンツキー取得処理を実行する構成としたので、利用条件情報の改竄に基づく不正なコンテンツ利用が防止される。
【0037】
さらに、本発明では、コンテンツキーKcは、有効化キーブロック(EKB)配信ツリー構成を適用して提供される有効化キーブロック(EKB)の復号により取得可能なキーの適用によってのみ取得可能なキーとして設定されるので、厳格なコンテンツ利用権限の判定処理に基づくコンテンツ利用が可能となる。
【0038】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、CDやFD、MOなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【0039】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【0040】
【発明の実施の形態】
[システム概要]
図1は、本発明の適用可能なコンテンツ管理システムの概要を説明する図である。コンテンツの利用を行なうユーザデバイスには、PC31、各種のポータブルデバイス32等の情報処理装置が含まれる。コンテンツは、暗号化コンテンツ51としてサービスプロバイダ12からユーザデバイス30に提供される。さらに、サービスプロバイダ12からユーザデバイス30に対しては、コンテンツに対応するコンテンツ利用権情報52が提供され、PC31、ポータブルデバイス32等のユーザデバイス30では、利用権情報52に従って配布された暗号化コンテンツを復号して利用する。
【0041】
オリジナルのコンテンツは、コンテンツプロバイダ11から、コンテンツ利用条件情報とともに、サービスプロバイダ12に提供される。キー管理センター13は、有効化キーブロック(EKB:Enabling Key Block)、デバイス・ノード・キー(DNK:Device Node Key)等の鍵データを提供する。有効化キーブロック(EKB:Enabling Key Block)、デバイス・ノード・キー(DNK:Device Node Key)は、コンテンツの利用を正当なコンテンツ利用権を有するユーザデバイスにおいてのみ暗号化コンテンツを復号して利用可能とするためのコンテンツ利用に必要となる暗号鍵を取得するための鍵データである。EKB,DNKについては、後段で説明する。
【0042】
キー管理センター13は、有効化キーブロック(EKB:Enabling Key Block)を適用したユーザデバイス30に対するキーの発行処理を実行するキー発行センター(KDC:Key Distribute Center)、およびキー配信ツリー管理者としてのトップレベル・カテゴリ・エンティテイ(TLCE:Top Level Category Entity)を含む構成である。
【0043】
サービスプロバイダ12は、コンテンツプロバイタ11から提供されるコンテンツを暗号化して、暗号化コンテンツ51を生成して、ユーザデバイス30に提供する。さらに、コンテンツプロバイダから提供されるコンテンツ利用条件情報に基づいて利用権情報52を生成してユーザデバイス30に提供する。さらに、キー管理センター13の提供するデバイスノードキー(DNK:Device Node Key)、有効化キーブロック(EKB:Enabling Key Block)に基づいてサービスデータ53を生成してユーザデバイス30に提供する。サービスデータは、暗号化コンテンツの復号処理の際に必要となるサービス・デバイスノードキー(SDNK)を持つ有効化キーブロック(EKB)を含む。
【0044】
暗号化コンテンツ51、利用権情報52、およびサービスデータ53の詳細構成、およびこれらのデータの利用処理の詳細については、後段で説明する。
【0045】
なお、コンテンツの利用条件には、利用期間の限定条件、コピーの回数制限、さらにコンテンツを同時に利用することができるポータブルメディア(PM:Portable Media)の数(いわゆるチェックアウト(Check-out)数に対応)の制限等がある。
【0046】
例えば、PC31のハードディスクに格納した各コンテンツの各々に対応させて、そのコンテンツを同時に利用することができるポータブルメディア(PM:Portable Media)の数として最大チェックアウト数が設定可能である。ポータブルメディア(PM:Portable Media)は例えばフラッシュメモリ、または小型HD、光ディスク、光磁気ディスク、MD(Mini Disk)等、ポータブルデバイス32において利用可能な記憶媒体である。
【0047】
パーソナルコンピュータ(PC)31は、コンテンツを格納するポータブルメディアにPC31のハードディスクからコンテンツを転送(チェックアウト)し、ポータブルメディアを格納したポータブルデバイス32においてコンテンツの利用(再生)が可能となる。この際、コンテンツに対応する利用条件情報もポータブルデバイス32において適用可能とする構成が必要となる。
【0048】
フラッシュメモリ、または小型HD、光ディスク、光磁気ディスク等を装着したポータブルデバイス32は、パーソナルコンピュータ31から供給されたコンテンツを、利用条件情報を含む付帯データと共に、フラッシュメモリ、または小型HD、光ディスク、光磁気ディスク等の記憶媒体に記憶する。ポータブルデバイス32は、コンテンツの付帯データとしての利用条件に従って、記憶媒体に格納したコンテンツを再生し、ヘッドフォン、スピーカ等の出力手段を介して出力する。
【0049】
パーソナルコンピュータ31、およびコンテンツ格納可能なフラッシュメモリ、または小型HD、光ディスク、光磁気ディスク等のポータブルメディアを装着可能なポータブルデバイス32の構成例について、図2、図3を用いて説明する。
【0050】
まず、図2を用いてパーソナルコンピュータ31の構成について説明する。CPU(Central Processing Unit)101は、各種アプリケーションプログラム、OS(Operating System)を実際に実行する。さらに、コンテンツの暗号化、復号処理として、例えばDES(Data Encryption Standard)の暗号化アルゴリズムを適用した暗号処理、MAC生成、検証処理等を実行し、接続した情報記録処理装置(ポータブルデバイス)との間で実行されるコンテンツ入出力時の認証およびセッションキー共有処理、コンテンツ入出力処理制御等を行なう制御手段として機能する。
【0051】
ROM(Read Only Memory)102は、CPU101が使用するプログラムや演算用のパラメータのうちの固定データ等を格納する。上述したポータブルデバイスとの間で実行されるコンテンツ入出力時のデータ処理プログラム等が格納される。RAM(Random Access Memory)103は、CPU101の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはCPUバスなどから構成されるホストバス104により相互に接続されている。
【0052】
ホストバス104は、ブリッジ105を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス106に接続されている。
【0053】
キーボード108は、CPU101に各種の指令を入力するとき、使用者により操作される。ポインティングデバイス109は、ディスプレイ110の画面上のポイントの指示や選択を行うとき、使用者により操作される。ディスプレイ110は、液晶表示装置またはCRT(Cathode Ray Tube)などから成り、各種情報をテキストやイメージで表示する。HDD(Hard Disk Drive)111は、ハードディスクを駆動し、CPU101によって実行するプログラムや情報を記録または再生させる。
【0054】
ドライブ112は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記録媒体121に記録されているデータまたはプログラムを読み出して、そのデータまたはプログラムを、インタフェース107、外部バス106、ブリッジ105、およびホストバス104を介して接続されているRAM103に供給する。
【0055】
PD(ポータブルデバイス)接続ポート114は、ポータブルデバイスを接続するポートであり、USB,IEEE1394等の接続によりポータブルデバイスが接続される。PD(ポータブルデバイス)接続ポート114は、インタフェース107、および外部バス106、ブリッジ105、ホストバス104等を介して、HDD111、CPU101、またはRAM103から供給されたデータ、例えば、コンテンツまたはポータブルデバイス122のコマンドなどをポータブルデバイス122に出力する。
【0056】
音声入出力インタフェース115は、例えばIEC(Internationl Electrotechnical Commission)60958端子を有するデジタル音声入出力、あるいはアナログ音声入出力のインタフェース処理を実行し、スピーカ等の出力手段に接続され、入出力インタフェース115から供給された音声信号を基に、コンテンツに対応する所定の音声を出力する。
【0057】
これらのキーボード108乃至音声入出力インタフェース115は、インタフェース107に接続されており、インタフェース107は、外部バス106、ブリッジ105、およびホストバス104を介してCPU101に接続されている。
【0058】
通信部116は、ネットワークに接続され、CPU101、またはHDD111等から供給されたデータ(例えば、登録の要求、またはコンテンツの送信要求など)を、所定の方式のパケットに格納して、ネットワーク2を介して、送信するとともに、ネットワーク2を介して、受信したパケットに格納されているデータ(例えば、認証鍵、またはコンテンツなど)をCPU101、RAM103、またはHDD111に出力する。
【0059】
次に、ポータブルメディアを利用するポータブルデバイス構成例を図3を参照して説明する。なお、コンテンツの格納記憶媒体としてのメディアは、フラッシュメモリ、または小型HD、光ディスク、光磁気ディスク等である。
【0060】
電源回路152は、供給される電源電圧を所定の電圧の内部電力に変換して、CPU153乃至表示部167に供給することにより、装置全体を駆動させる。入出力I/F157は、コンテンツの提供元となるパーソナルコンピュータ(PC)172と接続するインタフェースであり、例えばUSB,IEEE1394等の接続態様による接続を行なう。
【0061】
パーソナルコンピュータ172から転送されるデータは、例えば1パケット当たり64バイトのデータから構成され、12Mbit/secの転送レートでパーソナルコンピュータからポータブルデバイスに対して転送される。ポータブルデバイスに転送されるデータは、コンテンツおよびコンテンツの利用条件等の付帯情報から構成される。
【0062】
ポータブルデバイスが、パーソナルコンピュータからコンテンツと共にコンテンツの書き込み命令を受信した場合、ROM155からRAM154に読み出したメインプログラムを実行する制御手段としてのCPU153は、書き込み命令を受け取り、記憶媒体161、例えばフラッシュメモリ、HD,DVD,CDにコンテンツ書き込みを実行する。なお、図の例では、記憶媒体161としてフラッシュメモリ、HD,DVD,CDを示しているが、これらの記憶媒体は例であり、少なくとも1種類の記憶媒体が利用可能であればよい。
【0063】
記憶媒体161に対するデータの書き込み処理は、記憶媒体161に応じた記憶媒体コントローラまたはドライブ160を介して実行される。例えば記憶媒体161がフラッシュメモリであれば、フラッシュメモリコントローラを介して書き込みが実行され、記憶媒体161がハードディスク(HD)であれば、HDDを介して書き込みが実行される。なお、記憶媒体161、例えばフラッシュメモリ、HD,DVD,CDは、ポータブルデバイスに着脱可能なものとして構成可能である。
【0064】
ユーザによるコンテンツ再生命令が操作キーコントローラ162を介してCPU153に供給されると、制御手段としてのCPU153は、記憶媒体コントローラまたはドライブ160に記憶媒体161からのコンテンツ読み出し処理を実行させ、DSP159に転送させる。
【0065】
DSP(Digital Signal Processor)159は、記憶媒体161から転送されたコンテンツの再生処理を実行する。DSP159は、暗号化、復号化処理機能、イコライザ調整(音声信号の周波数帯域に対応した利得の調整)機能、圧縮伸長(エンコード/デコード)処理機能を有する。例えば、デジタルオーディオ信号を記憶媒体161に書き込むために高能率符号化し、また、メモリカード161から読み出されたデータを復号する。高能率符号化方法としては、例えばミニディスクで採用されているATRAC(Adaptive Transform Acoustic Coding)を改良したATRAC3等が使用される。
【0066】
ATRAC3では、サンプリング周波数=44.1kHzでサンプリングした量子化ビットが16ビットのオーディオデータを高能率符号化処理する。ATRAC3でオーディオデータを処理する時の最小のデータ単位がサウンドユニットSUである。1SUは、1024サンプル分(1024×16ビット×2チャンネル)を数百バイトに圧縮したものであり、時間にして約23m秒である。上述の高能率符号化処理により約1/10にオーディオデータが圧縮される。
【0067】
ディジタルアナログ変換回路163は、再生したコンテンツをアナログの音声信号に変換して、これを増幅回路164に供給する。増幅回路164は、音声信号を増幅して、出力部165を介して、ヘッドフォンあるいはスピーカに音声信号を供給する。
【0068】
入力I/F171からは、外部のソースからデジタル信号、またはアナログ信号を入力し、アナログ信号入力時にはA/D変換する。A/D変換は、入力される入力信号を例えばサンプリング周波数=44.1kHz、量子化ビット=16ビットのデジタルオーディオ信号へ変換する。また、外部のソースからデジタル信号は、SRC(サンプリングレートコンバータ)により、同様にサンプリング周波数が44.1kHz、量子化ビットが16ビットのデジタルオーディオ信号に変換される。
【0069】
また、CPU153は、LCDコントローラ166を制御して、表示部167に、再生モードの状態(例えば、リピート再生、イントロ再生など)、イコライザ調整(音声信号の周波数帯域に対応した利得の調整)、曲番号、演奏時間、再生、停止、早送り、早戻しなどの状態、音量および乾電池の残量等の情報を表示させる。
【0070】
なお、DSP159で実行するコンテンツの暗号化、復号処理には例えばDES(Data Encryption Standard)の暗号化アルゴリズムが適用される。コンテンツの暗号化は、コンテンツの著作権を保護するための処理であり、PCとポータブルデバイス間におけるコンテンツ転送処理、ポータブルデバイスと記憶媒体との間におけるコンテンツ転送処理において、コンテンツ暗号処理が実行される。
【0071】
例えばフラッシュメモリからなるEEPROM168には、暗号化、復号化処理に適用するキーを格納し、PCとポータブルデバイス間におけるコンテンツ転送処理、ポータブルデバイスと記憶媒体との間におけるコンテンツ転送処理における認証処理およびセッションキー共有処理、転送データ、あるいは格納データの暗号化、復号処理等において適用される。
[キー配信構成としてのツリー(木)構造について]
次に、正当なコンテンツ利用権を有するユーザデバイスにおいてのみコンテンツを利用可能とするための、ブロードキャストエンクリプション(Broadcast Encryption)方式の一態様であるツリー構成によるデバイスとキーの管理構成について説明する。
【0072】
図4の最下段に示すナンバ0〜15がコンテンツ利用を行なうユーザデバイスである。すなわち図4に示す階層ツリー(木)構造の各葉(リーフ:leaf)がそれぞれのデバイスに相当する。
【0073】
各デバイス0〜15は、製造時あるいは出荷時、あるいはその後において、図4に示す階層ツリー(木)構造における自分のリーフからルートに至るまでのノードに割り当てられた鍵(ノードキー)および各リーフのリーフキーからなるキーセット(デバイスノードキー(DNK:Device Node Key))をメモリに格納する。図4の最下段に示すK0000〜K1111が各デバイス0〜15にそれぞれ割り当てられたリーフキーであり、最上段のKR(ルートキー)から、最下段から2番目の節(ノード)に記載されたキー:KR〜K111をノードキーとする。
【0074】
図4に示すツリー構成において、例えばデバイス0はリーフキーK0000と、ノードキー:K000、K00、K0、KRを所有する。デバイス5はK0101、K010、K01、K0、KRを所有する。デバイス15は、K1111、K111、K11、K1、KRを所有する。なお、図4のツリーにはデバイスが0〜15の16個のみ記載され、ツリー構造も4段構成の均衡のとれた左右対称構成として示しているが、さらに多くのデバイスがツリー中に構成され、また、ツリーの各部において異なる段数構成を持つことが可能である。
【0075】
また、図4のツリー構造に含まれる各デバイスには、様々な記録媒体、例えば、デバイス埋め込み型あるいはデバイスに着脱自在に構成されたDVD、CD、MD、フラッシュメモリ等を使用する様々なタイプのデバイスが含まれている。さらに、様々なアプリケーションサービスが共存可能である。このような異なるデバイス、異なるアプリケーションの共存構成の上に図4に示すコンテンツあるいは鍵配布構成である階層ツリー構造が適用される。
【0076】
これらの様々なデバイス、アプリケーションが共存するシステムにおいて、例えば図4の点線で囲んだ部分、すなわちデバイス0,1,2,3を同一の記録媒体を用いる1つのグループとして設定する。例えば、この点線で囲んだグループ内に含まれるデバイスに対しては、まとめて、共通のコンテンツを暗号化してプロバイダから送付したり、各デバイス共通に使用するコンテンツキーを送付したり、あるいは各デバイスからプロバイダあるいは決済機関等にコンテンツ料金の支払データをやはり暗号化して出力するといった処理が実行される。コンテンツプロバイダ、あるいは決済処理機関等、各デバイスとのデータ送受信を行なう機関は、図4の点線で囲んだ部分、すなわちデバイス0,1,2,3を1つのグループとして一括してデータを送付する処理を実行する。このようなグループは、図4のツリー中に複数存在する。コンテンツプロバイダ、あるいは決済処理機関等、各デバイスとのデータ送受信を行なう機関は、メッセージデータ配信手段として機能する。
【0077】
なお、ノードキー、リーフキーは、ある1つの鍵管理センターによって統括して管理してもよいし、各グループに対する様々なデータ送受信を行なうプロバイダ、決済機関等のメッセージデータ配信手段によってグループごとに管理する構成としてもよい。これらのノードキー、リーフキーは例えばキーの漏洩等の場合に更新処理が実行され、この更新処理は鍵管理センター、プロバイダ、決済機関等が実行する。
【0078】
このツリー構造において、図4から明らかなように、1つのグループに含まれる3つのデバイス0,1,2,3はデバイスノードキー(DNK:Device Node Key)として共通のキーK00、K0、KRを含むデバイスノードキー(DNK:Device Node Key)を保有する。このノードキー共有構成を利用することにより、例えば共通のキーをデバイス0,1,2,3のみに提供することが可能となる。たとえば、共通に保有するノードキーK00は、デバイス0,1,2,3に共通する保有キーとなる。また、新たなキーKnewをノードキーK00で暗号化した値Enc(K00,Knew)を、ネットワークを介してあるいは記録媒体に格納してデバイス0,1,2,3に配布すれば、デバイス0,1,2,3のみが、それぞれのデバイスにおいて保有する共有ノードキーK00を用いて暗号Enc(K00,Knew)を解いて新たなキーKnewを得ることが可能となる。なお、Enc(Ka,Kb)はKbをKaによって暗号化したデータであることを示す。
【0079】
また、ある時点tにおいて、デバイス3の所有する鍵:K0011,K001,K00,K0,KRが攻撃者(ハッカー)により解析されて露呈したことが発覚した場合、それ以降、システム(デバイス0,1,2,3のグループ)で送受信されるデータを守るために、デバイス3をシステムから切り離す必要がある。そのためには、ノードキー:K001,K00,K0,KRをそれぞれ新たな鍵K(t)001,K(t)00,K(t)0,K(t)Rに更新し、デバイス0,1,2にその更新キーを伝える必要がある。ここで、K(t)aaaは、鍵Kaaaの世代(Generation):tの更新キーであることを示す。
【0080】
更新キーの配布処理ついて説明する。キーの更新は、例えば、図5(A)に示す有効化キーブロック(EKB:Enabling Key Block)と呼ばれるブロックデータによって構成されるテーブルをたとえばネットワーク、あるいは記録媒体に格納してデバイス0,1,2に供給することによって実行される。なお、有効化キーブロック(EKB)は、図4に示すようなツリー構造を構成する各リーフに対応するデバイスに新たに更新されたキーを配布するための暗号化キーによって構成される。有効化キーブロック(EKB)は、キー更新ブロック(KRB:Key Renewal Block)と呼ばれることもある。
【0081】
図5(A)に示す有効化キーブロック(EKB)には、ノードキーの更新の必要なデバイスのみが更新可能なデータ構成を持つブロックデータとして構成される。図5の例は、図4に示すツリー構造中のデバイス0,1,2において、世代tの更新ノードキーを配布することを目的として形成されたブロックデータである。図4から明らかなように、デバイス0,デバイス1は、更新ノードキーとしてK(t)00、K(t)0、K(t)Rが必要であり、デバイス2は、更新ノードキーとしてK(t)001、K(t)00、K(t)0、K(t)Rが必要である。
【0082】
図5(A)のEKBに示されるようにEKBには複数の暗号化キーが含まれる。最下段の暗号化キーは、Enc(K0010,K(t)001)である。これはデバイス2の持つリーフキーK0010によって暗号化された更新ノードキーK(t)001であり、デバイス2は、自身の持つリーフキーによってこの暗号化キーを復号し、K(t)001を得ることができる。また、復号により得たK(t)001を用いて、図5(A)の下から2段目の暗号化キーEnc(K(t)001,K(t)00)を復号可能となり、更新ノードキーK(t)00を得ることができる。以下順次、図5(A)の上から2段目の暗号化キーEnc(K(t)00,K(t)0)を復号し、更新ノードキーK(t)0、図5(A)の上から1段目の暗号化キーEnc(K(t)0,K(t)R)を復号しK(t)Rを得る。一方、デバイスK0000.K0001は、ノードキーK000は更新する対象に含まれておらず、更新ノードキーとして必要なのは、K(t)00、K(t)0、K(t)Rである。デバイスK0000.K0001は、図5(A)の上から3段目の暗号化キーEnc(K000,K(t)00)を復号しK(t)00、を取得し、以下、図5(A)の上から2段目の暗号化キーEnc(K(t)00,K(t)0)を復号し、更新ノードキーK(t)0、図5(A)の上から1段目の暗号化キーEnc(K(t)0,K(t)R)を復号しK(t)Rを得る。このようにして、デバイス0,1,2は更新した鍵K(t)Rを得ることができる。なお、図5(A)のインデックスは、復号キーとして使用するノードキー、リーフキーの絶対番地を示す。
【0083】
図4に示すツリー構造の上位段のノードキー:K(t)0,K(t)Rの更新が不要であり、ノードキーK00のみの更新処理が必要である場合には、図5(B)の有効化キーブロック(EKB)を用いることで、更新ノードキーK(t)00をデバイス0,1,2に配布することができる。
【0084】
図5(B)に示すEKBは、例えば特定のグループにおいて共有する新たなコンテンツキーを配布する場合に利用可能である。具体例として、図4に点線で示すグループ内のデバイス0,1,2,3がある記録媒体を用いており、新たな共通のコンテンツキーK(t)conが必要であるとする。このとき、デバイス0,1,2,3の共通のノードキーK00を更新したK(t)00を用いて新たな共通の更新コンテンツキー:K(t)conを暗号化したデータEnc(K(t),K(t)con)を図5(B)に示すEKBとともに配布する。この配布により、デバイス4など、その他のグループの機器においては復号されないデータとしての配布が可能となる。
【0085】
すなわち、デバイス0,1,2はEKBを処理して得たK(t)00を用いて上記暗号文を復号すれば、t時点でのキー、例えばコンテンツの暗号化復号化に適用するコンテンツキーK(t)conを得ることが可能になる。
【0086】
[EKBを使用したキーの配布]
図6に、t時点でのキー、例えばコンテンツの暗号化復号化に適用するコンテンツキーK(t)conを得る処理例として、K(t)00を用いて新たな共通のコンテンツキーK(t)conを暗号化したデータEnc(K(t)00,K(t)con)と図5(B)に示すEKBとを記録媒体を介して受領したデバイス0の処理例を示す。すなわちEKBによる暗号化メッセージデータをコンテンツキーK(t)conとした例である。
【0087】
図6に示すように、デバイス0は、記録媒体に格納されている世代:t時点のEKBと自分があらかじめ格納しているノードキーK000を用いて上述したと同様のEKB処理により、ノードキーK(t)00を生成する。さらに、復号した更新ノードキーK(t)00を用いて更新コンテンツキーK(t)conを復号して、後にそれを使用するために自分だけが持つリーフキーK0000で暗号化して格納する。
【0088】
[EKBのフォーマット]
図7に有効化キーブロック(EKB)のフォーマット例を示す。バージョン201は、有効化キーブロック(EKB)のバージョンを示す識別子である。なお、バージョンは最新のEKBを識別する機能とコンテンツとの対応関係を示す機能を持つ。デプスは、有効化キーブロック(EKB)の配布先のデバイスに対する階層ツリーの階層数を示す。データポインタ203は、有効化キーブロック(EKB)中のデータ部の位置を示すポインタであり、タグポインタ204はタグ部の位置、署名ポインタ205は署名の位置を示すポインタである。
【0089】
データ部206は、例えば更新するノードキーを暗号化したデータを格納する。例えば図6に示すような更新されたノードキーに関する各暗号化キー等を格納する。
【0090】
タグ部207は、データ部に格納された暗号化されたノードキー、リーフキーの位置関係を示すタグである。このタグの付与ルールを図8を用いて説明する。図8では、データとして先に図5(A)で説明した有効化キーブロック(EKB)を送付する例を示している。この時のデータは、図8の表(b)に示すようになる。このときの暗号化キーに含まれるトップノードのアドレスをトップノードアドレスとする。この場合は、ルートキーの更新キーK(t)Rが含まれているので、トップノードアドレスはKRとなる。このとき、例えば最上段のデータEnc(K(t)0,K(t)R)は、図8の(a)に示す階層ツリーに示す位置にある。ここで、次のデータは、Enc(K(t)00,K(t)0)であり、ツリー上では前のデータの左下の位置にある。データがある場合は、タグが0、ない場合は1が設定される。タグは{左(L)タグ,右(R)タグ}として設定される。最上段のデータEnc(K(t)0,K(t)R)の左にはデータがあるので、Lタグ=0、右にはデータがないので、Rタグ=1となる。以下、すべてのデータにタグが設定され、図8(c)に示すデータ列、およびタグ列が構成される。
【0091】
タグは、データEnc(Kxxx,Kyyy)がツリー構造のどこに位置しているのかを示すために設定されるものである。データ部に格納されるキーデータEnc(Kxxx,Kyyy)...は、単純に暗号化されたキーの羅列データに過ぎないので、上述したタグによってデータとして格納された暗号化キーのツリー上の位置を判別可能としたものである。上述したタグを用いずに、先の図5で説明した構成のように暗号化データに対応させたノード・インデックスを用いて、例えば、
0:Enc(K(t)0,K(t)root)
00:Enc(K(t)00,K(t)0)
000:Enc(K((t)000,K(T)00)
...のようなデータ構成とすることも可能であるが、このようなインデックスを用いた構成とすると冗長なデータとなりデータ量が増大し、ネットワークを介する配信等においては好ましくない。これに対し、上述したタグをキー位置を示す索引データとして用いることにより、少ないデータ量でキー位置の判別が可能となる。
【0092】
図7に戻って、EKBフォーマットについてさらに説明する。署名(Signature)208は、有効化キーブロック(EKB)を発行した例えば鍵管理センター、コンテンツプロバイダ、サービスプロバイダ、あるいは決済機関等が実行する電子署名である。EKBを受領したデバイスは署名検証によって正当な有効化キーブロック(EKB)発行者が発行した有効化キーブロック(EKB)であることを確認する。
【0093】
[ツリーのカテゴリ分類]
ノードキー等を定義している階層ツリー構造を各デバイスのカテゴリ毎に分類して効率的なキー更新処理、暗号化キー配信、データ配信を実行する構成について、以下説明する。
【0094】
図9に階層ツリー構造のカテゴリの分類の一例を示す。図9において、階層ツリー構造の最上段には、ルートキーKroot301が設定され、以下の中間段にはノードキー302が設定され、最下段には、リーフキー303が設定される。各デバイスは個々のリーフキーと、リーフキーからルートキーに至る一連のノードキー、ルートキーを保有する。
【0095】
ここで、一例として最上段から第M段目のあるノードをカテゴリノード304として設定する。すなわち第M段目のノードの各々を特定カテゴリのデバイス設定ノードとする。第M段の1つのノードを頂点として以下、M+1段以下のノード、リーフは、そのカテゴリに含まれるデバイスに関するノードおよびリーフとする。
【0096】
例えば図9の第M段目の1つのノード305にはカテゴリ[メモリステッイク(商標)]が設定され、このノード以下に連なるノード、リーフはメモリステッイクを使用した様々なデバイスを含むカテゴリ専用のノードまたはリーフとして設定される。すなわち、ノード305以下を、メモリスティックのカテゴリに定義されるデバイスの関連ノード、およびリーフの集合として定義する。
【0097】
さらに、M段から数段分下位の段をサブカテゴリノード306として設定することができる。例えば図に示すようにカテゴリ[メモリスティック]ノード305の2段下のノードに、メモリスティックを使用したデバイスのカテゴリに含まれるサブカテゴリノードとして、[再生専用器]のノードを設定する。さらに、サブカテゴリノードである再生専用器のノード306以下に、再生専用器のカテゴリに含まれる音楽再生機能付き電話のノード307が設定され、さらにその下位に、音楽再生機能付き電話のカテゴリに含まれる[PHS]ノード308と[携帯電話]ノード309を設定することができる。
【0098】
さらに、カテゴリ、サブカテゴリは、デバイスの種類のみならず、例えばあるメーカー、コンテンツプロバイダ、決済機関等が独自に管理するノード、すなわち処理単位、管轄単位、あるいは提供サービス単位等、任意の単位(これらを総称して以下、エンティティと呼ぶ)で設定することが可能である。例えば1つのカテゴリノードをゲーム機器メーカーの販売するゲーム機器XYZ専用の頂点ノードとして設定すれば、メーカーの販売するゲーム機器XYZにその頂点ノード以下の下段のノードキー、リーフキーを格納して販売することが可能となり、その後、暗号化コンテンツの配信、あるいは各種キーの配信、更新処理を、その頂点ノードキー以下のノードキー、リーフキーによって構成される有効化キーブロック(EKB)を生成して配信し、頂点ノード以下のデバイスに対してのみ利用可能なデータが配信可能となる。
【0099】
このように、1つのノードを頂点として、以下のノードをその頂点ノードに定義されたカテゴリ、あるいはサブカテゴリの関連ノードとして設定する構成とすることにより、カテゴリ段、あるいはサブカテゴリ段の1つの頂点ノードを管理するメーカー、コンテンツプロバイダ等がそのノードを頂点とする有効化キーブロック(EKB)を独自に生成して、頂点ノード以下に属するデバイスに配信する構成が可能となり、頂点ノードに属さない他のカテゴリのノードに属するデバイスには全く影響を及ぼさずにキー更新を実行することができる。
【0100】
本発明のシステムにおいては、図10に示されるように、ツリー構成のシステムで、デバイスのキーとコンテンツのキーの管理が行われる。図10の例では、8+24+32段のノードがツリー構造とされ、ルートノードから下位の8段までの各ノードにカテゴリが対応される。ここにおけるカテゴリとは、例えばメモリスティックなどの半導体メモリを使用する機器のカテゴリ、デジタル放送を受信する機器のカテゴリといったカテゴリを意味する。そして、このカテゴリノードのうちの1つのノードに、ライセンスを管理するシステムとして本システム(Tシステムと称する)が対応する。
【0101】
すなわち、このTシステムのノードよりさらに下の階層の24段のノードに対応するキーにより、サービスプロバイダ、あるいはサービスプロバイダが提供するサービスが対応される。この例の場合、これにより、224(約16メガ)のサービスプロバイダあるいはサービスを規定することができる。さらに、最も下側の32段の階層により、232(約4ギガ)のユーザ(あるいはユーザデバイス)を規定することができる。最下段の32段のノードからTシステムのノードまでのパス上の各ノードに対応するキーが、DNK(Device Node Key)を構成し、最下段のリーフに対応するIDがリーフIDとされる。
【0102】
例えば、コンテンツを暗号化したコンテンツキーは更新されたルートキーKR’によって暗号化され、上位の階層の更新ノードキーは、その直近の下位の階層の更新ノードキーを用いて暗号化され、EKB内に配置される。EKBにおける末端から1つ上の段の更新ノードキーはEKBの末端のノードキーあるいはリーフキーによって暗号化され、EKB内に配置される。
【0103】
ユーザデバイスは、サービスデータに記述されているDNKのいずれかのキーを用いて、コンテンツデータとともに配布されるEKB内に記述されている直近の上位の階層の更新ノードキーを復号し、復号して得たキーを用いて、EKB内に記述されているさらにその上の階層の更新ノードキーを復号する。以上の処理を順次行うことで、ユーザデバイスは、更新ルートキーKR’を得ることができる。
【0104】
[複数のEKBを適用したコンテンツ処理]
上述したように、ツリーのカテゴリ分類により、1つのノードを頂点として、以下のノードをその頂点ノードに定義されたカテゴリ、あるいはサブカテゴリの関連ノードとして設定した構成が可能となり、カテゴリ段、あるいはサブカテゴリ段の1つの頂点ノードを管理するメーカー、サービスプロバイダ等がそのノードを頂点とする有効化キーブロック(EKB)を独自に生成して、頂点ノード以下に属するデバイスに配信する構成が実現される。
【0105】
以下、上述のツリー構成のデバイス管理によるEKB配信システムを適用して、複数のカテゴリに基づくEKB配信構成を採用したコンテンツ配信および利用形態について説明する。
【0106】
図11を参照して2つのカテゴリについて説明する。図11に示すように、ルートノード350の下段にTシステムノード351を設定し、その下段にTサービスノード352、およびTハードノード353を設定する。Tハードノード353を頂点としたツリーは、ユーザデバイス機器自体をリーフ355として設定し、機器を対象として発行するハード対応EKB[EKB(H)]を配信するカテゴリツリーである。一方、Tサービスノード352を頂点としたツリーは、ユーザデバイス機器に提供するサービスに対応して発行するサービス対応EKB[EKB(S)]を配信するカテゴリツリーである。
【0107】
ハード対応EKB[EKB(H)]、サービス対応EKB[EKB(S)]とも、それぞれ正当な権限を持つデバイスに対して与えられるDNK(Device Node Key)すなわち、リーフからTシステムのノードまでのパス上の各ノードに対応するキーを有することで、各EKBの復号が可能となる。
【0108】
図12を参照して、ハード対応EKB[EKB(H)]、サービス対応EKB[EKB(S)]を適用したコンテンツの復号処理に基づくコンテンツ利用処理シーケンスを説明する。
【0109】
図12に示すサービスデータ401、暗号化コンテンツファイル402、および利用権情報403は、図1に示すサービスデータ53、暗号化コンテンツ51、利用権情報52に対応し、ユーザデバイスがサービスプロバイダを介して受領するデータである。サービスデータ401は、リーフ識別子としてのリーフID、適用するEKBのバージョン、さらに、サービス対応EKB[EKB(S)]の復号に必要なサービス対応デバイスノードキー(SDNK)を、ハード対応カテゴリツリーに対応して設定されるルートキーKroot’によって暗号化したデータE(Kroot’,SDNK)を格納している。
【0110】
暗号化コンテンツファイル402は、サービス対応のカテゴリツリーに対応して設定されるルートキーKrootを格納したサービス対応EKB[EKB(S)]、ルートキーKrootでコンテンツID(CID)と、コンテンツ暗号処理および復号処理に適用するコンテンツキー(Kc)とを暗号化したデータE(Kroot,CID+Kc)、および、コンテンツ(Content)をコンテンツキーKcで暗号化したデータE(Kc,Contet)を含むファイルである。
【0111】
また、利用権情報403は、リーフIDと、コンテンツの利用条件情報を格納したデータである。コンテンツの利用条件情報には、コンテンツに対応して設定される利用期間、利用回数、コピー制限等の様々な利用条件が含まれる。利用権情報403を受領したユーザデバイスは、利用権情報をコンテンツに対応するセキュリティ情報として格納するか、あるいは、コンテンツの索引データとしてのAVインデックスファイル内に格納する。
【0112】
例えば、PC等の大容量の記憶手段を有し、プロセッサ等の処理能力が高いユーザデバイスにおいては、利用権情報をコンテンツに対応するセキュリティ情報として格納することが可能であり、すべての利用条件情報を格納して、コンテンツ利用の際にすべての利用条件情報を参照した処理を行なうことが好ましい。一方、大容量の記憶手段を持たず、またプロセッサ等の処理能力が低いポータブルデバイス(PD)等のユーザデバイスにおいては、選択された情報からなる利用権情報403をコンテンツの索引データとしてのAVインデックスファイル内に格納して、コンテンツ利用の際にAVインデックスファイル内の利用条件情報を参照した処理を行なう等の処理が可能である。
【0113】
AVインデックスファイルの構成例を図13に示す。図13に示すAVインデックスファイル構成は、Mobile Quick TimeのAVインデックスファイルに利用条件情報を追加した構成を持つ。
【0114】
AVインデックスファイル421は、ヘッダ情報422、インデックスファイル情報423によって構成され、インデックスファイル情報423には、それぞれのコンテンツに対応する情報としてプロパティ、タイトル、サムネイル、イントロ(音楽コンテンツの場合)等が含まれ、さらに、コンテンツに対応する利用条件情報425を含む構成を持つ。実コンテンツとしてのAVファイル424はそれぞれのインデックス情報に関連付けられて格納される。
【0115】
利用条件情報の構成例を図14に示す。利用条件情報は、コンテンツを利用するユーザ、およびコンテンツ単位で設定され、それぞれを識別可能なリーフID451,コンテンツID452を含み、コンテンツ利用期間情報、利用(再生)回数情報、コピー制限情報、他の機器への移動、他の機器からの入力等に関する様々な利用条件を格納した利用条件フールド453、さらに、コンテンツ利用に応じた利用状態を記録するフィールドとしての利用ステータスフィールド454、さらにこれらの各情報の改竄防止のための検証値としてのメッセージ認証符号(MAC:Message authentication Code)455を含む構成を持つ。
【0116】
メッセージ認証符号(MAC:Message authentication Code)455は、コンテンツ利用条件情報を含むデータに基づいて、データの改竄検証用のデータとして生成されるものである。DES暗号処理構成を用いたMAC値生成例を図15に示す。図15の構成に示すように対象となるメッセージを8バイト単位に分割し、(以下、分割されたメッセージをM1、M2、・・・、MNとする)、まず、初期値(Initial Value(以下、IVとする))とM1を排他的論理和する(その結果をI1とする)。次に、I1をDES暗号化部に入れ、鍵(以下、K1とする)を用いて暗号化する(出力をE1とする)。続けて、E1およびM2を排他的論理和し、その出力I2をDES暗号化部へ入れ、鍵K1を用いて暗号化する(出力E2)。以下、これを繰り返し、全てのメッセージに対して暗号化処理を施す。最後に出てきたENがメッセージ認証符号(MAC(Message Authentication Code))となる。
【0117】
MAC値は、その生成元データが変更されると、異なる値になり、検証対象のデータ(メッセージ)に基づいて生成したMACと、記録されているMACとの比較を行い、一致していれば、検証対象のデータ(メッセージ)は変更、改竄がなされていないことが証明される。
【0118】
図12に戻り、ハード対応EKB[EKB(H)]、サービス対応EKB[EKB(S)]を適用したコンテンツの復号処理に基づくコンテンツ利用処理シーケンスを説明する。
【0119】
ユーザデバイスは、サービスデータ401、暗号化コンテンツファイル402、利用権情報403を受領している。利用権情報403は、前述したように例えばPC等においてはコンテンツに対応するセキュリティ情報として保持され、ポータブルデバイス(PD)においては、格納コンテンツに対応して設定されるAVインデックスファイル421に格納される。PCからPDに対するコンテンツ移動、コピー処理を実行する場合には、PC等においては保持されるコンテンツに対応するセキュリティ情報に格納された利用権情報は、PDにおいて設定されるAVインデックスファイル421に適応するようにコンバートされる。例えば、コンテンツ再生時間、再生回数、ムーブ条件、コピー条件等に限定した利用条件のみを格納するなど、格納メディアに応じてコンバート態様を変更する。
【0120】
ユーザデバイスは、さらに、ハード対応のEKB(H)411と、ハード対応のEKB(H)の処理(復号)に適用するハード対応のデバイスノードキー(HDNK)412を保有している。なお、ハード対応のEKB(H)411は、復号により、ハード対応カテゴリツリーに対応して設定されるルートキーKroot’を取り出すことが可能である。
【0121】
図12に示すステップS11において、ハード対応のデバイスノードキー(HDNK)412を適用して、ハード対応のEKB(H)411の復号処理を実行し、EKB(H)411から、ハード対応カテゴリツリーに対応して設定されるルートキーKroot’を取得する。DNKを適用したEKBの処理は、先に図6を参照して説明した手法に従った処理となる。
【0122】
次に、ステップS12において、EKB(H)から取り出したルートキーKroot’を用いて、サービスデータ401内の暗号化データE(Kroot’,SDNK)の復号処理を実行し、サービス対応EKB[EKB(S)]の処理(復号)に適用するデバイスノードキー(SDNK)を取得する。
【0123】
次に、ステップS13において、サービスデータから取り出したデバイスノードキー(SDNK)を用いて、暗号化コンテンツファイル402内に格納されたサービス対応EKB[EKB(S)]の処理(復号)を実行し、サービス対応EKB[EKB(S)]内に格納されたサービス対応カテゴリツリーに対応して設定されるルートキーKrootを取得する。
【0124】
次に、ステップS14において、サービス対応EKB[EKB(S)]から取り出したルートキーKrootを用いて、暗号化コンテンツファイル402内に格納された暗号化データE(Kroot,CID+Kc)の復号処理を実行し、コンテンツID(CID)と、コンテンツキー(Kc)を取得する。
【0125】
次に、ステップS15において、暗号化コンテンツファイル402から取り出したコンテンツID(CID)と、AVインデックスファイル421内の利用条件情報内に格納されたコンテンツIDのマッチング(照合)処理を実行する。マッチング処理により、コンテンツの利用が可能であることが確認されると、ステップS16において、暗号化コンテンツファイル402から取り出したコンテンツキー(Kc)を適用して、暗号化コンテンツファイル402に格納された暗号化コンテンツE(Kc,Content)を復号してコンテンツの再生を行なう。
【0126】
上述したように、コンテンツ利用機器としてのハードウェアに対応して設定されたカテゴリツリーに対応するEKBとしてのハード対応EKB[EKB(H)]と、コンテンツ利用サービスに対応して設定されたカテゴリツリーに対応するEKBとしてのサービス対応EKB[EKB(S)]をそれぞれ個別にユーザに対して提供し、それぞれのEKBに対する正当なDNKを有するユーザのみがサービスの利用を行なうことが可能となる。
【0127】
サービス対応EKB[EKB(S)]を復号するためのDNK、すなわちSDNKは、コンテンツに対応したサービスデータ401として提供可能であり、またSDNKを正当なハードウェア対応のDNK、すなわちHDNKを有する機器のみが取得可能なハード対応カテゴリツリーに対応して設定されるルートキーKroot’を適用して暗号化した構成としたので、正当なHDNKを有するユーザデバイスのみが、SDNKを取得でき、サービスが利用となる。
【0128】
また、コンテンツ利用において、暗号化コンテンツファイル402から取得されるコンテンツ識別子(CID)と、AVインデックスファイル421の利用条件情報から取得されるCIDとのマッチング処理を実行する構成としたので、利用権情報403を取得して、AVインデックスファイルに利用条件情報を格納していることがコンテンツ再生プロセスの必須用件とすることが可能となり、利用条件に従ったコンテンツ利用が実現される。
【0129】
[PD,PC間におけるコンテンツコピーを伴う利用]
次に、PC等に格納した暗号化コンテンツファイルをポータブルデバイス内のメディア(例えばディスク、メモリ)に移動またはコピーし、さらに生成したサブキーKsubをコンテンツに対応して生成して、サブキーKsubを適用したコンテンツの復号を行なってポータブルデバイスにおいて、コンテンツ利用を行なう構成について説明する。
【0130】
(チェックアウト処理)
図16を参照して、PC501から、ポータブルデバイス502にコンンテンツを出力する処理において、ポータブルデバイス502に格納するデータの概要を説明する。
【0131】
暗号化コンテンツファイル511は、サービス対応のカテゴリツリーに対応して設定されるルートキーKrootを格納したサービス対応EKB[EKB(S)]、ルートキーKrootでコンテンツID(CID)と、コンテンツ暗号処理および復号処理に適用するコンテンツキー(Kc)の生成用キーとしてのメインキーKcmとを暗号化したデータE(Kroot,CID+Kcm)、および、コンテンツ(Content)をコンテンツキーKcで暗号化したデータE(Kc,Contet)を含むファイルである。
【0132】
AVインデックスファイル512は、先に図13、図14を参照して説明した構成を有し、モバイル・クイック・タイム(Mobile Quick Time)のAVインデックスファイルに利用条件情報を追加した構成を持つ。
【0133】
なお、ポータブルデバイス(PD)に格納する利用条件情報は、PDの利用するメディアのデータ容量を考慮して、最小限のデータにコンバートして格納してもよい。例えば、コンテンツ再生時間、再生回数、ムーブ条件、コピー条件等に限定した利用条件のみを格納するなど、格納メディアに応じて変更した態様とする。
【0134】
サービスデータ513は、先に、図12を参照して説明したように、リーフ識別子としてのリーフID、適用するEKBのバージョン、さらに、サービス対応EKB[EKB(S)]の復号に必要なサービス対応デバイスノードキー(SDNK)を、ハード対応カテゴリツリーに対応して設定されるルートキーKroot’によって暗号化したデータE(Kroot’,SDNK)を格納している。
【0135】
シーケンスページ514は、先に図14を参照して説明したコンテンツ対応の利用条件情報の改竄検証値としてのメッセージ認証符号(MAC:Message authentication Code)としてのMAC#nと、コンテンツキーKcの生成に適用するサブキーKsubnをコンテンツ0−nに対してそれぞれ格納したテーブルデータである。
【0136】
なお、コンテンツの暗号復号処理に適用するコンテンツキーKcと、暗号化コンテンツファイル511に格納するメインキーKcmと、シーケンスページ514に格納するサブキーKsubの関係は、
Kc=Kcm XOR Ksub
である。すなわち、メインキーKcmと、サブキーKsubとの排他論理輪演算によりコンテンツキーKcが算出される関係にある。
【0137】
暗号化コンテンツファイル511、AVインデックスファイル512、サービスデータ513は、ポータブルデバイス502のメディアの通常データ格納領域に書き込まれ、シーケンスページ514は、特定のアクセス権限を持つことの確認がなされたことを条件としてデータの読み書きが可能となるリードインエリア521に書き込まれる。
【0138】
図17を参照して、PCからポータブルデバイス(PD)のメディアに対するコンテンツ出力、すなわち、チェックアウト処理シーケンスについて説明する。
【0139】
各ステップについて説明する。ステップS101では、PDのメディアにコンテンツを格納するスロットがあるか確認し、無い場合は、コンテンツの格納が不可能となり、エラー終了となる。空きスロットがあることが確認されると、ステップS102において、チェックアウトする暗号化コンテンツファイルに対応する利用条件情報がPDに格納されているか否かが判定される。利用条件情報がない場合は、コンテンツの利用は不可であり、エラー終了となる。利用条件情報がある場合は、ステップS103において、暗号化コンテンツファイルに対応するサービスデータがPDに格納されているか否かが判定され、格納されていない場合は、PCからPDのメディアに対してサービスデータをコピーする。
【0140】
次に、ステップS105において、暗号化コンテンツファイル511(図15参照)をPDのメディアに対してコピーする。次に、ステップS106において、サービス対応のEKB、すなわちEKB(S)を用いて、PCとPD間でKrootの共有化処理を行なう。ここでは、最新バージョンのEKB(S)のKrootをPCとPD間で共有する。
【0141】
次に、PC側において、チェックアウト対象のコンテンツに対応する利用条件情報に基づくMAC算出を実行する。MAC算出は、先に図15を参照して説明した算出処理に従う。
【0142】
ステップS108において、PDのメディアのAVインデックスファイル(図13参照)書き込み領域(トラック)を作成し、ステップS109において、PDのメディアに対して利用条件情報(図14参照)を含むAVインデックスファイル(図13参照)を書き込む。
【0143】
次にステップS110において、先にPC、PD間で共有したKrootを適用してセッションキーの共有化処理を行なう。セッションキーの共有化処理は、例えば、ISO/IEC 9798-4 に代表されるMACを用いた処理によって実行可能である。図18を参照して処理シーケンスを説明する。
【0144】
図18において、コンテンツの送信機器と受信機器であるパーソナルコンピュータ(PC)、ポータブルデバイス(PD)の各々のいずれかに対応するPC,Bは、共通の鍵Krootを持つ。なお、図18における記号「||」は連結を表している。
【0145】
次にPCは、乱数Ra、Saを生成し、Ra,SaとともにMAC(Kroot,Ra||Rb||Sa)をPDに送る。MAC(Kroot,Ra||Rb||Sa)は、鍵としてKrootを、データとしてRa||Rb||Saを入力することを表す。
【0146】
PDは、受信したデータを用いてMAC(Kroot,Ra||Rb||Sa)を計算し、これが受信したものと一致するかを検査する。一致すれば通信相手であるPCが正当であると認め、処理を続けるが、一致しなければ不正なものと判断して処理を中止する。
【0147】
次にPDは乱数Sbを生成し、これとMAC(Kroot,Rb||Ra||Sb)をPCに送る。PCも受信したデータを用いて自分でMAC(Kroot,Rb||Ra||Sb)を計算し、受信したものと一致するかを確認する。一致すれば通信相手であるPDが正当であると認め、処理を続けるが、一致しなければ不正なものと判断して処理を中止する。最後に、双方がMAC(Kroot,Sa||Sb)を計算し、これをそのセッションにおけるセッションキーとして使用する。
【0148】
上記のようにすることにより、コンテンツ送信機器と受信機器としてのパーソナルコンピュータおよびポータブルデバイスは、互いの正当性を検査することができ、またセッションキーを安全に共有することができる。
【0149】
図17のフローに戻り、説明を続ける。ステップS110において、Krootに基づいてセッションキーKsesの生成が終了すると、ステップS111において、PCから、コンテンツに対応する利用条件情報のMAC、サブキーKsub、スロットNo.をセッションキーKsesで暗号化してPDに送信する。
【0150】
ステップS112において、PDは、PCから受信したMACと、ステップS107において計算した利用条件情報のMACとが一致するか否かを判定する。不一致であれば、利用条件情報は改竄されていることになり、正当なコンテンツ利用が保証されないことになり、エラー終了する。
【0151】
PCから受信したMACと、ステップS107において計算した利用条件情報のMACとが一致した場合には、ステップS113において、PDのメディア(ディスクョのリードインエリアにMACと、サブキーKsubとを対応付けたテーブルデータをシーケンスページ(図12参照)として書き込む。
【0152】
(コンテンツ再生処理)
次に、ポータブルデバイス(PD)において、サブキーKsubを適用してコンテンツキー:Kcを生成して、暗号化コンテンツの復号を実行してコンテンツを利用(再生)する処理について、図19、図20を参照して説明する。
【0153】
ポータブルデバイス(PD)は、サービスデータ601、暗号化コンテンツファイル602、AVインデックスファイル621、シーケンスページ622を有している。さらに、ポータブルデバイス(PD)は、ハード対応のEKB(H)611を保有しており、ハード対応のEKB(H)の処理(復号)に適用するハード対応のデバイスノードキー(HDNK)612を保有している。なお、ハード対応のEKB(H)611は、復号により、ハード対応カテゴリツリーに対応して設定されるルートキーKroot’を取り出すことが可能である。
【0154】
サービスデータ601には、リーフ識別子としてのリーフID、適用するEKBのバージョン、さらに、サービス対応EKB[EKB(S)]の復号に必要なサービス対応デバイスノードキー(SDNK)を、ハード対応カテゴリツリーに対応して設定されるルートキーKroot’によって暗号化したデータE(Kroot’,SDNK)を格納している。
【0155】
暗号化コンテンツファイル602は、サービス対応のカテゴリツリーに対応して設定されるルートキーKrootを格納したサービス対応EKB[EKB(S)]、ルートキーKrootでコンテンツID(CID)と、コンテンツ暗号処理および復号処理に適用するコンテンツキー(Kc)の生成に適用するメインキーKcmとを暗号化したデータE(Kroot,CID+Kcm)、および、コンテンツ(Content)をコンテンツキーKcで暗号化したデータE(Kc,Contet)を含むファイルである。
【0156】
AVインデックスファイル621は、先に図13を参照して説明したように、モバイルクイックタイム(Mobile Quick Time)のAVインデックスファイルに利用条件情報を追加した構成を持つ。
【0157】
シーケンスページ622は、先に図14を参照して説明したコンテンツ対応の利用条件情報の改竄検証値としてのメッセージ認証符号(MAC:Message authentication Code)としてのMAC#nと、コンテンツキーKcの生成に適用するサブキーKsubnをコンテンツ0−nに対してそれぞれ格納したテーブルデータである。
【0158】
なお、コンテンツの暗号復号処理に適用するコンテンツキーKcと、暗号化コンテンツファイル602に格納されたメインキーKcmと、シーケンスページ621に格納されたサブキーKsubの関係は、
Kc=Kcm XOR Ksub
である。すなわち、メインキーKcmと、サブキーKsubとの排他論理輪演算によりコンテンツキーKcが算出される関係にある。
【0159】
図19に示すステップS21において、ポータブルデバイス(PD)は、ハード対応のデバイスノードキー(HDNK)612を適用して、ハード対応のEKB(H)611の復号処理を実行し、EKB(H)611から、ハード対応カテゴリツリーに対応して設定されるルートキーKroot’を取得する。DNKを適用したEKBの処理は、先に図6を参照して説明した手法に従ったものである。
【0160】
次に、ステップS22において、EKB(H)から取り出したルートキーKroot’を用いて、サービスデータ601内の暗号化データE(Kroot’,SDNK)の復号処理を実行し、サービス対応EKB[EKB(S)]の処理(復号)に適用するデバイスノードキー(SDNK)を取得する。
【0161】
次に、ステップS23において、サービスデータから取り出したデバイスノードキー(SDNK)を用いて、暗号化コンテンツファイル602内に格納されたサービス対応EKB[EKB(S)]の処理(復号)を実行し、サービス対応EKB[EKB(S)]内に格納されたサービス対応カテゴリツリーに対応して設定されるルートキーKrootを取得する。
【0162】
次に、ステップS24において、サービス対応EKB[EKB(S)]から取り出したルートキーKrootを用いて、暗号化コンテンツファイル602内に格納された暗号化データE(Kroot,CID+Kcm)の復号処理を実行し、コンテンツID(CID)と、メインキー(Kcm)を取得する。
【0163】
次に、ステップS25において、暗号化コンテンツファイル602から取り出したコンテンツID(CID)と、AVインデックスファイル621内の利用条件情報内に格納されたコンテンツIDのマッチング(照合)処理、すなわち、コンテンツに対応する利用条件情報が存在し、かつ利用条件情報において利用が許可されているか否かの判定処理を実行する。マッチング処理により、コンテンツの利用が可能であることが確認されると、ステップS26において、暗号化コンテンツファイル602から取り出したメインキー(Kcm)と、リードインエリアに記録されたシーケンスページ622から取得したサブキーKsubとの排他論理和演算を実行し、コンテンツキーKcを生成する。
【0164】
次に、ステップS27において、コンテンツキーKcを適用して、AVインデックスファイル621の利用条件情報のMACを算出し、リードインエリアに記録されたシーケンスページ622に記録されたMACとの照合処理によるMAC検証を実行する。照合が不成立の場合は、エラーとして、次ステップの処理は停止される。
【0165】
MACの照合が成立したことを条件として、ステップS28において、コンテンツキーKcを適用して、暗号化コンテンツファイル602に格納された暗号化コンテンツE(Kc,Content)を復号してコンテンツの再生を行なう。
【0166】
上述したように、ポータブルデバイスでのコンテンツ利用においては、コンテンツに対応するサブキーKsubを設定して、利用条件情報に基づくMACとともにシーケンスページを構成して格納し、サブキーKsubと、メインキーKcmを適用した演算によりコンテンツキーKcを取得する構成として、MAC検証の成立を条件として、サブキーKsubと、メインキーKcmを適用した演算によって生成されるコンテンツキーKcによるコンテンツの復号を実行する構成とした。
【0167】
次に、ポータブルデバイスでのコンテンツ利用(再生)処理について、図20に示すフローを参照して説明する。ステップS201において、ポータブルデバイス(PD)は、ハード対応のデバイスノードキー(HDNK)を適用して、ハード対応のEKB(H)の復号処理を実行し、EKB(H)から、ハード対応カテゴリツリーに対応して設定されるルートキーKroot’を取得する。
【0168】
次に、ステップS202において、再生予定のコンテンツに対応するサービスデータがPD内に格納されているかを判定し、無い場合はPCから取得(S203)する。サービスデータは図19に示すように、サービス対応EKB[EKB(S)]の復号に必要なサービス対応デバイスノードキー(SDNK)を、ハード対応カテゴリツリーに対応して設定されるルートキーKroot’によって暗号化したデータE(Kroot’,SDNK)を格納したデータである。
【0169】
ステップS204において、EKB(H)から取り出したルートキーKroot’を用いて、サービスデータ内の暗号化データE(Kroot’,SDNK)の復号処理を実行し、サービス対応EKB[EKB(S)]の処理(復号)に適用するデバイスノードキー(SDNK)を取得する。
【0170】
次に、ステップS205において、サービスデータから取り出したデバイスノードキー(SDNK)を用いて、暗号化コンテンツファイル内に格納されたサービス対応EKB[EKB(S)]の処理(復号)を実行し、サービス対応EKB[EKB(S)]内に格納されたサービス対応カテゴリツリーに対応して設定されるルートキーKrootを取得する。
【0171】
次に、ステップS206において、サービス対応EKB[EKB(S)]から取り出したルートキーKrootを用いて、暗号化コンテンツファイル内に格納された暗号化データE(Kroot,CID+Kcm)の復号処理を実行し、コンテンツID(CID)と、メインキー(Kcm)を取得する。
【0172】
次に、ステップS207において、暗号化コンテンツファイルから取り出したコンテンツID(CID)と、AVインデックスファイル内の利用条件情報内に格納されたコンテンツIDのマッチング(照合)処理を実行する。すなわち、コンテンツに対応する利用条件情報が存在し、かつ利用条件情報において利用が許可されているか否かの判定処理を実行する。マッチングが不成立の場合は、次ステップは実行されず、エラー終了となる。
【0173】
マッチング成立の場合は、ステップS208において、メディアのリードインエリアから利用予定のコンテンツに対応するサブキーKsubを取り出し、ステップS209において、暗号化コンテンツファイルから取り出したメインキー(Kcm)と、リードインエリアに記録されたシーケンスページから取得したサブキーKsubとの排他論理和演算を実行し、コンテンツキーKcを生成する。
【0174】
次に、ステップS209において、コンテンツキーKcを適用して、AVインデックスファイルの利用条件情報のMACを算出し、リードインエリアに記録されたシーケンスページに記録されたMACとの照合処理によるMAC検証を実行する。照合が不成立の場合は、エラーとして、次ステップの処理は停止される。
【0175】
MAC検証に成功すると、ステップS212おいて、コンテンツキーKcを適用して、暗号化コンテンツファイルに格納された暗号化コンテンツE(Kc,Content)を復号してコンテンツの再生を行なう。
【0176】
このように、ポータブルデバイスにおいて、AVインデックスファイルに格納した利用条件情報を適用し、かつMAC検証によりコンテンツ利用条件の改竄のないことを確認し、さらに、コンテンツ対応のサブキーと、暗号化コンテンツファイルのメインキーにより生成可能なコンテンツキーを適用したコンテンツ復号を行なう構成としたことにより、正当な利用条件情報に基づく正当な機器のみにおけるコンテンツの正当な利用が可能となる。
【0177】
(自己記録処理)
次に、ポータブルデバイス等において、コンテンツを記録する処理について、図21および図22を参照して説明する。
【0178】
図21は、ポータブルデバイス701において、コンテンツをディスク等のメディア702に自己記録する際のシーケンスを説明する図である。
【0179】
ポータブルデバイス701は、ハード対応のカテゴリツリーを介して提供されるハード対応EKB(EKB(H))703と、ハード対応EKB(EKB(H))703の処理(復号処理に適用するデバイスノードキー(HDNK)702を有する。
【0180】
さらに、自己記録を許容するサービスを管理するサービスプロバイダから提供される自己録用サービスデータ704を有する。自己録用サービスデータ704は、前述のサービスデータと同様、リーフ識別子としてのリーフID、適用するEKBのバージョン、さらに、サービス対応EKB[EKBc(S)]の復号に必要なサービス対応デバイスノードキー(SDNK)を、ハード対応カテゴリツリーに対応して設定されるルートキーKroot’によって暗号化したデータE(Kroot’,SDNK)を格納している。なお、ここでは、自己記録用サービス対応EKBをEKBc(S)とする。
【0181】
ポータブルデバイス701は、さらに、自己録用利用条件705、自己録用EKB[EKBc(S)]706を有する。自己録用利用条件705は、コンテンツの自己記録に対する条件、例えば許容期間、記録回数等の条件を定めており、先に図14を参照して説明した利用条件と同様である。
【0182】
自己録用EKB[EKBc(S)]706は、コンテンツ自己記録用のサービスを提供するサービスプロバイダを頂点ノードとしたサービスカテゴリツリーに対応するルートキーKrootを格納したEKBである。
【0183】
ポータブルデバイスにおける、コンテンツの自己記録処理のシーケンスについて説明する。まず、ポータブルデバイス(PD)701は、まず、ステップS31において、自己記録コンテンツに対応する暗号化コンテンツファイル711のヘッダ領域に自己録用EKB[EKBc(S)]706をコピー格納する。さらに、コンテンツに対応する索引データとしてのAVインデックスファイル712に自己録用利用条件をコピー(S32)し、さらに自己録用サービスデータ704のリーフIDをコピー(S33)する。さらに、自己録用サービスデータをコンテンツを記録するメディア702にコピー格納(S34)する。なお、暗号化コンテンツファイル711、AVインデックスファイル712もコンテンツを記録するメディア702に格納する。
【0184】
次に、ポータブルデバイス701は、ステップS35において、ハード対応のデバイスノードキー(HDNK)702を適用して、ハード対応のEKB(H)703の復号処理を実行し、EKB(H)703から、ハード対応カテゴリツリーに対応して設定されるルートキーKroot’を取得する。DNKを適用したEKBの処理は、先に図6を参照して説明した手法に従ったものである。
【0185】
次に、ステップS36において、EKB(H)から取り出したルートキーKroot’を用いて、自己録用サービスデータ704内の暗号化データE(Kroot’,SDNK)の復号処理を実行し、自己録用サービス対応EKB[EKBc(S)]の処理(復号)に適用するデバイスノードキー(SDNK)を取得する。
【0186】
次に、ステップS37において、自己録用サービスデータ704から取り出したデバイスノードキー(SDNK)を用いて、暗号化コンテンツファイル711内にコピー格納した自己録用サービス対応EKB[EKBc(S)]の処理(復号)を実行し自己録用サービス対応EKB[EKBc(S)]内に格納された自己録用サービス対応カテゴリツリーに対応して設定されるルートキーKrootを取得する。
【0187】
次に、ステップS38において、自己録用サービス対応EKB[EKBc(S)]から取り出したルートキーKrootを用いて、暗号化コンテンツファイル711内に格納すべきコンテンツに対応するコンテンツ識別子としてのコンテンツID(CID)と、メインキーKcmを暗号化して、暗号化データE(Kroot,CUID,Kcm)を生成して、暗号化コンテンツファイル711内に格納する。なお、このメインキーKcmは、サブキーKsubとの排他論理和演算により、コンテンツキーKcを生成する際に適用する鍵であり、乱数に基づいて生成する。
【0188】
次に、乱数から生成したメインキーKcm、およびサブキーKsubの排他論理和演算を実行し、コンテンツキーKcを生成(S39)し、生成したコンテンツキーKcを適用してコンテンツを暗号化(S40)して、暗号化コンテンツファイル711内に格納する。
【0189】
さらに、コンテンツに対して生成したサブキーKsubと、利用条件情報に基づくMACを対応付けたシーケンスページ713のメディア702のリードインエリアに対する書き込み処理を実行(S41)する。
【0190】
上述したように、ポータブルデバイスでのコンテンツ自己記録においては、コンテンツに対応するサブキーKsubを生成して、利用条件情報に基づくMACとともにシーケンスページを構成して格納する。コンテンツ再生においては、サブキーKsubと、メインキーKcmを適用した演算によりコンテンツキーKcを生成することが必要となる。従って、シーケンスページに正当なサブキーKsubを持つデバイスにおいてのみ再生可能となる。
【0191】
図22に、ポータブルデバイスでのコンテンツ自己記録処理手順の処理フローを示す。処理フローの核ステップについて説明する。
【0192】
ステップS301において、自己記録コンテンツに対応する暗号化コンテンツファイルのヘッダ領域に自己録用EKB[EKBc(S)]をコピー格納し、ステップS302において、AVインデックスファイルに自己録用利用条件情報をコピー格納し、ステップS303において、自己録用サービスデータのリーフIDをコピー格納する。
【0193】
次に、ステップS304において、ハード対応のデバイスノードキー(HDNK)を適用して、ハード対応のEKB(H)の復号処理を実行し、EKB(H)から、ハード対応カテゴリツリーに対応して設定されるルートキーKroot’を取得する。さらに、ステップS305において、自己録用サービスデータをコンテンツを記録するメディアにコピー格納する。
【0194】
次に、ステップS306において、ハード対応のデバイスノードキー(HDNK)を適用して、ハード対応のEKB(H)から取り出したルートキーKroot’を用いて、自己録用サービスデータ内の暗号化データE(Kroot’,SDNK)の復号処理を実行し、自己録用サービス対応EKB[EKBc(S)]の処理(復号)に適用するデバイスノードキー(SDNK)を取得する。
【0195】
次に、ステップS307において、自己録用サービスデータから取り出したデバイスノードキー(SDNK)を用いて、暗号化コンテンツファイル内にコピー格納した自己録用サービス対応EKB[EKBc(S)]の処理(復号)を実行し自己録用サービス対応EKB[EKBc(S)]内に格納された自己録用サービス対応カテゴリツリーに対応して設定されるルートキーKrootを取得する。
【0196】
次に、ステップS308において、乱数に基づいてメインキーKcm、サブキーKsubを生成し、ステップS309において、メインキーKcm、サブキーKsubとの排他論理和演算により、コンテンツキーKcを生成する。
【0197】
次に、ステップS310において、メインキーKcm、とコンテンツ識別子(CID)をルートキーKrootで暗号化して、暗号化コンテンツファイルに格納する。さらに、ステップS311において、生成したコンテンツキーKcを適用してコンテンツを暗号化して、暗号化コンテンツファイルに格納する。
【0198】
さらに、ステップS312において、メコンテンツに対して生成したサブキーKsubと、利用条件情報に基づくMACを対応付けたシーケンスページのメディアのリードインエリアに対する書き込み処理を実行して、コンテンツの自己記録を終了する。
【0199】
上述したように、ポータブルデバイスでのコンテンツ自己記録においては、メディアに対して暗号化コンテンツファイル、AVインデックスファイル、さらにリードインエリアに対してAVインデックスファイルの利用条件データ等に基づくMACと、サブキーKsubの書き込みが実行され、自己記録されたコンテンツ利用においても、利用条件の正当性がMACで検証され、またサブキーKsubを利用したコンテンツキーKcの生成処理が必須となり、正当な利用権限を有するデバイスにおいて利用条件に従ったコンテンツ利用が実現される。
【0200】
(コンテンツインポート処理)
次に、ポータブルデバイス(PD)からPCに対する自己記録コンテンツのコピー処理、すなわちインポート処理について説明する。
【0201】
図23は、コンテンツインポート処理の概要と、ポータブルデバイス(PD)からPCに対して移動(コピー)するデータについて説明する図である。
【0202】
インポート処理においては、ポータブルデバイス(PD)810から、PC820に対して、コンテンツキーKcで暗号化された暗号化コンテンツデータE(Kc,Content)811がコピーされ、さらに、セキュア情報812として、Krootを格納したEKB813と、コンテンツキーKcをKrootで暗号化した鍵情報E(Kroot,Kc)814がコピーされ、さらに、先に説明した自己記録処理において生成したAVインデックスファイル中の利用条件情報815がコピーされる。
【0203】
PC820におけるデータ格納構成は、図に示すように、コンテンツ821と、コンテンツに対するセキュア情報822を持つ構成であり、インポート処理においては、これらのデータ格納構成に応じたコンバート、あるいは必要な情報の付加処理を実行することが必要となる。
【0204】
PC820は、コンテンツキーKcで暗号化された暗号化コンテンツデータE(Kc,Content)821を格納し、格納コンテンツに対応するセキュア情報822として、Krootを格納したEKB823と、コンテンツキーKcをKrootで暗号化した鍵情報E(Kroot,Kc)824、利用条件情報に対応する属性情報825、さらに、公開鍵証明書826、署名827を有する構成を持つ。
【0205】
ポータブルデバイス(PD)からPCに対する自己記録コンテンツのコピー処理、すなわちインポート処理においては、図23に示す(1)−(5)の処理が実行される。
【0206】
(1)は、暗号化コンテンツデータE(Kc,Content)のコピー処理である。(2)は、Krootを格納したEKBと、コンテンツキーKcをKrootで暗号化した鍵情報E(Kroot,Kc)のコピー処理である。
【0207】
(3)は、PDにおけるAVインデックスファイル内の利用条件情報の改竄検証処理として実行するMAC検証処理である。(4)は、(3)におけるMAC検証の結果、改竄なしの判定を条件として実行するAVインデックスファイル内の利用条件情報のコンバートとコピー処理である。PC内では、コンテンツの利用条件をコンテンツ属性情報として保持する構成であり、AVインデックスファイルの利用条件情報をPC内の属性情報のフォーマットに変換した後、PCにコピーする。(5)は、PCのコンテンツ対応のセキュア情報として格納すべきデータとしての公開鍵証明書826、および電子署名827を生成、追加する処理である。
【0208】
図23に示すように、異なるデータ格納構成を持つポータブルデバイス(PD)と、PC間においてコンテンツ移動を行なう場合、それぞれのデータ格納構成に合わせたコンバート、データ追加等の処理を実行し、利用条件情報は、データ改ざんの無いことの確認の後にコピーされる。
【0209】
図24にインポート処理の手順を説明するフローチャートを示す。フローチャートに示す各ステップの処理について説明する。
【0210】
まず、ステップS401において、暗号化コンテンツデータE(Kc,Content)をポータブルデバイス(PD)からPCにコピーする。次に、ステップS402において、Krootを格納したEKBと、コンテンツキーKcをKrootで暗号化した鍵情報E(Kroot,Kc)をポータブルデバイス(PD)からPCにコピーする。
【0211】
次に、ステップS403において、PDにおけるAVインデックスファイル内の利用条件情報に基づいて、MACを計算し、リードインエリアのシーレンスページに格納されたシーケンスページの格納MACとの比較を実行し、利用条件情報の改竄検証を行なう。MACが一致すれば改竄無しと判定し、ステップS405に進む。MACが不一致の場合は、改竄ありと判定しエラー終了となる。
【0212】
ステップS405では、利用条件情報中のインポート処理許可フラグが、処理許可を示しているか否かを判定する。AVインデックスファイル内の利用条件情報には、図14に示すようにインポート(import)の可否を示すビットがあり、インポート可のビット情報がある場合にのみインポート処理を実行し、インポート不可の情報がある場合にはインポート処理は実行されず、エラー終了とする。
【0213】
ステップS406では、AVインデックスファイル内の利用条件情報のコンバートとコピー処理を実行する。PC内では、コンテンツの利用条件をコンテンツ属性情報として保持する構成であり、AVインデックスファイルの利用条件情報をPC内の属性情報のフォーマットに変換した後、PCにコピーする。ステップS407は、PCのコンテンツ対応のセキュア情報として格納すべきデータとしての公開鍵証明書の格納処理である。ステップS408は、セキュア情報内の格納情報に対する電子署名を生成、追加する処理である。
【0214】
上述したように、コンテンツインポート処理においては、それぞれのデータ格納構成に合わせたコンバート、データ追加等の処理を実行し、利用条件情報は、データ改ざんの無いことの確認の後にコピーを実行する。
【0215】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【0216】
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【0217】
例えば、プログラムは記憶媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【0218】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記憶媒体にインストールすることができる。
【0219】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
【0220】
【発明の効果】
以上、説明したように、本発明の構成によれば、コンテンツ索引データとしてのインデックスファイルにコンテンツ利用条件情報を含む構成としたので、少ない記憶容量を持ち、プロセッサ等の処理能力の低いポータブルデバイスにおいても、インデックスファイルのコンテンツ利用条件情報を適用した正当なコンテンツ利用が可能となる。
【0221】
さらに、本発明の構成によれば、インデックスファイル中のコンテンツ利用条件情報に基づいてコンテンツ利用可否を判定し、コンテンツ利用可の判定に基づいて、暗号化コンテンツの復号に適用するコンテンツキーKc取得処理を実行する構成としたので、利用条件に基づくコンテンツ利用が認められた場合にのみコンテンツキー取得が可能となるので、厳格なコンテンツ利用条件の遵守が可能となる。
【0222】
さらに、本発明の構成によれば、インデックスファイルには、コンテンツ利用条件情報に基づいて生成された改竄検証値としてのメッセージ認証符号(MAC)を含み、MACと、コンテンツ利用条件情報に基づいて算出したMACとの比較に基づいて、コンテンツ利用条件情報の改竄の有無を判定し、改竄無しの判定を条件として、コンテンツキー取得処理を実行する構成としたので、利用条件情報の改竄に基づく不正なコンテンツ利用が防止される。
【0223】
さらに、本発明の構成によれば、コンテンツキーKcは、有効化キーブロック(EKB)配信ツリー構成を適用して提供される有効化キーブロック(EKB)の復号により取得可能なキーの適用によってのみ取得可能なキーとして設定されるので、厳格なコンテンツ利用権限の判定処理に基づくコンテンツ利用が可能となる。
【図面の簡単な説明】
【図1】本発明を適用したコンテンツ提供システムの概要を示す図である。
【図2】本発明を適用したコンテンツ利用の可能なパーソナルコンピュータ(PC)の構成例について説明する図である。
【図3】本発明を適用したコンテンツ利用の可能なポータブルデバイス(PD)の構成例について説明する図である。
【図4】各種キー、データの暗号化処理、配布処理について説明するツリー構成図である。
【図5】各種キー、データの配布に使用される有効化キーブロック(EKB)の例を示す図である。
【図6】コンテンツキーの有効化キーブロック(EKB)を使用した配布例と復号処理例を示す図である。
【図7】有効化キーブロック(EKB)のフォーマット例を示す図である。
【図8】有効化キーブロック(EKB)のタグの構成を説明する図である。
【図9】ツリー構成におけるカテゴリ分割を説明する図である。
【図10】ツリー構成におけるカテゴリ分割を説明する図である。
【図11】ツリー構成におけるカテゴリ分割の具体例を説明する図である。
【図12】複数の有効化キーブロック(EKB)を適用したコンテンツ復号、利用処理例を説明する図である。
【図13】AVインデックスファイルの構成例を示す図である。
【図14】利用条件情報の構成例を示す図である。
【図15】MAC生成処理構成を示す図である。
【図16】PCからポータブルデバイス(PD)に対するコンテンツコピー処理について説明する図である。
【図17】PCからポータブルデバイス(PD)に対するコンテンツコピー処理について説明するフロー図である。
【図18】セッションキーの共有化処理について説明するシーケンス図である。
【図19】ポータブルデバイスにおける、サブキーおよび複数の有効化キーブロック(EKB)を適用したコンテンツ復号、利用処理例を説明する図である。
【図20】ポータブルデバイスにおける、サブキーおよび複数の有効化キーブロック(EKB)を適用したコンテンツ復号、利用処理例を説明するフロー図である。
【図21】ポータブルデバイスにおける、サブキーを適用したコンテンツ自己記録処理例を説明する図である。
【図22】ポータブルデバイスにおける、サブキーを適用したコンテンツ自己記録処理例を説明するフロー図である。
【図23】ポータブルデバイスからPCに対するコンテンツインポート処理を説明する図である。
【図24】ポータブルデバイスからPCに対するコンテンツインポート処理を説明するフロー図である。
【符号の説明】
11 コンテンツプロバイダ
12 サービスプロバイダ
13 キー管理センター
30 ユーザデバイス
31 PC
32 ポータブルデバイス(PD)
51 暗号化コンテンツ
52 利用権情報
53 サービスデータ
101 CPU(Central processing Unit)
102 ROM(Read-Only-Memory)
103 RAM(Random Access Memory)
104 ホストバス104
105 ブリッジ
106 外部バス
107 インタフェース
108 キーボード
109 ポインティングデバイス
110 ディスプレイ
111 HDD(Hard Disk Drive)
112 ドライブ
114 PD(ポータブルデバイス)接続ポート
115 音声入出力インタフェース
116 通信部
121 リムーバブル記録媒体
122 ポータブルデバイス
152 電源回路
153 CPU
154 RAM
155 ROM
157 入出力I/F
159 DSP
160 記憶媒体コントローラorドライブ
161 記憶媒体
162 操作キーコントローラ
163 D/A変換器
164 増幅回路
165 出力部
166 LCDコントローラ
167 表示部
171 入力I/F
172 PC
201 バージョン
202 デプス
203 データポインタ
204 タグポインタ
205 署名ポインタ
206 データ部
207 タグ部
208 署名
301 ルートキー
302 ノードキー
303 リーフキー
304 カテゴリノード
350 ルートノード
351 Tシステムノード
352 Tサービスノード
353 Tハードノード
354 サービスプロバイダノード
355 リーフ
401 サービスデータ
402 暗号化コンテンツファイル
403 利用権情報
411 EKB(H)
412 HDNK
421 AVインデックスファイル
422 ヘッダ情報
423 インデックスファイル情報
424 AVファイル
425 利用条件情報
451 リーフID
452 コンテンツID
453 利用条件情報
454 利用ステータス情報
455 MAC
501 PC
502 ポータブルデバイス(PD)
511 暗号化コンテンツファイル
512 AVインデックスファイル
513 サービスデータ
514 シーケンスページ
601 サービスデータ
602 暗号化コンテンツファイル
611 EKB(H)
612 HDNK
621 AVインデックスファイル
622 シーケンスページ
701 ポータブルデバイス
702 DNK(HDNK)
703 EKB(H)
704 自己録用サービスデータ
705 自己録用利用条件
706 自己録用EKB
711 暗号化コンテンツファイル
712 AVインデックスファイル
713 シーケンスページ
810 ポータブルデバイス(PD)
811 暗号化コンテンツ
812 セキュア情報
813 EKB
814 鍵情報
815 AVインデックスファイル
820 PC
821 暗号化コンテンツ
822 セキュア情報
823 EKB
824 鍵情報
825 属性情報
826 公開鍵証明書
827 署名

Claims (17)

  1. コンテンツ再生処理を実行する情報処理装置であり、
    暗号化コンテンツを格納するとともに、コンテンツ利用条件情報を含むインデックスファイルを記憶した記憶手段と、
    前記インデックスファイル中のコンテンツ利用条件情報に基づいてコンテンツ利用可否を判定し、コンテンツ利用可の判定に基づいて、暗号化コンテンツの復号に適用するコンテンツキーKc取得処理を実行する制御手段と、
    を有し、
    前記コンテンツ利用条件情報は、
    有効化キーブロック(EKB)配信ツリー構成におけるリーフ識別子としてのリーフIDと、
    コンテンツ識別子としてのコンテンツIDと、
    コンテンツの利用条件情報と、
    コンテンツ利用ステータス情報とを含む構成であることを特徴とする情報処理装置。
  2. 前記インデックスファイルには、少なくとも前記コンテンツ利用条件情報に基づいて生成された改竄検証値としてのメッセージ認証符号(MAC)を含み、
    前記制御手段は、
    前記MACと、前記コンテンツ利用条件情報に基づいて算出したMACとの比較に基づいて、前記コンテンツ利用条件情報の改竄の有無を判定し、改竄無しの判定を条件として、前記コンテンツキー取得処理を実行する構成を有することを特徴とする請求項1に記載の情報処理装置。
  3. 前記暗号化コンテンツは、
    コンテンツキーKcにより暗号化されたコンテンツであり、前記コンテンツキーKcは、有効化キーブロック(EKB)配信ツリー構成を適用して提供される有効化キーブロック(EKB)の復号により取得可能なキーの適用によってのみ取得可能なキーであり、
    前記制御手段は、
    前記有効化キーブロック(EKB)の復号処理によるコンテンツキー取得処理を実行する構成であることを特徴とする請求項1に記載の情報処理装置。
  4. 前記コンテンツ利用条件情報は、
    コンテンツの利用可能期間、利用可能回数を含む構成であることを特徴とする請求項1に記載の情報処理装置。
  5. 前記インデックスファイルは、
    コンテンツに対応する属性情報を含むモバイルクイックタイムフォーマットに従ったデータ構成を有することを特徴とする請求項1に記載の情報処理装置。
  6. 前記情報処理装置は、
    外部のコンテンツ出力機器から前記暗号化コンテンツを含む暗号化コンテンツファィルと、前記インデックスファイルを入力し、
    前記制御手段は、
    前記暗号化コンテンツファイルと、前記インデックスファイルを前記記憶手段に格納するとともに、前記利用条件情報を含むデータに基づく改竄検証値としてのメッセージ認証符号(MAC)を前記記憶手段に格納する処理を実行する構成であることを特徴とする請求項1に記載の情報処理装置。
  7. 前記制御手段は、
    前記利用条件情報を含むデータに基づく改竄検証値としてのメッセージ認証符号(MAC)を、特定のアクセス許可プログラムに従ってアクセス可能な前記記憶手段のリードインエリアに書き込む処理を実行する構成であることを特徴とする請求項6に記載の情報処理装置。
  8. 前記制御手段は、
    前記利用条件情報を含むデータに基づく改竄検証値としてのメッセージ認証符号(MAC)と、コンテンツの復号処理に適用するコンテンツキーKcの生成に要するサブキーKsubを対応付けて、特定のアクセス許可プログラムに従ってアクセス可能な前記記憶手段のリードインエリアに書き込む処理を実行する構成であることを特徴とする請求項6に記載の情報処理装置。
  9. 前記制御手段は、
    コンテンツをコンテンツキーKcで暗号化した暗号化コンテンツE(Kc,Content)と、
    有効化キーブロック(EKB)配信ツリー構成を適用して提供される有効化キーブロック(EKB)の復号により取得可能なキーKrootによって、コンテンツID(CID)と、前記コンテンツキーKcの生成に要するメインキーKcmとを暗号化したデータE(Kroot,CID+Kcm)と、
    前記有効化キーブロック(EKB)と、
    を含む暗号化コンテンツファイルを前記記憶手段に格納する処理を実行する構成であることを特徴とする請求項6に記載の情報処理装置。
  10. 情報処理装置においてコンテンツ再生処理を実行する情報処理方法であり、
    コンテンツ利用条件情報を含むインデックスファイル中のコンテンツ利用条件情報に基づいてコンテンツ利用可否を判定する判定処理ステップと、
    コンテンツ利用可の判定に基づいて、暗号化コンテンツの復号に適用するコンテンツキーKc取得処理を実行するコンテンツキー取得処理ステップと、
    前記コンテンツキーKcに基づく暗号化コンテンツの復号を実行する復号処理ステップを有し、
    前記コンテンツ利用条件情報は、
    有効化キーブロック(EKB)配信ツリー構成におけるリーフ識別子としてのリーフIDと、
    コンテンツ識別子としてのコンテンツIDと、
    コンテンツの利用条件情報と、
    コンテンツ利用ステータス情報とを含む構成であることを特徴とする情報処理方法。
  11. 前記インデックスファイルには、少なくとも前記コンテンツ利用条件情報に基づいて生成された改竄検証値としてのメッセージ認証符号(MAC)を含み、
    前記情報処理方法は、さらに、
    前記MACと、前記コンテンツ利用条件情報に基づいて算出したMACとの比較に基づいて、前記コンテンツ利用条件情報の改竄の有無を判定するステップを有し、
    前記コンテンツキー取得処理ステップは、
    前記コンテンツ利用条件情報の改竄無しの判定を条件として実行することを特徴とする請求項10に記載の情報処理方法。
  12. 前記暗号化コンテンツは、
    コンテンツキーKcにより暗号化されたコンテンツであり、前記コンテンツキーKcは、有効化キーブロック(EKB)配信ツリー構成を適用して提供される有効化キーブロック(EKB)の復号により取得可能なキーの適用によってのみ取得可能なキーであり、
    前記コンテンツキー取得処理ステップは、
    前記有効化キーブロック(EKB)の復号処理によるコンテンツキー取得処理を実行する構成であることを特徴とする請求項10に記載の情報処理方法。
  13. 前記情報処理方法は、さらに、
    外部のコンテンツ出力機器から前記暗号化コンテンツを含む暗号化コンテンツファイルと、前記インデックスファイルを入力するステップと、
    前記暗号化コンテンツファイルと、前記インデックスファイルを前記記憶手段に格納するとともに、前記利用条件情報を含むデータに基づく改竄検証値としてのメッセージ認証符号(MAC)を前記記憶手段に格納する処理を実行するステップと、
    を有することを特徴とする請求項10に記載の情報処理方法。
  14. 前記情報処理装置は、さらに、
    前記利用条件情報を含むデータに基づく改竄検証値としてのメッセージ認証符号(MAC)を、特定のアクセス許可プログラムに従ってアクセス可能な前記記憶手段のリードインエリアに書き込む処理を実行することを特徴とする請求項13に記載の情報処理方法。
  15. 前記情報処理装置は、さらに、
    前記利用条件情報を含むデータに基づく改竄検証値としてのメッセージ認証符号(MAC)と、コンテンツの復号処理に適用するコンテンツキーKcの生成に要するサブキーKsubを対応付けて、特定のアクセス許可プログラムに従ってアクセス可能な前記記憶手段のリードインエリアに書き込む処理を実行することを特徴とする請求項13に記載の情報処理方法。
  16. 前記情報処理装置は、さらに、
    コンテンツをコンテンツキーKcで暗号化した暗号化コンテンツE(Kc,Content)と、
    有効化キーブロック(EKB)配信ツリー構成を適用して提供される有効化キーブロック(EKB)の復号により取得可能なキーKrootによって、コンテンツID(CID)と、前記コンテンツキーKcの生成に要するメインキーKcmとを暗号化したデータE(Kroot,CID+Kcm)と、
    前記有効化キーブロック(EKB)と、
    を含む暗号化コンテンツファイルを前記記憶手段に格納する処理を実行することを特徴とする請求項13に記載の情報処理方法。
  17. 情報処理装置において、コンテンツ再生処理を実行する情報処理を実行せしめるコンピュータ・プログラムであって、
    コンテンツ利用条件情報を含むインデックスファイル中のコンテンツ利用条件情報に基づいてコンテンツ利用可否を判定する判定処理ステップと、
    コンテンツ利用可の判定に基づいて、暗号化コンテンツの復号に適用するコンテンツキーKc取得処理を実行するコンテンツキー取得処理ステップと、
    前記コンテンツキーKcに基づく暗号化コンテンツの復号を実行する復号処理ステップを有し、
    前記コンテンツ利用条件情報は、
    有効化キーブロック(EKB)配信ツリー構成におけるリーフ識別子としてのリーフIDと、
    コンテンツ識別子としてのコンテンツIDと、
    コンテンツの利用条件情報と、
    コンテンツ利用ステータス情報とを含む構成であることを特徴とするコンピュータ・プログラム。
JP2002149266A 2002-05-23 2002-05-23 情報処理装置、情報処理方法、およびコンテンツ入出力処理システム、コンテンツ入出力処理方法、並びにコンピュータ・プログラム Expired - Fee Related JP4192499B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002149266A JP4192499B2 (ja) 2002-05-23 2002-05-23 情報処理装置、情報処理方法、およびコンテンツ入出力処理システム、コンテンツ入出力処理方法、並びにコンピュータ・プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002149266A JP4192499B2 (ja) 2002-05-23 2002-05-23 情報処理装置、情報処理方法、およびコンテンツ入出力処理システム、コンテンツ入出力処理方法、並びにコンピュータ・プログラム

Publications (2)

Publication Number Publication Date
JP2003345660A JP2003345660A (ja) 2003-12-05
JP4192499B2 true JP4192499B2 (ja) 2008-12-10

Family

ID=29767492

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002149266A Expired - Fee Related JP4192499B2 (ja) 2002-05-23 2002-05-23 情報処理装置、情報処理方法、およびコンテンツ入出力処理システム、コンテンツ入出力処理方法、並びにコンピュータ・プログラム

Country Status (1)

Country Link
JP (1) JP4192499B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4626221B2 (ja) 2004-06-24 2011-02-02 ソニー株式会社 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
MX2007008543A (es) * 2005-01-13 2007-09-07 Samsung Electronics Co Ltd Dispositivo y metodo para manejo de derecho digital.
KR101147763B1 (ko) * 2005-01-19 2012-05-25 엘지전자 주식회사 데이터 복호방법 및 복호장치, 기록매체
JP2008027007A (ja) 2006-07-18 2008-02-07 Canon Inc コンテンツ管理システム及びその制御方法
JP4587399B2 (ja) * 2006-08-22 2010-11-24 Kddi株式会社 コンテンツ配信方法及びシステム
EP3293653A1 (en) * 2016-09-09 2018-03-14 Nagravision S.A. A system for decrypting and rendering content

Also Published As

Publication number Publication date
JP2003345660A (ja) 2003-12-05

Similar Documents

Publication Publication Date Title
JP4622087B2 (ja) 情報処理装置、および情報処理方法、並びにプログラム記憶媒体
US8712048B2 (en) Information recording medium and information processing method for accessing content with license or copyright protection
JP4078802B2 (ja) 情報処理システム、情報処理方法、情報処理装置、および情報記録媒体、並びにプログラム記録媒体
US8393005B2 (en) Recording medium, and device and method for recording information on recording medium
JP4581246B2 (ja) 情報処理システム、および情報処理方法、並びにプログラム記録媒体
JP4710132B2 (ja) 情報処理システム、および情報処理方法、並びにプログラム記録媒体
US10097347B2 (en) Content providing system, content reproducing device, content reproducing method, and computer program
JP3821768B2 (ja) 情報記録媒体、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP4023083B2 (ja) 情報処理システム、情報処理方法、および情報記録媒体、並びにプログラム提供媒体
WO2001078298A1 (fr) Systeme et procede de traitement d'informations
KR20050026905A (ko) 정보 처리 장치 및 정보 처리 방법과 컴퓨터 프로그램
KR20050035513A (ko) 라이센스 관리 장치, 라이센스 관리 방법 및 컴퓨터프로그램
US20150046719A1 (en) Information processing device, information processing method, and program
KR100881524B1 (ko) 데이터 기록 장치, 데이터 기록 방법, 및 데이터 전송시스템
WO2002087147A1 (fr) Dispositif et procede d'enregistrement/de reproduction d'informations
US7503077B2 (en) Method, storage medium, and apparatus to prevent use or distribution of unauthorized copies of storage medium contents
JP4370721B2 (ja) 情報記録装置、情報再生装置、情報記録方法、情報再生方法、キー更新端末装置、世代管理キー更新方法、および情報記録媒体、並びにプログラム提供媒体
JP4192499B2 (ja) 情報処理装置、情報処理方法、およびコンテンツ入出力処理システム、コンテンツ入出力処理方法、並びにコンピュータ・プログラム
JP2005050176A (ja) 情報記録媒体製造管理システム、情報処理装置、および方法、並びにコンピュータ・プログラム
JP4110511B2 (ja) コンテンツ利用管理システム、情報処理装置、および方法、並びにコンピュータ・プログラム
JP4806847B2 (ja) 情報処理システム、情報処理方法、および情報記録媒体、並びにプログラム記録媒体
JP2003348067A (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP3988385B2 (ja) 情報処理システム、情報処理方法、および情報記録媒体、並びにプログラム記録媒体
JP4337811B2 (ja) データ記録装置
JP2010288291A (ja) 情報処理システム、および情報処理方法、並びにプログラム記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050407

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080610

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080731

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080826

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080908

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111003

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees