[go: up one dir, main page]

JP2004320655A - Data processing method, program thereof, apparatus thereof, and receiver - Google Patents

Data processing method, program thereof, apparatus thereof, and receiver Download PDF

Info

Publication number
JP2004320655A
JP2004320655A JP2003114882A JP2003114882A JP2004320655A JP 2004320655 A JP2004320655 A JP 2004320655A JP 2003114882 A JP2003114882 A JP 2003114882A JP 2003114882 A JP2003114882 A JP 2003114882A JP 2004320655 A JP2004320655 A JP 2004320655A
Authority
JP
Japan
Prior art keywords
key
data
node
acquisition method
label
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.)
Pending
Application number
JP2003114882A
Other languages
Japanese (ja)
Inventor
Mihaljevic Miodrag
ミハイェビッチ ミオドラッグ
Joshi Abe
譲司 阿部
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 JP2003114882A priority Critical patent/JP2004320655A/en
Publication of JP2004320655A publication Critical patent/JP2004320655A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a data processing method capable of decreasing a communication volume of communication between a key management source and a plurality of receivers attended with revocation of parts of the receivers more than that of prior arts in the case of secure communication between the key management source and the receivers. <P>SOLUTION: When the key management apparatus determines that a communication volume when adopting a key acquisition method SKT-A is a communication volume or over consumed when adopting a key acquisition method SKT-B (ST23), the key management apparatus specifies key encryption key data used for communication with the receivers not revoked according to the key acquisition method SKT-A on the basis of a revocation list (ST24). In other cases, the key management apparatus specifies the key encryption key data according to the key acquisition method SKT-B on the basis of the revocation list (ST25). <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、セキュア通信を行うデータ処理方法、そのプログラム、その装置と受信装置に関する。
【0002】
【従来の技術】
セキュア通信では、通常、鍵管理装置と受信装置(端末装置)とが同じセッション鍵データを保持あるいは生成し、鍵管理装置でセッション鍵データ(以下、SEKデータとも記す)を基にデータを暗号化して受信装置に送信する。
このようなセキュア通信では、例えば、予め決められた複数の受信装置に対して共通のセッション鍵データを基にセキュア通信を行う。
この場合に、上記複数の受信装置の少なくとも一つが上記権限を失った場合には、鍵管理装置は、それまで使用していたセッション鍵データを更新して、当該受信装置をリボーク(無効に)する必要がある。
【0003】
このようなセッション鍵データの更新方法(鍵取得方法)として、例えば、下記非特許文献1,2に示すものが知られている。
下記非特許文献1,2に示された鍵取得方法では、複数の鍵データを受信装置が予め保持しており、上記更新時に、鍵管理装置が当該複数の鍵データの何れを用いてセキュア通信に用いる鍵暗号鍵データを生成するかを、リボークしない受信装置に指示する。
そして、リボークされない受信装置が、予め保持している複数の鍵データのなかから上記指示された鍵データを選択し、選択した鍵データを用いて、予め固定的に決められた鍵生成方法で鍵暗号鍵データを生成する。
【0004】
鍵管理装置は、新たなセッション鍵データを上記鍵暗号鍵データで暗号化して、リボークしない受信装置に送信する。
リボークされない受信装置は、鍵管理装置から受信した上記暗号化されたセッション鍵データを、上記生成した鍵暗号鍵データを用いて復号して、新たなセッション鍵データを得る。
上述した鍵取得方法は、できるだけ多数の受信装置が同じ新たなセッション鍵データを共用できるように、すなわち新たに用いる鍵暗号鍵データKEKの数を少なくするようにアルゴリズムが規定されており、リボケーション処理に伴う鍵管理装置と受信装置との間の通信量を少なくしている。
【0005】
【非特許文献1】
D.Halevy and A Shamir, ”The LCD broadcast encryption scheme”, CRYPTO 2002, Lecture Notes in Computer Science,vol.2442. pp.47−60,2002
【非特許文献2】
D.Naor,M.Naor and J.Lotspiech,”Revocation and tracing schemes for stateless receivers”, CRYPTO 2001.Lecture Notes in Computer Science.vol 2139.pp.41−62,2001.
【0006】
【発明が解決しようとする課題】
ところで、上述した複数の鍵取得方法のうち、リボケーション処理に伴う上記通信量が最少になる鍵取得方法は、リボークする受信装置の数や当該受信装置に割り当てられた鍵データなどによって異なる。
しかしながら、従来では、リボケーション処理の方式を固定していたため、上記通信量を十分に少なくできない場合があるという問題がある。
【0007】
本発明はかかる事情に鑑みてなされたものであり、複数の受信装置との間でセキュア通信を行う場合に、一部の受信装置を無効にすることに伴う鍵管理元と受信装置との間の通信の通信量を従来に比べて小さくできるデータ処理方法、そのプログラム、その装置と受信装置を提供することを目的とする。
【0008】
【課題を解決するための手段】
上述した目的を達成するために、第1の発明のデータ処理方法は、複数の受信装置との間で所定の鍵データを基に暗号化通信を行い、前記複数の受信装置のうち何れかを無効にする場合に、無効にしない前記受信装置との間の前記暗号化通信に用いる新たな前記鍵データを鍵管理元が取得するためのデータ処理方法であって、予め決められた複数の鍵取得方法のうち、所定の前記受信装置を無効にするために生じる前記鍵管理元と無効にしない前記受信装置との間の通信量が最少となる前記鍵取得方法を選択する第1の工程と、前記第1の工程で選択した前記鍵取得方法を基に、無効にしない前記受信装置との間の前記暗号化通信に用いる新たな前記鍵データを取得する第2の工程とを有する。
【0009】
第1の発明のデータ処理方法の作用は以下のようになる。
先ず、第1の工程において、予め決められた複数の前記鍵取得方法のうち、所定の前記受信装置を無効にするために生じる前記鍵管理元と無効にしない前記受信装置との間の通信量が最少となる前記鍵取得方法を選択する。
次に、第2の工程において、前記第1の工程で選択した前記鍵取得方法を基に、無効にしない前記受信装置との間の前記暗号化通信に用いる新たな前記鍵データを取得する。
【0010】
第2の発明のプログラムは、複数の受信装置との間で所定の鍵データを基に暗号化通信を行い、前記複数の受信装置のうち何れかを無効にする場合に、無効にしない前記受信装置との間の前記暗号化通信に用いる新たな前記鍵データを鍵管理元が取得するための処理をコンピュータに実行させるプログラムであって、予め決められた複数の鍵取得方法のうち、所定の前記受信装置を無効にするために生じる前記鍵管理元と無効にしない前記受信装置との間の通信量が最少となる前記鍵取得方法を選択する第1の手順と、前記第1の手順で選択した前記鍵取得方法を基に、無効にしない前記受信装置との間の前記暗号化通信に用いる新たな前記鍵データを取得する第2の手順とを有する。
【0011】
第3の発明のデータ処理装置は、複数の受信装置との間で所定の鍵データを基に暗号化通信を行い、前記複数の受信装置のうち何れかを無効にする場合に、無効にしない前記受信装置との間の前記暗号化通信に用いる新たな前記鍵データを鍵管理元が取得するための処理を行うデータ処理装置であって、予め決められた複数の鍵取得方法のうち、所定の前記受信装置を無効にするために生じる前記鍵管理元と無効にしない前記受信装置との間の通信量が最少となる前記鍵取得方法を選択する第1の手段と、前記第1の手段で選択した前記鍵取得方法を基に、無効にしない前記受信装置との間の前記暗号化通信に用いる新たな前記鍵データを取得する第2の手段とを有する。
【0012】
第3の発明のデータ処理装置の作用は以下のようになる。
先ず、第1の手段が、予め決められた複数の前記鍵取得方法のうち、所定の前記受信装置を無効にするために生じる前記鍵管理元と無効にしない前記受信装置との間の通信量が最少となる前記鍵取得方法を選択する。
次に、第2の手段が、前記第1の手段で選択した前記鍵取得方法を基に、無効にしない前記受信装置との間の前記暗号化通信に用いる新たな前記鍵データを取得する。
【0013】
第4の発明のデータ処理方法は、鍵管理元との間で所定の鍵データを基に暗号化通信を行うデータ処理方法であって、鍵取得方法と当該鍵取得方法に用いるデータとを特定した指定データを前記鍵管理元から受信する第1の工程と、前記第1の工程で受信した前記指定データで指定されたデータを用いて、当該指定データが指定する前記鍵取得方法を基に、新たな前記鍵データを取得する第2の工程とを有する。
【0014】
第4の発明のデータ処理方法の作用は以下のようになる。
先ず、第1の工程において、鍵取得方法と当該鍵取得方法に用いるデータとを特定した指定データを前記鍵管理元から受信する。
次に、第2の工程において、前記第1の工程で受信した前記指定データで指定されたデータを用いて、当該指定データが指定する前記鍵取得方法を基に、新たな前記鍵データを取得する。
【0015】
第5の発明のプログラムは、鍵管理元との間で所定の鍵データを基に暗号化通信を行うコンピュータが実行するプログラムであって、鍵取得方法と当該鍵取得方法に用いるデータとを特定した指定データを前記鍵管理元から受信する第1の手順と、前記第1の手順で受信した前記指定データで指定されたデータを用いて、当該指定データが指定する前記鍵取得方法を基に、新たな前記鍵データを取得する。
【0016】
第6の発明の受信装置は、鍵管理元との間で所定の鍵データを基に暗号化通信を行う受信装置であって、鍵取得方法と当該鍵取得方法に用いるデータとを特定した指定データを前記鍵管理元から受信する第1の手段と、前記第1の手段が受信した前記指定データで指定されたデータを用いて、当該指定データが指定する前記鍵取得方法を基に、新たな前記鍵データを生成する第2の手段とを有する。
【0017】
第6の発明の受信装置の作用は以下のようになる。
先ず、第1の手段が、鍵取得方法と当該鍵取得方法に用いるデータとを特定した指定データを前記鍵管理元から受信する。
次に、第2の手段が、前記第1の手段が受信した前記指定データで指定されたデータを用いて、当該指定データが指定する前記鍵取得方法を基に、新たな前記鍵データを生成する。
【0018】
【発明の実施の形態】
以下、本発明の実施形態に係わる通信システムについて説明する。
図1は、本発明の実施形態に係わる通信システム1の全体構成図である。
図1に示すように、通信システム1は、例えば、鍵管理装置3と、複数(N個)の受信装置4_1〜4_Nを有する。
ここで、鍵管理装置3が本発明の鍵管理元および第3の発明のデータ処理装置に対応し、受信装置4_1〜4_Nが本発明の受信装置に対応している。
鍵管理装置3と受信装置4_1〜4_Nとの間では、例えば、無線方式で暗号化通信を行う。
受信装置4_1〜4_Nは、予め鍵管理装置3に登録されており、鍵管理装置3との間の暗号化通信に用いる鍵データK_ORGおよびラベルデータLABELを保持している。
【0019】
通信システム1では、鍵管理装置3が、予め決められた複数の鍵取得方法(例えば、後述する鍵取得方法SKT−A,SKT−Bなど)のうち、所定の受信装置4_1〜4_Nをリボーク(無効に)するために生じる、リボークにしない受信装置との間の通信量が最少となる鍵取得方法を選択する。
そして、鍵管理装置3が、受信装置4_1〜4_Nのうちリボークしない受信装置のそれぞれに対して、上記選択した鍵取得方法を指定した鍵取得方法指定データと、当該選択した鍵取得方法に用いる鍵データK_ORGあるいはラベルデータLABELを指定した鍵・ラベル指定データとを含む指定データ(本発明の指定データ)を、例えば、PUSH方式で送信する。
鍵管理装置3から受信装置4_1〜4_Nへの上記送信は、例えば、ソフトウェア無線(SDR:Software Defined Radio)によるSDR・セキュア・ダウンロードにより実現する。
そして、リボークしない受信装置4_1〜4_Nが、当該受信装置が保持する複数の鍵データK_ORGおよびラベルデータLABELのうち鍵管理装置3から受信した指定データが指定する鍵データK_ORGあるいはラベルデータLABELを用いて、上記鍵取得方法指定データが指定する鍵取得方法を基に鍵暗号鍵データKEK(本発明の新たな鍵データ)を取得(生成)する。
鍵管理装置3は、新たなセッション鍵データNEW_SEKを、上記鍵暗号鍵データKEKを基に暗号化して受信装置4_1〜4_Nに送信する。
リボークしない受信装置4_1〜4_Nは、上記取得した鍵暗号鍵データKEKを基に、セッション鍵データNEW_SEKを復号する。
以後、鍵管理装置3と、リボークしない受信装置4_1〜4_Nとの間のセキュア通信を、セッション鍵データNEW_SEKを基に行う。
【0020】
以下、図1に示す鍵管理装置3および受信装置4_1〜4_Nについて説明する。
〔鍵管理装置3〕
図2は、図1に示す鍵管理装置3のハードウェア構成図である。
図2に示すように、鍵管理装置3は、例えば、通信部11、メモリ12および処理部13を有する。
通信部11は、処理部13が生成したデータを無線方式で送信する。当該送信は、例えば、放送などのプッシュ(PUSH)方式で、ソフトウェア無線(SDR:Software Defined Radio)によるSDR・セキュア・ダウンロードを行う。
メモリ12は、処理部13によって実行されるプログラムPRG1と、プログラムPRG1の実行に用いられる種々データを記憶する。
ここで、プログラムPRG1が第2の発明のプログラムに対応している。
例えば、メモリ12は、例えば、受信装置4_1〜4_Nが保持する全ての鍵データK_ORGおよびラベルデータLABELを記憶する。
また、メモリ12は、鍵データK_ORGおよびラベルデータLABELの一部または全てを記憶せず、これらによって最終的に取得される鍵暗号鍵データKEKを記憶してもよい。
【0021】
処理部13は、メモリ12に記憶されたプログラムPRG1を実行し、その実行に応じて鍵管理装置3の処理を統括して制御する。本実施形態において、鍵管理装置3の処理は、処理部13が実行するプログラムPRG1によって規定される。
【0022】
処理部13は、プログラムPRG1の実行に応じて、受信装置4_1〜4_Nへの鍵データK_ORGやラベルデータLABELの配信などの前処理、並びに、セッション鍵データの更新処理などのリボケーション処理などのセキュリティ処理を行う。
【0023】
処理部13は、上記リボケーション処理に先立って、例えば、受信装置4_1〜4_Nの登録時などに、上記前処理を行う。
処理部13は、上記前処理において、上記リボケーション処理を行うに当たって採用される鍵取得方法SKT−A,SKT−B(underlying structure) 、並びに当該鍵取得方法SKT−A,SKT−Bで使用する鍵データK_ORGおよびラベルデータLABELを受信装置4_1〜4_Nに設定する。
【0024】
処理部13は、受信装置4_1〜4_Nのうち何れかをリボーク(無効に)する場合に、上記リボケーション処理を行う。
処理部13は、リボケーション処理において、受信装置4_1〜4_Nの何れをリボークするかに応じて、リボークしない受信装置4_1〜4_Nに対してセッション鍵データSEKを送信するための鍵暗号鍵データKEKを選択する。
そして、処理部13は、リボークしない受信装置4_1〜4_Nが、鍵暗号鍵データKEKを生成するための指定データを、リボークしない受信装置4_1〜4_Nに送信する。
【0025】
上記鍵取得方法SKT−A,SKT−Bは、本実施形態では、以下に示すように、前述した非特許文献1に開示されているLSD方式や非特許文献2に開示されているCST方式などのリボケーション方式を基に規定され、例えば、複数の2分ツリーを左右対称に組み合わせたツリーを構成するサブツリーであるセクション毎に個別にリボケーション方式を規定したものであるSKT(Sectioned Key
Trees) の一例である。
処理部13が採用する鍵取得方法SKT−A,SKT−Bに関する情報、並びに当該鍵取得方法で用いられる鍵データK_ORGおよびラベルデータLABELは、上記前処理によって受信装置4_1〜4_Nに提供される。
【0026】
以下、本実施形態の鍵取得方法SKTについて説明する。
上記ツリーでは、複数の水平レイヤが規定され、各水平レイヤが複数のセクションに分割されている。
また、各セクションは、そのルート(ノード)が上位の水平レイヤのリーフ(ノード)となるサブツリーを有している。
また、例えば、同じ水平レイヤに属するセクションは、同じ数のノードを有する。すなわち、同じレイヤに属するセクションは、同じサブツリーを有している。
一般的な例としては、上記ツリーが、K個の水平レイヤに分割され、各水平レイヤl(lは0〜L−1の整数)の高さがH〔l〕であるとすると、2H[l−1]個のリーフを有している。また、水平レイヤlは、下記式(1)で示される数のセクションを有し、そのサブツリーは、2H[l−1]個のリーフを有している。
【0027】
【数1】

Figure 2004320655
【0028】
K=3、H〔0〕=2、H〔1〕=1、H〔3〕=2の場合のツリー20の構造を図3に示す。
【0029】
以下、上記ツリーを基に規定された本実施形態の鍵取得方法について説明する。
図4は、本実施形態の鍵取得方法を説明するためのフローチャートである。
以下、図4に示す各ステップについて説明する。
ステップST1:
処理部13は、上記ツリーの水平レイヤ0(最下層のレイヤ)に属する全てのセクションの各々に対して、当該セクションが含むサブツリーのリーフに割り当てられた受信装置4_1〜4_Nのうち、リボークする受信装置を特定する。
また、処理部13は、lに初期値「0」を代入する。
【0030】
ステップST2:
処理部13は、上記ツリーの水平レイヤ0に属する全てのセクションの各々に対して、当該セクションが含むサブツリーに対して採用されたリボケーション方式で、ステップST1で特定した受信装置をリボークする処理を行う。
すなわち、処理部13は、上記採用されたリボケーション(RV)方式を基にリボケーション処理を行い、当該サブツリーに属する受信装置4_1〜4_Nのうちリボークされない受信装置との通信に使用する鍵暗号鍵データKEKを決定するために用いられるデータ、例えば、リボークするリーフの位置などを示すデータを生成する。
【0031】
ステップST3:
処理部13は、lをインクリメントする。すなわち、l=l+1を演算する。
【0032】
ステップST4:
処理部13は、上記ツリーの水平レイヤkに属する全てのセクションの各々に対して、当該セクションが含むサブツリーのリーフ(ノード、水平レイヤl−1のルート)のうち、その下層にリボークされる受信装置があるリーフ、すなわちリボークにより影響を受けるリーフを特定する。
【0033】
ステップST5:
処理部13は、上記ツリーの水平レイヤlに属する全てのセクションの各々に対して、当該セクションが含むサブツリーに対して採用されたリボケーション方式で、ステップS41で特定したリーフをリボークする処理を行う。
すなわち、処理部13は、上記採用されたリボケーション(RV)方式を基にリボケーション処理を行い、当該サブツリーに属するリーフのうちリボークの影響を受けないリーフの下層にある受信装置との通信に使用する鍵暗号鍵データKEKを決定するために用いられるデータ、例えば、リボークするノードの位置などを示すデータを生成する。
【0034】
ステップST6:
処理部13は、k=Kであるか否かを判断し、l=Lであると判断した場合に処理を終了し、そうでない場合にステップST3の処理に戻る。
【0035】
ステップST7:
処理部13は、ステップST1〜ST6によって、全ての水平レイヤに属する全てのセクションについて行われたRV処理の結果を基に、リボークしない受信装置4_1〜4_Nとの間の通信に用いる鍵暗号鍵データKEKmを生成する。
ここで、mは1〜Mの整数であり、Mは、リボークしない全ての受信装置との通信に用いる鍵暗号鍵データKEKの数を示している。
この場合に、リボークする受信装置の上記ツリー上の位置に応じて、複数のリボークしない受信装置が共通の鍵暗号鍵データKEKmを使用する場合がある。
【0036】
次に、本実施形態において採用する鍵取得方法SKTである鍵取得方法SKT−AおよびSKT−Bについて説明する。
鍵取得方法SKT−A,SKT−Bは、前述した非特許文献1に開示されているLSD方式に比べて、受信装置4_1〜4_Nが記憶するラベルデータLABELおよび鍵データK_ORGのデータ量が少なく、非特許文献2に開示されているCST方式に比べてリボケーション処理に伴う鍵管理装置3と受信装置4_1〜4_Nとの間の通信量が小さいという特徴を有している。
【0037】
先ず、鍵取得方法SKT−Aについて説明する。
図5は、鍵取得方法SKT−Aを説明するための図である。
図5に示すように、鍵取得方法SKT−Aでは、ツリーを2つの水平レイヤA0,A1に分割する。
ここで、水平レイヤA0が本発明の第1のレイヤに対応し、水平レイヤA1が本発明の第2のレイヤに対応している。
最下層の水平レイヤA0の高さをHA〔0〕とし、水平レイヤA1の高さを(log N−HA〔0〕)とする。ここで、Nは受信装置4_1〜4_Nの総数を示す。
そして、水平レイヤA0に属する各セクション31〔0〕のリボケーション方式として上記非特許文献1に開示されているLSD方式を採用する。
また、水平レイヤA1に属する各セクション31〔1〕のリボケーション方式として上記非特許文献2に開示されているCST方式を採用する。
【0038】
ここで、鍵取得方法SKT−Aにおいて、R個の受信装置4_1〜4_Nのリボークが、上記ツリーを構成するR0A個のセクションに影響を与えるとする。
この場合に、リボークに伴う鍵管理装置3とリボークされない受信装置4_1〜4_Nとの間の通信量のディメンションは、鍵取得方法SKT−Aの場合には下記式(2)に示すO(COA)となる。
【0039】
【数2】
O(COA)=O(R+R0A(log N−H0A)−R0Alog0A)…(2)
【0040】
次に、鍵取得方法SKT−Bについて説明する。
図6は、鍵取得方法SKT−Bを説明するための図である。
図6に示すように、鍵取得方法SKT−Bでは、ツリーを3つの水平レイヤB0,B1,B2に分割する。
ここで、水平レイヤB0が本発明の第3のレイヤに対応し、水平レイヤB1が本発明の第4のレイヤに対応し、水平レイヤB2が本発明の第5のレイヤに対応している。
【0041】
最下層の水平レイヤB0の高さをHB〔0〕とし、水平レイヤB1の高さをHB〔1〕とし、水平レイヤB2の高さを(log N−HB〔0〕−HB〔1〕)とする。
そして、水平レイヤB0に属する各セクション31〔0〕のリボケーション方式として上記非特許文献1に開示されているLSD方式を採用する。
また、水平レイヤB1に属する各セクション31〔1〕のリボケーション方式として上記非特許文献1に開示されているLSD方式を採用する。
さらに、水平レイヤB2に属する各セクション31〔2〕のリボケーション方式として上記非特許文献2に開示されているCST方式を採用する。
【0042】
ここで、上述した鍵取得方法SKT−Bにおいて、R個の受信装置4_1〜4_Nのリボークが、上記ツリーを構成する水平レイヤB1のR0B個のセクションに影響を与え、さらに水平レイヤB2のR1B個のセクションに影響を与えるとする。
この場合に、リボークに伴う鍵管理装置103とリボークされない受信装置104_1〜104_Nとの間の通信量のディメンションは、鍵取得方法SKT−Bの場合には下記式(3)に示すO(COB)となる。
【0043】
【数3】
Figure 2004320655
【0044】
以下、CST方式について説明する。
図7〜図9は、CST方式を説明するための図である。
以下の説明では、図7に示すように、16個の受信装置u1〜u16に対してCST方式でリボケーション処理を行う場合を例示する。
CST方式では、2分ツリーの各ノードを用いて、「そのノードを頂点とする2分ツリーのリーフに割り当てられた受信装置からなる集合」を規定する。
図7に示す例では、ノードiは、受信装置u5とu6を要素とする集合を示す。そして、各ノードにノードキー(SKT−Aでは鍵データK_ORGに対応)が定義される。
【0045】
各受信装置には、それが割り当てられているリーフから、鍵管理装置が割り当てられているツリーのルートに至るパス上のノードに割り当てられたノードキーが与えられ、受信装置はこれらのノードキーを安全なメモリに保持する。
図8に示すように、受信装置u4には、ノード1,2,4,9,19に割り当てられた5個のノードキーが与えられる。
すなわち、全受信装置数をNとした場合には、各受信装置はlogN+1個のノードキーを保持する。
【0046】
図9は、秘密情報(たとえば、暗号化されたコンテンツを復号するためのコンテンツキー)をどのようにリボークされない受信装置に送信するかを説明するための図である。
ここで、受信装置u2,u11,u12がリボークする受信装置とする。
この場合に、リボークする受信装置u2,u11,u12が割り当てられているリーフからツリーのルートに至るパス上のノードに割り当てられたノードキーは使用することができない。これは、これらのノードキーを使用するとリボークする受信装置が秘密情報を入手できてしまうためである。
そして、これらのノードおよびパスをツリーから除外すると、1つ以上のサブツリー(部分ツリー)が残る。
それぞれのサブツリーの頂点に最も近いノード(図9ではノード5,7,9,12,16)に割り当てられたノードキーを用いて秘密情報を暗号化して送信することで、効率的で安全な秘密情報の送信を行う。
受信装置は、伝送された暗号文のうち、自分が復号できるもの、すなわち、自身が割り当てられたリーフからルートに至るまでのパス上のノードに対応するノードキーを用いて暗号化されたものを復号して秘密情報を得る。
上記の例では、例えば、受信装置u4はノード9のノードキーを保持しているので、これを用いて暗号化された暗号文を復号する。
CST方式では、リボークしない受信装置が復号できる暗号文は必ずひとつ存在する。
【0047】
次に、LSD方式の前提となったSD(Subset Difference) 方式について説明する。
図10〜図13は、SD方式を説明するための図である。
上述したように、CST方式においては、ツリーの各ノードを用いて、「そのノードを頂点とするサブツリーのリーフに割り当てられた受信装置からなる集合」を表している。
これに対し、SD方式では、ツリーの2つのノードi,j(ただしiはjの先祖であるノード)を用いて、「(ノードiを頂点とするサブツリーのリーフからなる集合)から(ノードiを頂点とするサブツリーのリーフからなる集合)を引いた集合」を定義する。
例えば、図10に示すノードi,jで定義される集合S(i,j)は、受信装置u1〜u8の集合から受信装置u5,u6を除いたものであり、すなわち、S(i,j)={u1,u2,u3,u4,u5,u6,u7,u8,u9}−{u5,u6}である。
ノードiがノードjの先祖である(すなわち、ノードjはノードiと同一ではなく、ノードjからルートへのパス上にノードiが存在する)全てのノードの組についてこのような集合を定義する。
そして、各集合に、ラベルデータLABELを割り当てる。また、ラベルデータLABELを基に所定の演算(例えば、当該ラベルデータLABELをキーとして疑似乱数を生成して)を行ってサブセットキーを得る。
当該サブセットキーは、当該集合の要素である受信装置と鍵管理装置との間の通信において、鍵暗号鍵データKEKとして用いられる。
SD方式では、一つの受信装置が所属する集合の個数はO(N)となるため、それぞれの集合(サブセット)に鍵データSK(サブセットキー)を独立に割り当てたのでは、各受信装置がO(N)個のサブセットキーに対応するラベルデータLABELを安全に保持する必要があるが、これはNが大きいときには現実的に困難である。
【0048】
そのため、SD方式では以下に述べる手法により、各受信装置が保持するラベルデータLABELの数を削減している。
例えば、図11(A)に示すように、内部ノード(すなわち、リーフでないノード)iに注目し、そのノードのラベルデータLABEL(i)としてCビットの値Sをランダムに選択する。
次に、図12に示すように、Cビット入力、3Cビット出力の擬似乱数生成器Gに、LABEL(i)の値Sを入力する。
そして、擬似乱数生成器Gからの3Cビットの出力を左から(最上位ビット側から)Cビットずつに区切り、それぞれG (S),G (S),G (S)とする。
【0049】
そして、G (S)を、ノードiの左側(一方)の子ノードのラベルデータLABELとし、G (S)をノードiの右側(他方)の子ノードのラベルデータLABELとする。
この処理により、図11においてノードiの左側の子であるノードkについて、ノードiを始点にした場合のノードkのラベルデータLABEL(i,k)は、LABEL(i,k)=G (S)となる。そして、これをTとする。
次に、Tを上記の擬似乱数生成器Gに入力し、その出力を左からCビットずつに区切って、G (T),G (T),G (T)を得る。
そして、G (T),G (T),G (T)を、それぞれノードiを始点にした場合のノードkの左側の子ノードLのラベルデータLABEL(i,kL)、ノードiを始点にした場合のノードkのラベルデータLABEL(i,k)、ノードiを始点にした場合のノードkの右側の子ノードkRのラベルデータLABEL(i,kR)とする。
この処理を繰り返すことにより、ノードiを始点とした場合の、その子孫となるすべてのノードに対応するラベルを作り出す。
【0050】
なお、上記の定義によれば集合S(i,i)は空集合であり、ノードiを始点とした場合に、ノードiの鍵というものは不要であるため、LABEL(i)を擬似乱数生成器Gに入力した出力の中央部分であるG (S)は使われない。
図11(A)に示すように、始点であるノードiのラベルデータLABEL(i)の値Sが定められ、G (S)がノードiを始点とした場合のノードiの右の子ノードのラベルデータLABELとなり、さらにそれを擬似乱数生成器Gに入力して得られたG (S)が、ノードiを始点とした場合のノードjのラベルデータLABELとなる。
この処理を、すべての内部ノードiに対して行う。
【0051】
これらの処理はシステムのセットアップ時に鍵管理装置によって行われるが、擬似乱数生成器(あるいは擬似乱数生成関数)Gは鍵管理装置によって定められ公開されており、これを用いることによって、LABEL(i,j)を与えられた受信装置は、ノードiを始点とした場合の、ノードjの子孫となるすべてのノードnのラベルLABEL(i,n)を計算でき、ノードiを始点とした場合の、ノードjおよびその子孫ノードnのサブセットキーSK(i,n)を計算できる。
このようにしておけば、図11(B)に示すように、ある受信装置uは、それが割り当てられたリーフからツリーの頂点へのパス上のそれぞれの内部ノードiについて、ノードiを始点として、このリーフからiへのパスから直接枝分かれしているノードのラベルデータLABELのみを保持しておけば、そのノードおよびそれ以降の(その子孫となる)ノードの、ノードiを始点としたサブセットキーを作り出すことが可能となる。図11(B)では、ノードiに注目したときに、uからiへのパスから直接枝分かれしているノードは3つであり、受信装置uは、これら3つのラベルデータLABELをシステムのセットアップ時に鍵管理装置から受け取る。
【0052】
以下、図13に示す例において、受信装置u4について考える。
受信装置u4については、それが割り当てられたリーフであるノード19から、ルート1へのパス上の内部ノード1,2,4,9が始点(ノードi)となる。ノード1を始点とすると、ノード19からノード1へのパスから直接枝分かれしているノードはノード3,5,8,18の4つであるため、LABEL(1,3),(1,5),(1,8),(1,18)を受信装置u4は保持する。
同様に、ノード2を始点とした場合にLABEL(2,5),(2,8),(2,18)3つのラベルデータLABELを、ノード4を始点とした場合にはLABEL(4,8),(4,18)の2つのラベルデータLABELを、ノード9を始点とした場合にはLABEL(9,18)を保持する。
また、リボークする受信装置がないという特別な場合に使用する、全受信装置を含む集合(これをS1,φと表すことにする)に対応するラベルデータLABEL(1)をひとつ保持する。
ただし、S(1),φに対応するラベルデータLABELとしているが、ラベルデータLABELではなくS1、Φに対応するサブセットキーを直接保持してもよい。
上記のように、各受信装置は、リーフからルートへのパス上の各内部ノードについて、その内部ノードの高さ分だけのラベルデータLABELを保持する必要がある。
これらのラベルデータLABELは、公開されているGを用いることによりサブセットキーを作り出せるものであるため、受信装置はこれらを安全に保持する。
【0053】
以下、上述したSD方式を基礎としたLSD( Basic Layered Subset Difference)方式を説明する。
LSD方式には、Basic(基本)方式と、その拡張であるGeneral(一般化)方式がある。ここではBasic方式について説明する。
LSD方式はSD方式の拡張であり、レイヤという新たな概念を取り入れたものである。SD方式における木構造の中で、特定の高さを特別レベル(Special Level)として定義する。
Basic_LSD方式においては特別ラベルは1種類だけであるが、General_LSD方式においては重要度の異なる複数の特別レベルを用いる。
ここで、簡単のため、log1/2 Nを整数であるとする。
Basic_LSD方式では、図14に示すように、ツリーのルートからリーフに至るまでのそれぞれのレベル(階)のうち、ルートとリーフのレベルを含む、log1/2 Nごとのレベルを特別レイヤとする。
そして、隣り合う2つの特別レイヤに挟まれた階層(両方の特別レベルを含む)を、レイヤと呼ぶ。
図14の例では、ルートのレベル、ノードkを含むレベル、リーフのレベルが特別レベルであり、ルートのレベルとノードiを含むレベルとノードkを含むレベルが1つのレイヤを構成する。またノードkを含むレベルとノードjを含むレベルとリーフを含むレベルが別のレイヤを構成する。
【0054】
Basic_LSD方式においては、SD方式において定義されたサブセットS(i,j)のうち、ノードiとノードjが同一レイヤにあるか、もしくはノードiが特別レベルにあるものだけを定義する。
このようにすると、SD方式において用いられたサブセットのうちのいくつかはBasic_LSD方式では定義されなくなるが、このサブセットはBasic_LSD方式で定義されたサブセットの高々2つの和集合で表すことができる。
例えば、図14の例では、サブセットS(i,j)はBasic_LSD方式では定義されないが、ノードiからノードjへのパス上の、ノードiに最も近い特別レベル上のノード(ノードk)を用いて、S(i,j)=S(i,k)∪S(k,j)と表すことができる。
つまり、SD方式においてはサブセットS(i,j)に対応するサブセットキーSk(i,j)を用いて暗号化した1つの暗号文の代わりに、Basic_LSD方式においてはサブセットS(i,k)とS(k,j)に対応するサブセットキーSk(i,k),SK(k,j)を用いて暗号化した2つの暗号文を送信する。
これにより、送信される暗号文の数はSD方式の高々2倍に増加するが、各受信機が保持するラベルの数を減らすことができる。
【0055】
図15に、図13のSD方式で想定したのと同じ場合においてBasic_LSD方式を適用した場合を説明する。
図15に示す受信装置u4は、i,jが同一レイヤにあるか、iが特別レベルにあるラベルデータLABEL(i,j)のみ保持すればよい。
すなわち、受信装置u4が保持するラベルデータLABELは、ラベルデータLABEL(1,3),(1,5),(1,8),(1,18),(2,5),(4,8),(4,18),(9,18)となる。
さらに、SD方式と同様に、リボークする受信機がない場合に用いる特別なラベルも保持する必要がある。
【0056】
以下、図2に示す鍵管理装置3の動作例を説明する。
鍵管理装置3の動作は、上述したように、プログラムPRG1を基にした処理部13の処理により実現される。
〔前処理の動作例〕
図16は、鍵管理装置3が上述した前処理を行う場合の動作例を説明するためのフローチャートである。
前述したように、鍵管理装置3の処理部13は、リボケーション処理に先立って、例えば、受信装置4_1〜4_Nの登録時などに、以下に示す前処理を行う。
【0057】
ステップST11:
鍵管理装置3は、上述した鍵取得方法SKTのうち、鍵取得方法SKT−AおよびSKT−Bを、受信装置のリボケーション処理に使用する鍵取得方法として規定する。
ステップST12:
鍵管理装置3は、鍵取得方法SKT−AおよびSKT−AT、並びに鍵取得方法SKT−AおよびSKT−Bで使用する鍵データK_ORGおよびラベルデータLABELを受信装置4_1〜4_Nに設定する。
具体的には、鍵管理装置3は、受信装置4_1〜4_Nの各々に、図5に示す鍵取得方法SKT−Aにおける水平レイヤA0内の当該受信装置が属するサブツリー内の他の何れの受信装置が無効にされる場合でも、当該サブツリー内の無効にされない受信装置のみを要素とする集合が存在するように規定された複数の集合にそれぞれ割り当てられた複数のラベルデータLABELを取得するためのラベルデータLABELを設定する。
また、鍵管理装置3は、受信装置4_1〜4_Nの各々に、図5に示す水平レイヤA1内の当該受信装置に対応する最終端のノードと前記ルートとの間のパス上に位置する全てのノードにそれぞれ割り当てられた複数の鍵データK_ORGを設定する。
【0058】
また、鍵管理装置3は、受信装置4_1〜4_Nの各々に、図6に示す鍵取得方法SKT−Bにおける水平レイヤB0内の当該受信装置が属するサブツリー内の他の何れの受信装置が無効にされる場合でも、当該サブツリー内の無効にされない受信装置のみを要素とする集合が存在するように規定された複数の集合にそれぞれ割り当てられた複数のラベルデータLABELを取得するためのラベルデータLABELを設定する。
また、鍵管理装置3は、受信装置4_1〜4_Nの各々に、図6に示す水平レイヤB1内の何れのサブツリー内がその分岐先に無効にされる受信装置を含む場合でも、当該サブツリー内の無効にされない受信装置のみを分岐先に含む最終端のノードのみを要素とする集合が存在するように規定された複数の集合にそれぞれ割り当てられた複数のラベルデータLABELを取得するためのラベルデータLABELを設定する。
また、鍵管理装置3は、受信装置4_1〜4_Nの各々に、図6に示す水平レイヤB2内の当該受信装置に対応する最終端のノードと前記ルートとの間のパス上に位置する全てのノードにそれぞれ割り当てられた複数の鍵データK_ORGを設定する。
鍵管理装置3は、例えば、受信装置4_1〜4_Nの発行あるいは登録時に、受信装置4_1〜4_Nに対して個別に上記設定をセキュアな状態で行う。
【0059】
〔リボケーション処理の動作例〕
図17および図18は、鍵管理装置3が上述したリボケーション処理を行う場合の動作例を説明するためのフローチャートである。
図17に示すステップST22,ST23が第1の発明の第1の工程に対応し、図17に示すステップST24,ST25が第1の発明の第2の工程に対応している。
また、第3の発明の第1の手段は処理部13がステップST22,ST23を実行することで実現され、第3の発明の第2の手段は処理部13がステップST24,ST25を実行することで実現される。
鍵管理装置3の処理部13は、受信装置4_1〜4_Nのうち何れかをリボークする場合に、当該リボケーション処理を行う。
【0060】
ステップST21:
鍵管理装置3は、受信装置4_1〜4_Nのうちリボークする受信装置を示すリボケーションリストRLを生成する。
ステップST22:
鍵管理装置3は、リボケーションリストRLを基に、上述した鍵取得方法SKT−AおよびSKT−Bの各々について、当該鍵取得方法を採用した場合に、鍵管理装置3とリボークしない受信装置4_1〜4_Nとの間に生じる通信量を特定する。
ステップST23:
鍵管理装置3は、ステップST22で特定した鍵取得方法SKT−Aを採用した場合の通信量が、鍵取得方法SKT−Bを採用した場合の通信量以上であるか否かを判断する。
鍵管理装置3は、ステップST22で特定した鍵取得方法SKT−Aを採用した場合の通信量が鍵取得方法SKT−Bを採用した場合の通信量以上であると判断すると鍵取得方法SKT−Aを選択してステップST24に進み、そうでない場合には鍵取得方法SKT−Bを選択してステップST25に進む。
【0061】
ステップST24:
鍵管理装置3は、ステップST21で生成したリボケーションリストRLを基に、リボークしない受信装置4_1〜4_Nとの間の通信に用いる鍵暗号鍵データKEKmを、鍵取得方法SKT−Aに従って特定する。
当該処理については、後に詳細に説明する。
ステップST25:
鍵管理装置3は、ステップST21で生成したリボケーションリストRLを基に、リボークしない受信装置4_1〜4_Nとの間の通信に用いる鍵暗号鍵データKEKmを、鍵取得方法SKT−Bに従って特定する。
当該処理については、後に詳細に説明する。
【0062】
ステップST26:
鍵管理装置3は、図19に示すように、ステップST24あるいはST25で特定した鍵暗号鍵データKEKmの生成に用いる鍵データK_ORGおよびラベルデータLABELを指定した鍵指定データKIDmと、ステップST23で選択した鍵取得方法を指定する鍵取得方法指定データKOIDmとを含む指定データIm(本発明の指定データ)を生成する。
なお、鍵指定データKIDmにおける鍵データK_ORGおよびラベルデータLABELの指定は、鍵データK_ORGおよびラベルデータLABELに割り当てられたインデックスなどの識別データを基に行い、鍵データK_ORGおよびラベルデータLABEL自体は含めない。
【0063】
ステップST27:
鍵管理装置3は、新たな(更新後の)セッション鍵データNEW_SEKを、ステップST24あるいはST25で生成した鍵暗号鍵データKEKmで暗号化してデータEKEKm(NEW_SEK)を生成する。
ステップST28:
鍵管理装置3は、受信装置4_1〜4_Nに提供する秘密情報であるペイロードデータPAYLを、新たなセッション鍵データNEW_SEKを用いて暗号化してデータENEW _SEK (PAYL)を生成する。
ステップST29:
鍵管理装置3は、ステップST26で生成した指定データIm(I 〜I )と、ステップST27で生成したデータEKEKm(NEW_SEK)と、ステップST28で生成したENEW _SEK (PAYL)とを格納したデータである図20に示すカプセルデータCAPを生成する。
ステップST30:
鍵管理装置3は、ステップST29で生成したカプセルデータCAPを、図2に示す通信部11を介して、例えば、無線方式で放送(送信)する。
当該放送は、いわゆるPUSH配信である。
なお、本実施形態における通信量は、ステップST30における送信による通信に応じて決まり、前述したように、鍵取得方法SKT−AとSKT−Bのうちより通信量が少ない方が採用される。
【0064】
以下、図17に示すステップST24、すなわち、鍵取得方法SKT−Aを採用した場合の鍵暗号鍵データKEKmの生成方法について詳細に説明する。
図21は、図17に示すステップST24、すなわち鍵取得方法SKT−Aを基にした鍵暗号鍵データKEKの生成方法を説明するための図である。
【0065】
ステップST31:
鍵管理装置3は、図5に示す水平レイヤA0に属するサブツリー(SUBT)のうちリボークする受信装置を含む全てのサブツリーの各々に対して、当該サブツリーに属する受信装置を各々が要素とする予め規定された複数の集合のなかから、当該サブツリー内の無効にされない受信装置のみを要素とする集合を特定する。
【0066】
ステップST32:
鍵管理装置3は、図5に示す水平レイヤA1内の最終端のノードのうち、当該ノードの分岐先に無効にする受信装置が存在しないノードを特定する。
【0067】
ステップST33:
鍵管理装置3は、ステップST32で特定した全てのノードに対して、当該ノードとルートとの間のパス上に位置するノードのなかで、当該ノードから分岐した前記リーフに無効にする前記受信装置が無く、かつルートに最も近いノードを特定する。
【0068】
ステップST34:
鍵管理装置3は、ステップST31で特定した集合(あるいはそのラベルデータLABEL)に対応付けられた鍵暗号鍵データKEKmを、当該集合の要素である受信装置4_1〜4_Nとの間の通信に使用することを決定する。
鍵管理装置3は、例えば、図5に示す水平レイヤA0内の全てのサブセットの上記集合と鍵暗号鍵データKEKmとを対応付けて保持し、ステップST31で特定した集合に対応する鍵暗号鍵データKEKを特定する。
また、鍵管理装置3は、例えば、図5に示す水平レイヤA0内の上述した集合であるサブセットS(i,j)のうち、ノードiとノードjが同一レイヤにあるか、もしくはノードiが特別レベルにあるものに対応するラベルデータLABEL(i,j)を保持し、これを基に、図10〜図14を用いて説明した方法でラベルデータLABELを生成し、このラベルデータLABELを基にそのサブセットキーである鍵暗号鍵データKEKmを生成してもよい。
そして、鍵管理装置3は、上記特定(生成)した鍵暗号鍵データKEKmを、上記特定した集合の要素である受信装置4_1〜4_Nが生成するために用いるラベルデータLABELを指定する鍵・ラベル指定データKIDmを含む指定データImを生成する。
【0069】
ステップST35:
鍵管理装置3は、ステップST33で特定したノードに対応する鍵データK_ORG(ノードキー)を鍵暗号鍵データKEKmとして、当該ノードの分岐先の受信装置4_1〜4_Nとの通信に使うことを決定する。
そして、鍵管理装置3は、上記決定した鍵暗号鍵データKEKmである鍵データK_ORGを指定する鍵指定データKIDmを含む指定データImを生成する。
【0070】
以下、図17に示すステップST25、すなわち、鍵取得方法SKT−Bを採用した場合の鍵暗号鍵データKEKmの生成方法について詳細に説明する。
図22は、図17に示すステップST25、すなわち鍵取得方法SKT−Bを基にした鍵暗号鍵データKEKの生成方法を説明するための図である。
【0071】
ステップST41:
鍵管理装置3は、図6に示す水平レイヤB0に属するサブツリー(SUBT)のうちリボークする受信装置を含む全てのサブツリーの各々に対して、当該サブツリーに属する受信装置を各々が要素とする予め規定された複数の集合のなかから、当該サブツリー内の無効にされない受信装置のみを要素とする集合を特定する。
【0072】
ステップST42:
鍵管理装置3は、図6に示す水平レイヤB1に属するサブツリー(SUBT)に対して、当該サブツリー内の最終端のノードのうち分岐先に無効にしない受信装置のみを含むノードのみを要素とする集合を特定する。
ステップST43:
鍵管理装置3は、図6に示す水平レイヤB2内の最終端のノードのうち、当該ノードの分岐先に無効にする受信装置が存在しないノードを特定する。
【0073】
ステップST44:
鍵管理装置3は、ステップST43で特定した全てのノードに対して、当該ノードとルートとの間のパス上に位置するノードのなかで、当該ノードから分岐した前記リーフに無効にする前記受信装置が無く、かつルートに最も近いノードを特定する。
【0074】
ステップST45:
鍵管理装置3は、ステップST41で特定した集合(あるいはそのラベルデータLABEL)に対応付けられた鍵暗号鍵データKEKmを、当該集合の要素である受信装置との間の通信に使用することを決定する。
鍵管理装置3は、例えば、図6に示す水平レイヤB0内の全てのサブセットの上記集合と鍵暗号鍵データKEKmとを対応付けて保持し、ステップST41で特定した集合に対応する鍵暗号鍵データKEKを特定する。
また、鍵管理装置3は、例えば、図6に示す水平レイヤB0内の上述した集合であるサブセットS(i,j)のうち、ノードiとノードjが同一レイヤにあるか、もしくはノードiが特別レベルにあるものに対応するラベルデータLABEL(i,j)を保持し、これを基に、図10〜図15を用いて説明した方法でラベルデータLABELを生成し、このラベルデータLABELを基にそのサブセットキーである鍵暗号鍵データKEKmを生成してもよい。
そして、鍵管理装置3は、上記特定(生成)した鍵暗号鍵データKEKmを、上記特定した集合の要素である受信装置4_1〜4_Nが生成するために用いるラベルデータLABELを指定する鍵・ラベル指定データKIDmを含む指定データImを生成する。
【0075】
ステップST46:
鍵管理装置3は、ステップST42で特定した集合(あるいはそのラベルデータLABEL)に対応付けられた鍵暗号鍵データKEKmを、当該集合の要素である受信装置との間の通信に使用することを決定する。
当該鍵暗号鍵データKEKの決定(生成)方法は、ステップST45と同様である。
そして、鍵管理装置3は、上記特定(生成)した鍵暗号鍵データKEKmを、上記特定した集合の要素である受信装置4_1〜4_Nが生成するために用いるラベルデータLABELを指定する鍵・ラベル指定データKIDmを含む指定データImを生成する。
ステップST47:
鍵管理装置3は、ステップST44で特定したノードに対応する鍵データK_ORG(ノードキー)を鍵暗号鍵データKEKmとして、当該ノードの分岐先の受信装置104_1〜104_Nとの通信に使うことを決定する。
そして、鍵管理装置3は、上記決定した鍵暗号鍵データKEKmである鍵データK_ORGを指定する鍵・ラベル指定データKIDmを含む指定データImを生成する。
【0076】
〔受信装置4_1〜4_N〕
受信装置4_1〜4_Nは、例えば、PDA(Personal Digital Assistant)や携帯電話などのユビキタスな端末装置である。
図23は、図1に示す受信装置4_1〜4_Nのハードウェア構成図である。
受信装置4_1〜4_Nは、メモリ42に記憶する鍵データK_ORGおよびラベルデータLABELを除いて同じ構成を有している。
図23に示すように、受信装置4_1〜4_Nは、例えば、通信部41、メモリ42および処理部43を有する。
ここで、通信部41が第6の発明の第1の手段に対応し、処理部43が第6の発明の第2の手段に対応している。
【0077】
通信部41は、鍵管理装置3がPUSH方式で送信した前述したカプセルデータCAPを無線方式で受信する。
メモリ42は、処理部43によって実行されるプログラムPRG2(第5の発明のプログラム)と、プログラムPRG2の実行に用いられる種々データを記憶する。
プログラムPRG2は、前述した鍵取得方法SKT−AおよびSKT−Bの処理手順を含んでいる。
メモリ42は、鍵管理装置3による前述した前処理によって、受信装置4_1〜4_Nの各々に割り当てられた鍵データK_ORGおよびラベルデータLABELを記憶する。
具体的には、メモリ42は、図5に示す鍵取得方法SKT−Aの水平レイヤA0内の当該受信装置が属するサブツリー内の他の何れの受信装置が無効にされる場合でも、当該サブツリー内の無効にされない前記受信装置のみを要素とする集合が存在するように規定された複数の集合にそれぞれ割り当てられた複数のラベルデータLABELを取得するためのラベルデータLABELを記憶する。
また、メモリ42は、図5に示す鍵取得方法SKT−Aの水平レイヤA1内の当該受信装置に対応する最終端のノードと前記ルートとの間のパス上に位置する全てのノードにそれぞれ割り当てられた複数の鍵データK_ORGを記憶する。
【0078】
また、メモリ42は、図6に示す鍵取得方法SKT−Bの水平レイヤB0内の当該受信装置が属するサブツリー内の他の何れの受信装置が無効にされる場合でも、当該サブツリー内の無効にされない受信装置のみを要素とする集合が存在するように規定された複数の集合にそれぞれ割り当てられた複数のラベルデータLABELを取得するためのラベルデータLABELを記憶する。
また、メモリ42は、図6に示す水平レイヤB1内の何れのサブツリー内がその分岐先に無効にされる受信装置を含む場合でも、当該サブツリー内の無効にされない受信装置のみを分岐先に含む最終端のノードのみを要素とする集合が存在するように規定された複数の集合にそれぞれ割り当てられた複数のラベルデータLABELを取得するためのラベルデータLABELを記憶する。
また、メモリ42は、図6に示す水平レイヤB2内の当該受信装置に対応する最終端のノードと前記ルートとの間のパス上に位置する全てのノードにそれぞれ割り当てられた複数の鍵データK_ORGを記憶する。
【0079】
ここで、メモリ42が記憶する鍵データK_ORGおよびラベルデータLABELのデータ量はオーダO(ST)は、下記式(4)で示される。
Figure 2004320655
【0080】
処理部43は、メモリ42に記憶されたプログラムPRG2を実行し、その実行に応じて受信装置4_1〜4_Nの処理を統括して制御する。本実施形態において、受信装置4_1〜4_Nの処理は、処理部43が実行するプログラムPRG2によって規定される。
プログラムPRG2によって規定される処理部43の機能は、受信装置4_1〜4_Nもユーザからは制御できないように構成されている。また、受信装置4_1〜4_Nのユーザは、これらの機能を全く意識せずに受信装置4_1〜4_Nを使用する。
【0081】
以下、受信装置4_1〜4_Nの動作例を説明する。
図24は、受信装置4_1〜4_Nの動作例を説明するためのフローチャートである。
なお、受信装置4_1〜4_Nの動作は、処理部43がプログラムPRG2を実行することで規定される。
図24において、ステップST51が第4の発明の第1の工程に対応し、ステップST55,ST56が第4の発明の第2の工程に対応している。
【0082】
ステップST51:
受信装置4_1〜4_Nの通信部41が、図18に示すステップST30において鍵管理装置3が放送したカプセルデーダCAPを受信する。
ステップST52:
受信装置4_1〜4_Nの処理部43が、ステップST51で受信したカプセルデータCAP内に、自らに対応する鍵指定データImが含まれているか否かを判断し、含まれていると判断するとステップST53の処理に進み、そうでない場合には処理を終了する。
【0083】
ステップST53:
処理部43は、カプセルデータCAP内に、自らに対応する指定データImを取得する。
ステップST54:
処理部43は、メモリ42が記憶する鍵データK_ORGおよびラベルデータLABELのなかから、ステップST52で取得した指定データIm内の鍵・ラベル指定データKIDmが指定する鍵データK_ORGmあるいはラベルデータLABELmを特定する。
【0084】
ステップST55:
処理部43は、ステップST53で取得した指定データIm内の鍵取得方法指定データKOIDmが鍵取得方法SKT−AとSKT−Bのうち何れを指定しているかを特定する。
ステップST56:
処理部43は、ステップST54で特定した鍵データK_ORGmあるいはラベルデータLABELmを基に、ステップST55で特定した鍵取得方法SKT−AあるいはSKT−Bを基に鍵暗号鍵データKEKmを取得(生成)する。
当該ステップST56の処理については、後に詳細に説明する。
【0085】
ステップST57:
処理部43は、ステップST57で取得(生成)した鍵暗号鍵データKEKmを用いて、カプセルデータCAP内のデータEKEKm(NEW_SEK)を復号して新たなセッション鍵データNEW_SEKを取得する。
ステップST58:
処理部43は、カプセルデータCAP内のデータENEW _SEK (PAYL)を、ステップST57で取得した新たなセッション鍵データNEW_SEKを用いて復号してパイロードデータPAYLを取得する。
【0086】
受信装置4_1〜4_Nは、以後、次にリボケーション処理を行うまで、管理装置3から受信したデータを復号するために、ステップST57で取得したセッション鍵データNEW_SEKを使用する。
【0087】
以下、図24に示すステップST56の処理を説明する。
図25は、図24に示すステップST56の処理を説明するためのフローチャートである。
ステップST61:
処理部43は、図24に示す前述したステップST54でラベルデータLABELmを特定したか否かを判断し、ラベルデータLABELmを特定したと判断するとステップST62に進み、鍵データK_ORGmを特定したと判断するとステップST66に進む。
【0088】
ステップST62:
処理部43は、ステップST54で特定したラベルデータLABELmの生成に必要なラベルデータLABELを、メモリ42が記憶(保持)しているか否かを判断し、メモリ42が記憶していると判断するとステップST65に進み、そうでない場合にはステップST63に進む。
ステップST63:
処理部43は、鍵指定データImが指定するラベルデータLABELmに対応する集合を和集合とする2つの集合に対応するラベルデータLABELを特定する。
ステップST64:
処理部43は、ステップST63で特定した2つのラベルデータLABELを、必要に応じてメモリ42に記憶されたラベルデータLABELを基にそれぞれ生成する。
そして、処理部43は、当該2つのラベルデータLABELを、それぞれキーとして疑似乱数発生器Gを基に疑似乱数を発生させて、2つのサブセットキーSKを生成する。
そして、処理部43は、当該2つのサブセットキーSKを基に鍵暗号鍵データKEKmを生成する。
【0089】
ステップST65:
処理部43は、ステップST54で特定したラベルデータLABEmを、必要に応じてメモリ42に記憶されたラベルデータLABELを基に生成する。
そして、処理部43は、当該ラベルデータLABELmを、キーとして疑似乱数発生器Gを基に疑似乱数を発生させて、サブセットキーSKを生成する。
そして、処理部43は、当該サブセットキーSKを鍵暗号鍵データKEKmとする。
【0090】
ステップST66:
処理部43は、ステップST54で特定した鍵データK_ORGmを、鍵暗号鍵データKEKmとする。
【0091】
以下、通信システム1の全体動作例を説明する。
先ず、鍵管理装置3が、図16を用いて前述した前処理により、所定の鍵データK_ORGおよびラベルデータLABELを受信装置4_1〜4_Nに配信する。
そして、鍵管理装置3が、所定の受信装置4_1〜4_Nをリボークする場合に、図17、図18、図21および図22を用いて前述した手法で、カプセルデータCAPをリボークしない受信装置4_1〜4_Nに配信する。
そして、受信装置4_1〜4_Nが、図24および図25を用いて説明した処理を行い、リボークしない受信装置4_1〜4_Nが、新たなセッション鍵データNEW_SEKを基に復号したペイロードデータPAYLを得る。
【0092】
以上説明したように、通信システム1では、鍵管理装置3が、予め決められた複数の鍵取得方法(例えば、後述する鍵取得方法SKT−A,SKT−Bなど)のうち、所定の受信装置4_1〜4_Nをリボーク(無効に)するために生じる、リボークにしない受信装置との間の通信量が最少となる鍵取得方法を選択する。そして、鍵管理装置3が当該選択した鍵取得方法を基に新たな鍵暗号鍵データKEKを取得する。
そのため、通信システム1によれば、リボケーション処理に伴う鍵管理装置3とリボークしない受信装置4_1〜4_Nとの間の通信量を、前述したCST方式に比べて少なくできる。
具体的には、当該通信量は、通信システム1の場合には、前述した式(2)に示すO(COA)と式(3)に示すO(COB)とのうち少ない方になり、LSD方式およびSD方式の場合(O(R))よりは多いが、CST方式の場合(O(Rlog N/R))より少なくできる。
【0093】
また、通信システム1によれば、受信装置4_1〜4_Nに記憶される鍵データおよびラベルデータLABELのデータ量(上記式(4)に示すO(ST))は、CST方式の場合(O(log R))よりは大きいが、SD方式およびLSD方式の場合(O((log N) ),O((log N)1+a ),a>1)より少なくできる。
これにより、通信システム1によれば、リボケーション処理に伴う鍵管理装置3と受信装置4_1〜4_Nとの間の通信量と、受信装置4_1〜4_Nが保持する鍵データのデータ量とを適切なトレードオフにより規定できる。
【0094】
また、通信システム1では、受信装置4_1〜4_Nは、そのユーザが前述した鍵管理などのセキュリティ機能を制御できないように構成されているため、セキュリティ機能を高めることがでる。
また、受信装置4_1〜4_Nは、鍵管理装置3からの受信(ダウンロード)に、SDRを採用しているため、権限のある正当な受信装置4_1〜4_Nのみが、当該受信装置に対して送信されたデータを自動的に受信でき、ダウンロードに伴うセキュリティを高めることができる。
また、ユーザは、これらのセキュリティ機能を全く意識せずに受信装置4_1〜4_Nを使用できる。
【0095】
本発明は上述した実施形態には限定されない。
上述した実施形態では、鍵管理装置3と受信装置4_1〜4_Nとの間の通信を無線方式で行う場合を例示したが、当該通信を有線で行ってもよい。
【0096】
また、上述した実施形態では、本発明の複数の鍵取得方法として、2つの鍵取得方法SKT−A,SKT−Bを例示したが、鍵取得方法の種類に特に限定されず、また、鍵取得方法の数も複数であれば特に限定されない。
例えば、本発明は、複数の受信装置が割り当てられたリーフを含む第1の水平レイヤに対してLSDあるいはSD方式を適用し、鍵管理装置が割り当てられたルートを含む第2の水平レイヤに対してCST方式を採用していれば、上記第1の水平レイヤと上記第2の水平レイヤとの間に、水平レイヤがなくても、単数または複数のレイヤがあってもよく、これらの水平レイヤに適用される鍵取得方法は任意である。
【0097】
【発明の効果】
以上説明したように、本発明によれば、リボケーション処理に伴う鍵管理元と受信装置との間の通信量と、受信装置が保持する鍵データのデータ量とを適切なトレードオフにより規定したデータ処理方法、そのプログラム、その装置と受信装置を提供することができる。
【図面の簡単な説明】
【図1】図1は、本発明の実施形態に係わる通信システムの全体構成図である。
【図2】図2は、図1に示す鍵管理装置のハードウェア構成図である。
【図3】図3は、本発明の実施形態で採用される鍵取得方法の基礎となるツリー構造を説明するための図である。
【図4】図4は、本発明の実施形態で採用される鍵取得方法の処理を説明するためのフローチャートである。
【図5】図5は、本発明の実施形態で採用される鍵取得方法SKT−Aを説明するための図である。
【図6】図6は、本発明の実施形態で採用される鍵取得方法SKT−Bを説明するための図である。
【図7】図7は、CST方式を説明するための図である。
【図8】図8は、CST方式を説明するための図である。
【図9】図9は、CST方式を説明するための図である。
【図10】図10は、SD方式を説明するための図である。
【図11】図11は、SD方式を説明するための図である。
【図12】図12は、SD方式を説明するための図である。
【図13】図13は、SD方式を説明するための図である。
【図14】図14は、LSD方式を説明するための図である。
【図15】図15は、LSD方式を説明するための図である。
【図16】図16は、図1に示す鍵管理装置が行う前処理を説明するためのフローチャートである。
【図17】図17は、図1に示す鍵管理装置が行うリボケーション処理を説明するためのフローチャートである。
【図18】図18は、図1に示す鍵管理装置が行うリボケーション処理を説明するための図17の続きのフローチャートである。
【図19】図19は、本発明の実施形態の指定データを説明するための図である。
【図20】図20は、図1に示す鍵管理装置がリボークしない受信装置に送信するカプセルデータCAPを説明するための図である。
【図21】図21は、図17に示すステップST24を説明するためのフローチャートである。
【図22】図22は、図17に示すステップST25を説明するためのフローチャートである。
【図23】図23は、図1に示す受信装置のハードウェア構成図である。
【図24】図24は、図1に示す受信装置の動作例を説明するためのフローチャートである。
【図25】図25は、図24に示すステップST56を説明するためのフローチャートである。
【符号の説明】
1…通信システム、3…鍵管理装置、4_1〜4_N…受信装置、10…バス、11…通信部、12…メモリ、13…処理部、40…バス、41…通信部、42…メモリ、43…処理部[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a data processing method for performing secure communication, a program therefor, a device therefor, and a receiving device.
[0002]
[Prior art]
In secure communication, usually, a key management device and a receiving device (terminal device) hold or generate the same session key data, and the key management device encrypts the data based on the session key data (hereinafter also referred to as SEK data). To the receiving device.
In such secure communication, for example, secure communication is performed with a plurality of predetermined receiving devices based on common session key data.
In this case, if at least one of the plurality of receiving devices loses the right, the key management device updates the session key data used so far and revokes (invalidates) the receiving device. There is a need to.
[0003]
As such a method of updating session key data (key acquisition method), for example, the methods described in Non-Patent Documents 1 and 2 below are known.
In the key acquisition methods described in Non-Patent Documents 1 and 2 below, a plurality of key data is held in a receiving device in advance, and at the time of updating, the key management device uses any of the plurality of key data to perform secure communication. Is instructed to generate a key encryption key data to be used for non-revoking.
The receiving device that is not revoked selects the instructed key data from the plurality of key data stored in advance, and uses the selected key data to generate a key in a predetermined fixed key generation method. Generate encryption key data.
[0004]
The key management device encrypts the new session key data with the key encryption key data, and transmits the data to the receiving device that does not revoke.
The non-revoked receiving device decrypts the encrypted session key data received from the key management device using the generated key encryption key data to obtain new session key data.
In the above-described key acquisition method, an algorithm is defined so that as many receiving devices as possible can share the same new session key data, that is, to reduce the number of newly used key encryption key data KEK. The amount of communication between the key management device and the receiving device involved in the processing is reduced.
[0005]
[Non-patent document 1]
D. Halevy and A Shamir, "The LCD broadcastcasting scheme", CRYPTO 2002, Lecture Notes in Computer Science, vol. 2442. pp. 47-60, 2002
[Non-patent document 2]
D. Naor, M .; Naor and J.M. Lotspiech, "Revolution and tracing schemes for stateless receivers", CRYPTO 2001. Lecture Notes in Computer Science. vol 2139. pp. 41-62, 2001.
[0006]
[Problems to be solved by the invention]
By the way, of the plurality of key acquisition methods described above, the key acquisition method that minimizes the communication amount involved in the revocation processing differs depending on the number of receiving devices to be revoked, key data assigned to the receiving devices, and the like.
However, conventionally, since the revocation processing method is fixed, there is a problem that the communication amount cannot be sufficiently reduced in some cases.
[0007]
The present invention has been made in view of the above circumstances, and when performing secure communication with a plurality of receiving devices, the communication between a key management source and a receiving device caused by disabling some of the receiving devices. It is an object of the present invention to provide a data processing method, a program thereof, a device thereof, and a receiving device capable of reducing the communication traffic of the communication compared with the conventional one.
[0008]
[Means for Solving the Problems]
In order to achieve the object described above, a data processing method according to a first aspect of the present invention performs encrypted communication with a plurality of receiving devices based on predetermined key data, and performs any one of the plurality of receiving devices. A data processing method for a key management source to obtain new key data used for the encrypted communication with the receiving device that is not invalidated when the invalidation is performed. A first step of selecting, from among the acquisition methods, the key acquisition method that minimizes the amount of communication between the key management source that is generated to invalidate a predetermined reception device and the reception device that is not invalidated; And a second step of acquiring the new key data used for the encrypted communication with the receiving device that is not invalidated based on the key acquisition method selected in the first step.
[0009]
The operation of the data processing method of the first invention is as follows.
First, in a first step, of a plurality of predetermined key acquisition methods, a communication amount between the key management source and a non-invalidating receiving device generated for invalidating a predetermined receiving device. The key acquisition method that minimizes the key is selected.
Next, in a second step, new key data used for the encrypted communication with the receiving device that is not invalidated is obtained based on the key obtaining method selected in the first step.
[0010]
According to a second aspect of the present invention, there is provided a program for performing encrypted communication with a plurality of receiving devices based on predetermined key data, and when disabling any one of the plurality of receiving devices, A program for causing a computer to execute a process for a key management source to acquire the new key data used for the encrypted communication with the device, and a predetermined key acquisition method among a plurality of predetermined key acquisition methods. A first procedure for selecting the key acquisition method that minimizes a communication amount between the key management source generated to invalidate the reception apparatus and the reception apparatus that does not invalidate, and the first procedure A second procedure of acquiring the new key data used for the encrypted communication with the receiving apparatus that is not invalidated based on the selected key acquisition method.
[0011]
The data processing device of the third invention performs encrypted communication with a plurality of receiving devices based on predetermined key data, and does not invalidate any of the plurality of receiving devices. A data processing device for performing a process for a key management source to obtain the new key data used for the encrypted communication with the receiving device, wherein a predetermined key acquisition method is selected from a plurality of predetermined key acquisition methods. First means for selecting the key acquisition method that minimizes the amount of communication between the key management source generated to invalidate the receiving device and the non-invalidating receiving device, and the first means And second means for acquiring the new key data used for the encrypted communication with the receiving device which is not invalidated, based on the key acquisition method selected in the above.
[0012]
The operation of the data processing device of the third invention is as follows.
First, the first means is configured to determine, among a plurality of predetermined key acquisition methods, a communication amount between the key management source and a non-invalidating receiving device, which is generated to invalidate a predetermined receiving device. The key acquisition method that minimizes the key is selected.
Next, the second means acquires the new key data used for the encrypted communication with the receiving apparatus which is not invalidated, based on the key acquisition method selected by the first means.
[0013]
A data processing method according to a fourth aspect of the present invention is a data processing method for performing encrypted communication with a key management source based on predetermined key data, and specifies a key acquisition method and data used in the key acquisition method. A first step of receiving the specified data from the key management source, and using the data specified by the specified data received in the first step, based on the key acquisition method specified by the specified data. And a second step of acquiring new key data.
[0014]
The operation of the data processing method according to the fourth invention is as follows.
First, in a first step, designated data specifying a key acquisition method and data used in the key acquisition method is received from the key management source.
Next, in the second step, using the data specified by the specified data received in the first step, the new key data is obtained based on the key obtaining method specified by the specified data. I do.
[0015]
A program according to a fifth aspect of the present invention is a program executed by a computer that performs encrypted communication with a key management source based on predetermined key data, and specifies a key acquisition method and data used in the key acquisition method. A first procedure of receiving the specified data from the key management source, and using the data specified by the specified data received in the first procedure, based on the key acquisition method specified by the specified data. , And obtain the new key data.
[0016]
A receiving device according to a sixth aspect of the present invention is a receiving device that performs encrypted communication with a key management source based on predetermined key data, and specifies a key acquisition method and data used in the key acquisition method. A first means for receiving data from the key management source, and a data acquisition method designated by the designated data using the data designated by the designated data received by the first means. And second means for generating the key data.
[0017]
The operation of the receiving device according to the sixth invention is as follows.
First, the first means receives, from the key management source, designated data specifying a key acquisition method and data used for the key acquisition method.
Next, the second means generates new key data based on the key acquisition method specified by the specified data, using the data specified by the specified data received by the first means. I do.
[0018]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, a communication system according to an embodiment of the present invention will be described.
FIG. 1 is an overall configuration diagram of a communication system 1 according to an embodiment of the present invention.
As illustrated in FIG. 1, the communication system 1 includes, for example, a key management device 3 and a plurality (N) of reception devices 4_1 to 4_N.
Here, the key management device 3 corresponds to the key management source of the present invention and the data processing device of the third invention, and the receiving devices 4_1 to 4_N correspond to the receiving devices of the present invention.
For example, encrypted communication is performed between the key management device 3 and the receiving devices 4_1 to 4_N by a wireless method.
The receiving devices 4_1 to 4_N are registered in the key management device 3 in advance, and hold key data K_ORG and label data LABEL used for encrypted communication with the key management device 3.
[0019]
In the communication system 1, the key management device 3 revokes predetermined reception devices 4_1 to 4_N among a plurality of predetermined key acquisition methods (for example, key acquisition methods SKT-A and SKT-B described below). The key acquisition method that minimizes the amount of communication with the receiving device that does not revoke, which occurs due to invalidation), is selected.
Then, the key management device 3 assigns the key acquisition method designation data designating the selected key acquisition method to each of the non-revoked reception devices among the reception devices 4_1 to 4_N, and the key used for the selected key acquisition method. The designated data (the designated data of the present invention) including the data K_ORG or the key / label designation data designating the label data LABEL is transmitted by, for example, the PUSH method.
The transmission from the key management device 3 to the receiving devices 4_1 to 4_N is realized by, for example, software defined radio (SDR) secure download by SDR.
Then, the non-revoked receiving devices 4_1 to 4_N use the key data K_ORG or the label data LABEL designated by the designated data received from the key management device 3 among the plurality of key data K_ORG and the label data LABEL held by the receiving device. The key encryption key data KEK (new key data of the present invention) is acquired (generated) based on the key acquisition method designated by the key acquisition method designation data.
The key management device 3 encrypts the new session key data NEW_SEK based on the key encryption key data KEK and transmits the encrypted new session key data to the receiving devices 4_1 to 4_N.
The non-revoked receiving devices 4_1 to 4_N decrypt the session key data NEW_SEK based on the obtained key encryption key data KEK.
Thereafter, secure communication between the key management device 3 and the non-revoked receiving devices 4_1 to 4_N is performed based on the session key data NEW_SEK.
[0020]
Hereinafter, the key management device 3 and the receiving devices 4_1 to 4_N shown in FIG. 1 will be described.
[Key management device 3]
FIG. 2 is a hardware configuration diagram of the key management device 3 shown in FIG.
As illustrated in FIG. 2, the key management device 3 includes, for example, a communication unit 11, a memory 12, and a processing unit 13.
The communication unit 11 transmits the data generated by the processing unit 13 by a wireless method. The transmission is performed by software-defined radio (SDR) SDR secure download using, for example, a push (PUSH) method such as broadcasting.
The memory 12 stores a program PRG1 executed by the processing unit 13 and various data used for executing the program PRG1.
Here, the program PRG1 corresponds to the program of the second invention.
For example, the memory 12 stores, for example, all key data K_ORG and label data LABEL held by the receiving devices 4_1 to 4_N.
Further, the memory 12 may store the key encryption key data KEK finally obtained by storing some or all of the key data K_ORG and the label data LABEL.
[0021]
The processing unit 13 executes the program PRG1 stored in the memory 12, and controls the processing of the key management device 3 according to the execution. In the present embodiment, the processing of the key management device 3 is defined by a program PRG1 executed by the processing unit 13.
[0022]
The processing unit 13 performs security such as preprocessing such as distribution of key data K_ORG and label data LABEL to the receiving devices 4_1 to 4_N and revocation processing such as updating of session key data in response to the execution of the program PRG1. Perform processing.
[0023]
The processing unit 13 performs the preprocessing before the revocation processing, for example, at the time of registration of the receiving devices 4_1 to 4_N.
The processing unit 13 uses the key obtaining methods SKT-A and SKT-B (underlying structure) and the key obtaining methods SKT-A and SKT-B used in performing the revocation processing in the preprocessing. The key data K_ORG and the label data LABEL are set in the receiving devices 4_1 to 4_N.
[0024]
The processing unit 13 performs the revocation processing when any of the receiving devices 4_1 to 4_N is revoked (invalidated).
In the revocation process, the processing unit 13 sends the key encryption key data KEK for transmitting the session key data SEK to the non-revoked receiving devices 4_1 to 4_N in accordance with which of the receiving devices 4_1 to 4_N is revoked. select.
Then, the processing unit 13 transmits the designated data for the non-revoked receiving devices 4_1 to 4_N to generate the key encryption key data KEK to the non-revoked receiving devices 4_1 to 4_N.
[0025]
In the present embodiment, the key acquisition methods SKT-A and SKT-B are, for example, the LSD method disclosed in Non-Patent Document 1 and the CST method disclosed in Non-Patent Document 2 as described below. For example, an SKT (Sectioned Key) is defined based on the revocation method for each section, which is a subtree constituting a tree in which a plurality of binary trees are symmetrically combined.
Trees).
The information on the key acquisition methods SKT-A and SKT-B adopted by the processing unit 13 and the key data K_ORG and the label data LABEL used in the key acquisition method are provided to the receiving devices 4_1 to 4_N by the preprocessing.
[0026]
Hereinafter, the key acquisition method SKT of the present embodiment will be described.
In the tree, a plurality of horizontal layers are defined, and each horizontal layer is divided into a plurality of sections.
Each section has a subtree whose root (node) is a leaf (node) of a higher horizontal layer.
Also, for example, sections belonging to the same horizontal layer have the same number of nodes. That is, sections belonging to the same layer have the same subtree.
As a general example, if the tree is divided into K horizontal layers, and the height of each horizontal layer l (1 is an integer from 0 to L-1) is H [l], then 2 H [l-1] It has leaves. The horizontal layer 1 has the number of sections represented by the following equation (1), and its subtree is 2 H [l-1] It has leaves.
[0027]
(Equation 1)
Figure 2004320655
[0028]
FIG. 3 shows the structure of the tree 20 when K = 3, H [0] = 2, H [1] = 1, and H [3] = 2.
[0029]
Hereinafter, the key acquisition method of the present embodiment defined based on the tree will be described.
FIG. 4 is a flowchart for explaining the key acquisition method of the present embodiment.
Hereinafter, each step shown in FIG. 4 will be described.
Step ST1:
The processing unit 13 performs, for each of all the sections belonging to the horizontal layer 0 (the lowest layer) of the tree, reception among the receiving apparatuses 4_1 to 4_N assigned to the leaves of the subtree included in the section, the reception to be revoked. Identify the device.
Further, the processing unit 13 substitutes the initial value “0” for l.
[0030]
Step ST2:
The processing unit 13 performs, for each of the sections belonging to the horizontal layer 0 of the tree, a process of revoking the receiving device specified in step ST1 by a revocation method adopted for a subtree included in the section. Do.
That is, the processing unit 13 performs revocation processing based on the adopted revocation (RV) method, and uses the key encryption key used for communication with the non-revoked receiving device among the receiving devices 4_1 to 4_N belonging to the subtree. Data used to determine the data KEK, for example, data indicating the position of a leaf to be revoked is generated.
[0031]
Step ST3:
The processing unit 13 increments l. That is, 1 = l + 1 is calculated.
[0032]
Step ST4:
The processing unit 13 receives, for each of all the sections belonging to the horizontal layer k of the tree, the reception revoked to the lower layer among the leaves (nodes, the root of the horizontal layer 1-1) of the subtree included in the section. The device identifies the leaf where it is, ie the leaf affected by the revoke.
[0033]
Step ST5:
The processing unit 13 performs a process for revoking the leaf specified in step S41 for each of all the sections belonging to the horizontal layer 1 of the tree by the revocation method adopted for the subtree included in the section. .
That is, the processing unit 13 performs revocation processing based on the revocation (RV) method adopted above, and performs communication with a receiving device that is below the leaf that is not affected by the revocation among the leaves belonging to the subtree. It generates data used to determine the key encryption key data KEK to be used, for example, data indicating the position of a node to be revoked.
[0034]
Step ST6:
The processing unit 13 determines whether or not k = K. If it is determined that 1 = L, the processing ends. If not, the processing returns to step ST3.
[0035]
Step ST7:
The processing unit 13 performs key encryption key data used for communication with the non-revoked receiving devices 4_1 to 4_N based on the results of the RV processing performed on all sections belonging to all horizontal layers in steps ST1 to ST6. Generate KEKm.
Here, m is an integer of 1 to M, and M indicates the number of key encryption key data KEK used for communication with all non-revoked receiving devices.
In this case, a plurality of non-revoking receiving devices may use the common key encryption key data KEKm according to the position of the receiving device to be revoked on the tree.
[0036]
Next, key acquisition methods SKT-A and SKT-B, which are key acquisition methods SKT employed in the present embodiment, will be described.
In the key acquisition methods SKT-A and SKT-B, the data amounts of the label data LABEL and the key data K_ORG stored in the receiving devices 4_1 to 4_N are smaller than those of the LSD method disclosed in Non-Patent Document 1 described above. Compared to the CST method disclosed in Non-Patent Document 2, the communication apparatus has a feature that the communication amount between the key management device 3 and the receiving devices 4_1 to 4_N involved in the revocation process is small.
[0037]
First, the key acquisition method SKT-A will be described.
FIG. 5 is a diagram for explaining the key acquisition method SKT-A.
As shown in FIG. 5, in the key acquisition method SKT-A, the tree is divided into two horizontal layers A0 and A1.
Here, the horizontal layer A0 corresponds to the first layer of the present invention, and the horizontal layer A1 corresponds to the second layer of the present invention.
The height of the lowermost horizontal layer A0 is HA [0], and the height of the horizontal layer A1 is (log 2 N-HA [0]). Here, N indicates the total number of receiving devices 4_1 to 4_N.
Then, the LSD method disclosed in Non-Patent Document 1 is adopted as the revocation method for each section 31 [0] belonging to the horizontal layer A0.
The CST method disclosed in Non-Patent Document 2 is adopted as a revocation method for each section 31 [1] belonging to the horizontal layer A1.
[0038]
Here, in the key acquisition method SKT-A, the revokes of the R receiving devices 4_1 to 4_N determine whether the R 0A Section.
In this case, the dimension of the communication amount between the key management device 3 involved in the revocation and the non-revoked receiving devices 4_1 to 4_N is O (COA) shown in the following equation (2) in the case of the key acquisition method SKT-A. It becomes.
[0039]
(Equation 2)
O (COA) = O (R + R 0A (Log 2 N-H 0A ) -R 0A log 2 R 0A )… (2)
[0040]
Next, the key acquisition method SKT-B will be described.
FIG. 6 is a diagram for explaining the key acquisition method SKT-B.
As shown in FIG. 6, in the key acquisition method SKT-B, the tree is divided into three horizontal layers B0, B1, and B2.
Here, the horizontal layer B0 corresponds to the third layer of the present invention, the horizontal layer B1 corresponds to the fourth layer of the present invention, and the horizontal layer B2 corresponds to the fifth layer of the present invention.
[0041]
The height of the lowermost horizontal layer B0 is HB [0], the height of the horizontal layer B1 is HB [1], and the height of the horizontal layer B2 is (log 2 N-HB [0] -HB [1]).
Then, the LSD method disclosed in Non-Patent Document 1 is adopted as the revocation method for each section 31 [0] belonging to the horizontal layer B0.
Further, the LSD method disclosed in Non-Patent Document 1 is adopted as a revocation method for each section 31 [1] belonging to the horizontal layer B1.
Further, the CST method disclosed in Non-Patent Document 2 is adopted as a revocation method for each section 31 [2] belonging to the horizontal layer B2.
[0042]
Here, in the above-described key acquisition method SKT-B, the revokes of the R receiving devices 4_1 to 4_N determine whether the R of the horizontal layer B1 constituting the tree is revoked. 0B Of the horizontal layer B2 1B Section.
In this case, the dimension of the communication volume between the key management device 103 involved in the revocation and the non-revoked receiving devices 104_1 to 104_N is O (COB) shown in the following equation (3) in the case of the key acquisition method SKT-B. It becomes.
[0043]
[Equation 3]
Figure 2004320655
[0044]
Hereinafter, the CST method will be described.
7 to 9 are diagrams for explaining the CST method.
In the following description, as shown in FIG. 7, a case where revocation processing is performed on the 16 receiving devices u1 to u16 by the CST method will be exemplified.
In the CST method, "a set of receiving devices assigned to the leaves of the binary tree having the node as the vertex" is defined using each node of the binary tree.
In the example illustrated in FIG. 7, the node i indicates a set including the receiving devices u5 and u6 as elements. Then, a node key (corresponding to the key data K_ORG in SKT-A) is defined for each node.
[0045]
Each receiving device is given a node key assigned to a node on a path from the leaf to which it is assigned to the root of the tree to which the key management device is assigned, and the receiving device secures these node keys to a secure node key. Keep in memory.
As shown in FIG. 8, the receiving device u4 is provided with five node keys assigned to the nodes 1, 2, 4, 9, and 19.
That is, when the total number of receiving devices is N, each receiving device holds logN + 1 node keys.
[0046]
FIG. 9 is a diagram for explaining how secret information (for example, a content key for decrypting encrypted content) is transmitted to a non-revoked receiving device.
Here, it is assumed that the receiving devices u2, u11, and u12 are revoked.
In this case, the node keys assigned to the nodes on the path from the leaf to which the receiving devices u2, u11, and u12 to be revoked are assigned to the root of the tree cannot be used. This is because the use of these node keys allows a receiving device to be revoked to obtain confidential information.
Then, when these nodes and paths are excluded from the tree, one or more subtrees (subtrees) remain.
Efficient and secure secret information is transmitted by encrypting and transmitting the secret information using the node keys assigned to the nodes (nodes 5, 7, 9, 12, and 16 in FIG. 9) closest to the apex of each subtree. Is sent.
The receiving device decrypts the transmitted ciphertext that can be decrypted by itself, that is, the encrypted text that has been encrypted using the node key corresponding to the node on the path from the assigned leaf to the root. To get confidential information.
In the above example, for example, the receiving device u4 holds the node key of the node 9, and uses this to decrypt the encrypted ciphertext.
In the CST method, there is always one ciphertext that can be decrypted by a receiving device that does not revoke.
[0047]
Next, a description will be given of an SD (Subset Difference) method on which the LSD method is based.
10 to 13 are diagrams for explaining the SD method.
As described above, in the CST system, each node of the tree is used to represent "a set of receiving devices assigned to leaves of a subtree having that node as a vertex".
On the other hand, in the SD method, two nodes i and j of the tree (where i is an ancestor of j) are used to calculate from (a set of leaves of a subtree having node i as a vertex) and (node i A set obtained by subtracting a set of leaves of a subtree whose is a vertex).
For example, a set S (i, j) defined by nodes i and j shown in FIG. 10 is obtained by removing the receiving devices u5 and u6 from the set of receiving devices u1 to u8, that is, S (i, j). ) = {U1, u2, u3, u4, u5, u6, u7, u8, u9} − {u5, u6}.
Define such a set for all node sets where node i is an ancestor of node j (ie node j is not the same as node i and node i is on the path from node j to the root). .
Then, label data LABEL is assigned to each set. Also, a predetermined operation is performed based on the label data LABEL (for example, a pseudo-random number is generated using the label data LABEL as a key) to obtain a subset key.
The subset key is used as key encryption key data KEK in communication between the receiving device and the key management device that are members of the set.
In the SD system, the number of sets to which one receiving device belongs is O (N). Therefore, if the key data SK (subset key) is independently assigned to each set (subset), each receiving device becomes O (N). It is necessary to securely hold the label data LABEL corresponding to the (N) subset keys, but this is practically difficult when N is large.
[0048]
Therefore, in the SD system, the number of label data LABEL held by each receiving device is reduced by the method described below.
For example, as shown in FIG. 11A, an internal node (that is, a node that is not a leaf) i is focused on, and a C-bit value S is randomly selected as label data LABEL (i) of the node.
Next, as shown in FIG. 12, a value S of LABEL (i) is input to a pseudo-random number generator G having a C-bit input and a 3C-bit output.
Then, the 3C-bit output from the pseudo-random number generator G is divided into C bits from the left (from the most significant bit side), and L (S), G M (S), G R (S).
[0049]
And G L (S) is the label data LABEL of the child node on the left side (one side) of the node i, and G R Let (S) be the label data LABEL of the child node on the right (other) side of node i.
By this processing, for node k which is a child on the left side of node i in FIG. 11, label data LABEL (i, k) of node k when node i is the starting point is LABEL (i, k) = G L (S). This is T.
Next, T is input to the pseudo-random number generator G, and its output is divided into C bits from the left, and G L (T), G M (T), G R (T) is obtained.
And G L (T), G M (T), G R (T) is the label data LABEL (i, kL) of the child node L on the left side of the node k when the node i is the starting point, and the label data LABEL (i, k) of the node k when the node i is the starting point. ), Label data LABEL (i, kR) of a child node kR on the right side of node k when node i is the starting point.
By repeating this process, labels corresponding to all descendant nodes when the node i is the starting point are created.
[0050]
According to the above definition, the set S (i, i) is an empty set. When the node i is the starting point, the key of the node i is unnecessary, so that LABEL (i) is generated by pseudo-random number generation. G, which is the central part of the output input to the M (S) is not used.
As shown in FIG. 11A, the value S of the label data LABEL (i) of the node i which is the starting point is determined, and R (S) becomes the label data LABEL of the child node on the right side of the node i when the node i is the starting point, and the label data LABEL obtained by inputting it to the pseudorandom number generator G L (S) becomes the label data LABEL of the node j when the node i is the starting point.
This process is performed for all internal nodes i.
[0051]
These processes are performed by the key management device when setting up the system. The pseudo random number generator (or pseudo random number generation function) G is determined and released by the key management device, and by using this, LABEL (i, j) can calculate the labels LABEL (i, n) of all the nodes n that are descendants of the node j when the node i is the starting point, and when the node i is the starting point, The subset key SK (i, n) of the node j and its descendant node n can be calculated.
By doing so, as shown in FIG. 11 (B), a certain receiving apparatus u sets, for each internal node i on the path from the leaf to which it is assigned to the vertex of the tree, starting from the node i. If only the label data LABEL of the node directly branching from the path from the leaf to i is held, the subset key of the node and the subsequent (descendant) nodes starting from the node i Can be created. In FIG. 11B, when attention is paid to the node i, the number of nodes directly branching from the path from u to i is three, and the receiving apparatus u outputs these three label data LABEL at the time of setting up the system. Received from key management device.
[0052]
Hereinafter, in the example shown in FIG. 13, the receiving device u4 will be considered.
With respect to the receiving device u4, the internal nodes 1, 2, 4, 9 on the path from the node 19, which is the leaf to which the receiving device u4 is assigned, to the route 1 are the starting points (node i). Assuming that the node 1 is the starting point, the nodes directly branching from the path from the node 19 to the node 1 are the nodes 3, 5, 8, and 18, and therefore, LABEL (1, 3), (1, 5) , (1, 8) and (1, 18) are held by the receiving device u4.
Similarly, LABEL (2, 5), (2, 8), and (2, 18) three label data LABEL when node 2 is the starting point, and LABEL (4, 8) when node 4 is the starting point. ), (4, 18), and LABEL (9, 18) when the node 9 is the starting point.
Further, one label data LABEL (1) corresponding to a set including all the receiving devices (this is represented as S1 and φ), which is used in a special case where there is no receiving device to be revoked, is held.
However, the label data LABEL corresponding to S (1), φ is used, but the subset key corresponding to S1, Φ may be directly stored instead of the label data LABEL.
As described above, each receiving device needs to hold, for each internal node on the path from the leaf to the root, the label data LABEL corresponding to the height of the internal node.
Since these label data LABEL can generate a subset key by using a publicly available G, the receiving device safely holds them.
[0053]
Hereinafter, an LSD (Basic Layered Subset Difference) method based on the above-described SD method will be described.
The LSD system includes a Basic (basic) system and an extension of the General (generalized) system. Here, the Basic method will be described.
The LSD scheme is an extension of the SD scheme and incorporates a new concept of a layer. In the tree structure in the SD system, a specific height is defined as a special level.
In the Basic_LSD system, there is only one special label, but in the General_LSD system, a plurality of special levels having different degrees of importance are used.
Here, for simplicity, log 1/2 Let N be an integer.
In the Basic_LSD method, as shown in FIG. 14, of each level (floor) from the root of the tree to the leaf, a log including the level of the root and the leaf is included. 1/2 The level for each N is a special layer.
Then, a layer sandwiched between two adjacent special layers (including both special levels) is called a layer.
In the example of FIG. 14, the root level, the level including the node k, and the leaf level are the special levels, and the root level, the level including the node i, and the level including the node k constitute one layer. The level including the node k, the level including the node j, and the level including the leaves constitute different layers.
[0054]
In the Basic_LSD method, of the subsets S (i, j) defined in the SD method, only those in which the node i and the node j are on the same layer or the node i is on a special level are defined.
In this way, some of the subsets used in the SD scheme are no longer defined in the Basic_LSD scheme, but this subset can be represented by at most two unions of the subsets defined in the Basic_LSD scheme.
For example, in the example of FIG. 14, although the subset S (i, j) is not defined in the Basic_LSD method, a node (node k) on a special level closest to the node i on the path from the node i to the node j is used. Thus, S (i, j) = S (i, k) ∪S (k, j).
That is, in the SD method, instead of one ciphertext encrypted using the subset key Sk (i, j) corresponding to the subset S (i, j), the subset S (i, k) is used in the Basic_LSD method. Two ciphertexts encrypted using the subset keys Sk (i, k) and SK (k, j) corresponding to S (k, j) are transmitted.
Thereby, the number of ciphertexts to be transmitted increases at most twice that of the SD system, but the number of labels held by each receiver can be reduced.
[0055]
FIG. 15 illustrates a case where the Basic_LSD method is applied in the same case as assumed in the SD method of FIG.
The receiving device u4 shown in FIG. 15 may hold only the label data LABEL (i, j) in which i and j are in the same layer or i is at a special level.
That is, the label data LABEL held by the receiving device u4 is the label data LABEL (1, 3), (1, 5), (1, 8), (1, 18), (2, 5), (4, 8). ), (4, 18), (9, 18).
Further, similarly to the SD system, it is necessary to hold a special label used when there is no receiver to be revoked.
[0056]
Hereinafter, an operation example of the key management device 3 shown in FIG. 2 will be described.
The operation of the key management device 3 is realized by the processing of the processing unit 13 based on the program PRG1, as described above.
[Operation example of preprocessing]
FIG. 16 is a flowchart for explaining an operation example when the key management device 3 performs the above-described preprocessing.
As described above, the processing unit 13 of the key management device 3 performs the following preprocessing before registering the receiving devices 4_1 to 4_N, for example, before the revocation processing.
[0057]
Step ST11:
The key management device 3 defines the key acquisition methods SKT-A and SKT-B among the above-described key acquisition methods SKT as key acquisition methods used for revocation processing of the receiving device.
Step ST12:
The key management device 3 sets the key acquisition methods SKT-A and SKT-AT and the key data K_ORG and label data LABEL used in the key acquisition methods SKT-A and SKT-B in the receiving devices 4_1 to 4_N.
Specifically, the key management device 3 assigns, to each of the receiving devices 4_1 to 4_N, any other receiving device in the subtree to which the receiving device belongs in the horizontal layer A0 in the key acquisition method SKT-A illustrated in FIG. Even if is invalidated, a label for acquiring a plurality of label data LABELs respectively assigned to a plurality of sets defined so that there is a set having only receiving devices in the subtree that are not invalidated. Set the data LABEL.
In addition, the key management device 3 assigns, to each of the receiving devices 4_1 to 4_N, all of the nodes located on the path between the last node corresponding to the receiving device in the horizontal layer A1 shown in FIG. A plurality of key data K_ORG respectively assigned to the nodes are set.
[0058]
In addition, the key management device 3 makes each of the receiving devices 4_1 to 4_N invalidate any other receiving device in the subtree to which the receiving device belongs in the horizontal layer B0 in the key acquisition method SKT-B shown in FIG. Even if the label data LABEL for acquiring a plurality of label data LABELs respectively assigned to a plurality of sets defined so that there is a set including only a receiving device that is not invalidated in the subtree, is set. Set.
Further, the key management device 3 is configured such that, even when each of the receiving devices 4_1 to 4_N includes a receiving device in which the subtree in the horizontal layer B1 shown in FIG. Label data LABEL for acquiring a plurality of label data LABELs respectively assigned to a plurality of sets defined so that there is a set having only the terminal node at the branch end that includes only the receiving device that is not invalidated. Set.
Further, the key management device 3 assigns, to each of the receiving devices 4_1 to 4_N, all of the positions located on the path between the last node and the route in the horizontal layer B2 shown in FIG. A plurality of key data K_ORG respectively assigned to the nodes are set.
The key management device 3 individually performs the above-described setting for the receiving devices 4_1 to 4_N in a secure state when the receiving devices 4_1 to 4_N are issued or registered, for example.
[0059]
[Operation example of revocation processing]
17 and 18 are flowcharts for explaining an operation example when the key management device 3 performs the above-described revocation processing.
Steps ST22 and ST23 shown in FIG. 17 correspond to the first step of the first invention, and steps ST24 and ST25 shown in FIG. 17 correspond to the second step of the first invention.
The first means of the third invention is realized by the processing unit 13 executing steps ST22 and ST23, and the second means of the third invention is that the processing unit 13 executes steps ST24 and ST25. Is realized.
The processing unit 13 of the key management device 3 performs the revocation processing when revoking any of the receiving devices 4_1 to 4_N.
[0060]
Step ST21:
The key management device 3 generates a revocation list RL indicating a revoked receiving device among the receiving devices 4_1 to 4_N.
Step ST22:
The key management device 3, based on the revocation list RL, for each of the above-described key acquisition methods SKT-A and SKT-B, when the key acquisition method is adopted, the reception device 4 </ b> _ <b> 1 that does not revoke the key management device 3 To 4_N.
Step ST23:
The key management device 3 determines whether or not the traffic when the key acquisition method SKT-A specified in step ST22 is adopted is equal to or greater than the traffic when the key acquisition method SKT-B is adopted.
If the key management device 3 determines that the communication amount when the key acquisition method SKT-A specified in step ST22 is adopted is equal to or larger than the communication amount when the key acquisition method SKT-B is adopted, the key acquisition method SKT-A Is selected and the process proceeds to step ST24. Otherwise, the key acquisition method SKT-B is selected and the process proceeds to step ST25.
[0061]
Step ST24:
The key management device 3 specifies key encryption key data KEKm used for communication with the non-revoked receiving devices 4_1 to 4_N based on the revocation list RL generated in step ST21 according to the key acquisition method SKT-A.
This processing will be described later in detail.
Step ST25:
The key management device 3 specifies the key encryption key data KEKm used for communication with the non-revoked receiving devices 4_1 to 4_N based on the revocation list RL generated in step ST21 according to the key acquisition method SKT-B.
This processing will be described later in detail.
[0062]
Step ST26:
As shown in FIG. 19, the key management device 3 selects the key data K_ORG and the label data LABEL used to generate the key encryption key data KEKm specified in step ST24 or ST25, and selects the key specification data KIDm in step ST23. The designated data Im (the designated data of the present invention) including the key acquisition method designation data KOIDm that designates the key acquisition method is generated.
The key data K_ORG and the label data LABEL in the key specification data KIDm are specified based on identification data such as indexes assigned to the key data K_ORG and the label data LABEL, and do not include the key data K_ORG and the label data LABEL itself. .
[0063]
Step ST27:
The key management device 3 encrypts the new (updated) session key data NEW_SEK with the key encryption key data KEKm generated in step ST24 or ST25, and generates data E KEKm (NEW_SEK) is generated.
Step ST28:
The key management device 3 encrypts the payload data PAYL, which is the secret information provided to the receiving devices 4_1 to 4_N, using the new session key data NEW_SEK, NEW _ SEK (PAYL) is generated.
Step ST29:
The key management device 3 specifies the designated data Im (I 1 ~ I M ) And the data E generated in step ST27. KEKm (NEW_SEK) and E generated in step ST28. NEW _ SEK (PAYL) is generated as capsule data CAP shown in FIG.
Step ST30:
The key management device 3 broadcasts (transmits) the capsule data CAP generated in step ST29, for example, by a wireless method via the communication unit 11 shown in FIG.
The broadcast is so-called PUSH distribution.
Note that the communication amount in the present embodiment is determined according to the communication by the transmission in step ST30, and as described above, the smaller one of the key acquisition methods SKT-A and SKT-B is adopted.
[0064]
Hereinafter, step ST24 shown in FIG. 17, that is, a method of generating the key encryption key data KEKm when the key acquisition method SKT-A is adopted will be described in detail.
FIG. 21 is a diagram for explaining step ST24 shown in FIG. 17, that is, a method of generating key encryption key data KEK based on the key acquisition method SKT-A.
[0065]
Step ST31:
The key management device 3 determines, for each of the sub-trees (SUBT) belonging to the horizontal layer A0 shown in FIG. 5 including the revoked receiving device, each receiving device belonging to the sub-tree as an element. From among the plurality of sets, a set including only non-invalidated receiving devices in the subtree is specified.
[0066]
Step ST32:
The key management device 3 specifies a node having no receiving device to be invalidated at a branch destination of the node, from among the nodes at the end in the horizontal layer A1 illustrated in FIG.
[0067]
Step ST33:
The key management device 3 makes the receiving device invalidate all the nodes identified in step ST32 among the nodes located on the path between the node and the root, to the leaf branched from the node. And the node closest to the root is specified.
[0068]
Step ST34:
The key management device 3 uses the key encryption key data KEKm associated with the set specified in step ST31 (or the label data LABEL) for communication with the receiving devices 4_1 to 4_N that are elements of the set. To decide.
The key management device 3 holds, for example, the set of all the subsets in the horizontal layer A0 shown in FIG. 5 and the key encryption key data KEKm in association with each other, and stores the key encryption key data corresponding to the set specified in step ST31. Specify KEK.
In addition, for example, in the subset S (i, j), which is the above-described set in the horizontal layer A0 illustrated in FIG. 5, the key management device 3 determines whether the node i and the node j are in the same layer or the node i is The label data LABEL (i, j) corresponding to the data at the special level is held, and based on this, the label data LABEL is generated by the method described with reference to FIGS. 10 to 14, and based on this label data LABEL. Alternatively, key encryption key data KEKm, which is a subset key thereof, may be generated.
Then, the key management device 3 specifies the label (LABEL) used to generate the specified (generated) key encryption key data KEKm by the receiving devices 4_1 to 4_N which are elements of the specified set. The designated data Im including the data KIDm is generated.
[0069]
Step ST35:
The key management device 3 determines that the key data K_ORG (node key) corresponding to the node specified in step ST33 is used as the key encryption key data KEKm for communication with the receiving devices 4_1 to 4_N at the branch destination of the node.
Then, the key management device 3 generates designation data Im including key designation data KIDm that designates the key data K_ORG that is the determined key encryption key data KEKm.
[0070]
Hereinafter, step ST25 shown in FIG. 17, that is, a method of generating key encryption key data KEKm in the case of employing the key acquisition method SKT-B will be described in detail.
FIG. 22 is a diagram for explaining step ST25 shown in FIG. 17, that is, a method for generating key encryption key data KEK based on the key acquisition method SKT-B.
[0071]
Step ST41:
The key management device 3 determines, for each of the subtrees (SUBTs) belonging to the horizontal layer B0 shown in FIG. 6 including the revoking receiving device, the receiving device belonging to the subtree as an element. From among the plurality of sets that have been set, a set that includes only non-invalidated receiving devices in the subtree is specified.
[0072]
Step ST42:
The key management device 3 has, for the subtree (SUBT) belonging to the horizontal layer B1 shown in FIG. 6, only the node that includes only the receiving device that is not invalidated at the branch destination among the nodes at the end of the subtree as elements. Identify the set.
Step ST43:
The key management device 3 specifies a node having no receiving device to be invalidated at the branch destination of the node, from among the nodes at the end in the horizontal layer B2 illustrated in FIG.
[0073]
Step ST44:
The key management device 3 invalidates, for all the nodes specified in step ST43, among the nodes located on the path between the node and the root, the reception device that invalidates the leaf branched from the node. And the node closest to the root is specified.
[0074]
Step ST45:
The key management device 3 decides to use the key encryption key data KEKm associated with the set specified in step ST41 (or the label data LABEL) for communication with the receiving device that is an element of the set. I do.
The key management device 3 holds, for example, the set of all the subsets in the horizontal layer B0 shown in FIG. 6 and the key encryption key data KEKm in association with each other, and stores the key encryption key data corresponding to the set specified in step ST41. Specify KEK.
In addition, for example, in the subset S (i, j), which is the above set in the horizontal layer B0 illustrated in FIG. 6, the key management device 3 determines whether the node i and the node j are in the same layer or the node i is The label data LABEL (i, j) corresponding to the data at the special level is held, and based on this, the label data LABEL is generated by the method described with reference to FIGS. Alternatively, key encryption key data KEKm, which is a subset key thereof, may be generated.
Then, the key management device 3 specifies the label (LABEL) used to generate the specified (generated) key encryption key data KEKm by the receiving devices 4_1 to 4_N which are elements of the specified set. The designated data Im including the data KIDm is generated.
[0075]
Step ST46:
The key management device 3 determines that the key encryption key data KEKm associated with the set specified in step ST42 (or the label data LABEL) is used for communication with the receiving device that is an element of the set. I do.
The method of determining (generating) the key encryption key data KEK is the same as in step ST45.
Then, the key management device 3 specifies the label (LABEL) used to generate the specified (generated) key encryption key data KEKm by the receiving devices 4_1 to 4_N which are elements of the specified set. The designated data Im including the data KIDm is generated.
Step ST47:
The key management device 3 determines that the key data K_ORG (node key) corresponding to the node specified in step ST44 is used as the key encryption key data KEKm for communication with the receiving devices 104_1 to 104_N at the branch destination of the node.
Then, the key management device 3 generates designation data Im including key / label designation data KIDm that designates the key data K_ORG that is the determined key encryption key data KEKm.
[0076]
[Receiving devices 4_1 to 4_N]
The receiving devices 4_1 to 4_N are, for example, ubiquitous terminal devices such as a PDA (Personal Digital Assistant) and a mobile phone.
FIG. 23 is a hardware configuration diagram of the receiving devices 4_1 to 4_N shown in FIG.
The receiving devices 4_1 to 4_N have the same configuration except for the key data K_ORG and the label data LABEL stored in the memory 42.
As illustrated in FIG. 23, the receiving devices 4_1 to 4_N include, for example, a communication unit 41, a memory 42, and a processing unit 43.
Here, the communication unit 41 corresponds to the first means of the sixth invention, and the processing unit 43 corresponds to the second means of the sixth invention.
[0077]
The communication unit 41 receives the above-described capsule data CAP transmitted by the key management device 3 by the PUSH method by a wireless method.
The memory 42 stores a program PRG2 (the program of the fifth invention) executed by the processing unit 43 and various data used for executing the program PRG2.
The program PRG2 includes the processing procedure of the key acquisition methods SKT-A and SKT-B described above.
The memory 42 stores the key data K_ORG and the label data LABEL assigned to each of the receiving devices 4_1 to 4_N by the above-described preprocessing by the key management device 3.
Specifically, even if any other receiving device in the subtree to which the receiving device belongs in the horizontal layer A0 of the key acquisition method SKT-A shown in FIG. The label data LABEL for acquiring a plurality of label data LABELs respectively assigned to a plurality of sets defined so that there is a set including only the receiving device that is not invalidated is stored.
In addition, the memory 42 is assigned to all nodes located on the path between the last node corresponding to the receiving apparatus and the root in the horizontal layer A1 of the key obtaining method SKT-A illustrated in FIG. The stored plurality of key data K_ORG is stored.
[0078]
In addition, even when any other receiving device in the subtree to which the receiving device belongs in the horizontal layer B0 of the key acquisition method SKT-B illustrated in FIG. 6 is invalidated, the memory 42 disables the invalidation in the subtree. Label data LABEL for acquiring a plurality of label data LABELs respectively assigned to a plurality of sets defined such that a set including only receiving devices as elements exists.
Further, even when any of the subtrees in the horizontal layer B1 shown in FIG. 6 includes a receiving device that is invalidated at the branch destination, the memory 42 includes only the receiving device that is not invalidated within the subtree at the branching destination. Label data LABEL for acquiring a plurality of label data LABELs respectively assigned to a plurality of sets defined so that a set having only the last node as an element is stored.
In addition, the memory 42 stores a plurality of key data K_ORGs respectively assigned to all nodes located on a path between the last node and the route in the horizontal layer B2 shown in FIG. Is stored.
[0079]
Here, the data amount of the key data K_ORG and the label data LABEL stored in the memory 42 is of the order O (ST) as shown in the following equation (4).
Figure 2004320655
[0080]
The processing unit 43 executes the program PRG2 stored in the memory 42, and controls the processing of the receiving devices 4_1 to 4_N according to the execution. In the present embodiment, the processing of the receiving devices 4_1 to 4_N is defined by a program PRG2 executed by the processing unit 43.
The function of the processing unit 43 defined by the program PRG2 is configured such that the receiving devices 4_1 to 4_N cannot be controlled by the user. The users of the receiving devices 4_1 to 4_N use the receiving devices 4_1 to 4_N without being conscious of these functions.
[0081]
Hereinafter, an operation example of the receiving devices 4_1 to 4_N will be described.
FIG. 24 is a flowchart for describing an operation example of the receiving devices 4_1 to 4_N.
Note that the operations of the receiving devices 4_1 to 4_N are defined by the processing unit 43 executing the program PRG2.
In FIG. 24, step ST51 corresponds to the first step of the fourth invention, and steps ST55 and ST56 correspond to the second step of the fourth invention.
[0082]
Step ST51:
The communication units 41 of the receiving devices 4_1 to 4_N receive the capsule data CAP broadcasted by the key management device 3 in step ST30 shown in FIG.
Step ST52:
The processing units 43 of the receiving apparatuses 4_1 to 4_N determine whether or not the capsule data CAP received in step ST51 includes the key designation data Im corresponding to the capsule data CAP. Proceeds to the processing of, otherwise ends the processing.
[0083]
Step ST53:
The processing unit 43 acquires the designated data Im corresponding to itself in the capsule data CAP.
Step ST54:
The processing unit 43 specifies the key data K_ORGm or the label data LABELm designated by the key / label designation data KIDm in the designation data Im obtained in step ST52 from the key data K_ORG and the label data LABEL stored in the memory 42. .
[0084]
Step ST55:
The processing unit 43 specifies which of the key acquisition methods SKT-A and SKT-B is specified by the key acquisition method designation data KOIDm in the designation data Im acquired in step ST53.
Step ST56:
The processing unit 43 acquires (generates) the key encryption key data KEKm based on the key acquisition method SKT-A or SKT-B identified in step ST55 based on the key data K_ORGm or the label data LABELm identified in step ST54. .
The process of step ST56 will be described later in detail.
[0085]
Step ST57:
The processing unit 43 uses the key encryption key data KEKm obtained (generated) in step ST57 to store the data E in the capsule data CAP. KEKm (NEW_SEK) to obtain new session key data NEW_SEK.
Step ST58:
The processing unit 43 stores the data E in the capsule data CAP. NEW _ SEK (PAYL) is decrypted using the new session key data NEW_SEK obtained in step ST57 to obtain the payload data PAYL.
[0086]
The receiving devices 4_1 to 4_N thereafter use the session key data NEW_SEK obtained in step ST57 to decrypt the data received from the management device 3 until the next revocation process is performed.
[0087]
Hereinafter, the process of step ST56 shown in FIG. 24 will be described.
FIG. 25 is a flowchart for explaining the process of step ST56 shown in FIG.
Step ST61:
The processing unit 43 determines whether or not the label data LABELm has been specified in the above-described step ST54 shown in FIG. 24, and proceeds to step ST62 when determining that the label data LABELm has been specified. It proceeds to step ST66.
[0088]
Step ST62:
The processing unit 43 determines whether or not the memory 42 stores (holds) the label data LABEL necessary for generating the label data LABELm specified in step ST54, and determines that the memory 42 stores the label data LABEL. The process proceeds to ST65, otherwise proceeds to step ST63.
Step ST63:
The processing unit 43 specifies the label data LABEL corresponding to the two sets whose union is the set corresponding to the label data LABELm specified by the key specification data Im.
Step ST64:
The processing unit 43 generates the two label data LABELs specified in step ST63 based on the label data LABEL stored in the memory 42 as needed.
Then, the processing unit 43 generates a pseudo-random number based on the pseudo-random number generator G using the two label data LABEL as keys, and generates two subset keys SK.
Then, the processing unit 43 generates key encryption key data KEKm based on the two subset keys SK.
[0089]
Step ST65:
The processing unit 43 generates the label data LABem specified in step ST54 based on the label data LABEL stored in the memory 42 as needed.
Then, the processing unit 43 generates a pseudo random number based on the pseudo random number generator G using the label data LABELm as a key, and generates a subset key SK.
Then, the processing unit 43 sets the subset key SK as key encryption key data KEKm.
[0090]
Step ST66:
The processing unit 43 sets the key data K_ORGm specified in step ST54 as key encryption key data KEKm.
[0091]
Hereinafter, an overall operation example of the communication system 1 will be described.
First, the key management device 3 distributes predetermined key data K_ORG and label data LABEL to the receiving devices 4_1 to 4_N by the preprocessing described above with reference to FIG.
Then, when the key management device 3 revokes the predetermined reception devices 4_1 to 4_N, the reception devices 4_1 to 4_1 to revoke the capsule data CAP by the method described above with reference to FIGS. 17, 18, 21 and 22. 4_N.
Then, receiving apparatuses 4_1 to 4_N perform the processing described with reference to FIGS. 24 and 25, and non-revoking receiving apparatuses 4_1 to 4_N obtain payload data PAYL decrypted based on new session key data NEW_SEK.
[0092]
As described above, in the communication system 1, the key management device 3 is configured such that a predetermined receiving device is selected from a plurality of predetermined key obtaining methods (for example, key obtaining methods SKT-A and SKT-B described later). A key acquisition method that minimizes the amount of communication with a non-revoked receiving device, which is generated to revoke (invalidate) 4_1 to 4_N, is selected. Then, the key management device 3 acquires new key encryption key data KEK based on the selected key acquisition method.
Therefore, according to the communication system 1, the communication traffic between the key management device 3 and the non-revoked receiving devices 4_1 to 4_N involved in the revocation process can be reduced as compared with the CST method described above.
Specifically, in the case of the communication system 1, the communication amount is the smaller one of O (COA) shown in the above equation (2) and O (COB) shown in the above equation (3). System and the SD system (O (R)), but the CST system (O (Rlog 2 N / R)).
[0093]
Further, according to the communication system 1, the data amounts of the key data and the label data LABEL (O (ST) shown in the above equation (4)) stored in the receiving devices 4_1 to 4_N are equal to those of the CST method (O (log)). 2 R)), but in the case of the SD method and the LSD method (O ((log 2 N) 2 ), O ((log 2 N) 1 + a ), A> 1).
Thereby, according to the communication system 1, the communication amount between the key management device 3 and the receiving devices 4_1 to 4_N involved in the revocation process and the data amount of the key data held by the receiving devices 4_1 to 4_N are appropriately adjusted. It can be specified by a trade-off.
[0094]
Further, in the communication system 1, the receiving devices 4_1 to 4_N are configured so that the user cannot control the security functions such as the key management described above, so that the security functions can be enhanced.
In addition, since the receiving devices 4_1 to 4_N adopt SDR for receiving (downloading) from the key management device 3, only authorized authorized receiving devices 4_1 to 4_N are transmitted to the receiving devices. Data can be automatically received, and security associated with downloading can be enhanced.
Also, the user can use the receiving devices 4_1 to 4_N without being conscious of these security functions at all.
[0095]
The present invention is not limited to the embodiments described above.
In the above-described embodiment, the case where the communication between the key management device 3 and the receiving devices 4_1 to 4_N is performed by a wireless method is illustrated. However, the communication may be performed by a wire.
[0096]
Further, in the above-described embodiment, two key acquisition methods SKT-A and SKT-B have been exemplified as the plurality of key acquisition methods of the present invention. However, the type of key acquisition method is not particularly limited. There is no particular limitation as long as the number of methods is plural.
For example, the present invention applies the LSD or SD method to a first horizontal layer including a leaf to which a plurality of receiving devices are assigned, and applies a LSD or SD method to a second horizontal layer including a route to which a key management device is assigned. If the CST method is adopted, there may be no horizontal layer or one or more layers between the first horizontal layer and the second horizontal layer. The key acquisition method applied to is arbitrary.
[0097]
【The invention's effect】
As described above, according to the present invention, the communication amount between the key management source and the receiving device involved in the revocation process and the data amount of the key data held by the receiving device are defined by an appropriate trade-off. A data processing method, a program thereof, a device thereof, and a receiving device can be provided.
[Brief description of the drawings]
FIG. 1 is an overall configuration diagram of a communication system according to an embodiment of the present invention.
FIG. 2 is a hardware configuration diagram of the key management device shown in FIG. 1;
FIG. 3 is a diagram for explaining a tree structure serving as a basis of a key acquisition method employed in an embodiment of the present invention.
FIG. 4 is a flowchart for explaining processing of a key acquisition method employed in an embodiment of the present invention.
FIG. 5 is a diagram for explaining a key acquisition method SKT-A employed in the embodiment of the present invention.
FIG. 6 is a diagram for explaining a key acquisition method SKT-B employed in the embodiment of the present invention.
FIG. 7 is a diagram for explaining a CST method.
FIG. 8 is a diagram for explaining a CST method.
FIG. 9 is a diagram for explaining a CST method.
FIG. 10 is a diagram for explaining the SD method.
FIG. 11 is a diagram for explaining the SD method.
FIG. 12 is a diagram for explaining the SD method.
FIG. 13 is a diagram for explaining the SD method.
FIG. 14 is a diagram for explaining the LSD method.
FIG. 15 is a diagram for explaining the LSD method.
FIG. 16 is a flowchart illustrating a pre-process performed by the key management device illustrated in FIG. 1;
FIG. 17 is a flowchart illustrating a revocation process performed by the key management device illustrated in FIG. 1;
FIG. 18 is a flowchart continued from FIG. 17 for explaining revocation processing performed by the key management device shown in FIG. 1;
FIG. 19 is a diagram for describing designated data according to the embodiment of the present invention.
FIG. 20 is a diagram for explaining capsule data CAP transmitted by the key management device shown in FIG. 1 to a non-revoking receiving device.
FIG. 21 is a flowchart illustrating step ST24 shown in FIG. 17;
FIG. 22 is a flowchart illustrating step ST25 shown in FIG. 17;
FIG. 23 is a hardware configuration diagram of the receiving device shown in FIG. 1;
FIG. 24 is a flowchart for explaining an operation example of the receiving apparatus shown in FIG. 1;
FIG. 25 is a flowchart illustrating step ST56 shown in FIG. 24;
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Communication system, 3 ... Key management device, 4_1-4_N ... Receiving device, 10 ... Bus, 11 ... Communication part, 12 ... Memory, 13 ... Processing part, 40 ... Bus, 41 ... Communication part, 42 ... Memory, 43 … Processor

Claims (10)

複数の受信装置との間で所定の鍵データを基に暗号化通信を行い、前記複数の受信装置のうち何れかを無効にする場合に、無効にしない前記受信装置との間の前記暗号化通信に用いる新たな前記鍵データを鍵管理元が取得するためのデータ処理方法であって、
予め決められた複数の鍵取得方法のうち、所定の前記受信装置を無効にするために生じる前記鍵管理元と無効にしない前記受信装置との間の通信量が最少となる前記鍵取得方法を選択する第1の工程と、
前記第1の工程で選択した前記鍵取得方法を基に、無効にしない前記受信装置との間の前記暗号化通信に用いる新たな前記鍵データを取得する第2の工程と
を有するデータ処理方法。
Encrypted communication is performed with a plurality of receiving devices based on predetermined key data, and when any of the plurality of receiving devices is invalidated, the encryption with the receiving device that is not invalidated is performed. A data processing method for a key management source to obtain new key data used for communication,
Among a plurality of predetermined key acquisition methods, the key acquisition method in which the communication amount between the key management source generated to invalidate the predetermined reception device and the reception device that does not invalidate is minimized. A first step of selecting;
A second step of acquiring the new key data used for the encrypted communication with the receiving device that is not invalidated based on the key acquisition method selected in the first step. .
前記第2の工程は、前記鍵管理元が対応付けられたルートから分岐した最終端のノードであるリーフに複数の受信装置の各々が対応付けられ、前記ルートと前記リーフとの間に複数のレイヤが規定されたツリーと、前記複数のレイヤのうち少なくとも2つの前記レイヤに対して相互に異なるアルゴリズムを適用した前記鍵取得方法とを基に、前記無効にする前記受信装置が対応付けられた前記リーフに応じて、前記ツリー内の前記ノードに割り当てられたデータのうち前記新たな鍵データを取得するために用いるデータを特定する
請求項1に記載のデータ処理方法。
In the second step, each of the plurality of receiving devices is associated with a leaf that is a terminal node at the last end branched from the route with which the key management source is associated, and a plurality of receiving devices are provided between the root and the leaf. The receiving device to be invalidated is associated based on a tree in which a layer is defined and the key acquisition method that applies a mutually different algorithm to at least two of the plurality of layers. 2. The data processing method according to claim 1, wherein data used for acquiring the new key data among data allocated to the nodes in the tree is specified according to the leaf.
前記異なるアルゴリズムとして、
処理対象の前記レイヤ内のサブツリーのうち当該サブツリー内あるいはその分岐先に無効にする前記受信装置が対応付けられているサブツリーについて、当該サブツリー内の最終端のノードのうち、当該最終端のノードあるいはその分岐先に無効にする前記受信装置が対応付けられていないノードのみを要素とする集合に割り当てられた第1のデータを基に、前記新たな鍵データを取得する第1の方法と、
処理対象のレイヤのノードのなかで、分岐先に前記無効にする受信装置に対応付けられたリーフがないノードで、かつ最も前記ルートに近いノードに割り当てられた第2のデータを、前記新たな鍵データとする第2の方法と
を用いる請求項2に記載のデータ処理方法。
As the different algorithm,
Of the subtrees in the layer to be processed, of the subtree associated with the receiving device to be invalidated in the subtree or its branch destination, among the nodes at the final end in the subtree, the node at the final end or A first method of acquiring the new key data based on first data assigned to a set including only nodes to which the receiving device to be invalidated at the branch destination is not associated,
Among the nodes of the layer to be processed, the second data assigned to the node having no leaf associated with the receiving device to be invalidated at the branch destination and assigned to the node closest to the root is the new data. 3. The data processing method according to claim 2, wherein the second method is used as key data.
前記複数の鍵取得方法は、
前記ツリーの前記最終端のノードを含む第1のレイヤに対して前記第1の方法を採用し、前記ルートを含む第2のレイヤに対して前記第2の方法を採用する第1の鍵取得方法と、
前記ツリーの前記最終端のノードを含む第3のレイヤに対して前記第1の方法を採用し、前記第3のレイヤに対して前記ルート側に規定された第4のレイヤに対して前記第1の方法を採用し、前記ルートを含む第5のレイヤに対して前記第2の方法を採用する第2の鍵取得方法と
を少なくとも有する請求項3に記載のデータ処理方法。
The plurality of key acquisition methods include:
A first key acquisition that employs the first method for a first layer that includes the last node of the tree and the second method for a second layer that includes the root; Method and
The first method is adopted for a third layer including the last node of the tree, and the fourth method is defined for a fourth layer defined on the root side for the third layer. 4. The data processing method according to claim 3, further comprising a second key acquisition method that employs the first method and employs the second method for a fifth layer including the route.
前記第1の工程で選択した特定した前記鍵取得方法と、当該選択した鍵取得方法に用いるデータとを指定した指定データを、無効にしない前記受信装置に送信する第3の工程
をさらに有する請求項1に記載のデータ処理方法。
A third step of transmitting, to the receiving device that does not invalidate, specified data that specifies the key acquisition method specified in the first step and the data to be used for the selected key acquisition method. Item 2. The data processing method according to Item 1.
複数の受信装置との間で所定の鍵データを基に暗号化通信を行い、前記複数の受信装置のうち何れかを無効にする場合に、無効にしない前記受信装置との間の前記暗号化通信に用いる新たな前記鍵データを鍵管理元が取得するための処理をコンピュータに実行させるプログラムであって、
予め決められた複数の鍵取得方法のうち、所定の前記受信装置を無効にするために生じる前記鍵管理元と無効にしない前記受信装置との間の通信量が最少となる前記鍵取得方法を選択する第1の手順と、
前記第1の手順で選択した前記鍵取得方法を基に、無効にしない前記受信装置との間の前記暗号化通信に用いる新たな前記鍵データを取得する第2の手順と
を有するプログラム。
Encrypted communication is performed with a plurality of receiving devices based on predetermined key data, and when any of the plurality of receiving devices is invalidated, the encryption with the receiving device that is not invalidated is performed. A program for causing a computer to execute a process for a key management source to obtain new key data used for communication,
Among a plurality of predetermined key acquisition methods, the key acquisition method in which the communication amount between the key management source generated to invalidate the predetermined reception device and the reception device that does not invalidate is minimized. A first step to choose;
A second procedure of acquiring the new key data used for the encrypted communication with the receiving apparatus that is not invalidated based on the key acquisition method selected in the first procedure.
複数の受信装置との間で所定の鍵データを基に暗号化通信を行い、前記複数の受信装置のうち何れかを無効にする場合に、無効にしない前記受信装置との間の前記暗号化通信に用いる新たな前記鍵データを鍵管理元が取得するための処理を行うデータ処理装置であって、
予め決められた複数の鍵取得方法のうち、所定の前記受信装置を無効にするために生じる前記鍵管理元と無効にしない前記受信装置との間の通信量が最少となる前記鍵取得方法を選択する第1の手段と、
前記第1の手段で選択した前記鍵取得方法を基に、無効にしない前記受信装置との間の前記暗号化通信に用いる新たな前記鍵データを取得する第2の手段と
を有するデータ処理装置。
Encrypted communication is performed with a plurality of receiving devices based on predetermined key data, and when any of the plurality of receiving devices is invalidated, the encryption with the receiving device that is not invalidated is performed. A data processing device that performs a process for obtaining a new key data used for communication by a key management source,
Among a plurality of predetermined key acquisition methods, the key acquisition method in which the communication amount between the key management source generated to invalidate the predetermined reception device and the reception device that does not invalidate is minimized. A first means for selecting;
A second processing means for obtaining new key data used for the encrypted communication with the receiving apparatus which is not invalidated based on the key obtaining method selected by the first means. .
鍵管理元との間で所定の鍵データを基に暗号化通信を行うデータ処理方法であって、
鍵取得方法と当該鍵取得方法に用いるデータとを特定した指定データを前記鍵管理元から受信する第1の工程と、
前記第1の工程で受信した前記指定データで指定されたデータを用いて、当該指定データが指定する前記鍵取得方法を基に、新たな前記鍵データを取得する第2の工程と
を有するデータ処理方法。
A data processing method for performing encrypted communication with a key management source based on predetermined key data,
A first step of receiving, from the key management source, designated data specifying a key acquisition method and data used for the key acquisition method;
A second step of acquiring new key data based on the key acquisition method designated by the designated data using the data designated by the designated data received in the first step. Processing method.
鍵管理元との間で所定の鍵データを基に暗号化通信を行うコンピュータが実行するプログラムであって、
鍵取得方法と当該鍵取得方法に用いるデータとを特定した指定データを前記鍵管理元から受信する第1の手順と、
前記第1の手順で受信した前記指定データで指定されたデータを用いて、当該指定データが指定する前記鍵取得方法を基に、新たな前記鍵データを取得する第2の手順と
を有するプログラム。
A program executed by a computer that performs encrypted communication with a key management source based on predetermined key data,
A first procedure of receiving, from the key management source, designated data specifying a key acquisition method and data used for the key acquisition method;
A second procedure for acquiring new key data based on the key acquisition method designated by the designated data using data designated by the designated data received in the first procedure. .
鍵管理元との間で所定の鍵データを基に暗号化通信を行う受信装置であって、
鍵取得方法と当該鍵取得方法に用いるデータとを特定した指定データを前記鍵管理元から受信する第1の手段と、
前記第1の手段が受信した前記指定データで指定されたデータを用いて、当該指定データが指定する前記鍵取得方法を基に、新たな前記鍵データを取得する第2の手段と
を有する受信装置。
A receiving device that performs encrypted communication with a key management source based on predetermined key data,
First means for receiving, from the key management source, designated data specifying a key acquisition method and data used for the key acquisition method;
Second means for acquiring new key data based on the key acquisition method designated by the designated data, using data designated by the designated data received by the first means. apparatus.
JP2003114882A 2003-04-18 2003-04-18 Data processing method, program thereof, apparatus thereof, and receiver Pending JP2004320655A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003114882A JP2004320655A (en) 2003-04-18 2003-04-18 Data processing method, program thereof, apparatus thereof, and receiver

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003114882A JP2004320655A (en) 2003-04-18 2003-04-18 Data processing method, program thereof, apparatus thereof, and receiver

Publications (1)

Publication Number Publication Date
JP2004320655A true JP2004320655A (en) 2004-11-11

Family

ID=33474316

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003114882A Pending JP2004320655A (en) 2003-04-18 2003-04-18 Data processing method, program thereof, apparatus thereof, and receiver

Country Status (1)

Country Link
JP (1) JP2004320655A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005311490A (en) * 2004-04-19 2005-11-04 Sony Corp Communication system and method for conducting secure communication
JP2006253822A (en) * 2005-03-08 2006-09-21 Toshiba Corp Decryption device, decryption method, and program
JP2009104575A (en) * 2007-10-02 2009-05-14 Nippon Telegr & Teleph Corp <Ntt> Information recording medium security method, information processing apparatus, program, and recording medium

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005311490A (en) * 2004-04-19 2005-11-04 Sony Corp Communication system and method for conducting secure communication
JP2006253822A (en) * 2005-03-08 2006-09-21 Toshiba Corp Decryption device, decryption method, and program
JP2009104575A (en) * 2007-10-02 2009-05-14 Nippon Telegr & Teleph Corp <Ntt> Information recording medium security method, information processing apparatus, program, and recording medium

Similar Documents

Publication Publication Date Title
Tu et al. A revocable and outsourced multi-authority attribute-based encryption scheme in fog computing
JP5955117B2 (en) User key management method for broadcast encryption
ES2334109T5 (en) Transmission coding method
US8411865B2 (en) Key management method for broadcast encryption in tree topology network
WO2010021774A1 (en) Detecting and revoking pirate redistribution of content
US20080101611A1 (en) Key Distribution in Systems for Selective Access to Information
JP4432350B2 (en) Data processing method, program thereof, device thereof and receiving device
KR20060013029A (en) A method of renewing group key according to membership in secret group and secret group communication system using same
KR20060129934A (en) Information processing method, decoding processing method and information processing apparatus and computer program
KR100640057B1 (en) How to Manage User Keys for Broadcast Encryption
JP2004320655A (en) Data processing method, program thereof, apparatus thereof, and receiver
JP2007189597A (en) ENCRYPTION DEVICE, ENCRYPTION METHOD, DECRYPTION DEVICE, AND DECRYPTION METHOD
JP2005311490A (en) Communication system and method for conducting secure communication
KR100929226B1 (en) Key Management Method in User Group for Broadcast Encryption
JP2004328233A (en) Data processing method, program, and data processor
JP2004320225A (en) Data processing method, program therefor, apparatus therefor, and receiver
JP2004328541A (en) Data processing method, program thereof, apparatus thereof, and receiver
JP2009105853A (en) SD method and program for any tree structure
JP4638213B2 (en) CONTENT DISTRIBUTION SERVER, KEY ALLOCATION METHOD, CONTENT OUTPUT DEVICE, AND KEY ISSUING CENTER
JP4635459B2 (en) Information processing method, decoding processing method, information processing apparatus, and computer program
JP2005252916A (en) Information processing method and apparatus, decoding processing method, and computer program
JP2009284220A (en) Ternary sd method and program
Ramkumar On broadcast encryption with random key pre-distribution schemes
JP2005191805A (en) Encryption message distribution method, information processing device, information processing method, and computer program
Zhao et al. Tracing and revoking scheme for dynamic privileges against pirate rebroadcast