JP2005184798A - 管理装置、端末装置及び著作権保護システム - Google Patents
管理装置、端末装置及び著作権保護システム Download PDFInfo
- Publication number
- JP2005184798A JP2005184798A JP2004341235A JP2004341235A JP2005184798A JP 2005184798 A JP2005184798 A JP 2005184798A JP 2004341235 A JP2004341235 A JP 2004341235A JP 2004341235 A JP2004341235 A JP 2004341235A JP 2005184798 A JP2005184798 A JP 2005184798A
- Authority
- JP
- Japan
- Prior art keywords
- subset
- key
- information
- unique information
- unit
- 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.)
- Granted
Links
Images
Abstract
【解決手段】 管理装置は、複数の端末装置を管理する木構造のリーフを除く各レイヤのノードにおいて、その配下に存する装置識別子の部分集合を求めて、リーフのレイヤを除く最下位レイヤの部分集合をそっくり含む部分集合を直上位のレイヤから検索し、関連付け、関連付先の部分集合をそっくり含む部分集合を同一レイヤ及び直上位のレイヤの何れかから検索し、関連付けて、当該処理が最上位レイヤに至るまで繰り返し処理するよう制御し、前記最下位レイヤの部分集合の全てに対して、これら処理が繰り返し処理するよう制御し、前記最下位レイヤの部分集合に固有情報を対応付け、関連付けにより繋がった部分集合に、前記対応付けられた固有情報から派生的に求められる固有情報を対応付ける。
【選択図】 図2
Description
配信されたコンテンツは、コンピュータや再生装置等で読み出されて、再生、あるいはコピーの対象となる。
具体的には、コンテンツをある暗号化鍵を用いて暗号化して光ディスク等の記録媒体に記録して配布する。これに対して、その暗号化鍵に対応する復号鍵を保有する端末のみが、記録媒体から読み出したデータをその復号鍵を用いて復号して、コンテンツの再生等を行うことができる、というものである。なお、コンテンツを暗号化して記録媒体に記録する方法としては、端末が保有する復号鍵に対応する暗号化鍵でコンテンツそのものを暗号化して記録する方法や、コンテンツをある鍵で暗号化して記録した上で、その鍵に対応する復号用の鍵を、端末が保有する復号鍵に対応する暗号化鍵で暗号化して記録する方法等がある。
まず、「Subset Difference」(以降、差分集合と呼ぶ)についての定義を行う。差分集合は、大きな木構造の集合から、それよりも小さな木構造の集合を取り除いたときの、各装置(リーフ)からなる集合と定義する。大きな木構造のルートと小さな木構造のルートの2つを定めることにより、差分集合は決定される。そして、各差分集合に対してそれぞれ復号鍵が割り当てられる。
無効化されない装置の集合を、差分集合でカバーすることによって、鍵データのサイズを削減することが可能となる。図42にその概念図を示す。図42において、大きな木構造T1000のルートをVi、小さな木構造T1001のルートをVjとした場合、×印をつけた2つのリーフに割り当てられた装置を無効化する集合は、木構造T1000から木構造T1001を取り除いた差分集合1001「Si,j」となる。さらに、必要となる鍵データは、前記差分集合Si,jに対応した1つの暗号化鍵Li,jを用いて暗号化された、1つの暗号化コンテンツ鍵となる。つまり、差分集合は、木構造T1000を示す概念的な図である概念図T1002から、木構造T1001を示す概念的な図である概念図T1003を除いた残りの部分に属するリーフの集合となる。
図44に示す木構造T3000の各ノードには、それぞれ個別のTビットの「ラベル」と呼ばれる識別子が付与されている。そして、入力データ長Tビットに対して、3Tビットの乱数を生成する擬似乱数生成器Gを用意する。ラベル「A1」を擬似乱数生成器Gの入力とした場合に、出力される3Tビットのうち、前半Tビットをラベル3001「A1」の左下の子のラベルとし、真ん中のTビットをラベル3001「A1」のノードに対応する暗号化鍵とし、後半Tビットをラベル3001「A1」の右下の子のラベルとし、それぞれを「A1L」、「A1M」、「A1R」と表現する。図44では、各ノードには予めラベル「A1」、「A2」、「A3」、「A4」等が個別に割り当てられており、加えて上位のラベルから派生してきた新たなラベルが追加される。例えば、上から3層目のノード4001においては、当該ノードに予め割り当てられたラベル「A4」に加え、上位のラベル「A1」から派生したラベル「A1LL」、並びに同じく上位のラベル「A2」から派生したラベル「A2L」と計3個のラベルが割り当てられことになる。さらに、各ノードに割り当てられる暗号化鍵の数は、当該ノードに割り当てられたラベルの数と等しくなるため、ノード4001には、A1LLM、A2LM、A4Mの計3つの暗号化鍵が割り当てられることになる。
具体的には、各装置が割り当てられたリーフから、ルートに至る経路上に存在するノードにぶら下がるノードに着目して、当該ノードより上位に位置するノードから派生して割り当てられたラベルが、各装置に対して割り当てられる。
各装置に割り当てられるラベルの総数は、装置の総数をt台とした場合、0.5(log2t)^2+0.5log2t個である。これは、各装置に割り当てられるラベルの数が、2層目に1個、3層目に2個、…、最下位層にlog2t個であることから、1+2+…+log2t=0.5(log2t)^2+0.5log2tとなるからである。例えば、装置の総数が8台である場合には、各装置に割り当てられるラベルの数は、6つとなる。
何れの装置も無効化されていない初期状態では、ラベル3002「A1L」、ラベル3003「A2R」に対応する鍵「A1LM」、及び「A1RM」を用いてコンテンツ鍵を暗号化する。全ての装置は、ラベル3002「A1L」、あるいはラベル3003「A1R」を保持しており、それらから、復号鍵「A1LM」、あるいは「A1RM」を生成することができる。従って、生成した復号鍵でコンテンツ鍵を復号することができ、さらには、復号したコンテンツ鍵を利用してコンテンツを復号することができる。
ここで、前記第1関連付手段は、前記最下位レイヤに対する各上位レイヤの各部分集合のうち、関連付けがなされた1以上の部分集合を除外し、残りの1以上の部分集合を用いて、最上位レイヤに至るまで、前記第2関連付手段が繰り返し処理するよう制御して、前記最下位レイヤの部分集合をルートする部分集合木を生成するとしてもよい。
ここで、前記第2割当手段は、前記派生的に求められる固有情報を、前記関連付元の部分集合に対応付けされた固有情報から一方向性関数を用いて生成し、生成した固有情報を、関連付けにより繋がった部分集合に対応付けるとしてもよい。
ここで、前記管理装置は、さらに、前記部分集合木のルートから1以上のリーフそれぞれに至る各経路において、固有情報を配布する配布対象の端末装置の識別子が、要素として初めて出現する部分集合が存在する場合に、前部分集合に対応付けられた固有情報を1以上取得する固有情報取得手段と、取得した固有情報と、固有情報に対応する部分集合を識別する集合識別情報とからなる1以上の組を、前記配布対象の端末装置へ配布する配布手段とを備えるとしてもよい。
ここで、前記管理装置は、さらに、前記部分集合木の構成要素である各部分集合と、前記各部分集合のそれぞれに対応付けられた前記固有情報とを記憶する領域を有する第1記憶手段と、前記部分集合木を構成する複数のノードと、各ノードの子ノードとを記憶する領域を有する第2記憶手段と、前記部分集合と、前記部分集合に対応付けられた固有情報とを対応付けて、前記第1記憶手段に書き込む第1書込手段と、前記部分集合木を構成する前記ノードと、前記ノードの子ノードとを対応付けて、前記第2記憶手段に書き込む第2書込手段とを備えるとしてもよい。
ここで、前記第1記憶手段は、前記部分集合と前記部分集合に対応付けられた固有情報とを1の組として、複数個の組を記憶する第1テーブルを有しており、前記第2記憶手段は、前記ノードと前記ノードに対応する子ノードとを1の組として、複数個の組を記憶する第2テーブルを有しており、前記第1書込手段は、前記部分集合と、前記部分集合に対応付けられた固有情報とからなる組を、前記第1テーブルに書き込み、前記第2書込手段は、前記ノードと、前記ノードの子ノードとからなる組を、前記第2記憶手段に書き込むとしてもよい。
ここで、前記第2制御手段は、前記最下位レイヤの部分集合の全てに対して、前記第1関連付手段、前記第2関連付手段、及び前記第1制御手段が繰り返し処理するよう制御して、複数の部分集合木を生成し、前記第1記憶手段は、各部分集合木に含まれる各部分集合と、前記各部分集合のそれぞれに対応付けられた各固有情報とを記憶しており、前記管理装置は、さらに、前記複数の端末装置のうち、1以上の無効な端末を示す無効な識別子を記憶する領域を有する無効化識別子記憶手段と、前記無効化識別子記憶手段にて記憶されている内容に基づいて、前記第1記憶手段より1以上の部分集合を取得し、取得した各部分集合のそれぞれに対応付けられた各固有情報に基づいて、1以上の暗号化鍵を取得し、取得した各暗号化鍵を個別に用いて、コンテンツの利用に用いるメディア鍵を暗号し、前記1以上の暗号化鍵と同数の暗号化メディア鍵を生成する暗号化鍵生成手段と、前記暗号化メディア鍵と、前記暗号化メディア鍵に対する暗号化鍵の取得に用いられた部分集合を識別する基準識別情報とからなる1以上の組を、当該管理装置に装着された記録媒体へ書き込む第3書込手段とを備えるとしてもよい。
ここで、前記管理装置は、さらに、無効な識別子を受け取り、受け取った無効な識別子を前記無効化識別子記憶手段へ書き込む無効化識別子受取手段を備えるとしてもよい。
ここで、前記暗号化鍵は、前記復号鍵と同一の共通鍵であり、前記一方向性関数は、さらに、各固有情報から前記各固有情報に基づく各共通鍵を生成し、前記暗号化鍵生成手段は、前記無効化識別子記憶手段にて記憶されている無効な識別子を除く1以上の有効な識別子を最も多く含む部分集合を、前記第1記憶手段より取得する部分集合取得部と、全ての有効な識別子が、前記部分集合取得部にて取得される1以上の部分集合の何れかに属するまで、前記部分集合取得部が繰り返し処理するよう制御する制御部と、前記一方向性関数を用いて、前記部分集合取得部にて取得した各部分集合のそれぞれに対応付けられた各固有情報から生成された1以上の共通鍵を取得する共通鍵取得部と、前記共通鍵取得部にて取得した各共通鍵を用いて、共通鍵の数と同数の暗号化メディア鍵を生成する暗号化部とを備えるとしてもよい。
ここで、前記基準識別情報は、前記暗号化メディア鍵に対する共通鍵の取得に用いられた部分集合であり、前記第3書込手段は、前記暗号化メディア鍵と、前記暗号化メディア鍵に対する共通鍵の取得に用いられた部分集合とからなる1以上の組を、前記記録媒体へ書き込み、前記配布手段は、前記取得した固有情報が対応付けたれた部分集合を前記集合識別情報として、前記取得した固有情報と前記集合識別情報とからなる1以上の組を、前記配布対象の端末装置へ配布し、前記配布手段は、さらに、前記各部分集合木を示すデータ構造を配布するとしてもよい。
ここで、前記管理装置は、さらに、部分集合に対して、前記部分集合が属する部分集合木のルートであるルート部分集合から、前記部分集合に至るまでの経路を示す生成経路と、前記ルート部分集合と示すルート識別子とを含む経路情報を取得する経路情報取得手段を備え、前記基準識別情報は、前記暗号化メディア鍵に対する暗号化鍵の取得に用いられた部分集合の経路情報であり、前記第3書込手段は、前記暗号化メディア鍵と、前記暗号化メディア鍵に対する暗号化鍵の取得に用いられた部分集合の経路情報とからなる1以上の組を、前記記録媒体へ書き込み、前記配布手段は、前記取得した固有情報に対する部分集合の経路情報を前記集合識別情報として、前記取得した固有情報と前記集合識別情報とからなる1以上の組を、前記配布対象の端末装置へ配布するとしてもよい。
また、本発明は、複数の端末装置を識別する各装置識別子を木構造にて管理する管理装置より、暗号化されたデータを復号する復号鍵の基となる固有情報が割り当てられる端末装置であって、前記管理装置は、前記木構造のリーフを除く各レイヤのノードにおいて、その配下に存する装置識別子の部分集合を求めて、生成し、リーフのレイヤを除く最下位レイヤの部分集合をそっくり含む部分集合を直上位のレイヤから検索し、関連付け、関連付先の部分集合をそっくり含む部分集合を同一レイヤ及び直上位のレイヤの何れかから検索し、関連付け、この関連付けを最上位レイヤに至るまで、前記第2関連付手段が繰り返し処理するよう制御し、前記最下位レイヤの部分集合の全てに対して、これらの処理が繰り返し処理するよう制御し、前記最下位レイヤの関連付元の部分集合に、固有情報を対応付けて、当該固有情報を、当該部分集合に含まれる装置識別子に割り当て、関連付けにより、レイヤにまたがって繋がった部分集合に、前記関連付元の部分集合に割り当てた固有情報から派生的に求められる固有情報を対応付けて、当該固有情報を、当該部分集合に含まれる各装置識別子に割り当てており、前記端末装置は、前記管理装置から予め配布された、関連付元の各部分集合に対応付けられた各固有情報のうち、当該端末装置の装置識別子を含む固有情報を記憶している固有情報記憶手段を備えることを特徴とする。
前記集合識別情報が、当該端末装置が有効な装置であることを示すか否かを判断する判断手段と、前記判断手段による判断結果が肯定的である場合に、前記管理装置にて生成された各部分集合に対応付けられた各固有情報のうち特定の固有情報に基づく暗号化鍵により、メディア鍵が暗号化され、且つ前記暗号化鍵に関連する鍵関連情報と対応付けられた暗号化メディア鍵を取得する第1取得手段と、前記固有情報記憶手段にて記憶している前記固有情報を用いて、前記暗号化鍵に対応する復号鍵を取得する第2取得手段と、前記第2取得手段にて取得した前記復号鍵を用いて、前記取得手段にて取得した前記暗号化メディア鍵を復号して、前記メディア鍵を生成する復号手段とを備えるとしてもよい。
ここで、前記特定の固有情報は、前記暗号化メディア鍵の生成時点で有効な端末装置の識別子を1以上含む部分集合に対応付けられた基準固有情報であり、前記暗号化鍵は、共通鍵であり、前記鍵関連情報は、前記基準固有情報が対応付けられた部分集合を識別する基準識別情報であり、前記暗号化メディア鍵は、前記基準識別情報と対応付けられており、前記判断手段は、前記固有情報記憶手段にて記憶している前記集合識別情報にて識別される部分集合から、前記基準識別情報にて識別される部分集合に至る経路が存在する場合に、前記集合識別情報は、当該端末装置が有効な装置であることを示す判断し、前記第1取得手段は、前記基準識別情報に対応する前記基準固有情報に基づく暗号化鍵により暗号化された前記暗号化メディア鍵を取得し、前記第2取得手段は、前記復号鍵を取得し、取得した前記復号鍵を前記共通鍵とし、前記復号手段は、取得した前記共通鍵を用いて、前記暗号化メディア鍵を復号するとしてもよい。
ここで、前記管理装置は、前記最下位レイヤの部分集合をそっくり含み、且つ最小の要素数からなる部分集合を検索し、前記最下位レイヤの部分集合を親ノードとし、検索した部分集合を子ノードとして、関連付け、前記関連付先の部分集合をそっくり含み、最小の要素数からなり、且つ未関連付けである部分集合を検索し、前記関連付先の部分集合を親ノードとし、検索した部分集合を子ノードとして、関連付けて、前記最下位レイヤの部分集合をルートする部分集合木を生成し、前記固有情報記憶手段は、さらに、前記管理装置にて生成された前記部分集合木を構成するデータ構造を予め記憶しており、前記判断手段は、前記データ構造により構成される前記部分集合木を用いて、前記固有情報記憶手段にて記憶している前記固有情報が対応付けられた部分集合から、前記基準識別情報にて識別される部分集合に至る経路が存在するか否かを判断するとしてもよい。
ここで、前記管理装置は、前記最下位レイヤの部分集合をそっくり含み、且つ最小の要素数からなる部分集合を検索し、前記最下位レイヤの部分集合を親ノードとし、検索した部分集合を子ノードとして、関連付け、前記関連付先の部分集合をそっくり含み、最小の要素数からなり、且つ未関連付けである部分集合を検索し、前記関連付先の部分集合を親ノードとし、検索した部分集合を子ノードとして、関連付けて、前記最下位レイヤの部分集合をルートする部分集合木を生成し、前記基準識別情報は、前記基準固有情報が対応付けられた基準部分集合に対して、前記許可集合木のルートから、当該基準部分集合に至るまでの第1生成経路を含み、前記集合識別情報は、前記固有情報が対応付けられた部分集合に対して、前記部分集合木のルートから、当該部分集合に至るまでの第2生成経路を含み、前記判断手段は、前記第2生成経路が前記第1生成経路に含まれる場合に、前記集合識別情報にて識別される部分集合から、前記基準識別情報にて識別される部分集合に至る経路が存在すると判断するとしてもよい。
ここで、前記管理装置は、部分集合に対応付けられた固有情報を、一方向性関数に対する入力の情報として与え、前記固有情報に基づく共通鍵、及び前記固有情報から派生する固有情報を生成し、生成した固有情報を、入力の情報として与えた前記固有情報が対応付けられた部分集合と関連付けされた部分集合に対応付けて、関連付けされた部分集合に含まれる各装置識別子に、生成した固有情報を割り当て、前記第2取得手段は、前記一方向性関数と同一の関数を用いて、前記固有情報記憶手段にて記憶している前記固有情報から、前記固有情報に基づくデバイス鍵と、前記固有情報から派生する固有情報とを生成して、取得するデバイス鍵取得部と、前記基準固有情報に基づくデバイス鍵を取得するまで、前記デバイス鍵取得部にて取得した前記固有情報を、前記関数に対する次の入力の情報として与えて、前記デバイス鍵取得部の動作を繰り返すよう制御する繰返部と、前記デバイス鍵取得部にて取得した前記基準固有情報に基づくデバイス鍵を、前記共通鍵として取得する復号鍵取得手段とを備えるとしてもよい。
ここで、前記端末装置は、さらに、コンテンツを取得するコンテンツ取得手段と、コンテンツ鍵を取得するコンテンツ鍵取得手段と、前記コンテンツ鍵取得手段にて取得した前記コンテンツ鍵を、前記復号手段にて取得したメディア鍵を用いて、暗号化して暗号化コンテンツ鍵を生成する第1暗号化手段と、前記コンテンツ取得手段にて取得した前記コンテンツを、前記コンテンツ鍵取得手段にて取得したコンテンツ鍵を用いて、暗号化して暗号化コンテンツを生成する第2暗号化手段と、前記暗号化コンテンツ鍵と、前記暗号化コンテンツとを、記録媒体へ書き込む書込手段とを備えるとしてもよい。
この構成によると、端末装置は、生成した暗号化コンテンツ鍵及び暗号化コンテンツを、通信媒体を介して、記録媒体へ書き込むことができる。
この構成によると、端末装置は、暗号化コンテンツ鍵及び暗号化コンテンツを、当該端末装置に装着された記録媒体から取得し、コンテンツを生成することができる。
この構成によると、端末装置は、暗号化コンテンツ鍵及び暗号化コンテンツを、通信媒体を介して取得し、コンテンツを生成することができる。
ここで、前記第1関連付手段は、前記最下位レイヤに対する各上位レイヤの各部分集合のうち、関連付けがなされた1以上の部分集合を除外し、残りの1以上の部分集合を用いて、最上位レイヤに至るまで、前記第2関連付手段が繰り返し処理するよう制御して、前記最下位レイヤの部分集合をルートする部分集合木を生成するとしてもよい。
ここで、前記第2割当手段は、前記派生的に求められる固有情報を、前記関連付元の部分集合に対応付けられた固有情報から一方向性関数を用いて生成し、生成した固有情報を、関連付けにより繋がった部分集合に対応付けるとしてもよい。
ここで、前記管理装置は、さらに、前記部分集合木のルートから1以上のリーフそれぞれに至る各経路において、固有情報を配布する配布対象の端末装置の識別子が、要素として初めて出現する部分集合が存在する場合に、前部分集合に対応付けされた固有情報を1以上取得する固有情報取得手段と、取得した固有情報と、固有情報に対応する部分集合を識別する集合識別情報とからなる1以上の組を、前記配布対象の端末装置へ配布する配布手段とを備えるとしてもよい。
ここで、前記第2制御手段は、前記最下位レイヤの部分集合の全てに対して、前記第1関連付手段、前記第2関連付手段、及び前記第1制御手段が繰り返し処理するよう制御して、複数の部分集合木を生成し、前記第1記憶手段は、各部分集合木に含まれる各部分集合と、前記各部分集合のそれぞれに対応付けされた各固有情報とを記憶しており、前記管理装置は、さらに、前記複数の端末装置のうち、1以上の無効な端末を示す無効な識別子を記憶する領域を有する無効化識別子記憶手段と、前記無効化識別子記憶手段にて記憶されている内容に基づいて、前記第1記憶手段より1以上の部分集合を取得し、取得した各部分集合のそれぞれに対応付けされた各固有情報に基づいて、1以上の暗号化鍵を取得し、取得した各暗号化鍵を個別に用いて、コンテンツの利用に用いるメディア鍵を暗号し、前記1以上の暗号化鍵と同数の暗号化メディア鍵を生成する暗号化鍵生成手段と、前記暗号化メディア鍵と、前記暗号化メディア鍵に対する暗号化鍵の取得に用いられた部分集合を識別する基準識別情報とからなる1以上の組を、当該管理装置に装着された記録媒体へ書き込む第3書込手段とを備えるとしてもよい。
ここで、前記管理装置は、さらに、無効な識別子を受け取り、受け取った無効な識別子を前記無効化識別子記憶手段へ書き込む無効化識別子受取手段を備えるとしてもよい。
ここで、前記暗号化鍵は、前記復号鍵と同一の共通鍵であり、前記一方向性関数は、さらに、各固有情報から前記各固有情報に基づく各共通鍵を生成し、前記暗号化鍵生成手段は、前記無効化識別子記憶手段にて記憶されている無効な識別子を除く1以上の有効な識別子を最も多く含む部分集合を、前記第1記憶手段より取得する部分集合取得部と、全ての有効な識別子が、前記部分集合取得部にて取得される1以上の部分集合の何れかに属するまで、前記部分集合取得部が繰り返し処理するよう制御する制御部と、前記一方向性関数を用いて、前記部分集合取得部にて取得した各部分集合のそれぞれに対応付けされた各固有情報から生成された1以上の共通鍵を取得する共通鍵取得部と、前記共通鍵取得部にて取得した各共通鍵を用いて、共通鍵の数と同数の暗号化メディア鍵を生成する暗号化部とを備えるとしてもよい。
ここで、前記端末装置は、前記管理装置の配布手段にて予め配布された固有情報と、前記記固有情報が対応付けされた部分集合を識別する集合識別情報とからなる1以上の組を記憶している固有情報記憶手段と、前記集合識別情報が、当該端末装置が有効な装置であることを示すか否かを判断する判断手段と、前記判断手段による判断結果が肯定的である場合に、前記記録媒体から暗号化メディア鍵を1個取得する第1取得手段と、前記固有情報記憶手段にて記憶している前記固有情報を用いて、前記暗号化鍵に対応する復号鍵を取得する第2取得手段と、前記第2取得手段にて取得した前記復号鍵を用いて、前記取得手段にて取得した前記暗号化メディア鍵を復号して、前記メディア鍵を生成する復号手段とを備えるとしてもよい。
ここで、前記暗号化鍵は、共通鍵であり、前記判断手段は、前記固有情報記憶手段にて記憶している前記集合識別情報にて識別される部分集合から、前記基準識別情報にて識別される部分集合に至る経路が存在する場合に、前記集合識別情報は、当該端末装置が有効な装置であることを示す判断し、前記第1取得手段は、前記基準識別情報に対応する暗号化メディア鍵を取得し、前記第2取得手段は、前記復号鍵を取得し、取得した前記復号鍵を前記共通鍵とし、前記復号手段は、取得した前記共通鍵を用いて、前記暗号化メディア鍵を復号するとしてもよい。
ここで、前記第2取得手段は、前記一方向性関数と同一の関数を用いて、前記固有情報記憶手段にて記憶している前記固有情報から、前記固有情報に基づくデバイス鍵と、前記固有情報から派生する固有情報とを生成して、取得するデバイス鍵取得部と、前記基準固有情報に基づくデバイス鍵を取得するまで、前記デバイス鍵取得部にて取得した前記固有情報を、前記関数に対する次の入力の情報として与えて、前記デバイス鍵取得部の動作を繰り返すよう制御する繰返部と、前記デバイス鍵取得部にて取得した前記基準固有情報に基づくデバイス鍵を、前記共通鍵として取得する復号鍵取得手段とを備えるとしてもよい。
また、本発明は、複数の端末装置を識別する各装置識別子を木構造のリーフに配し、各装置識別子に、暗号化されたデータを復号する復号鍵の基となる固有情報を割り当て、管理する管理装置であって、前記木構造のリーフを除く各レイヤのノードにおいて、その配下に存する装置識別子の部分集合を求めて、生成する部分集合生成手段と、同一レイヤにおいて存在する部分集合のうち、最小の要素数の部分集合を含む他の部分集合を、最小の要素数の部分集合とともに1つのグループにまとめるグループ生成手段と、同一レイヤの存在する最小の要素数の部分集合の全てに対して、前記グループ生成手段が繰り返し処理するよう制御する第1制御手段と、全てのレイヤに対して、前記グループ生成手段及び前記第1制御手段が繰り返し処理するよう制御する第2制御手段と、前記第2制御手段にて全てのレイヤに対して、処理を行った後、異なるレイヤ間において、下位レイヤのグループの何れかの部分集合を全て含む部分集合を有する上位レイヤのグループを、当該下位レイヤのグループと1のグループに統合する統合手段と、全てのレイヤにおいてグループの統合後に、残存する各グループ内の最小の要素数の各部分集合に対して、各固有情報を対応付けて、各部分集合に含まれる1以上の装置識別子に、対応付けられた各固有情報を割り当てる第1割当手段と、前記第1割当手段にて各固有情報を割り当てた最小の要素数の各部分集合と異なる各部分集合に対して、部分集合が属するグループに存在する最小の要素数の部分集合に対応付けされた固有情報から派生的に求められる固有情報を対応付けて、各部分集合に含まれる1以上の装置識別子に、対応付けられた固有情報を割り当てる第2割当手段とを備えることを特徴とする。
1.1 著作権保護システム10の構成
本発明に係る実施の形態としての著作権保護システム10の構成を図1にて示す。
著作権保護システム10は、鍵管理装置100、記録媒体200、記録装置300a、300b、・・・、300c、及び再生装置400a、400b、・・・、400cからなる。
なお、記録装置300b、・・・、300cは、記録装置300aと同様に動作し、再生装置400b、・・・、400cは、再生装置400aと同様に動作する。
1.2 鍵管理装置100
鍵管理装置100は、図2に示すように、装置情報格納部101、情報格納部102、情報生成部103、配布部104、無効化装置特定部105、鍵無効化データ生成部106、受付部107及び出力部108から構成されている。
装置情報格納部101は、具体的にはハードディスクユニットから構成されており、図3に一例として示す2分木の木構造T100にて、各記録装置及び各再生装置のそれぞれを識別する装置識別子を管理するために、木構造T100を表現するためのデータ構造として、図4に示す木構造テーブルT101を記憶している。
次に、木構造テーブルT101について説明する。木構造テーブルT101は、親ノードと、それに対応する子ノードと装置識別子とからなる組を1以上、予め記憶している。親ノード名は、木構造T100が有するノードを示し、子ノード名は、親ノード名にて示されるノードの子ノードを示す。ただし、親ノードにて示されるノードがリーフである場合には、記号「−」が記録されている。装置識別子は、各リーフに割り当てられた装置を識別する識別子であり、親ノード名にて示されるノードがリーフ以外である場合には、記号「−」が記録されている。
(2)情報格納部102
情報格納部102は、具体的にはハードディスクユニットから構成されており、図5及び図6に一例として示すように、デバイス鍵テーブルD100及び相互関係テーブルD101を有している。
デバイス鍵テーブルD100は、有効な装置の装置識別子からなる部分集合と、その部分集合に対応付けられたラベル名と、ラベル名から生成されるデバイス鍵とからなる組を1以上有している。後述するように、情報生成部103によりデバイス鍵テーブルD100が生成され、情報格納部102に書き込まれる。なお、デバイス鍵テーブルD100は、記録装置及び再生装置の総数を8台とした場合において、情報生成部103にて生成された結果を示す。
<相互関係テーブルD101>
相互関係テーブルD101は、図7及び図8に一例として示す部分集合の木構造T201、T202、T203、T204、T205、T206、T207及びT208に対応しており、各部分集合の木構造を表現するためのデータ構造を示す。後述するように、情報生成部103により各部分集合の木構造を表現するためのデータ構造が、相互関係テーブルD101として生成され、情報格納部102に書き込まれる。なお、相互関係テーブルD101は、記録装置及び再生装置の総数を8台とした場合において、情報生成部103にて生成された結果を示す。
部分集合の木構造T201及びT205は、それぞれ部分集合「1」及び部分集合「5」をルートし、レイヤ0からレイヤ5までの6階層からなる。部分集合の木構造T201及びT205の各ノードは、デバイス鍵テーブルD100に記録されている部分集合のうち、そのノードに対する親ノードを含み、且つ要素数が最小となる部分集合である。
部分集合の木構造T202、T204、T206及びT208は、それぞれ部分集合「2」、部分集合「4」、部分集合「6」及び部分集合「8」をルートし、レイヤ0の1階層からなる。つまり、ルートから子ノードの関連付けがなされていない。
以下、相互関係テーブルD101について説明する。
(3)情報生成部103
情報生成部103は、一方向性関数であり、入力データ長Xビットに対して、3Xビットの乱数を生成する擬似乱数生成器G150を予め記憶している。なお、擬似乱数生成器G150に対して、値a1を入力した場合の結果と、値a1とは異なる値a2を入力した場合の結果とは異なる。
情報生成部103は、受付部107よりデバイス鍵を生成及びデバイス鍵テーブルD100へ格納する旨を示す生成指示を受け取る。
情報生成部103は、装置情報格納部101にて管理している木構造の高さTを取得し、作業用デバイス鍵テーブルの行カウンタnに初期値0をセットする。
情報生成部103は、次の動作(a1)〜(a6)をi=0〜T−1までの間、繰り返す。
(a2)次の動作(a3)〜(a6)をj=0〜H−1までの間繰り返す。
(a3)行カウンタnに1を加算し、加算結果をnとする。
(a5)レイヤiの左からk番目のノードをルートとする部分木を取得し、取得した部分木のリーフから、2^j個の端末識別子を除き、残り1以上の端末識別子からなる部分集合を1個以上生成する。これにより、無効な端末識別子を除いた有効な端末識別子からなる部分集合が生成される。ただし、複数の装置を除く場合、つまり複数の無効な装置識別子を除く場合には、無効な端末識別子全てが共通にもち、且つ無効な端末装置識別子だけがもつ上位ノードが存在する場合のみとする。
上記の動作により、情報生成部103は、作業用デバイス鍵テーブルから、部分集合のみが記録されたデバイス鍵テーブルD100aを生成する。以上により、上記の動作にて、部分集合を生成する部分集合生成部が構成されることになる。
<デバイス鍵テーブルD100aの生成の具体例>
情報生成部103は、木構造T100の高さT=3を取得し、行カウンタnに初期値0をセットする。
(i=0の場合)
情報生成部103は、動作(a)により、レイヤi=0の存在するノードの数N=1を取得する。次に、情報生成部103は、レイヤi=0に存在するノードをルートとする部分木の高さH=3を取得する。
j=0の場合、先ず、動作(a3)において、行カウンタn(=0)に1加算し、n=1とする。次に、動作(a4)の繰り返しにより、動作(a5)及び(a6)を、k=1回行う。
動作(a5)において、木構造T100から、2^1(=2)個の端末識別子を除いた部分集合「123456」、「123478」、「125678」及び「345678」を生成し、動作(a6)において、生成した各部分集合を作業用デバイス鍵テーブルのn=2行目の未記録の列に対して、左から順に書き込む。
動作(a5)において、木構造T100から、2^2(=4)個の端末識別子を除いた部分集合「1234」及び「5678」を生成し、動作(a6)において、生成した各部分集合を作業用デバイス鍵テーブルのn=3行目の未記録の列に対して、左から順に書き込む。
情報生成部103は、動作(a)により、レイヤi=1の存在するノードの数N=2を取得する。次に、情報生成部103は、レイヤi=1に存在するノードをルートとする部分木の高さH=2を取得する。
情報生成部103は、動作(a2)において、j=0〜1までの間、動作(a3)〜(a6)を繰り返す。
k=1の場合、動作(a5)において、レイヤ1の左から1番目をルートとする部分木から、2^0(=1)個の端末識別子を除いた部分集合「123」、「124」、「134」及び「234」を生成し、動作(a6)において、生成した各部分集合を作業用デバイス鍵テーブルのn=4行目の未記録の列に対して、左から順に書き込む。
j=1の場合、動作(a3)において、現時点での行カウンタn(=4)の値に1加算し、n=5とする。次に、動作(a4)において、k=1〜2までの間、動作(a5)及び(a6)を繰り返す。
k=2の場合、動作(a5)において、レイヤ1の左から2番目をルートとする部分木から、2^1(=2)個の端末識別子を除いた部分集合「56」及び「78」を生成し、動作(a6)において、生成した各部分集合をデバイス鍵テーブルD100のn=5行目の未記録の列に対して、左から順に書き込む。
情報生成部103は、動作(a)により、レイヤi=2の存在するノードの数N=4を取得する。次に、情報生成部103は、レイヤi=2に存在するノードをルートとする部分木の高さH=1を取得する。
情報生成部103は、動作(a2)において、j=0〜H−1までの間、つまり、j=0の場合のみ、動作(a3)〜(a6)を行う。
k=1の場合、動作(a5)において、レイヤ1の左から1番目をルートとする部分木から、2^0(=1)個の端末識別子を除いた部分集合「1」及び「2」を生成し、動作(a6)において、生成した各部分集合を作業用デバイス鍵テーブルのn=6行目の未記録の列に対して、左から順に書き込む。
k=3の場合、動作(a5)において、レイヤ1の左から3番目をルートとする部分木から、2^0(=1)個の端末識別子を除いた部分集合「5」及び「6」を生成し、動作(a6)において、生成した各部分集合を作業用デバイス鍵テーブルのn=6行目の未記録の列に対して、左から順に書き込む。
(生成結果)
上記動作を行うことにより、情報生成部103は、図10に示すように、部分集合のみが記録されたデバイス鍵テーブルD100aを生成する。
6行目506に記録される8個の部分集合は、木構造T100のレイヤ2に存在する4つのノードそれぞれをルートする4つの部分木から生成される。
情報生成部103は、相互関係テーブルD101と同様の枠組みをもち、初期状態として何ら記録されていない作業用相互関係テーブルを予め有している。つまり、作業用相互関係テーブルは、相互関係テーブルD101において、何ら記録されていない状態のテーブルである。
情報生成部103は、次の動作(b1)〜(b11)をh=1〜2^Tまでの間、繰り返す。
(b1)Xビットからなる乱数Ahを生成して、生成した乱数Ahを、デバイス鍵テーブルD100aの{(T^2+T)/2}行、h列へ書き込む。これにより、情報生成部103は、デバイス鍵テーブルD100aの{(T^2+T)/2}行、h列の部分集合に対するラベルとして、乱数Ahを割り当てることができる。
(b3)取得した3Xビットの乱数をXビットごとに分割し、左から2番目に位置するXビットを、割り当てられたラベルに対応するデバイス鍵「Km」として、デバイス鍵テーブルD100aの{(T^2+T)/2}行、h列へ書き込む。また、両端に位置するXビットからなる2つの左ラベル及び右ラベルを、擬似乱数生成器Gへの入力に使用したラベル(つまり、乱数Ah)に対する部分集合と対応付けて、一時的に記憶しておく。ただし、デバイス鍵を示すKmの添字mは、初期値1から始まり、デバイス鍵が割り当てられる毎に1ずつ増加する値とし、Km+1は、Kmの次に割り当てられるデバイス鍵であることを示す。
(b5)デバイス鍵テーブルD100aのi+1行目でデバイス鍵及びラベルが割り当てられた部分集合の個数Jを取得する。
(b6)次の動作(b7)〜(b11)を、j=1〜Jまでの間、繰り返す。
(b8)動作(b7)の検索により、部分集合Sjを含み、デバイス鍵が未だ割り当てられていない部分集合が存在しない場合には、部分集合Sjを親ノードとし、親ノードである部分集合Sjと、その子ノードとなる部分集合が存在しないことを示す記号「−」とからなる組を、ノード情報として、作業用相互関係テーブル内の未記録である最上位の領域へ書き込む。つまり、部分集合Sjは、親ノードの項目に書き込まれ、記号「−」は、子ノードの項目に書き込まれる。さらに、部分集合Sjがルートである場合には、ルート情報に、ルートであることを示す情報(「ルート」)を記録し、ルートでない場合には、ルート情報には何も記録しない。部分集合Sjがルートであるか否かの判断方法は、部分集合Sjが記録されている行、つまりi+1の値が、{(T^2+T)/2}であるか否かを判断すればよい。i+1の値が{(T^2+T)/2}である場合には、部分集合Sjは、デバイス鍵テーブルD100aの最下層に存在するため、部分集合Sjに含まれる部分集合は存在しないことになる。つまり、部分集合Sjを子ノードとする親ノードが存在しないことになり、部分集合Sjがルートのノードとなる。
(b10)取得した部分集合が1つである場合には、部分集合Sjに対応付けられ、一時的に記憶している左ラベル及び右ラベルのうち右ラベルを、取得した部分集合に対するラベルとして割り当て、割り当てた右ラベルを、デバイス鍵テーブルD100a内の取得した部分集合が記録さている欄へ書き込む。取得した部分集合が2つ(ここでは、Tj及びUjとする)である場合には、2つの部分集合のうち左側に位置する部分集合Tjに対するラベルとして、部分集合Sjに対応付けられ、一時的に記憶している左ラベル及び右ラベルのうち左ラベルを割り当て、右側に位置する部分集合Ujに対するラベルとして、部分集合Sjに対応付けられ、一時的に記憶している左ラベル及び右ラベルのうち右ラベルを割り当てる。割り当てた左ラベルを、デバイス鍵テーブルD100a内の取得した部分集合Tjが記録さている欄へ書き込み、割り当てた右ラベルを、取得した部分集合Ujが記録さている欄へ書き込む。
以下に、デバイス鍵テーブルD100aを用いて、情報生成部103が、ラベル及びデバイス鍵の生成し、生成したラベル及びデバイス鍵を割り当てる具体的な動作について、説明する。
情報生成部103は、木構造T100の高さT=3を取得する。
情報生成部103は、以下の動作をh=1〜2^Tまで繰り返す。
(h=1の場合)
情報生成部103は、Xビットからなる乱数A1を生成して、生成した乱数A1を、6行、1列の部分集合「1」に対するラベルとして割り当て、割り当てられたラベルをデバイス鍵テーブルD100aの6行、1列へ書き込む。
情報生成部103は、取得した3Xビットの乱数をXビットごとに分割し、左から2番目に位置するXビットを、割り当てられたラベルに対応するデバイス鍵「K1」として、デバイス鍵テーブルD100aの6行、1列へ書き込む。また、両端に位置するXビットからなる2つの左ラベル(ここでは、A1Lと表記する。)及び右ラベル(ここでは、A1Rと表記する。)を、擬似乱数生成器Gへの入力に使用したラベルに対する部分集合「1」と対応付けて、一時的に記憶しておく。
i=5の場合、デバイス鍵テーブルD100aの6行目でデバイス鍵が割り当てられた部分集合の個数J=1を取得し、(b6)の繰り返しにより、動作(b8)〜(b11)を、j=1回行う。情報生成部103は、動作(b8)にて、デバイス鍵テーブルD100aの6行目でデバイス鍵が割り当てられた左から1番目の部分集合「1」を基準として、デバイス鍵テーブルD100aの5行目を左から順に、部分集合「1」を含み、且つデバイス鍵が未だ割り当てられていない部分集合を検索する。動作(b9)にて、部分集合「1」を含み、デバイス鍵が未だ割り当てられていない部分集合「12」を取得し、動作(b10)にて、一時的に記憶している右ラベル「A1R」を、取得した部分集合「12」に対するラベルとして割り当て、割り当てた右ラベルを、デバイス鍵テーブルD100a内の取得した部分集合「12」が記録さている欄へ書き込む。情報生成部103は、動作(b11)にて、擬似乱数生成器Gに、取得した部分集合「12」に割り当てられたラベル「A1R」を入力値として与え、その出力として3Xビットの乱数を取得し、取得した3Xビットの乱数をXビットごとに分割し、左から2番目に位置するXビットを、割り当てられたラベルに対応するデバイス鍵「K2」として、デバイス鍵テーブルD100a内の取得した部分集合「12」が記録さている欄へ書き込む。両端に位置するXビットからなる2つの左ラベル(A1RL)及び右ラベル(A1RR)を、擬似乱数生成器Gへの入力に使用したラベルに対する部分集合「12」と対応付けて、一時的に記憶しておく。さらに、部分集合「1」を親ノードとし、取得した部分集合をその子ノードとして、作業用相互関係テーブル内の未記録である最上位の領域へ書き込む。さらに、部分集合「1」はルートであるので、ルートであることを示す情報(「ルート」)を記録する。
また、h=2、3、4、5、6、7及び8のそれぞれに対しても、上記に示す動作を行うことにより、部分集合「2」、「3」、「4」、「5」、「6」、「7」及び「8」をルートとする木構造T202、T203、T204、T205、T206、T207及びT208を示すデータ構造、及びデバイス鍵「K12」〜「K34」と、各デバイス鍵に対応するラベルを取得することができる。
上記動作を行うことにより、情報生成部103は、図5及び図6に示すように、デバイス鍵テーブルD100及び相互関係テーブルD101を生成する。
デバイス鍵テーブルD100の1行目には、1つの端末識別子が除かれた部分集合、つまり7つの有効な端末識別子からなる部分集合、それら部分集合に割り当てられたラベル及びデバイス鍵が記録され、2行目には、5つの有効な端末識別子からなる部分集合、それら部分集合に割り当てられたラベル及びデバイス鍵が記録され、3行目には、4つの有効な端末識別子からなる部分集合、それら部分集合に割り当てられたラベル及びデバイス鍵が記録されている。以下、4行目、5行目及び6行目には、それぞれ3つの有効な端末識別子、2つの有効な端末識別子及び1つの有効な端末識別子からなる部分集合、それら部分集合に割り当てられたラベル及びデバイス鍵が記録されている。
ここで、上記動作により各部分集合が関連付けられた状態を、図11のテーブルにて示す。テーブルの各要素は、部分集合であり、矢印は、2つの部分集合が関連付けられる方向を示す。部分集合の関連付けは、親ノードである部分集合に対応するラベルから、その子ノードに対応するラベルが生成できることを意味している。
(4)配布部104
配布部104は、装置へ配布するラベル及びそのラベルに対応する部分集合を、一時的に記憶する鍵情報記憶領域を備えている。
配布部104は、配布指示及び装置識別子を受け取ると、受け取った装置識別子に対する装置へ、配布するラベルと、そのラベルに対応する部分集合とを含む鍵情報を1以上生成して取得する。なお、鍵情報の取得方法については、後述する。
配布部104は、取得した1以上の鍵情報と、読み出した相互関係テーブルD101とを受け付けた装置識別子に対応する装置へ配布する。
ここで、配布方法に一例を、以下に説明する。配布部104は、当該鍵管理装置100に装着された配布用の記録媒体に、受け付けた装置識別子と、取得した1以上の鍵情報と、読み出した相互関係テーブルD101とを書き込む。鍵管理装置100を管理する業者は、装置識別子と、1以上の鍵情報と、相互関係テーブルD101とが書き込まれた記録媒体を、装置を製造する製造業者へ配布する。製造業者は、記録媒体を受け取ると、記録媒体に記録されている装置識別子に対応する装置の製造中に、記録媒体に記録されている1以上の鍵情報と、相互関係テーブルとを読み出し、読み出した1以上の鍵情報と相互関係テーブルD101とを製造中の装置へ書き込む。これにより、装置識別子に対応する装置へ、1以上の鍵情報と相互関係テーブルD101とを配布することができる。
ここでは、鍵情報の取得の動作について説明する。
配布部104は、配布指示と、配布する装置の装置識別子を受け取ると、相互関係テーブルD101にて管理されている木構造の個数Yを取得する。
配布部104は、次の動作(c1)〜(c6)を、i=1〜Yまでの間繰り返す。
(c2)取得したデータ構造から、子ノードを持たないノード(つまり、リーフ)の数Pを取得する。
(c3)配布部104は、次の動作(c4)〜(c6)を、p=1〜Pまでの間繰り返す。
(c5)動作(c4)の検索により、ノードを検出すると、検出したノードが鍵情報記憶領域に記憶済みであるか否かを判断する。
配布部104は、相互関係テーブルD101と全ての鍵情報とを、受け取った装置識別子をもつ装置へ配布した後、鍵情報記憶領域にて記憶している全ての鍵情報を消去する。なお、ここで、配布とは、例えば、配布用の記録媒体に、受け付けた装置識別子と、鍵情報記憶領域にて記憶している1以上の鍵情報と、相互関係テーブルD101との書き込みが完了したことをいう。
以下に、デバイス鍵テーブルD100及び相互関係テーブルD101を用いて、装置識別子1が与えられた場合における、鍵情報の取得の具体的な動作について、説明する。
配布部104は、配布指示と装置識別子「1」とを受け取ると、相互関係テーブルD101にて管理されている木構造の個数8を取得する。
(i=1の場合)
配布部104は、相互関係テーブルD101にて上位から1番目に管理されている木構造V1を示すデータ構造を取得する。ここでは、木構造V1を示すデータ構造は、相互関係テーブルD101の1行目から15行目までに示されるデータ構造D300である。
配布部104は、動作(c4)〜(c6)を、p=1〜5までの間繰り返す。
p=1の場合において、配布部104は、取得したデータ構造の親ノードの項目から、子ノードを持たない、上位1番目のノードW1(ここでは、図6における部分集合D302「124」となる。)を取得し、木構造V1のルートを起点として、リーフW1までに至る経路に対して、受け取った装置識別子を含む部分集合が出現する最初のノード(部分集合)を検索する。配布部104は、検索により、ノード1(ここでは、図6における部分集合D301「1」)を検出し、検出した部分集合D301「1」が既に鍵情報記憶領域に記憶済みであるか否かを判断する。
p=2の場合において、配布部104は、取得したデータ構造の親ノードの項目から、子ノードを持たない、上位2番目のノードW2(ここでは、部分集合D303「1234567」となる。)を取得し、木構造V1のルートを起点として、リーフW2までに至る経路に対して、受け取った装置識別子を含む部分集合が出現する最初のノード(部分集合)を検索して、ノード1(ここでは、部分集合D301「1」)を検出するが、鍵情報記憶領域に記憶済みあると判断し、鍵情報の生成及び鍵情報記憶領域への記憶は行わない。
(i=2の場合)
配布部104は、相互関係テーブルD101にて上位から2番目に管理されている木構造V2を示すデータ構造を取得する。ここでは、木構造V2を示すデータ構造は、相互関係テーブルD101の16行目からなるデータ構造D310である。
配布部104は、動作(c4)〜(c6)を、p=1回、行う。
配布部104は、取得したデータ構造の親ノードの項目から、子ノードを持たない、上位1番目のノードW1(ここでは、部分集合D311「2」となる。)を取得し、木構造V2のルートを起点として、リーフW1までに至る経路に対して、受け取った装置識別子を含む部分集合が出現する最初のノード(部分集合)を検索する。配布部104は、検索により、ノードは検出しない。
配布部104は、相互関係テーブルD101にて上位から3番目に管理されている木構造V3を示すデータ構造を取得する。ここでは、木構造V3を示すデータ構造は、相互関係テーブルD101の17行目から21行目までからなるデータ構造D320である。
配布部104は、取得したデータ構造から、子ノードを持たないノード(つまり、リーフ)の数2を取得する。
p=1の場合において、配布部104は、取得したデータ構造の親ノードの項目から、子ノードを持たない、上位1番目のノードW1(ここでは、部分集合D321「134」となる。)を取得し、木構造V3のルートを起点として、リーフW1までに至る経路に対して、受け取った装置識別子を含む部分集合が出現する最初のノード(部分集合)を検索する。配布部104は、検索により、ノード(ここでは、部分集合D321「134」)を検出し、検出した部分集合D321「134」が、鍵情報記憶領域に記憶済みであるか否かを判断する。
p=2の場合において、配布部104は、取得したデータ構造の親ノードの項目から、子ノードを持たない、上位2番目のノードW2(ここでは、部分集合D322「234」となる。)を取得し、木構造V3のルートを起点として、リーフW2までに至る経路に対して、受け取った装置識別子を含む部分集合が出現する最初のノード(部分集合)を検索する。配布部104は、検索により、ノードは検出しない。
配布部104は、相互関係テーブルD101にて上位から4番目に管理されている木構造V4を示すデータ構造を取得する。ここでは、木構造V4を示すデータ構造は、相互関係テーブルD101の22行目からなるデータ構造D330である。
配布部104は、取得したデータ構造から、子ノードを持たないノード(つまり、リーフ)の数1を取得する。
配布部104は、取得したデータ構造の親ノードの項目から、子ノードを持たない、上位1番目のノードW1(ここでは、部分集合D331「4」となる。)を取得し、木構造V4のルートを起点として、リーフW1までに至る経路に対して、受け取った装置識別子を含む部分集合が出現する最初のノード(部分集合)を検索する。配布部104は、検索により、ノードは検出しない。
以上により、配布部104は、受け取った装置識別子に対応する装置へ配布するラベル及び部分集合からなる鍵情報を全て鍵情報記憶領域へ記憶する。配布部104は、相互関係テーブルD101を情報格納部102から読み出し、読み出した相互関係テーブルD101と、鍵情報記憶領域にて記憶している全ての鍵情報とを、装置識別子1を有する装置へ配布する。
また、図12に示すテーブルD400にて、装置1から装置8のそれぞれに配布する鍵情報、つまり各装置が保持する鍵情報の合計数及び鍵情報を示す。なお、図12では、鍵情報を、鍵情報に含まれる部分集合の要素の数が少ないものから順に、左より記述している。例えば、従来の装置が保持するラベルの数は、各装置とも均一に6個保持していたが、装置1が保持する鍵情報の個数は4個であり、従来よりも2個少なくなる。合計の項目における括弧内の数値は、装置が保持する鍵情報の数と、従来の装置が保持するラベルの数とを比較した場合の差分を示す。
(5)無効化装置特定部105
無効化された装置を識別する装置識別子を1個以上記憶する無効化装置記憶領域を有している。なお、無効化装置記憶領域は、初期状態では、何も記憶されていない。
(6)鍵無効化データ生成部106
鍵無効化データ生成部106は、メディア鍵を予め記憶しているメディア鍵記憶領域を有している。
鍵無効化データ生成部106は、無効化装置特定部105より作成指示を受け取ると、無効化装置特定部105の無効化装置記憶領域に、装置識別子が記憶されているか否かを判断、つまり無効化する装置の装置識別子(以下、無効な装置識別子という。)が無効化装置記憶領域に存在するか否かを判断する。
(7)受付部107
受付部107は、ユーザの操作により、生成指示を受け付け、受け付けた生成指示を情報生成部103へ出力する。
受付部107は、ユーザの操作により、登録指示を受け付けると、続けて、無効化する装置の装置識別子を1以上受け付ける。受付部107は、受け付けた登録指示及び1以上の装置識別子を無効化装置特定部105へ出力する。
(8)出力部108
出力部108は、鍵無効化データ生成部106から情報を受け取り、受け取った情報を書き込むための領域である鍵無効化データ格納部201を記録媒体200a上に確保し、受け取った情報を、確保した鍵無効化データ格納部201へ書き込む。
記録媒体200は、DVD−RAM等のレコーダブルメディアであって初期状態として何らの情報も記録されていない。
記録媒体200には、図13にて示すように、鍵管理装置100の鍵無効化データ生成部106の動作終了後において、鍵無効化データ格納部201が確保され、さらに、後述する記録装置300の動作により、暗号化コンテンツ鍵格納部202及び暗号化コンテンツ格納部203が確保される。
鍵無効化データ格納部201は、鍵管理装置100の鍵無効化データ生成部106の動作により、何ら情報も記録されていない記録媒体200aから初めて確保される領域である。
鍵無効化データ格納部201には、暗号化メディア鍵と、各暗号化メディア鍵に対応付けられた部分集合とからなる組、つまり鍵無効化データが1以上記録される。
(2)暗号化コンテンツ鍵格納部202及び暗号化コンテンツ格納部203
暗号化コンテンツ鍵格納部202及び暗号化コンテンツ格納部203は、記録装置300の動作により、記録媒体200bの状態から確保される領域である。
暗号化コンテンツ鍵格納部202には、コンテンツ鍵を、メディア鍵を用いて共通鍵暗号アルゴリズム(例えば、DES)で暗号化した暗号化コンテンツ鍵が記録される。
1.4 記録装置300
記録装置300a、300b、・・・、300cは、同様の構成を有しているので、ここでは、記録装置300として説明する。
記録装置300は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニットなどから構成されるコンピュータシステムである。前記RAM又は前記ハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムに従って動作することにより、記録装置300は、その機能を達成する。
なお、以降の説明では、記録装置300に記録媒体200bが装着されているものとする。
(1)鍵情報格納部301
鍵情報格納部301は、鍵管理装置100より配布された1以上の鍵情報と相互関係テーブルD101を予め記憶している。
(2)コンテンツ格納部302
コンテンツ格納部302は、映像情報及び音声情報からなるコンテンツを予め記憶している。
コンテンツ鍵格納部303は、コンテンツ格納部302にて記憶しているコンテンツを暗号化するためのコンテンツ鍵を記憶している。
(4)復号鍵生成部304
復号鍵生成部304は、鍵管理装置100の情報生成部103が有する擬似乱数生成器G150と同一の擬似乱数生成器G151を予め記憶している。擬似乱数生成器G151は、擬似乱数生成器G150と同一であるため、ここでの説明は省略する。
復号鍵生成部304は、相互関係テーブルD101を用いて、読み出した各鍵情報に含まれる部分集合から、基準部分集合に至る経路をもつ部分集合を検索する。
検索結果により、読み出した各鍵情報に含まれる各部分集合から、基準部分集合に至る経路をもつ部分集合(以下、検出部分集合という。)を検出した場合には、復号鍵生成部304は、以下に示すデバイス鍵の取得動作により、暗号化メディア鍵の復号鍵であるデバイス鍵を取得し、取得したデバイス鍵と、基準部分集合とを復号部305へ出力する。ここで、基準部分集合と一致する部分集合が、読み出した各鍵情報に含まれる各部分集合に含まれている場合には、復号鍵生成部304は、その一致する部分集合を検出部分集合として検出する。
復号鍵生成部304は、検出部分集合を含む鍵情報から、Xビットからなるラベルを取得する。
検出部分集合から基準部分集合までの経路に存在するノードの個数Zを取得する。復号鍵生成部304は、以下のようにして、擬似乱数生成器G151をZ回利用する。
復号鍵生成部304は、Z回目に取得した3Xビットの乱数をXビットごとに分割し、左から2番目に位置するXビットを、暗号化メディア鍵の復号に用いるデバイス鍵として取得する。
ここで、デバイス鍵の取得の具体例として、記録装置300が装置識別子1を有する場合、記録装置300が装置識別子2を有する場合、及び記録装置300が装置識別子3を有する場合について、説明する。このとき、記録媒体200bは、図15に示すように、鍵無効化データ格納部201に、部分集合「2345678」と暗号化メディア鍵(K28、メディア鍵)とを記憶している。
記録装置300が、装置識別子2を有している場合には、記憶している5つの鍵情報のそれぞれに含まれる部分集合から基準部分集合「2345678」へ至る経路をもつ部分集合として、部分集合「2345678」を検出し、検出した部分集合「2345678」を検出部分集合とする。復号鍵生成部304は、検出部分集合を含む鍵情報からラベル「A5RLRRR」を取得する。さらに、復号鍵生成部304は、検出部分集合から基準部分集合までに至るノード数Z=1を取得する。復号鍵生成部304は、取得したラベル「A5RLRRR」を入力値として、擬似乱数生成器G151をZ=1回利用して、3Xビットからなる乱数を生成し取得する。復号鍵生成部304は、取得した3Xビットの乱数をXビットごとに分割し、左から2番目に位置するXビットを、暗号化メディア鍵の復号に用いるデバイス鍵「K28」として取得する。
復号部305は、暗号化メディア鍵を生成した共通鍵暗号化アルゴリズムと同じ共通鍵暗号化アルゴリズムを有している。
復号部305は、復号鍵生成部304からデバイス鍵と、基準部分集合とを受け取ると、記録媒体200bの鍵無効化データ格納部201から、受け取った基準部分集合に対応する暗号化メディア鍵を、入出力部309を介して読み出す。
(6)第1暗号化部306
第1暗号化部306は、共通鍵暗号アルゴリズム(例えば、DES)を有している。
第1暗号化部306は、読み出したコンテンツ鍵を、メディア鍵を用いて共通鍵暗号アルゴリズムで暗号化して、暗号化コンテンツ鍵Enc(メディア鍵、コンテンツ鍵)を生成し、生成した暗号化コンテンツ鍵を、入出力部309を介して記録媒体200bの暗号化コンテンツ鍵格納部202へ書き込む。
(7)第2暗号化部307
第2暗号化部307は、共通鍵暗号アルゴリズム(例えば、DES)を有している。
第2暗号化部307は、第1暗号化部306から、暗号化命令を受け取ると、コンテンツ鍵格納部303よりコンテンツ鍵を、コンテンツ格納部302からコンテンツを、それぞれ読み出す。
なお、第1暗号化部306及び第2暗号化部307が、各情報を記録媒体200bへ書き込むことにより、記録媒体200cが生成されていることに注意されたい。
受付部308は、ユーザの操作により、記録指示を受け付け、受け付けた記録指示を復号鍵生成部304へ出力する。
(9)入出力部309
入出力部309は、基準部分集合を、記録媒体200bの鍵無効化データ格納部201から読み出し、読み出した基準部分集合を復号鍵生成部304へ出力する。
入出力部309は、第1暗号化部306から暗号化コンテンツ鍵を受け取り、受け取った暗号化コンテンツ鍵を書き込むために、暗号化コンテンツ鍵格納部202を記録媒体200b上に確保し、確保した暗号化コンテンツ鍵格納部202に受け取った暗号化コンテンツ鍵を書き込む。
1.5 再生装置400
再生装置400a、400b、・・・、400cは、同様の構成を有しているので、ここでは、再生装置400として説明する。
再生装置400は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニットなどから構成されるコンピュータシステムである。前記RAM又は前記ハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムに従って動作することにより、再生装置400は、その機能を達成する。
なお、以降の説明では、再生装置400に記録媒体200cが装着されているものとする。
(1)鍵情報格納部401
鍵情報格納部401は、鍵管理装置100より配布された1以上の鍵情報と相互関係テーブルD101を予め記憶している。
(2)復号鍵生成部402
復号鍵生成部402は、鍵管理装置100の情報生成部103が有する擬似乱数生成器G150と同一の擬似乱数生成器G152を予め記憶している。擬似乱数生成器G152は、擬似乱数生成器G150と同一であるため、ここでの説明は省略する。
復号鍵生成部402は、鍵情報格納部401から相互関係テーブルD101と1以上の鍵情報とを読み出す。
検索結果により、読み出した各鍵情報に含まれる部分集合から、検出部分集合を検出した場合には、復号鍵生成部402は、デバイス鍵の取得動作により、暗号化メディア鍵の復号鍵であるデバイス鍵を取得し、取得したデバイス鍵と、基準部分集合とを第1復号部403へ出力する。
<デバイス鍵の取得の具体例>
ここで、デバイス鍵の取得の具体例として、再生装置400が装置識別子1を有する場合、及び再生装置400が装置識別子7を有する場合について、説明する。このとき、記録媒体200cは、図17に示すように、鍵無効化データ格納部201に、部分集合「2345678」と暗号化メディア鍵(K28、メディア鍵)とを記憶し、暗号化コンテンツ鍵格納部202に、暗号化コンテンツ鍵Enc(メディア鍵、コンテンツ鍵)を記憶し、暗号化コンテンツ格納部203に、暗号化コンテンツEnc(コンテンツ鍵、コンテンツ)を記憶している。
再生装置400が、装置識別子7を有している場合には、記憶している5つの鍵情報のそれぞれに含まれる部分集合から検出部分集合「567」を検出し、検出部分集合を含む鍵情報からラベル「A5RL」を取得する。復号鍵生成部402は、擬似乱数生成器G152と、取得したラベル「A5RL」とを用いて、デバイス鍵「K28」を取得する。
第1復号部403は、暗号化メディア鍵を生成した共通鍵暗号化アルゴリズムと同じ共通鍵暗号化アルゴリズムを有している。
第1復号部403は、復号鍵生成部402からデバイス鍵と、基準部分集合とを受け取ると、記録媒体200cの鍵無効化データ格納部201から、受け取った基準部分集合に対応する暗号化メディア鍵を、読出部408を介して読み出す。
(4)第2復号部404
第2復号部404は、暗号化コンテンツ鍵を生成した共通鍵暗号化アルゴリズムと同じ共通鍵暗号化アルゴリズムを有している。
第2復号部404は、読み出した暗号化コンテンツ鍵を、受け取ったメディア鍵を用いて共通鍵暗号アルゴリズムで復号して、コンテンツ鍵を生成し、生成したコンテンツ鍵を第3復号部405へ出力する。
第3復号部405は、暗号化コンテンツを生成した共通鍵暗号化アルゴリズムと同じ共通鍵暗号化アルゴリズムを有している。
第3復号部405は、第2復号部404からコンテンツ鍵を受け取ると、読出部408を介して記録媒体200cの暗号化コンテンツ格納部203から、暗号化コンテンツを読み出す。
(6)再生部406
再生部406は、第3復号部405からコンテンツDCNTを受け取り、受け取ったコンテンツから映像情報及び音声情報を生成し、生成した映像情報及び音声情報をアナログの映像信号及び音声信号に変換し、アナログの映像信号及び音声信号をモニタ420へ出力する。
受付部407は、ユーザの操作により再生指示を受け付け、受け付けた再生指示を復号鍵生成部402へ出力する。
(8)読出部408
読出部408は、基準部分集合を、記録媒体200cの鍵無効化データ格納部201から読み出し、読み出した基準部分集合を復号鍵生成部402へ出力する。
読出部408は、暗号化コンテンツ鍵を、記録媒体200cの暗号化コンテンツ鍵格納部202から読み出し、読み出した暗号化コンテンツ鍵を第2復号部404へ出力する。
(9)モニタ420
モニタ420は、CRT及びスピーカを備え、再生部406からアナログの映像信号及び音声信号を受信し、映像信号に基づいて映像を表示し、音声信号に基づいて音声を出力する。
ここでは、鍵管理装置100が、生成指示を受け取ったときの動作、鍵情報の配布時の動作及び鍵無効化データの生成時の動作について動作について、説明する。
(1)生成処理の動作概要
ここでは、鍵管理装置100が生成指示を受け取ったときの動作の概要について、図18に示す流れ図を用いて、説明する。
情報生成部103は、次に、デバイス鍵の生成処理を行い、デバイス鍵テーブルD100及び相互関係テーブルD101を生成する(ステップS15)。
ここでは、部分集合の生成処理の動作について、図19及び図20に示す流れ図を用いて、説明する。
情報生成部103は、装置情報格納部101にて管理している木構造の高さTを取得し(ステップS50)、作業用デバイス鍵テーブルの行カウンタnに初期値0をセットする(ステップS55)。
情報生成部103は、レイヤiの存在するノードの数Nを取得する(ステップS65)。次に、情報生成部103は、レイヤiに存在するノードをルートとする部分木の高さHを取得する(ステップS70)。
情報生成部103は、行カウンタnに1を加算し、加算結果をnとする(ステップS80)。
次に、情報生成部103は、k=1〜Nまでの間、ステップS90〜ステップS100を繰り返す。
(3)デバイス鍵の生成処理の動作
ここでは、デバイス鍵の生成処理の動作について、図21〜図25に示す流れ図を用いて、説明する。
情報生成部103は、h=1〜2^Tまでの間、ステップS160〜ステップS345を繰り返す。
情報生成部103は、Xビットからなる乱数Ahを生成し(ステップS160)、生成した乱数Ahを、デバイス鍵テーブルD100aの{(T^2+T)/2}行、h列へ書き込む(ステップS165)。
情報生成部103は、取得したデバイス鍵「Km」を、デバイス鍵テーブルD100aの{(T^2+T)/2}行、h列へ書き込む(ステップS175)。情報生成部103は、左ラベル及び右ラベルを、擬似乱数生成器Gへの入力に使用したラベル(つまり、乱数Ah)に対する部分集合と対応付けて、一時的に記憶しておく(ステップS180)。ただし、デバイス鍵を示す「Km」の添字mは、初期値1から始まり、デバイス鍵が割り当てられる毎に1ずつ増加する値とし、「Km+1」は、「Km」の次に割り当てられるデバイス鍵であることを示す。
情報生成部103は、デバイス鍵テーブルD100aのi+1行目でデバイス鍵が割り当てられた部分集合の個数Jを取得する(ステップS190)。
情報生成部103は、j=1〜Jまでの間、ステップS200〜ステップS335を繰り返す。
情報生成部103は、検索により、部分集合Sjを含み、デバイス鍵が未だ割り当てられていない部分集合が存在するか否かを判断する(ステップS205)。
情報生成部103は、取得した部分集合が1つであるか否かを判断する(ステップS230)。
情報生成部103は、取得したデバイス鍵「Km」を、デバイス鍵テーブルD100a内の取得した部分集合が記録さている欄へ書き込む(ステップS245)。さらに、情報生成部103は、ステップS240にて取得した2つの左ラベル及び右ラベルを、擬似乱数生成器Gへの入力に使用したラベルに対する部分集合(つまり、ステップS225にて取得した部分集合)と対応付けて、一時的に記憶しておく(ステップS250)。情報生成部103は、部分集合Sjを親ノードとし、取得した部分集合をその子ノードとして、作業用相互関係テーブル内の未記録である最上位の領域へ書き込む(ステップS255)。さらに、部分集合Sjがルートであるか否かを判断し(ステップS260)、ルートであると判断する場合には(ステップS260における「YES」)、ルート情報に、ルートであることを示す情報(「ルート」)を記録する(ステップS265)。ルートでないと判断する場合には(ステップS260における「NO」)、ステップS265を省略する。
情報生成部103は、取得したデバイス鍵「Km」を、デバイス鍵テーブルD100a内の取得した部分集合が記録さている欄へ書き込む(ステップS280)。さらに、情報生成部103は、ステップS275にて取得した2つの左ラベル及び右ラベルを、擬似乱数生成器Gへの入力に使用したラベルに対する部分集合Tjと対応付けて、一時的に記憶しておく(ステップS285)。情報生成部103は、部分集合Sjを親ノードとし、取得した部分集合Tjをその子ノードとして、作業用相互関係テーブル内の未記録である最上位の領域へ書き込む(ステップS290)。さらに、部分集合Sjがルートであるか否かを判断し(ステップS295)、ルートであると判断する場合には(ステップS295における「YES」)、ルート情報に、ルートであることを示す情報(「ルート」)を記録する(ステップS300)。ルートでないと判断する場合には(ステップS295における「NO」)、ステップS300を省略する。
情報生成部103は、擬似乱数生成器Gに、取得した部分集合Ujに割り当てられたラベル(つまり、部分集合Sjに対応する右ラベル)を入力値として与え、その出力としてデバイス鍵「Km+1」、左ラベル及び右ラベルを取得する(ステップS310)。
(4)鍵情報の配布時の動作
ここでは、鍵情報の配布時に行う鍵情報の取得処理の動作について、図26及び図27に示す流れ図を用いて、説明する。
配布部104は、i=1〜Yまでの間、ステップS415〜ステップS465を繰り返す。
配布部104は、取得したデータ構造から、子ノードを持たないノード(つまり、リーフ)の数Pを取得する(ステップS420)。
配布部104は、p=1〜Pまでの間、ステップS430〜ステップS460を繰り返す。
部分集合を検出したと判断する場合には(ステップS440における「YES」)、検出した部分集合が鍵情報記憶領域に記憶済みであるか否かを判断する(ステップS445)。
配布部104は、相互関係テーブルD101と全ての鍵情報とを、受け取った装置識別子をもつ装置へ配布した後、鍵情報記憶領域にて記憶している全ての鍵情報を消去する(ステップS485)。なお、ここで、配布とは、例えば、配布用の記録媒体に、受け付けた装置識別子と、鍵情報記憶領域にて記憶している1以上の鍵情報との書き込みが完了したことをいう。
ここでは、鍵無効化データの生成時に行う鍵無効化データ生成処理の動作について、図28に示す流れ図を用いて、説明する。
鍵無効化データ生成部106は、無効化装置特定部105を介して受付部107より作成指示を受け取ると(ステップS500)、無効化装置特定部105の無効化装置記憶領域に、装置識別子が記憶されているか否かを判断、つまり無効な装置識別子が無効化装置記憶領域に存在するか否かを判断する(ステップS505)。
鍵無効化データ生成部106は、読み出した各部分集合に対応する第1及び第2デバイス鍵を、デバイス鍵テーブルD100から読み出す(ステップS515)。
第2部分集合及び第2暗号化メディア鍵を、出力部108を介して記録媒体200aへ書き込む(ステップS535)。
無効な装置識別子が記憶されていると判断する場合には(ステップS505における「YES」)、鍵無効化データ生成部106は、木構造T100にて管理している全装置識別子から無効な装置識別子を除いた1以上の有効な装置識別子のうち、最も多くの有効な装置識別子からなる部分集合をデバイス鍵テーブルD100から読み出す(ステップS540)。
選択されていないと判断する場合には(ステップS555における「NO」)、1以上の未選択の有効な装置識別子を用いて、ステップS54以降を、再度実行する。
1.7 記録装置300の動作
ここでは、記録装置300が、記録指示を受け取ったときの動作について動作について、説明する。
ここでは、記録装置300が記録指示を受け取ったときに、復号鍵生成部304、復号部305、第1暗号化部306及び第2暗号化部307にて行う記録処理の動作について、図29に示す流れ図を用いて、説明する。
記録装置300の復号鍵生成部304は、受付部308より、記録指示を受け取ると(ステップS600)、入出力部309を介して当該記録装置300に装着された記録媒体200bより、記録媒体200bに記録されている1以上の暗号化メディア鍵のそれぞれに対応する部分集合のうち、1つの部分集合(以下、基準部分集合という。)を読み出す(ステップS605)。
復号鍵生成部304は、相互関係テーブルD101を用いて、読み出した各鍵情報に含まれる部分集合から、検出部分集合を検索する(ステップS615)。
検索結果により、読み出した各鍵情報に含まれる部分集合から、検出部分集合を検出したか否かを判断する(ステップS620)。
次に、復号部305は、デバイス鍵取得処理にて取得されたデバイス鍵を用いて、復号処理を行い、暗号化メディア鍵を復号して、メディア鍵を生成する(ステップS640)。
第2暗号化部307は、コンテンツ鍵を用いて、第2暗号化処理を行い、暗号化コンテンツを生成する(ステップS650)。
(2)デバイス鍵の取得処理の動作
ここでは、図29に示す記録処理のステップS635にて行われるデバイス鍵の取得処理の動作について、図30に示す流れ図を用いて、説明する。
検出部分集合から基準部分集合までの経路に存在するノードの個数Zを取得する(ステップS705)。
復号鍵生成部304は、z=1〜Zまでの間、ステップS715〜ステップS735までを、繰り返す。
復号鍵生成部304は、検出部分集合から基準部分集合までに至る経路において、入力値として利用したラベルに対応する部分集合に対する次のノードが存在するか否かを判断する(ステップS720)。
復号鍵生成部304は、Z回目に取得した3Xビットの乱数をXビットごとに分割し、左から2番目に位置するXビットを、暗号化メディア鍵の復号に用いるデバイス鍵として取得する(ステップS745)。
(3)復号処理の動作
ここでは、図29に示す記録処理のステップS640にて行われる復号処理の動作について、図31に示す流れ図を用いて、説明する。
復号部305は、読み出した暗号化メディア鍵を、受け取ったデバイス鍵を用いて共通鍵暗号アルゴリズムで復号して、メディア鍵を生成し(ステップS810)、生成したメディア鍵を第1暗号化部306へ出力する(ステップS815)。
ここでは、図29に示す記録処理のステップS645にて行われる第1暗号化処理の動作について、図32に示す流れ図を用いて、説明する。
第1暗号化部306は、復号部305からメディア鍵を受け取ると(ステップS830)、コンテンツ鍵格納部303よりコンテンツ鍵を読み出す(ステップS835)。
さらに、第1暗号化部306は、第2暗号化部307へコンテンツの暗号化を指示する旨の暗号化命令を出力する(ステップS850)。
ここでは、図29に示す記録処理のステップS650にて行われる第2暗号化処理の動作について、図33に示す流れ図を用いて、説明する。
第2暗号化部307は、第1暗号化部306から、暗号化命令を受け取ると(ステップS870)、コンテンツ鍵格納部303よりコンテンツ鍵を、コンテンツ格納部302からコンテンツを、それぞれ読み出す(ステップS875)。
1.8 再生装置400の動作
ここでは、再生装置400が、再生指示を受け取ったときの動作について動作について、説明する。
ここでは、再生装置400が再生指示を受け取ったときに、復号鍵生成部402、第1復号部403、第2復号部404、第3復号部405及び再生部406にて行う再生処理の動作について、図34に示す流れ図を用いて、説明する。
再生装置400の復号鍵生成部402は、受付部407より、再生指示を受け取ると(ステップS900)、読出部408を介して当該再生装置400に装着された記録媒体200cより、記録媒体200cに記録されている1以上の暗号化メディア鍵のそれぞれに対応する部分集合のうち、1つの部分集合(以下、基準部分集合という。)を読み出す(ステップS905)。
復号鍵生成部402は、相互関係テーブルD101を用いて、読み出した各鍵情報に含まれる部分集合から、検出部分集合を検索する(ステップS915)。
検索結果により、読み出した各鍵情報に含まれる部分集合から、検出部分集合を検出したか否かを判断する(ステップS920)。
次に、第1復号部403は、デバイス鍵取得処理にて取得されたデバイス鍵を用いて、復号処理を行い、暗号化メディア鍵を復号して、メディア鍵を生成する(ステップS940)。
第3復号部405は、第2復号処理にて生成されたコンテンツ鍵を用いて、第2暗号化処理を行い、暗号化コンテンツを復号してコンテンツを生成する(ステップS950)。
(2)デバイス鍵の取得処理の動作
ここでは、図34に示す再生処理のステップS935にて行われるデバイス鍵の取得処理の動作について、図35に示す流れ図を用いて、説明する。
復号鍵生成部402は、検出部分集合から基準部分集合までの経路に存在するノードの個数Zを取得する(ステップS1005)。
復号鍵生成部402は、z=1〜Zまでの間、ステップS1015〜ステップS1035までを繰り返す。
復号鍵生成部402は、検出部分集合から基準部分集合までに至る経路において、入力値として利用したラベルに対応する部分集合に対する次のノードが存在するか否かを判断する(ステップS1020)。
復号鍵生成部402は、Z回目に取得した3Xビットの乱数をXビットごとに分割し、左から2番目に位置するXビットを、暗号化メディア鍵の復号に用いるデバイス鍵として取得する(ステップS1045)。
(3)第1復号処理の動作
ここでは、図34に示す再生処理のステップS940にて行われる復号処理の動作について、図36に示す流れ図を用いて、説明する。
第1復号部403は、読み出した暗号化メディア鍵を、受け取ったデバイス鍵を用いて共通鍵暗号アルゴリズムで復号して、メディア鍵を生成し(ステップS1110)、生成したメディア鍵を第2復号部404へ出力する(ステップS1115)。
ここでは、図34に示す再生処理のステップS945にて行われる第2復号処理の動作について、図37に示す流れ図を用いて、説明する。
第2復号部404は、第1復号部403からメディア鍵を受け取ると(ステップS1130)、
読出部408を介して記録媒体200cの暗号化コンテンツ鍵格納部202から、暗号化コンテンツ鍵を読み出す(ステップS1135)。
(4)第3復号処理の動作
ここでは、図34に示す再生処理のステップS950にて行われる第3復号処理の動作について、図38に示す流れ図を用いて、説明する。
第3復号部405は、読み出した暗号化コンテンツを、受け取ったコンテンツ鍵を用いて共通鍵暗号アルゴリズムで復号して、コンテンツを生成し(ステップS1080)、生成したコンテンツを再生部406へ出力する(ステップS1085)。
本発明を上記の実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
(1)本発明では、記録媒体200をDVD−RAMのようなレコーダブルメディアとする構成としたが、本発明はその構成に限定されるものではない。例えば、記録媒体をDVD−Videoのようなプリレコーディッドメディアとして、各再生装置がデバイス鍵を保有して、記録媒体に記録されたコンテンツを再生する構成であってもよい。また、この場合、記録装置は、デバイス鍵を生成するための鍵情報を保有する必要はなく、鍵管理装置から直接メディア鍵を受け取り、そのメディア鍵に基づいてコンテンツを暗号化して書き込む構成であってもよい。
また、本発明では、記録装置300は、生成した暗号化コンテンツ鍵及び暗号化コンテンツを、装着された記録媒体200へ書き込んだが、これに限定されない。例えば、記録装置300は、生成した暗号化コンテンツ鍵及び暗号化コンテンツを、通信媒体を介して、ネットワーク上のサーバが有する記録媒体へ記録するようにしてもよい。
(6)本発明では、鍵管理装置100が各装置を管理するための木構造を2分木として構成したが、本発明はその構成に限定されるものではない。各装置を管理する木構造はn分木(nは整数)であればよい。例えば、木構造は3分木であっても、4分木であってもよい。
(7)上記実施の形態において、鍵管理装置100は、異なる2つの入力値に対して異なる2つの値を出力する擬似乱数生成器Gを利用して、部分集合の関連付けを行ったが、これに限定されない。
例えば、上記の実施の形態では、部分集合「1」と部分集合「12」とを関連付けしたが、擬似乱数生成器G_1を利用することにより、部分集合「12」は、部分集合「1」及び部分集合「2」のそれぞれと関連付けが可能となる。これにより、装置識別子「2」を有する装置は、部分集合「12」を含む鍵情報を保持する必要が無くなり、保持する鍵情報の個数を削減することができる。
鍵管理装置100は、無効化装置記憶領域に無効な装置識別子が記憶されていない場合、集合S0とデバイス鍵「K0」とを情報格納部102から読み出し、読み出したデバイス鍵「K0」を用いて、暗号化メディア鍵Enc(K0、メディア鍵)を生成する。鍵管理装置100は、生成した暗号化メディア鍵Enc(K0、メディア鍵)と集合S0とを記録媒体200aの鍵無効化データ格納部201へ書き込む。
(9)上記実施の形態において、鍵無効化データ生成部106は、無効化装置特定部105の無効化装置記憶領域に無効な装置識別子が記憶されていない場合と、記憶されている場合との動作を区別したが、これに限定されない。鍵無効化データ生成部106は、無効な装置識別子が記憶されている否かを判断することなく、上記実施にて示す無効な装置識別子が記憶されている場合の動作を行うようにしてもよい。
この場合における鍵管理装置100の動作について説明する。
鍵管理装置100は、Xビットからなる乱数Ahを生成すると、生成した乱数Ahをデバイス鍵として、(T^2+T)/2}行、h列に記録する。これにより、(T^2+T)/2}行、h列に記録された部分集合に、乱数Ahをデバイス鍵として割り当てることができる。
鍵管理装置100は、部分集合Sに対する子ノードである1つの部分集合又は2つの部分集合を検出すると、実施の形態にて示したラベルの割り当て方法と同様の方法にて、検出した各部分集合に、擬似乱数生成器Gによって生成されたデバイス鍵を割り当てる。これにより、鍵管理装置100は、部分集合と、デバイス鍵とからなるデバイス鍵テーブル、及び相互関係テーブルを生成することができる。なお、相互関係テーブルの生成は、実施の形態と同様であるため、説明は省略する。
記録装置300は、鍵情報を用いて、暗号化メディア鍵の復号鍵を取得する場合には、検出部分集合から基準部分集合に至る経路のノード数をZ(Zは2以上)とすると、擬似乱数生成器GをZ―1回利用することで、復号鍵を取得することができる。記録装置300は、擬似乱数生成器GをZ−1回利用して取得した2つのデバイス鍵のうち、基準部分集合が、その親ノードに対して、左の子ノードであるか右の子ノードであるかを判断する。左の子ノードであると判断する場合には、2Xビットのうち左Xビットからなるデバイス鍵を復号鍵として取得し、右の子ノードであると判断する場合には、右Xビットからなるデバイス鍵を復号鍵として取得する。なお、擬似乱数生成器Gによって生成された2つのデバイス鍵のうち何れのデバイス鍵を次の入力に用いるかの判断は、上記実施の形態と同様であるため、説明は省略する。また、Z=1の場合、つまり検出部分集合と基準部分集合とが同一である場合には、検出部分集合に対応するデバイス鍵を暗号化メディア鍵の復号鍵とする。
(11)上記実施の形態において、デバイス鍵テーブルD100の各欄には、部分集合、その部分集合に対応するラベル及びそのラベルに対応するデバイス鍵を記録したが、これに限定されない。デバイス鍵テーブルD100の各欄には、部分集合、その部分集合に対応するラベルを記録してもよい。
(12)上記実施の形態において、鍵情報は、ラベルと、そのラベルに対応する部分集合とからなるとしたが、これに限定されない。部分集合の代わりに、以下に示す経路情報としてもよい。
ルート番号は、配布するラベルに対応する部分集合が属する木構造のルートとなる部分集合が、相互関係テーブルD101において上位何番目に位置するかを示す。言い換えると、ルートとなる部分集合が、デバイス鍵テーブルD100の最下位行において、左から何番目に位置するかを示す数である。例えば、部分集合「1」をルートする場合には、ルート番号は、「1」となり、部分集合「3」をルートする場合には、ルート番号は、「3」となる。
鍵管理装置100の配布部104は、配布指示及び装置識別子を受け取ると、受け取った装置識別子に対する装置へ、配布するラベルと、そのラベルに対応する経路情報とを含む鍵情報を1以上生成して取得する。配布部104は、取得した1以上の鍵情報を受け付けた装置識別子に対応する装置へ配布する。
先ず、ステップS445の動作を、検出した部分集合に対応する経路情報が、鍵情報記憶領域に記憶済みであるか否かを判断する動作に変更する。このとき、配布部104は、ステップS450にて、検出した部分集合に対応する経路情報が記憶済みでないと判断する場合には、ステップS450を実行する。
(変更内容)配布部104は、検出したノード、つまり木構造Viのルートであるか否かを判断する。ルートであると判断する場合には、生成経路を「0」とする。ルートでないと判断する場合には、ルートから検出したノードに至る生成経路を取得する。さらに、配布部104は、木構造Viのルートに対するルート番号を取得する。この場合、iが、ルート番号となる。配布部104は、取得したルート番号と生成経路とからなる経路情報を生成し、生成した経路情報と、読み出したラベルとを含む鍵情報を生成して取得する。
また、鍵管理装置100は、鍵無効化データを生成する場合には、先ず、上記実施の形態と同様に、無効化装置記憶領域の記憶内容に基づいて、1以上の部分集合を取得する。取得した各部分集合に対応するラベル及びデバイス鍵を取得する。鍵管理装置100は、取得した各デバイス鍵を用いて、暗号化メディア鍵をそれぞれ生成する。さらに、鍵管理装置100は、取得した各部分集合が属するそれぞれの木構造を用いて、経路情報を取得する。取得方法は、先ず、部分集合が属するルートの部分集合を取得し、取得したルートの部分集合と、相互関係テーブルD101とを用いて、ルート番号を取得する。さらに、ルートから取得したラベルの部分集合までに至る経路より生成経路を取得し、取得したルート番号と生成経路より経路情報を生成する。生成経路の取得は、上記と同様である。鍵管理装置100は、生成した各経路情報と、各暗号化メディア鍵とを対応付けて、鍵無効化データを生成し、生成した各鍵無効化データを、記録媒体200aへ書き込む。例えば、装置4及び装置5が無効化される場合には、鍵管理装置100は、部分集合「123」及び部分集合「678」を取得し、さらには、各部分集合に対応するデバイス鍵「K3」、「K33」と、各部分集合に対応するラベルに対する経路情報「1−12」、「7−11」を取得する。
ここで、記録装置300にて行われる暗号化メディア鍵の復号について、図29、図30及び図31を用いて、変更点のみ説明する。なお、第1及び第2暗号化処理については、上記実施の形態と同様であるため、説明は省略する。
先ず、ステップS605の動作を、入出力部309を介して当該記録装置300に装着された記録媒体200bより、記録媒体200bに記録されている1以上の暗号化メディア鍵のそれぞれに対応する経路情報のうち、1つの経路情報(以下、基準経路情報という。)を読み出す動作に変更する。
次に、ステップS615を以下のように変更する。
(変更内容)復号鍵生成部304は、読み出した1以上の鍵情報から、基準経路情報のルート番号(以下、基準ルート番号という。)と一致するルート番号をもち、且つ「0」からなる生成経路をもつ又は基準経路情報に含まれる生成経路(以下、基準生成経路という。)に対して左前方一致する生成経路をもつ経路情報(以下、検出経路情報という。)を検索する。ここで、左前方一致について、説明する。先ず、生成経路にて表記される数字の個数を、生成経路の長さとする。例えば、生成経路「2」は、長さ1であり、背製経路「12121」は、長さ5である。左前方一致とは、基準生成経路をp1、生成経路をp2とした場合、p1=p2又はp1=p2||p3となることである。ここで、p3の長さは1以上である。例えば、生成経路「1」及び「121」は、それぞれ生成経路「12」及び「1211」に対して左前方一致している。なお、検索方法については、具体例を用いて、後述する。
ここで、検索方法について、具体例を用いて、説明する。なお、記録装置300に装着される記録媒体200bは、図39に示す2つの鍵無効化データを記憶しているとする。記録装置300は装置識別子2を有している場合には、復号鍵生成部304は、基準ルート番号「1」が、読み出した各鍵情報に含まれる経路情報に存在するか否かを判断する。ここでは、存在すると判断し、経路情報「1−1」を取得する。次に、生成経路が「0」である可否かを判断する。ここでは、「0」でないと判断する。次に、復号鍵生成部304は、取得した経路情報「1−1」の生成経路「1」が、基準生成経路に対して左前方一致しているか否かを判断する。ここでは、一致していると判断し、経路情報「1−0」を検出経路情報として検出することになる。
先ずステップS700の動作を、検出経路情報に対応するラベルを取得する動作に変更する。
次に、ステップS705の動作を、基準生成経路の長さと、検出生成経路の長さの差分Zを取得する動作に変更する。
ステップS720の判断動作を、基準生成経路において、「検出生成経路の長さ+z」番目に数字が存在するか否かを判断する動作に変更する。
ステップS725の判断動作を、「検出生成経路の長さ+z」番目に存在する数字が2であるか否かを判断する動作に変更する。
ステップS750の動作を、デバイス鍵及び基準経路情報を復号部305へ出力する動作に変更する。
<復号処理の変更点>
ステップS800の動作を、デバイス鍵及び基準経路情報を受け取る動作に変更する。
以上の点を変更することにより、記録装置300は、ラベル及び経路情報からなる鍵情報を用いて、暗号化メディア鍵を復号して、メディア鍵を生成することができる。
なお、再生装置400にて行われる暗号化メディア鍵の復号についても、図34、図35及び図36に示す各処理に対して、上記に示す変更と同様の変更を行えばよいため、説明は省略する。
例えば、レイヤ0で生成された1個の部分集合とレイヤ1で生成された1個の部分集合との関連付けのみを行ってもよい。
または、レイヤ1で生成された1個の部分集合とレイヤ2で生成された1個の部分集合との関連付けのみを行ってもよい。
(15)本発明は、生成した複数の部分集合の関連付けは、上記の実施の形態にて示す方法であるとしもよい。
または、各レイヤ間にて生成した1以上の部分集合を関連付け、各レイヤにおいて部分集合の関連付けがなされた後、レイヤ間における部分集合の関連付けを行ってもよい。
(17)本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
また、本発明は、マイクロプロセッサとメモリとを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムに従って動作するとしてもよい。
(18)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
1.10 まとめ
鍵管理装置は、複数の端末装置から、いくつかを任意に選んで、複数の許可集合を生成し、許可集合毎に、1の鍵が割り当てられる。許可集合に割り当てられた鍵により、データが暗号化され、許可集合の含まれる端末装置は、その暗号化されたデータを利用できる。第1許可集合と他の第2許可集合とが関連付けられている。関連付けにより第1許可集合の鍵から、第2許可集合の鍵が生成される。鍵管理装置は、前記複数の端末装置を、複数のグループに分ける。1のグループについて、グループに含まれる複数の端末装置から、いくつかを任意に選んで、複数の許可集合を生成する。許可集合毎に、1の鍵が割り当てられ、許可集合に割り当てられた鍵により、データが暗号化され、許可集合の含まれる端末装置は、その暗号化されたデータを利用できる。第3許可集合と他の第4許可集合とが関連付けられている。関連付けにより第3許可集合の鍵から、第4許可集合の鍵が生成される。鍵管理装置は、第1許可集合と第4許可集合を関連付ける。
非特許文献1に開示されている従来の鍵無効化技術では、装置の数が増大すると、各装置が内蔵するラベルの数が膨大になるという課題がある。例えば、装置数が約10億台(高さ30の2分木)のシステムを考えた場合、各装置が保持するラベルの数は465個となる。しかしながら、本発明によれば、各装置が内蔵する鍵の数を削減することが可能である。具体的には、木構造の高さをT、当該システムに属する装置の総数をQ台とした場合、Q/2台の装置においてT−1個の鍵が削減され、Q/4台の装置においてT−2個の鍵が削減され、Q/(2^k)台の装置においてT−k個の鍵が削減される。ただし、kは1以上、且つT−1以下の整数である。
また、本発明は、前記著作権保護システムであって、前記鍵管理装置の鍵生成部は、前記部分集合に割り当てられた鍵から、複数の他の部分集合の鍵を生成することを特徴とする。
また、本発明は、前記著作権保護システムであって、前記鍵管理装置の記憶部は、前記部分集合と割り当てた鍵の対応関係、並びに生成された鍵の相互関係を、テーブルを利用して管理し、前記テーブルを記憶することを特徴とする。
また、本発明は、前記著作権保護システムであって、前記端末装置の格納部は、鍵と部分集合の対応関係を示す情報も合わせて格納することを特徴とする。
また、本発明は、前記著作権保護システムであって、前記端末装置は、前記格納部に格納する鍵から、他の部分集合に割り当てられた鍵を生成する鍵生成部を備え、前記鍵生成部は、部分集合と鍵の対応関係、並びに生成された鍵の相互関係から他の部分集合に割り当てられた鍵を生成することを特徴とする。
また、本発明は、前記著作権保護システムであって、前記端末装置は、前記記録媒体から暗号化されたコンテンツを読み出して復号、及び再生する再生部を備えることを特徴とする。
また、本発明は、前記著作権保護システムであって、前記記録媒体の代わりに通信媒体を利用することを特徴とする。
また、本発明は、前記鍵管理装置であって、前記鍵生成部は、前記部分集合に割り当てられた鍵から、複数の他の部分集合の鍵を生成することを特徴とする。
また、本発明は、前記鍵管理装置であって、前記部分集合と割り当てた鍵の対応関係、並びに生成された鍵の相互関係を記憶する記憶部を備えることを特徴とする。
また、本発明は、前記鍵管理装置であって、前記部分集合に対して割り当てた鍵を前記端末装置に配布する鍵配布部を備え、前記鍵配布部は、鍵を配布する端末装置が含まれる部分集合のうち、最小の部分集合を選択して、前記選択した部分集合に割り当てられた鍵を配布し、さらに、前記配布した鍵から生成される鍵が割り当てられた部分集合を除く部分集合から、前記端末装置が含まれる最小の部分集合を選択して、前記選択した部分集合に割り当てられた鍵を配布することを特徴とする。
また、本発明は、前記端末装置であって、前記格納部は、鍵と部分集合の対応関係を示す情報も合わせて格納することを特徴とする。
また、本発明は、前記端末装置であって、前記端末装置は、前記格納部に格納する鍵から、他の部分集合に割り当てられた鍵を生成する鍵生成部を備え、前記鍵生成部は、部分集合と鍵の対応関係、並びに生成された鍵の相互関係から他の部分集合に割り当てられた鍵を生成することを特徴とする。
また、本発明は、前記端末装置であって、前記端末装置は、前記記録媒体から暗号化されたコンテンツを読み出して復号、及び再生する再生部を備えることを特徴とする。
また、本発明は、特定の装置を無効化するための無効化情報を記録する記録媒体であって、鍵管理装置は、著作権保護システムに属する端末装置の部分集合を生成する部分集合生成部と、前記部分集合に対して鍵を割り当てる割当部と、前記部分集合が含まれる他の部分集合の鍵を前記割り当てた鍵から生成する鍵生成部と、前記部分集合に割り当てた鍵に基づいて無効化情報を生成する無効化情報生成部を備え、前記鍵管理装置により生成された無効化情報を記録することを特徴とする。
100 鍵管理装置
101 装置情報格納部
102 情報格納部
103 情報生成部
104 配布部
105 無効化装置特定部
106 鍵無効化データ生成部
107 受付部
108 出力部
200 記録媒体
201 鍵無効化データ格納部
202 暗号化コンテンツ鍵格納部
203 暗号化コンテンツ格納部
300 記録装置
301 鍵情報格納部
302 コンテンツ格納部
303 コンテンツ鍵格納部
304 復号鍵生成部
305 復号部
306 第1暗号化部
307 第2暗号化部
308 受付部
309 入出力部
400 再生装置
401 鍵情報格納部
402 復号鍵生成部
403 第1復号部
404 第2復号部
405 第3復号部
406 再生部
407 受付部
408 読出部
420 モニタ
Claims (42)
- 複数の端末装置を識別する各装置識別子を木構造のリーフに配し、各装置識別子に、暗号化されたデータを復号する復号鍵の基となる固有情報を割り当て、管理する管理装置であって、
前記木構造のリーフを除く各レイヤのノードにおいて、その配下に存する装置識別子の部分集合を求めて、生成する部分集合生成手段と、
リーフのレイヤを除く最下位レイヤの部分集合をそっくり含む部分集合を直上位のレイヤから検索し、関連付ける第1関連付手段と、
関連付先の部分集合をそっくり含む部分集合を同一レイヤ及び直上位のレイヤの何れかから検索し、関連付ける第2関連付手段と、
最上位レイヤに至るまで、前記第2関連付手段が繰り返し処理するよう制御する第1制御手段と、
前記最下位レイヤの部分集合の全てに対して、前記第1関連付手段、前記第2関連付手段、及び前記第1制御手段が繰り返し処理するよう制御する第2制御手段と、
前記最下位レイヤの関連付元の部分集合に、固有情報を対応付けて、当該固有情報を、当該部分集合に含まれる装置識別子に割り当てる第1割当手段と、
関連付けにより、レイヤにまたがって繋がった部分集合に、前記関連付元の部分集合に割り当てた固有情報から派生的に求められる固有情報を対応付けて、当該固有情報を、当該部分集合に含まれる各装置識別子に割り当てる第2割当手段と
を備えることを特徴とする管理装置。 - 前記第1関連付手段は、前記最下位レイヤの部分集合をそっくり含み、且つ最小の要素数からなる部分集合を検索し、前記最下位レイヤの部分集合を親ノードとし、検索した部分集合を子ノードとして、関連付け、
前記第2関連付手段は、前記関連付先の部分集合をそっくり含み、且つ最小の要素数からなる部分集合を検索し、前記関連付先の部分集合を親ノードとし、検索した部分集合を子ノードとして、関連付け、
前記第1制御手段は、最上位レイヤに至るまで、前記第2関連付手段が繰り返し処理するよう制御して、前記最下位レイヤの部分集合をルートする部分集合木を生成する
ことを特徴とする請求項1に記載の管理装置。 - 前記第1関連付手段は、前記最下位レイヤに対する各上位レイヤの各部分集合のうち、関連付けがなされた1以上の部分集合を除外し、残りの1以上の部分集合を用いて、最上位レイヤに至るまで、前記第2関連付手段が繰り返し処理するよう制御して、前記最下位レイヤの部分集合をルートする部分集合木を生成する
ことを特徴とする請求項2に記載の管理装置。 - 前記第2割当手段は、
前記派生的に求められる固有情報を、前記関連付元の部分集合に対応付けされた固有情報から一方向性関数を用いて生成し、生成した固有情報を、関連付けにより繋がった部分集合に対応付ける
ことを特徴とする請求項3に記載の管理装置。 - 前記管理装置は、さらに、
前記部分集合木のルートから1以上のリーフそれぞれに至る各経路において、固有情報を配布する配布対象の端末装置の識別子が、要素として初めて出現する部分集合が存在する場合に、前部分集合に対応付けられた固有情報を1以上取得する固有情報取得手段と、
取得した固有情報と、固有情報に対応する部分集合を識別する集合識別情報とからなる1以上の組を、前記配布対象の端末装置へ配布する配布手段と
を備えることを特徴とする請求項4に記載の管理装置。 - 前記固有情報取得手段は、
部分集合木のルートからリーフに至る各経路から、前記配布対象の端末装置の識別子が、要素として初めて出現する部分集合を検索し、前記部分集合を検出すると、前記検出した部分集合が未取得である場合に、前記検出した部分集合を取得する第1取得部と、
第1取得部にて取得した前記部分集合に対応付けられた前記固有情報を取得する第2取得部と、
前記各経路に対して行われるまで、前記第1及び第2取得部が繰り返し処理するよう制御する繰返制御部と
を備えることを特徴とする請求項5に記載の管理装置。 - 前記管理装置は、さらに、
前記部分集合木の構成要素である各部分集合と、前記各部分集合のそれぞれに対応付けられた前記固有情報とを記憶する領域を有する第1記憶手段と、
前記部分集合木を構成する複数のノードと、各ノードの子ノードとを記憶する領域を有する第2記憶手段と、
前記部分集合と、前記部分集合に対応付けられた固有情報とを対応付けて、前記第1記憶手段に書き込む第1書込手段と、
前記部分集合木を構成する前記ノードと、前記ノードの子ノードとを対応付けて、前記第2記憶手段に書き込む第2書込手段と
を備えることを特徴とする請求項5に記載の管理装置。 - 前記第1記憶手段は、前記部分集合と前記部分集合に対応付けられた固有情報とを1の組として、複数個の組を記憶する第1テーブルを有しており、
前記第2記憶手段は、前記ノードと前記ノードに対応する子ノードとを1の組として、複数個の組を記憶する第2テーブルを有しており、
前記第1書込手段は、前記部分集合と、前記部分集合に対応付けられた固有情報とからなる組を、前記第1テーブルに書き込み、
前記第2書込手段は、前記ノードと、前記ノードの子ノードとからなる組を、前記第2記憶手段に書き込む
ことを特徴とする請求項7に記載の管理装置。 - 前記第2制御手段は、前記最下位レイヤの部分集合の全てに対して、前記第1関連付手段、前記第2関連付手段、及び前記第1制御手段が繰り返し処理するよう制御して、複数の部分集合木を生成し、
前記第1記憶手段は、各部分集合木に含まれる各部分集合と、前記各部分集合のそれぞれに対応付けられた各固有情報とを記憶しており、
前記管理装置は、さらに、
前記複数の端末装置のうち、1以上の無効な端末を示す無効な識別子を記憶する領域を有する無効化識別子記憶手段と、
前記無効化識別子記憶手段にて記憶されている内容に基づいて、前記第1記憶手段より1以上の部分集合を取得し、取得した各部分集合のそれぞれに対応付けられた各固有情報に基づいて、1以上の暗号化鍵を取得し、取得した各暗号化鍵を個別に用いて、コンテンツの利用に用いるメディア鍵を暗号し、前記1以上の暗号化鍵と同数の暗号化メディア鍵を生成する暗号化鍵生成手段と、
前記暗号化メディア鍵と、前記暗号化メディア鍵に対する暗号化鍵の取得に用いられた部分集合を識別する基準識別情報とからなる1以上の組を、当該管理装置に装着された記録媒体へ書き込む第3書込手段と
を備えることを特徴とする請求項7に記載の管理装置。 - 前記管理装置は、さらに、
無効な識別子を受け取り、受け取った無効な識別子を前記無効化識別子記憶手段へ書き込む無効化識別子受取手段
を備えることを特徴とする請求項9に記載の管理装置。 - 前記暗号化鍵は、前記復号鍵と同一の共通鍵であり、
前記一方向性関数は、さらに、各固有情報から前記各固有情報に基づく各共通鍵を生成し、
前記暗号化鍵生成手段は、
前記無効化識別子記憶手段にて記憶されている無効な識別子を除く1以上の有効な識別子を最も多く含む部分集合を、前記第1記憶手段より取得する部分集合取得部と、
全ての有効な識別子が、前記部分集合取得部にて取得される1以上の部分集合の何れかに属するまで、前記部分集合取得部が繰り返し処理するよう制御する制御部と、
前記一方向性関数を用いて、前記部分集合取得部にて取得した各部分集合のそれぞれに対応付けられた各固有情報から生成された1以上の共通鍵を取得する共通鍵取得部と、
前記共通鍵取得部にて取得した各共通鍵を用いて、共通鍵の数と同数の暗号化メディア鍵を生成する暗号化部と
を備えることを特徴とする請求項9に記載の管理装置。 - 前記基準識別情報は、前記暗号化メディア鍵に対する共通鍵の取得に用いられた部分集合であり、
前記第3書込手段は、前記暗号化メディア鍵と、前記暗号化メディア鍵に対する共通鍵の取得に用いられた部分集合とからなる1以上の組を、前記記録媒体へ書き込み、
前記配布手段は、前記取得した固有情報が対応付けたれた部分集合を前記集合識別情報として、前記取得した固有情報と前記集合識別情報とからなる1以上の組を、前記配布対象の端末装置へ配布し、
前記配布手段は、さらに、前記各部分集合木を示すデータ構造を配布する
ことを特徴とする請求項9に記載の管理装置。 - 前記管理装置は、さらに、
部分集合に対して、前記部分集合が属する部分集合木のルートであるルート部分集合から、前記部分集合に至るまでの経路を示す生成経路と、前記ルート部分集合と示すルート識別子とを含む経路情報を取得する経路情報取得手段を備え、
前記基準識別情報は、前記暗号化メディア鍵に対する暗号化鍵の取得に用いられた部分集合の経路情報であり、
前記第3書込手段は、前記暗号化メディア鍵と、前記暗号化メディア鍵に対する暗号化鍵の取得に用いられた部分集合の経路情報とからなる1以上の組を、前記記録媒体へ書き込み、
前記配布手段は、前記取得した固有情報に対する部分集合の経路情報を前記集合識別情報として、前記取得した固有情報と前記集合識別情報とからなる1以上の組を、前記配布対象の端末装置へ配布する
ことを特徴とする請求項9に記載の管理装置。 - 複数の端末装置を識別する各装置識別子を木構造にて管理する管理装置より、暗号化されたデータを復号する復号鍵の基となる固有情報が割り当てられる端末装置であって、
前記管理装置は、
前記木構造のリーフを除く各レイヤのノードにおいて、その配下に存する装置識別子の部分集合を求めて、生成し、リーフのレイヤを除く最下位レイヤの部分集合をそっくり含む部分集合を直上位のレイヤから検索し、関連付け、関連付先の部分集合をそっくり含む部分集合を同一レイヤ及び直上位のレイヤの何れかから検索し、関連付け、この関連付けを最上位レイヤに至るまで、前記第2関連付手段が繰り返し処理するよう制御し、前記最下位レイヤの部分集合の全てに対して、これらの処理が繰り返し処理するよう制御し、前記最下位レイヤの関連付元の部分集合に、固有情報を対応付けて、当該固有情報を、当該部分集合に含まれる装置識別子に割り当て、関連付けにより、レイヤにまたがって繋がった部分集合に、前記関連付元の部分集合に割り当てた固有情報から派生的に求められる固有情報を対応付けて、当該固有情報を、当該部分集合に含まれる各装置識別子に割り当てており、
前記端末装置は、
前記管理装置から予め配布された、関連付元の各部分集合に対応付けられた各固有情報のうち、当該端末装置の装置識別子を含む固有情報を記憶している固有情報記憶手段を
備えることを特徴とする端末装置。 - 前記固有情報記憶手段は、さらに、記憶している前記固有情報が対応付けられた部分集合を識別する集合識別情報を記憶しており、
前記端末装置は、さらに、
前記集合識別情報が、当該端末装置が有効な装置であることを示すか否かを判断する判断手段と、
前記判断手段による判断結果が肯定的である場合に、前記管理装置にて生成された各部分集合に対応付けられた各固有情報のうち特定の固有情報に基づく暗号化鍵により、メディア鍵が暗号化され、且つ前記暗号化鍵に関連する鍵関連情報と対応付けられた暗号化メディア鍵を取得する第1取得手段と、
前記固有情報記憶手段にて記憶している前記固有情報を用いて、前記暗号化鍵に対応する復号鍵を取得する第2取得手段と、
前記第2取得手段にて取得した前記復号鍵を用いて、前記取得手段にて取得した前記暗号化メディア鍵を復号して、前記メディア鍵を生成する復号手段と
を備えることを特徴とする請求項14に記載の端末装置。 - 前記特定の固有情報は、前記暗号化メディア鍵の生成時点で有効な端末装置の識別子を1以上含む部分集合に対応付けられた基準固有情報であり、
前記暗号化鍵は、共通鍵であり、
前記鍵関連情報は、前記基準固有情報が対応付けられた部分集合を識別する基準識別情報であり、
前記暗号化メディア鍵は、前記基準識別情報と対応付けられており、
前記判断手段は、前記固有情報記憶手段にて記憶している前記集合識別情報にて識別される部分集合から、前記基準識別情報にて識別される部分集合に至る経路が存在する場合に、前記集合識別情報は、当該端末装置が有効な装置であることを示す判断し、
前記第1取得手段は、前記基準識別情報に対応する前記基準固有情報に基づく暗号化鍵により暗号化された前記暗号化メディア鍵を取得し、
前記第2取得手段は、前記復号鍵を取得し、取得した前記復号鍵を前記共通鍵とし、
前記復号手段は、取得した前記共通鍵を用いて、前記暗号化メディア鍵を復号すること を特徴とする請求項15に記載の端末装置。 - 前記管理装置は、前記最下位レイヤの部分集合をそっくり含み、且つ最小の要素数からなる部分集合を検索し、前記最下位レイヤの部分集合を親ノードとし、検索した部分集合を子ノードとして、関連付け、前記関連付先の部分集合をそっくり含み、最小の要素数からなり、且つ未関連付けである部分集合を検索し、前記関連付先の部分集合を親ノードとし、検索した部分集合を子ノードとして、関連付けて、前記最下位レイヤの部分集合をルートする部分集合木を生成し、
前記固有情報記憶手段は、さらに、前記管理装置にて生成された前記部分集合木を構成するデータ構造を予め記憶しており、
前記判断手段は、前記データ構造により構成される前記部分集合木を用いて、前記固有情報記憶手段にて記憶している前記固有情報が対応付けられた部分集合から、前記基準識別情報にて識別される部分集合に至る経路が存在するか否かを判断する
ことを特徴とする請求項16に記載の端末装置。 - 前記管理装置は、前記最下位レイヤの部分集合をそっくり含み、且つ最小の要素数からなる部分集合を検索し、前記最下位レイヤの部分集合を親ノードとし、検索した部分集合を子ノードとして、関連付け、前記関連付先の部分集合をそっくり含み、最小の要素数からなり、且つ未関連付けである部分集合を検索し、前記関連付先の部分集合を親ノードとし、検索した部分集合を子ノードとして、関連付けて、前記最下位レイヤの部分集合をルートする部分集合木を生成し、
前記基準識別情報は、前記基準固有情報が対応付けられた基準部分集合に対して、前記許可集合木のルートから、当該基準部分集合に至るまでの第1生成経路を含み、
前記集合識別情報は、前記固有情報が対応付けられた部分集合に対して、前記部分集合木のルートから、当該部分集合に至るまでの第2生成経路を含み、
前記判断手段は、前記第2生成経路が前記第1生成経路に含まれる場合に、前記集合識別情報にて識別される部分集合から、前記基準識別情報にて識別される部分集合に至る経路が存在すると判断する
ことを特徴とする請求項16に記載の端末装置。 - 前記管理装置は、部分集合に対応付けられた固有情報を、一方向性関数に対する入力の情報として与え、前記固有情報に基づく共通鍵、及び前記固有情報から派生する固有情報を生成し、生成した固有情報を、入力の情報として与えた前記固有情報が対応付けられた部分集合と関連付けされた部分集合に対応付けて、関連付けされた部分集合に含まれる各装置識別子に、生成した固有情報を割り当て、
前記第2取得手段は、
前記一方向性関数と同一の関数を用いて、前記固有情報記憶手段にて記憶している前記固有情報から、前記固有情報に基づくデバイス鍵と、前記固有情報から派生する固有情報とを生成して、取得するデバイス鍵取得部と、
前記基準固有情報に基づくデバイス鍵を取得するまで、前記デバイス鍵取得部にて取得した前記固有情報を、前記関数に対する次の入力の情報として与えて、前記デバイス鍵取得部の動作を繰り返すよう制御する繰返部と、
前記デバイス鍵取得部にて取得した前記基準固有情報に基づくデバイス鍵を、前記共通鍵として取得する復号鍵取得手段と
を備えることを特徴とする請求項16に記載の端末装置。 - 前記端末装置は、さらに、
コンテンツを取得するコンテンツ取得手段と、
コンテンツ鍵を取得するコンテンツ鍵取得手段と、
前記コンテンツ鍵取得手段にて取得した前記コンテンツ鍵を、前記復号手段にて取得したメディア鍵を用いて、暗号化して暗号化コンテンツ鍵を生成する第1暗号化手段と、
前記コンテンツ取得手段にて取得した前記コンテンツを、前記コンテンツ鍵取得手段にて取得したコンテンツ鍵を用いて、暗号化して暗号化コンテンツを生成する第2暗号化手段と、
前記暗号化コンテンツ鍵と、前記暗号化コンテンツとを、記録媒体へ書き込む書込手段と
を備えることを特徴とする請求項19に記載の端末装置。 - 前記書込手段は、
前記暗号化コンテンツ鍵と、前記暗号化コンテンツとを、ネットワーク上に存在する装置が有する前記記録媒体へ、通信媒体を介して書き込む
ことを特徴とする請求項20に記載の端末装置。 - 前記端末装置は、さらに、
コンテンツ鍵が前記メディア鍵にて暗号化された暗号化コンテンツ鍵を取得する暗号化コンテンツ鍵取得手段と、
コンテンツが前記コンテンツ鍵にて暗号化された暗号化コンテンツを取得する暗号化コンテンツ取得手段と、
前記暗号化コンテンツ鍵取得手段にて取得した暗号化コンテンツ鍵を、前記メディア鍵を用いて、復号して、前記コンテンツ鍵を生成する第1復号手段と、
前記暗号化コンテンツ取得手段にて取得した暗号化コンテンツを、前記コンテンツ鍵を用いて、復号して、前記コンテンツを生成する第2復号手段と、
前記第2復号にて生成された前記コンテンツを再生する再生手段と
を備えることを特徴とする請求項19に記載の端末装置。 - 前記暗号化コンテンツ鍵及び前記暗号化コンテンツは、記録媒体に記録されており、前記記録媒体は、当該端末装置に装着され、
前記暗号化コンテンツ鍵取得手段は、前記記録媒体から、前記暗号化コンテンツ鍵を取得し、
前記暗号化コンテンツ取得手段は、前記記録媒体から、前記コンテンツを取得する
ことを特徴とする請求項22に記載の端末装置。 - 前記暗号化コンテンツ鍵取得手段は、通信媒体を介して、前記暗号化コンテンツ鍵を取得し、
前記暗号化コンテンツ取得手段は、通信媒体を介して、前記コンテンツを取得する
ことを特徴とする請求項22に記載の端末装置。 - 複数の端末装置と、前記複数の端末装置を識別する各装置識別子を木構造のリーフに配し、各装置識別子に、暗号化されたデータを復号する復号鍵の基となる固有情報を割り当て、管理する管理装置とからなる著作権保護システムであって、
前記管理装置は、
前記木構造のリーフを除く各レイヤのノードにおいて、その配下に存する装置識別子の部分集合を求めて、生成する部分集合生成手段と、
リーフのレイヤを除く最下位レイヤの部分集合をそっくり含む部分集合を直上位のレイヤから検索し、関連付ける第1関連付手段と、
関連付先の部分集合をそっくり含む部分集合を同一レイヤ及び直上位のレイヤの何れかから検索し、関連付ける第2関連付手段と、
最上位レイヤに至るまで、前記第2関連付手段が繰り返し処理するよう制御する第1制御手段と、
前記最下位レイヤの部分集合の全てに対して、前記第1関連付手段、前記第2関連付手段、及び前記第1制御手段が繰り返し処理するよう制御する第2制御手段と、
前記最下位レイヤの関連付元の部分集合に、固有情報を対応付けて、当該固有情報を、当該部分集合に含まれる装置識別子に割り当てる第1割当手段と、
関連付けにより、レイヤにまたがって繋がった部分集合に、前記関連付元の部分集合に割り当てた固有情報から派生的に求められる固有情報を対応付けて、当該固有情報を、当該部分集合に含まれる各装置識別子に割り当てる第2割当手段と
を備えることを特徴とする著作権保護システム。 - 前記第1関連付手段は、前記最下位レイヤの部分集合をそっくり含み、且つ最小の要素数からなる部分集合を検索し、前記最下位レイヤの部分集合を親ノードとし、検索した部分集合を子ノードとして、関連付け、
前記第2関連付手段は、前記関連付先の部分集合をそっくり含み、且つ最小の要素数からなる部分集合を検索し、前記関連付先の部分集合を親ノードとし、検索した部分集合を子ノードとして、関連付け、
前記第1制御手段は、最上位レイヤに至るまで、前記第2関連付手段が繰り返し処理するよう制御して、前記最下位レイヤの部分集合をルートする部分集合木を生成する
ことを特徴とする請求項25に記載の著作権保護システム。 - 前記第1関連付手段は、前記最下位レイヤに対する各上位レイヤの各部分集合のうち、関連付けがなされた1以上の部分集合を除外し、残りの1以上の部分集合を用いて、最上位レイヤに至るまで、前記第2関連付手段が繰り返し処理するよう制御して、前記最下位レイヤの部分集合をルートする部分集合木を生成する
ことを特徴とする請求項26に記載の著作権保護システム。 - 前記第2割当手段は、
前記派生的に求められる固有情報を、前記関連付元の部分集合に対応付けられた固有情報から一方向性関数を用いて生成し、生成した固有情報を、関連付けにより繋がった部分集合に対応付ける
ことを特徴とする請求項27に記載の著作権保護システム。 - 前記管理装置は、さらに、
前記部分集合木のルートから1以上のリーフそれぞれに至る各経路において、固有情報を配布する配布対象の端末装置の識別子が、要素として初めて出現する部分集合が存在する場合に、前部分集合に対応付けされた固有情報を1以上取得する固有情報取得手段と、
取得した固有情報と、固有情報に対応する部分集合を識別する集合識別情報とからなる1以上の組を、前記配布対象の端末装置へ配布する配布手段と
を備えることを特徴とする請求項28に記載の著作権保護システム。 - 前記管理装置は、さらに、
前記部分集合木の構成要素である各部分集合と、前記各部分集合のそれぞれに対応付けされた前記固有情報とを記憶する領域を有する第1記憶手段と、
前記部分集合木を構成する複数のノードと、各ノードの子ノードとを記憶する領域を有する第2記憶手段と、
前記部分集合と、前記部分集合に対応付けされた固有情報とを対応付けて、前記第1記憶手段に書き込む第1書込手段と、
前記部分集合木を構成する前記ノードと、前記ノードの子ノードとを対応付けて、前記第2記憶手段に書き込む第2書込手段と
を備えることを特徴とする請求項29に記載の著作権保護システム。 - 前記第2制御手段は、前記最下位レイヤの部分集合の全てに対して、前記第1関連付手段、前記第2関連付手段、及び前記第1制御手段が繰り返し処理するよう制御して、複数の部分集合木を生成し、
前記第1記憶手段は、各部分集合木に含まれる各部分集合と、前記各部分集合のそれぞれに対応付けされた各固有情報とを記憶しており、
前記管理装置は、さらに、
前記複数の端末装置のうち、1以上の無効な端末を示す無効な識別子を記憶する領域を有する無効化識別子記憶手段と、
前記無効化識別子記憶手段にて記憶されている内容に基づいて、前記第1記憶手段より1以上の部分集合を取得し、取得した各部分集合のそれぞれに対応付けされた各固有情報に基づいて、1以上の暗号化鍵を取得し、取得した各暗号化鍵を個別に用いて、コンテンツの利用に用いるメディア鍵を暗号し、前記1以上の暗号化鍵と同数の暗号化メディア鍵を生成する暗号化鍵生成手段と、
前記暗号化メディア鍵と、前記暗号化メディア鍵に対する暗号化鍵の取得に用いられた部分集合を識別する基準識別情報とからなる1以上の組を、当該管理装置に装着された記録媒体へ書き込む第3書込手段と
を備えることを特徴とする請求項30に記載の著作権保護システム。 - 前記管理装置は、さらに、
無効な識別子を受け取り、受け取った無効な識別子を前記無効化識別子記憶手段へ書き込む無効化識別子受取手段
を備えることを請求項31に記載の著作権保護システム。 - 前記暗号化鍵は、前記復号鍵と同一の共通鍵であり、
前記一方向性関数は、さらに、各固有情報から前記各固有情報に基づく各共通鍵を生成し、
前記暗号化鍵生成手段は、
前記無効化識別子記憶手段にて記憶されている無効な識別子を除く1以上の有効な識別子を最も多く含む部分集合を、前記第1記憶手段より取得する部分集合取得部と、
全ての有効な識別子が、前記部分集合取得部にて取得される1以上の部分集合の何れかに属するまで、前記部分集合取得部が繰り返し処理するよう制御する制御部と、
前記一方向性関数を用いて、前記部分集合取得部にて取得した各部分集合のそれぞれに対応付けされた各固有情報から生成された1以上の共通鍵を取得する共通鍵取得部と、
前記共通鍵取得部にて取得した各共通鍵を用いて、共通鍵の数と同数の暗号化メディア鍵を生成する暗号化部と
を備えることを特徴とする請求項31に記載の著作権保護システム。 - 前記端末装置は、
前記管理装置の配布手段にて予め配布された固有情報と、前記記固有情報が対応付けされた部分集合を識別する集合識別情報とからなる1以上の組を記憶している固有情報記憶手段と、
前記集合識別情報が、当該端末装置が有効な装置であることを示すか否かを判断する判断手段と、
前記判断手段による判断結果が肯定的である場合に、前記記録媒体から暗号化メディア鍵を1個取得する第1取得手段と、
前記固有情報記憶手段にて記憶している前記固有情報を用いて、前記暗号化鍵に対応する復号鍵を取得する第2取得手段と、
前記第2取得手段にて取得した前記復号鍵を用いて、前記取得手段にて取得した前記暗号化メディア鍵を復号して、前記メディア鍵を生成する復号手段と
を備えることを特徴とする請求項33に記載の著作権保護システム。 - 前記暗号化鍵は、共通鍵であり、
前記判断手段は、前記固有情報記憶手段にて記憶している前記集合識別情報にて識別される部分集合から、前記基準識別情報にて識別される部分集合に至る経路が存在する場合に、前記集合識別情報は、当該端末装置が有効な装置であることを示す判断し、
前記第1取得手段は、前記基準識別情報に対応する暗号化メディア鍵を取得し、
前記第2取得手段は、前記復号鍵を取得し、取得した前記復号鍵を前記共通鍵とし、
前記復号手段は、取得した前記共通鍵を用いて、前記暗号化メディア鍵を復号する
ことを特徴とする請求項34に記載の著作権保護システム。 - 前記第2取得手段は、
前記一方向性関数と同一の関数を用いて、前記固有情報記憶手段にて記憶している前記固有情報から、前記固有情報に基づくデバイス鍵と、前記固有情報から派生する固有情報とを生成して、取得するデバイス鍵取得部と、
前記基準固有情報に基づくデバイス鍵を取得するまで、前記デバイス鍵取得部にて取得した前記固有情報を、前記関数に対する次の入力の情報として与えて、前記デバイス鍵取得部の動作を繰り返すよう制御する繰返部と、
前記デバイス鍵取得部にて取得した前記基準固有情報に基づくデバイス鍵を、前記共通鍵として取得する復号鍵取得手段と
を備えることを特徴とする請求項35に記載の著作権保護システム。 - 記録媒体であって、
有効な端末装置により生成される復号鍵に対応し、且つ1以上の有効な端末装置からなる集合に対応する固有情報に基づいて生成された暗号化鍵を用いて、メディア鍵が暗号化された暗号化メディア鍵を記憶している暗号化鍵記憶手段を
備えることを特徴とする記録媒体。 - 前記暗号化鍵記憶手段は、さらに、
前記暗号化鍵の生成に用いた固有情報に対応する集合を識別する集合識別情報を記憶している
ことを特徴とする請求項37に記載の記録媒体。 - 複数の端末装置を識別する各装置識別子を木構造のリーフに配し、各装置識別子に、暗号化されたデータを復号する復号鍵の基となる固有情報を割り当て、管理する管理装置であって、
前記木構造のリーフを除く各レイヤのノードにおいて、その配下に存する装置識別子の部分集合を求めて、生成する部分集合生成手段と、
同一レイヤにおいて存在する部分集合のうち、最小の要素数の部分集合を含む他の部分集合を、最小の要素数の部分集合とともに1つのグループにまとめるグループ生成手段と、
同一レイヤの存在する最小の要素数の部分集合の全てに対して、前記グループ生成手段が繰り返し処理するよう制御する第1制御手段と、
全てのレイヤに対して、前記グループ生成手段及び前記第1制御手段が繰り返し処理するよう制御する第2制御手段と、
前記第2制御手段にて全てのレイヤに対して、処理を行った後、異なるレイヤ間において、下位レイヤのグループの何れかの部分集合を全て含む部分集合を有する上位レイヤのグループを、当該下位レイヤのグループと1のグループに統合する統合手段と、
全てのレイヤにおいてグループの統合後に、残存する各グループ内の最小の要素数の各部分集合に対して、各固有情報を対応付けて、各部分集合に含まれる1以上の装置識別子に、対応付けられた各固有情報を割り当てる第1割当手段と、
前記第1割当手段にて各固有情報を割り当てた最小の要素数の各部分集合と異なる各部分集合に対して、部分集合が属するグループに存在する最小の要素数の部分集合に対応付けされた固有情報から派生的に求められる固有情報を対応付けて、各部分集合に含まれる1以上の装置識別子に、対応付けられた固有情報を割り当てる第2割当手段と
を備えることを特徴とする管理装置。 - 複数の端末装置を識別する各装置識別子を木構造のリーフに配し、各装置識別子に、暗号化されたデータを復号する復号鍵の基となる固有情報を割り当て、管理する管理装置に用いられる関連付方法であって、
前記木構造のリーフを除く各レイヤのノードにおいて、その配下に存する装置識別子の部分集合を求めて、生成する部分集合生成ステップと、
リーフのレイヤを除く最下位レイヤの部分集合をそっくり含む部分集合を直上位のレイヤから検索し、関連付ける第1関連付ステップと、
関連付先の部分集合をそっくり含む部分集合を同一レイヤ及び直上位のレイヤの何れかから検索し、関連付ける第2関連付ステップと、
最上位レイヤに至るまで、前記第2関連付手段が繰り返し処理するよう制御する第1制御ステップと、
前記最下位レイヤの部分集合の全てに対して、前記第1関連付手段、前記第2関連付手段、及び前記第1制御手段が繰り返し処理するよう制御する第2制御ステップと、
前記最下位レイヤの関連付元の部分集合に、固有情報を対応付けて、当該固有情報を、当該部分集合に含まれる装置識別子に割り当てる第1割当ステップと、
関連付けにより、レイヤにまたがって繋がった部分集合に、前記関連付元の部分集合に割り当てた固有情報から派生的に求められる固有情報を対応付けて、当該固有情報を、当該部分集合に含まれる各装置識別子に割り当てる第2割当ステップと
を含むことを特徴とする関連付方法。 - 複数の端末装置を識別する各装置識別子を木構造のリーフに配し、各装置識別子に、暗号化されたデータを復号する復号鍵の基となる固有情報を割り当て、管理する管理装置に、
前記木構造のリーフを除く各レイヤのノードにおいて、その配下に存する装置識別子の部分集合を求めて、生成する部分集合生成ステップと、
リーフのレイヤを除く最下位レイヤの部分集合をそっくり含む部分集合を直上位のレイヤから検索し、関連付ける第1関連付ステップと、
関連付先の部分集合をそっくり含む部分集合を同一レイヤ及び直上位のレイヤの何れかから検索し、関連付ける第2関連付ステップと、
最上位レイヤに至るまで、前記第2関連付手段が繰り返し処理するよう制御する第1制御ステップと、
前記最下位レイヤの部分集合の全てに対して、前記第1関連付手段、前記第2関連付手段、及び前記第1制御手段が繰り返し処理するよう制御する第2制御ステップと、
前記最下位レイヤの関連付元の部分集合に、固有情報を対応付けて、当該固有情報を、当該部分集合に含まれる装置識別子に割り当てる第1割当ステップと、
関連付けにより、レイヤにまたがって繋がった部分集合に、前記関連付元の部分集合に割り当てた固有情報から派生的に求められる固有情報を対応付けて、当該固有情報を、当該部分集合に含まれる各装置識別子に割り当てる第2割当ステップと
を実行させるための関連付プログラム。 - 複数の端末装置を識別する各装置識別子を木構造のリーフに配し、各装置識別子に、暗号化されたデータを復号する復号鍵の基となる固有情報を割り当て、管理する管理装置に、
前記木構造のリーフを除く各レイヤのノードにおいて、その配下に存する装置識別子の部分集合を求めて、生成する部分集合生成ステップと、
リーフのレイヤを除く最下位レイヤの部分集合をそっくり含む部分集合を直上位のレイヤから検索し、関連付ける第1関連付ステップと、
関連付先の部分集合をそっくり含む部分集合を同一レイヤ及び直上位のレイヤの何れかから検索し、関連付ける第2関連付ステップと、
最上位レイヤに至るまで、前記第2関連付手段が繰り返し処理するよう制御する第1制御ステップと、
前記最下位レイヤの部分集合の全てに対して、前記第1関連付手段、前記第2関連付手段、及び前記第1制御手段が繰り返し処理するよう制御する第2制御ステップと、
前記最下位レイヤの関連付元の部分集合に、固有情報を対応付けて、当該固有情報を、当該部分集合に含まれる装置識別子に割り当てる第1割当ステップと、
関連付けにより、レイヤにまたがって繋がった部分集合に、前記関連付元の部分集合に割り当てた固有情報から派生的に求められる固有情報を対応付けて、当該固有情報を、当該部分集合に含まれる各装置識別子に割り当てる第2割当ステップと
を実行させるための関連付プログラムを記録したコンピュータ読み取り可能なプログラム記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004341235A JP4614744B2 (ja) | 2003-11-28 | 2004-11-25 | 管理装置、端末装置及び著作権保護システム |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003399968 | 2003-11-28 | ||
JP2004341235A JP4614744B2 (ja) | 2003-11-28 | 2004-11-25 | 管理装置、端末装置及び著作権保護システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005184798A true JP2005184798A (ja) | 2005-07-07 |
JP4614744B2 JP4614744B2 (ja) | 2011-01-19 |
Family
ID=34797421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004341235A Active JP4614744B2 (ja) | 2003-11-28 | 2004-11-25 | 管理装置、端末装置及び著作権保護システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4614744B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006253822A (ja) * | 2005-03-08 | 2006-09-21 | Toshiba Corp | 復号装置、復号方法、及びプログラム |
JP2009517788A (ja) * | 2005-11-29 | 2009-04-30 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | コピー保護手段を有する記録担体 |
JP2013517688A (ja) * | 2010-01-14 | 2013-05-16 | アルカテル−ルーセント | マルチメディア通信システムにおけるセキュリティ保護された通信のための階層鍵管理 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10283270A (ja) * | 1997-04-09 | 1998-10-23 | Fujitsu Ltd | 再生許可方法、記録方法及び記録媒体 |
JP2004311000A (ja) * | 2003-03-24 | 2004-11-04 | Matsushita Electric Ind Co Ltd | 記録装置及び著作権保護システム |
-
2004
- 2004-11-25 JP JP2004341235A patent/JP4614744B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10283270A (ja) * | 1997-04-09 | 1998-10-23 | Fujitsu Ltd | 再生許可方法、記録方法及び記録媒体 |
JP2004311000A (ja) * | 2003-03-24 | 2004-11-04 | Matsushita Electric Ind Co Ltd | 記録装置及び著作権保護システム |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006253822A (ja) * | 2005-03-08 | 2006-09-21 | Toshiba Corp | 復号装置、復号方法、及びプログラム |
JP4599194B2 (ja) * | 2005-03-08 | 2010-12-15 | 株式会社東芝 | 復号装置、復号方法、及びプログラム |
JP2009517788A (ja) * | 2005-11-29 | 2009-04-30 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | コピー保護手段を有する記録担体 |
JP2013517688A (ja) * | 2010-01-14 | 2013-05-16 | アルカテル−ルーセント | マルチメディア通信システムにおけるセキュリティ保護された通信のための階層鍵管理 |
Also Published As
Publication number | Publication date |
---|---|
JP4614744B2 (ja) | 2011-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2005060149A1 (ja) | 管理装置、端末装置及び著作権保護システム | |
US7272229B2 (en) | Digital work protection system, key management apparatus, and user apparatus | |
EP1354443B1 (en) | Method for broadcast encryption | |
JP2004527937A (ja) | ブロードキャスト暗号化システムでトレイタ・レシーバをトレースする方法 | |
US20020076204A1 (en) | Key management device/method/program, recording medium, reproducing device/method, recording device, and computer-readable, second recording medium storing the key management program for copyright protection | |
EP1185021B1 (en) | Information processing system and method | |
US20030081786A1 (en) | Key management apparatus | |
RU2369024C2 (ru) | Система защиты информационного содержания, устройство генерации данных ключей и устройство воспроизведения | |
KR20050034639A (ko) | 지역 한정 재생 시스템 | |
WO2005074186A1 (en) | Method of assigning user keys for broadcast encryption | |
KR20080031751A (ko) | 키 블록 기반의 인증 시스템 및 방법 | |
KR101485460B1 (ko) | 브로드캐스트 암호화에서 디바이스 키를 추적하는 방법 | |
JP4614744B2 (ja) | 管理装置、端末装置及び著作権保護システム | |
JP2003169048A (ja) | 暗号化を施すことによりデータを保護するデータ保護システム | |
CN101536401B (zh) | 信息处理设备 | |
JP2004120008A (ja) | 鍵管理システム | |
JP4161859B2 (ja) | 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム | |
JP2003204321A (ja) | 著作物保護システム及び鍵管理装置 | |
US7210042B2 (en) | Device information generating device, device information generating method, control data generating device, control data generating method, content utilizing device, content utilizing method, and storage medium | |
JP4583069B2 (ja) | 鍵管理システム、及び再生装置 | |
US20070147603A1 (en) | Copyright protection system, modular exponentiation operation apparatus, and modular exponentiation operation method | |
JP2005006033A (ja) | 鍵生成方法、鍵生成装置、コンテンツ配信装置、端末装置およびプログラム | |
JP2004248272A (ja) | コンテンツ再生のための鍵を管理する方法 | |
JP4638176B2 (ja) | 著作権保護システム、べき乗剰余演算装置、演算装置、鍵管理装置、再生装置、記録装置、記録媒体、べき乗剰余演算方法、演算方法、及びプログラム | |
JP2005109753A (ja) | 鍵情報処理方法及びその装置、並びにプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070910 |
|
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: 20100928 |
|
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: 20101019 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4614744 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131029 Year of fee payment: 3 |