JP2009105853A - Sd method corresponding to optional tree structure, and program - Google Patents

Sd method corresponding to optional tree structure, and program Download PDF

Info

Publication number
JP2009105853A
JP2009105853A JP2007278081A JP2007278081A JP2009105853A JP 2009105853 A JP2009105853 A JP 2009105853A JP 2007278081 A JP2007278081 A JP 2007278081A JP 2007278081 A JP2007278081 A JP 2007278081A JP 2009105853 A JP2009105853 A JP 2009105853A
Authority
JP
Japan
Prior art keywords
node
nodes
key
tree
message
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
JP2007278081A
Other languages
Japanese (ja)
Inventor
Kazuhide Fukushima
和英 福島
Shinsaku Kiyomoto
晋作 清本
Toshiaki Tanaka
俊昭 田中
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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Priority to JP2007278081A priority Critical patent/JP2009105853A/en
Publication of JP2009105853A publication Critical patent/JP2009105853A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To enable the SD method to be also applied to a message in an optional tree structure, and to reduce a broadcast message size. <P>SOLUTION: As preparation processing, client terminals are assigned to leaf nodes, a label of 1 bit is optionally assigned to each of all nodes in the optional tree structure, and labels are assigned to the client terminals. As encryption processing, a center server next generates a session key at random, and encrypts a message to obtain an encrypted message. The center server obtains a subset difference tree covering all regular client terminals, assigns a key to the obtained subset difference tree, encrypts it and distributes a broadcast message to all the client terminals. Further, as decryption processing, for the broadcast message received by each of the client terminals, an identifier of the subset difference tree to which the relevant client terminal belongs, is obtained, the key is drawn from the owned label to obtain a session key K, and obtains a message M. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、従来のSD法およびプログラムを改良し、任意の木構造に対応させた技術に関する。   The present invention relates to a technique for improving a conventional SD method and program to cope with an arbitrary tree structure.

コンテンツ配信サービスにおいては、著作権保護のため、コンテンツを暗号化して配布することが必要である。その方法の一つとして、ブロードキャスト暗号は、コンテンツ鍵を正当なクライアント端末のみに配布する技術である。   In the content distribution service, it is necessary to encrypt and distribute the content for copyright protection. As one of the methods, broadcast encryption is a technique for distributing a content key only to legitimate client terminals.

ここで、コンテンツ鍵とは、配布されるコンテンツを暗号化するための鍵である。また、ブロードキャスト暗号は、上記コンテンツ鍵を正当なクライアント端末のみに配布するための技術である。   Here, the content key is a key for encrypting the distributed content. Broadcast encryption is a technique for distributing the content key only to legitimate client terminals.

ブロードキャスト暗号においては、各クライアント端末に、複数の鍵(鍵束)を事前に格納する。この鍵束は、クライアント端末ごとに異なり、更新されることはない。鍵管理サーバは、無効化されたクライアント端末のリストに基づき、コンテンツ鍵を暗号化し、ブロードキャスト鍵ブロックを作成する。そして、作成したブロードキャスト鍵ブロックを、各クライアント端末に配布する。   In the broadcast encryption, a plurality of keys (key bundles) are stored in advance in each client terminal. This key ring is different for each client terminal and is not updated. The key management server encrypts the content key based on the revoked client terminal list and creates a broadcast key block. Then, the created broadcast key block is distributed to each client terminal.

ブロードキャスト鍵ブロックを受信したクライアント端末は、自身に格納されている鍵束を用いてコンテンツ鍵の復号を試みる。このとき、正当なクライアント端末は、ブロードキャスト鍵ブロックから、コンテンツ鍵を正しく復号できる。一方で、無効化されたクライアント端末は、ブロードキャスト鍵ブロックから、コンテンツ鍵を復号できない。図13にブロードキャスト暗号の概念図を示す。   The client terminal that has received the broadcast key block attempts to decrypt the content key using a key ring stored in itself. At this time, a legitimate client terminal can correctly decrypt the content key from the broadcast key block. On the other hand, the disabled client terminal cannot decrypt the content key from the broadcast key block. FIG. 13 shows a conceptual diagram of broadcast encryption.

ところで、ブロードキャスト暗号を実現する最も自明な方式として、クライアント端末ごとに異なる個別鍵を格納しておき、コンテンツ鍵を各個別鍵で暗号化したものを、ブロードキャスト鍵ブロックとする方法がある。しかしながら、本方式では、ブロードキャスト鍵ブロックがクライアント端末の総数に比例し、増大するという課題がある。   By the way, as the most obvious method for realizing broadcast encryption, there is a method in which individual keys different for each client terminal are stored, and a content key encrypted with each individual key is used as a broadcast key block. However, this method has a problem that the broadcast key block increases in proportion to the total number of client terminals.

そのため、非特許文献1に示されるように、木構造に基づく鍵の階層化を行い、ブロードキャスト鍵ブロックを構成するComplete Subtree Method(CS法)が提案されている。本方式においては、前記の方式と比較して、ブロードキャスト鍵ブロックのサイズを削減できるという特徴がある。   Therefore, as shown in Non-Patent Document 1, a complete subtree method (CS method) has been proposed in which a key is hierarchized based on a tree structure and a broadcast key block is configured. This method has a feature that the size of the broadcast key block can be reduced as compared with the above method.

しかしながら、本方式では、ブロードキャスト鍵ブロックのサイズが、無効化されたクライアント端末の数に依存し、増大するという課題がある。つまり、木構造の次数をa、クライアント端末の総数をN、無効化されたクライアント端末の数をr、コンテンツ鍵Kのサイズを|K|とすると、ブロードキャスト鍵ブロックのサイズは、数1となることが示されている。   However, this method has a problem that the size of the broadcast key block increases depending on the number of invalidated client terminals. That is, if the order of the tree structure is a, the total number of client terminals is N, the number of revoked client terminals is r, and the size of the content key K is | K | It has been shown.

Figure 2009105853
Figure 2009105853

そこで、非特許文献1では、差分木(subset difference tree)を用いて、ブロードキャスト鍵ブロックを構成するSubset Difference Method(SD法)が提案されている。このSD法においては、ブロードキャストブロックのサイズは、最大で、(2r−1)|K|であり、平均で、2log2・r|K|であることが示されている。
Dalit Naor,Moni Naor,and Jeff Lotspiech,“Revocation and TracingSchemes for Stateless Receivers,”Proc.of Crypt 2001, Lecture Notes in Computer Science 2139,pp.41−62,2001.
Therefore, Non-Patent Document 1 proposes a Subset Difference Method (SD method) that configures a broadcast key block using a difference tree (subset difference tree). In this SD method, the maximum size of the broadcast block is (2r−1) | K |, and the average is 2log2 · r | K |.
Dalit Naor, Moni Naor, and Jeff Lotspiech, “Revocation and Tracing Schemes for Stateless Receivers,” Proc. of Crypt 2001, Lecture Notes in Computer Science 2139, pp. 41-62, 2001.

しかしながら、上記のCS法では,a分木を対象とするのに対し、従来のSD法では、2分木のみを対象とする。そのため、従来のSD法では、a分木のような多分木には対応することができなかったが、SD法の対象を多分木に拡張できれば、より柔軟なクライアント端末の被覆が実現でき,ブロードキャストメッセージのサイズの軽減を図ることができる。また、仮に、SD法の対象をa分木のような多分木に拡張できたとしても、図 14に示されるような木構造を用いるSD法は実現できないという問題があった。   However, the CS method targets the a-tree, whereas the conventional SD method targets only the binary tree. Therefore, the conventional SD method cannot cope with a multi-tree such as a-ary tree. However, if the target of the SD method can be expanded to a multi-tree, more flexible client terminal coverage can be realized and broadcast can be performed. The message size can be reduced. Further, even if the object of the SD method can be expanded to a multi-tree such as a-ary tree, there is a problem that the SD method using the tree structure as shown in FIG. 14 cannot be realized.

そこで、本発明は、上述の課題に鑑みてなされたものであり、例えば、2分木と4分木とからなるような任意の木構造を有するものについてもSD法が適用でき、かつ、ブロードキャストメッセージサイズを軽減することができる任意の木構造に対応したSD法およびプログラムを提供することを目的とする。   Therefore, the present invention has been made in view of the above-described problems. For example, the SD method can be applied to an object having an arbitrary tree structure such as a binary tree and a quadtree, and broadcast. An object of the present invention is to provide an SD method and a program corresponding to an arbitrary tree structure capable of reducing the message size.

本発明は、上記の課題を解決するために、以下の事項を提案している。   The present invention proposes the following matters in order to solve the above problems.

(1)本発明は、準備処理として、任意の木構造の末端のノード(リーフノード)にクライアント端末を割り当てる第1のステップ(例えば、図2のステップS201に相当)と、前記任意の木構造における全てのノードにlビットのラベルを任意に割り当てる第2のステップ(例えば、図2のステップS202に相当)と、前記クライアント端末に、前記ラベルを割り当てる第3のステップ(例えば、図2のステップS203に相当)と、暗号化処理として、センターサーバが、セッション鍵Kをランダムに生成し、メッセージMを暗号化して、暗号化メッセージF(M)を得る第4のステップ(例えば、図3のステップS301に相当)と、前記センターサーバが、全ての正当なクライアント端末を被覆する差分木Si1、Si2、・・・、Simを求める第5のステップ(例えば、図3のステップS302に相当)と、前記第5のステップで求めた差分木Sijに対して、鍵Lijを割り当てて、暗号化する第6のステップ(例えば、図3のステップS303に相当)と、前記全てのクライアント端末に、ブロードキャストメッセージ<[i、i、・・・、i、EL1(K)、EL2(K)、・・・、ELm(K)]、F(M)>を配布する第7のステップ(例えば、図3のステップS304に相当)と、復号化処理として、前記クライアント端末が受信したブロードキャストメッセージ<[i、i、・・・、i、C、C、・・・、C]、M´>に対して、自らが所属する差分木Sijの識別子iを求める第8のステップ(例えば、図4のステップS401に相当)と、保有するラベルから鍵Lijを導出する第9のステップ(例えば、図4のステップS402に相当)と、K=DLij(C)として、セッション鍵Kを得る第10のステップ(例えば、図4のステップS403に相当)と、M=D(M´)としてメッセージMを得る第11のステップ(例えば、図4のステップS404に相当)と、を備えることを特徴とする任意の木構造に対応したSD法を提案している。 (1) The present invention provides, as preparation processing, a first step (for example, corresponding to step S201 in FIG. 2) of assigning a client terminal to a terminal node (leaf node) of an arbitrary tree structure, and the arbitrary tree structure A second step (for example, corresponding to step S202 in FIG. 2) arbitrarily assigning l-bit labels to all nodes in FIG. 2 and a third step (for example, step in FIG. 2) assigning the labels to the client terminals And a fourth step (for example, FIG. 3) in which the center server randomly generates a session key K, encrypts the message M, and obtains the encrypted message F k (M). and equivalent) in step S301 of the center server is, the difference tree S i1 to cover all legitimate client terminal, S i2 ..., a fifth step of obtaining a S im (e.g., corresponding to step S302 of FIG. 3) assigned with respect to the difference tree S ij obtained in the fifth step, the key L ij, encrypts sixth step (e.g., corresponding to step S303 of FIG. 3) to the to all client terminals, the broadcast message <[i 1, i 2, ···, i m, E L1 (K), E L2 (K),..., E Lm (K)], F k (M)> are distributed as a seventh step (for example, corresponding to step S304 in FIG. 3), receiving broadcast message <[i 1, i 2, ···, i m, C 1, C 2, ···, C m], M'> respect, the identifier of the difference tree S ij to which itself belongs eighth step of obtaining a i j (eg , And equivalent) in step S401 in FIG. 4, a ninth step of deriving a key L ij from the label held (e.g., the equivalent) to step S402 of FIG. 4, as K = D Lij (C j) , the session key A tenth step for obtaining K (for example, equivalent to step S403 in FIG. 4), an eleventh step for obtaining the message M as M = D k (M ′) (for example, equivalent to step S404 in FIG. 4), The SD method corresponding to an arbitrary tree structure characterized by comprising:

この発明によれば、準備処理として、任意の木構造の末端のノード(リーフノード)にクライアント端末を割り当て、任意の木構造における全てのノードにlビットのラベルを任意に割り当て、クライアント端末に、ラベルを割り当てる。次に、暗号化処理として、センターサーバが、セッション鍵Kをランダムに生成し、メッセージMを暗号化して、暗号化メッセージF(M)を得、センターサーバが、全ての正当なクライアント端末を被覆する差分木Si1、Si2、・・・、Simを求め、求めた差分木Sijに対して、鍵Lijを割り当てて、暗号化し、全てのクライアント端末に、ブロードキャストメッセージ<[i、i、・・・、i、EL1(K)、EL2(K)、・・・、ELm(K)]、F(M)>を配布する。さらに、復号化処理として、クライアント端末が受信したブロードキャストメッセージ<[i、i、・・・、i、C、C、・・・、C]、M´>に対して、自らが所属する差分木Sijの識別子iを求め、保有するラベルから鍵Lijを導出し、K=DLij(C)として、セッション鍵Kを得て、M=D(M´)としてメッセージMを得る。したがって、2分木と4分木とからなるような任意の木構造を有するものについてもSD法を適用できる。 According to the present invention, as preparation processing, a client terminal is assigned to a terminal node (leaf node) of an arbitrary tree structure, an l-bit label is arbitrarily assigned to all nodes in the arbitrary tree structure, Assign a label. Next, as an encryption process, the center server randomly generates a session key K, encrypts the message M to obtain an encrypted message F k (M), and the center server sends all legitimate client terminals. The difference trees S i1 , S i2 ,..., S im to be covered are obtained, a key L ij is assigned to the obtained difference tree S ij and encrypted, and a broadcast message <[i 1, i 2, ···, i m, E L1 (K), E L2 (K), ···, E Lm (K)], to distribute the F k (M)>. Further, as a decryption process, for the broadcast message <[i 1 , i 2 ,..., I m , C 1 , C 2 ,..., C m ], M ′> received by the client terminal, The identifier i j of the difference tree S ij to which it belongs is obtained, the key L ij is derived from the label held, the session key K is obtained as K = D Lij (C j ), and M = D k (M ′ ) To obtain the message M. Therefore, the SD method can be applied to a tree having an arbitrary tree structure including a binary tree and a quadtree.

(2)本発明は、(1)の任意の木構造に対応したSD法について、前記第5のステップにおける被覆処理が、SD法における木構造(2分木)において、無効化した前記クライアント端末に対応付けられたノード、およびこれらの上位のノードからなる部分木(ST(R))をTとし、被覆に用いる差分木の集合を格納するための変数Sをφとする第12のステップ(例えば、図5のステップS501に相当)と、自ら、および兄弟のノードがすべて前記リーフノードであるようなノードv、v、・・・、vを選択する第13のステップ(例えば、図5のステップS502に相当)と、ノードv、v、・・・、vの親ノードにおける枝分かれ数nが所定値kであるときに、ノードv、v、・・・、vをTから削除する第14のステップ(例えば、図5のステップS503に相当)と、k<nのときに、ノードの上位にあるノードの中から、兄弟のノードをもつ最も下位のノードを探し、これをvとするとともに、vの下位にある全てのノードをTから削除する第15のステップ(例えば、図5のステップS504に相当)と、Tが単一の前記リーフノードになるまで、前記第13のステップから第15のステップを繰り返し実行する第16のステップ(例えば、図5のステップS505に相当)と、を備えることを特徴とする任意の木構造に対応したSD法を提案している。 (2) The present invention relates to the client terminal in which the covering process in the fifth step is invalidated in the tree structure (binary tree) in the SD method for the SD method corresponding to the arbitrary tree structure in (1). And a sub-tree (ST (R)) consisting of the nodes associated with, and a higher-order node thereof as T, and a variable S for storing a set of difference trees used for covering as φ is a twelfth step ( For example, it corresponds to step S501 in FIG. 5) and the thirteenth step (for example, selecting nodes v 1 , v 2 ,..., V k such that the node and the sibling nodes are all the leaf nodes) (Corresponding to step S502 in FIG. 5), and when the branching number n p in the parent node of the nodes v 1 , v 2 ,..., V k is a predetermined value k, the nodes v 1 , v 2 ,. , v k or T Fourteenth step of deleting (e.g., corresponding to step S503 in FIG. 5) and, when k <n p, looking from the node higher in the node, the lowest node with sibling nodes, which together with the v a, 15th step of deleting all the nodes subordinate to v a from T (e.g., corresponding to step S504 in FIG. 5) and, until T becomes a single said leaf node, Proposing a SD method corresponding to an arbitrary tree structure, comprising: a sixteenth step (for example, corresponding to step S505 in FIG. 5) that repeatedly executes the thirteenth to fifteenth steps. ing.

この発明によれば、被覆処理が、SD法における木構造(2分木)において、無効化したクライアント端末に対応付けられたノード、およびこれらの上位のノードからなる部分木(ST(R))をTとし、被覆に用いる差分木の集合を格納するための変数Sをφとする。次に、自ら、および兄弟のノードがすべてリーフノードであるようなノードv、v、・・・、vを選択し、ノードv、v、・・・、vの親ノードにおける枝分かれ数nが所定値kであるときに、ノードv、v、・・・、vをTから削除し、k<nのときに、ノードの上位にあるノードの中から、兄弟のノードをもつ最も下位のノードを探し、これをvとするとともに、vの下位にある全てのノードをTから削除する。そして、Tが単一のリーフノードになるまで、上記の処理を繰り返し実行する。したがって、上記の被覆処理により、利用者のグループ化を行って、ブロードキャストメッセージサイズを軽減することができる。 According to the present invention, in the tree structure (binary tree) in the SD method, the covering process is a node associated with the invalidated client terminal, and a subtree (ST (R)) composed of these higher nodes. Is T, and a variable S for storing a set of difference trees used for covering is φ. Then, himself, and the brother of the node are all nodes v 1, such as a leaf node, v 2, Select ..., and v k, node v 1, v 2, ···, v k parent node of when branching number n p is a predetermined value k at the node v 1, v 2, · · ·, a v k deleted from T, when k <n p, from among the node higher in the node , looking for the lowest node with the brother of the node, which together with a v a, to delete all of the nodes in the lower v a from T. The above processing is repeatedly executed until T becomes a single leaf node. Therefore, the broadcast message size can be reduced by grouping users by the above covering process.

(3)本発明は、コンピュータに、準備処理として、任意の木構造の末端のノード(リーフノード)にクライアント端末を割り当てる第1のステップ(例えば、図2のステップS201に相当)と、前記任意の木構造における全てのノードにlビットのラベルを任意に割り当てる第2のステップ(例えば、図2のステップS202に相当)と、前記クライアント端末に、前記ラベルを割り当てる第3のステップ(例えば、図2のステップS203に相当)と、暗号化処理として、センターサーバが、セッション鍵Kをランダムに生成し、メッセージMを暗号化して、暗号化メッセージF(M)を得る第4のステップ(例えば、図3のステップS301に相当)と、前記センターサーバが、全ての正当なクライアント端末を被覆する差分木Si1、Si2、・・・、Simを求める第5のステップ(例えば、図3のステップS302に相当)と、前記第5のステップで求めた差分木Sijに対して、鍵Lijを割り当てて、暗号化する第6のステップ(例えば、図3のステップS303に相当)と、前記全てのクライアント端末に、ブロードキャストメッセージ<[i、i、・・・、i、EL1(K)、EL2(K)、・・・、ELm(K)]、F(M)>を配布する第7のステップ(例えば、図3のステップS304に相当)と、復号化処理として、前記クライアント端末が受信したブロードキャストメッセージ<[i、i、・・・、i、C、C、・・・、C]、M´>に対して、自らが所属する差分木Sijの識別子iを求める第8のステップ(例えば、図4のステップS401に相当)と、保有するラベルから鍵Lijを導出する第9のステップ(例えば、図4のステップS402に相当)と、K=DLij(C)として、セッション鍵Kを得る第10のステップ(例えば、図4のステップS403に相当)と、M=D(M´)としてメッセージMを得る第11のステップ(例えば、図4のステップS404に相当)と、を実行させるためのプログラムを提案している。 (3) The present invention provides a first step (for example, equivalent to step S201 in FIG. 2) of assigning a client terminal to a terminal node (leaf node) of an arbitrary tree structure as a preparation process in the computer; A second step (for example, corresponding to step S202 of FIG. 2) arbitrarily assigning l-bit labels to all nodes in the tree structure, and a third step (for example, FIG. 2) for assigning the labels to the client terminals. And the fourth step (for example, the encryption process), the center server randomly generates a session key K, encrypts the message M, and obtains the encrypted message F k (M). , Corresponding to step S301 in FIG. 3), and the center server covers all valid client terminals. i1, S i2, · · ·, a fifth step of obtaining the S im (e.g., corresponding to step S302 of FIG. 3), with respect to the difference tree S ij obtained in the fifth step, the key L ij allocated, a sixth step of encrypting (e.g., corresponding to step S303 in FIG. 3) and, on the all the client terminals, the broadcast message <[i 1, i 2, ···, i m, E L1 ( K), E L2 (K),..., E Lm (K)], F k (M)> are distributed as a seventh step (for example, corresponding to step S304 in FIG. 3), , the broadcast message by the client terminal receives <[i 1, i 2, ···, i m, C 1, C 2, ···, C m], M'> respect, the difference itself belongs eighth to determine the identifier i j of the tree S ij Step (e.g., corresponding to step S401 in FIG. 4) and the ninth step of deriving a key L ij from the label held (e.g., corresponding to step S402 in FIG. 4) and, as K = D Lij (C j) The tenth step of obtaining the session key K (for example, equivalent to step S403 in FIG. 4) and the eleventh step of obtaining the message M as M = D k (M ′) (for example, equivalent to step S404 in FIG. 4). ), And a program to execute.

この発明によれば、準備処理として、任意の木構造の末端のノード(リーフノード)にクライアント端末を割り当て、任意の木構造における全てのノードにlビットのラベルを任意に割り当て、クライアント端末に、ラベルを割り当てる。次に、暗号化処理として、センターサーバが、セッション鍵Kをランダムに生成し、メッセージMを暗号化して、暗号化メッセージF(M)を得、センターサーバが、全ての正当なクライアント端末を被覆する差分木Si1、Si2、・・・、Simを求め、求めた差分木Sijに対して、鍵Lijを割り当てて、暗号化し、全てのクライアント端末に、ブロードキャストメッセージ<[i、i、・・・、i、EL1(K)、EL2(K)、・・・、ELm(K)]、F(M)>を配布する。さらに、復号化処理として、クライアント端末が受信したブロードキャストメッセージ<[i、i、・・・、i、C、C、・・・、C]、M´>に対して、自らが所属する差分木Sijの識別子iを求め、保有するラベルから鍵Lijを導出し、K=DLij(C)として、セッション鍵Kを得て、M=D(M´)としてメッセージMを得る。したがって、2分木と4分木とからなるような任意の木構造を有するものについてもSD法を適用できる。 According to the present invention, as preparation processing, a client terminal is assigned to a terminal node (leaf node) of an arbitrary tree structure, an l-bit label is arbitrarily assigned to all nodes in the arbitrary tree structure, Assign a label. Next, as an encryption process, the center server randomly generates a session key K, encrypts the message M to obtain an encrypted message F k (M), and the center server sends all legitimate client terminals. The difference trees S i1 , S i2 ,..., S im to be covered are obtained, a key L ij is assigned to the obtained difference tree S ij and encrypted, and a broadcast message <[i 1, i 2, ···, i m, E L1 (K), E L2 (K), ···, E Lm (K)], to distribute the F k (M)>. Further, as a decryption process, for the broadcast message <[i 1 , i 2 ,..., I m , C 1 , C 2 ,..., C m ], M ′> received by the client terminal, The identifier i j of the difference tree S ij to which it belongs is obtained, the key L ij is derived from the label held, the session key K is obtained as K = D Lij (C j ), and M = D k (M ′ ) To obtain the message M. Therefore, the SD method can be applied to a tree having an arbitrary tree structure including a binary tree and a quadtree.

(4)本発明は、(3)のプログラムについて、前記第5のステップにおける被覆処理が、SD法における木構造(2分木)において、無効化した前記クライアント端末に対応付けられたノード、およびこれらの上位のノードからなる部分木(ST(R))をTとし、被覆に用いる差分木の集合を格納するための変数Sをφとする第12のステップ(例えば、図5のステップS501に相当)と、自ら、および兄弟のノードがすべて前記リーフノードであるようなノードv、v、・・・、vを選択する第13のステップ(例えば、図5のステップS502に相当)と、ノードv、v、・・・、vの親ノードにおける枝分かれ数nが所定値kであるときに、ノードv、v、・・・、vをTから削除する第14のステップ(例えば、図5のステップS503に相当)と、k<nのときに、ノードの上位にあるノードの中から、兄弟のノードをもつ最も下位のノードを探し、これをvとするとともに、vの下位にある全てのノードをTから削除する第15のステップ(例えば、図5のステップS504に相当)と、Tが単一の前記リーフノードになるまで、前記第13のステップから第15のステップを繰り返し実行する第16のステップ(例えば、図5のステップS505に相当)と、を備えることを特徴とするプログラムを提案している。 (4) In the program of (3), the present invention relates to a node in which the covering process in the fifth step is associated with the invalidated client terminal in the tree structure (binary tree) in the SD method, and A twelfth step (for example, in step S501 in FIG. 5), where T is a subtree (ST (R)) composed of these upper nodes and T is a variable S for storing a set of difference trees used for covering. And the thirteenth step of selecting nodes v 1 , v 2 ,..., V k in which all of the nodes of the node itself and the siblings are the leaf nodes (for example, corresponding to step S502 in FIG. 5). when it is removed when node v 1, v 2, ···, v branching factor n p in the parent node of the k is a predetermined value k, the node v 1, v 2, · · ·, a v k from T 14th Step (e.g., corresponding to step S503 in FIG. 5), when k <n p, from among the node higher in the node, find the lowest node with sibling nodes, and which v a In addition, a fifteenth step (for example, corresponding to step S504 in FIG. 5) of deleting all nodes subordinate to va from T, and the thirteenth step until T becomes a single leaf node. To a fifteenth step (for example, corresponding to step S505 in FIG. 5) that repeatedly executes the fifteenth step is proposed.

この発明によれば、被覆処理が、SD法における木構造(2分木)において、無効化したクライアント端末に対応付けられたノード、およびこれらの上位のノードからなる部分木(ST(R))をTとし、被覆に用いる差分木の集合を格納するための変数Sをφとする。次に、自ら、および兄弟のノードがすべてリーフノードであるようなノードv、v、・・・、vを選択し、ノードv、v、・・・、vの親ノードにおける枝分かれ数nが所定値kであるときに、ノードv、v、・・・、vをTから削除し、k<nのときに、ノードの上位にあるノードの中から、兄弟のノードをもつ最も下位のノードを探し、これをvとするとともに、vの下位にある全てのノードをTから削除する。そして、Tが単一のリーフノードになるまで、上記の処理を繰り返し実行する。したがって、上記の被覆処理により、利用者のグループ化を行って、ブロードキャストメッセージサイズを軽減することができる。 According to the present invention, in the tree structure (binary tree) in the SD method, the covering process is a node associated with the invalidated client terminal, and a subtree (ST (R)) composed of these higher nodes. Is T, and a variable S for storing a set of difference trees used for covering is φ. Then, himself, and the brother of the node are all nodes v 1, such as a leaf node, v 2, Select ..., and v k, node v 1, v 2, ···, v k parent node of when branching number n p is a predetermined value k at the node v 1, v 2, · · ·, a v k deleted from T, when k <n p, from among the node higher in the node , looking for the lowest node with the brother of the node, which together with a v a, to delete all of the nodes in the lower v a from T. The above processing is repeatedly executed until T becomes a single leaf node. Therefore, the broadcast message size can be reduced by grouping users by the above covering process.

本発明によれば、例えば、2分木と4分木とからなるような任意の木構造を有するものについてもSD法を適用できるため、利用者のグループ化を行って、ブロードキャストメッセージサイズを軽減することができるという効果がある。   According to the present invention, for example, the SD method can also be applied to a tree having an arbitrary tree structure such as a binary tree and a quadtree. Therefore, broadcast message size is reduced by grouping users. There is an effect that can be done.

以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
Note that the constituent elements in the present embodiment can be appropriately replaced with existing constituent elements, and various variations including combinations with other existing constituent elements are possible. Therefore, the description of the present embodiment does not limit the contents of the invention described in the claims.

<任意の木構造を用いるSD法>
詳細な説明を行う前に、以下の事項を定義する。
1)
セッション鍵K(lビット)を用いてメッセージMを暗号化する関数をF:{0、1}→{0、1}とする。
2)セッション鍵Kを暗号化する関数をE:{0、1}→{0、1}とする。
3)擬似乱数生成器をG:{0、1}→{0、1}(nmax+1)lとする。
ただし、nmaxは,木構造における最大の次数である。 ここで、G(S)の先頭からlビットを抜き出したものを,G(S),次のlビットを抜き出したものをG(S)、およびi番目のlビットを抜き出したものを、G(S)とする。また、最後のlビットを抜き出したものをGkey(S)とする。G()、G()、・・・、Gnmax()は,ラベルから、他のラベルを導出するために用いる。また、Gkey()は,ラベルから鍵を導出するために用いる。
<SD method using arbitrary tree structure>
Before detailed explanation, the following items are defined.
1)
A function for encrypting the message M using the session key K (1 bit) is assumed to be F k : {0, 1} * → {0, 1} * .
2) A function for encrypting the session key K is set to E: {0, 1} l → {0, 1} l .
3) Let the pseudo-random number generator be G: {0, 1} l → {0, 1} (nmax + 1) l .
Here, n max is the maximum order in the tree structure. Here, those extracted l bits from the head of G (S), G 1 ( S), what those extracted next l bits extracted with G 2 (S), and i-th l bits , G i (S). Also, G key (S) is obtained by extracting the last l bits. G 1 (), G 2 (),..., G nmax () are used to derive other labels from the labels. G key () is used to derive a key from the label.

本実施形態に係る任意の木構造に対応したSD法の処理は、図1に示すように、準備処理と、暗号化処理と、復号処理とからなっている。以下、順を追って、詳細に説明する。   As shown in FIG. 1, the SD method processing corresponding to an arbitrary tree structure according to the present embodiment includes a preparation process, an encryption process, and a decryption process. Hereinafter, the details will be described in order.

<準備処理>
図2を用いて、本実施形態に係る準備処理について説明する。
まず、任意の木構造の末端のノード(リーフノード)に,クライアント端末を割り当てる(ステップS201)。次に、木構造における全てのノードにlビットのラベルを任意に割り当てる(ステップS202)。ここで、ラベルxに割り当てられるラベルをLabelx、xと表記する。
<Preparation process>
A preparation process according to the present embodiment will be described with reference to FIG.
First, a client terminal is assigned to an end node (leaf node) of an arbitrary tree structure (step S201). Next, l-bit labels are arbitrarily assigned to all nodes in the tree structure (step S202). Here, the label assigned to the label x is expressed as Label x, x .

クライアント端末に、ラベルを割り当てる(ステップS203)。ここで、リーフノードxに割り当てられたクライアント端末が保有するラベルの集合は、数2のようになる。
ただし、Path(u、v)は、ノードuから,ノードvに至る経路上にあるノードの集合(uおよびvを含む)であり、Sibling(u)は、ノードuと同一の親ノードを持つノードの集合(uを含まない)である。ここで、ラベルLabelx、xからラベルLabelx、y(ノードyは,ノードxの上位ノード)を導出するために、擬似乱数生成器Gを用いる。
A label is assigned to the client terminal (step S203). Here, a set of labels held by the client terminal assigned to the leaf node x is expressed by Equation 2.
Note that Path (u, v) is a set of nodes (including u and v) on the path from the node u to the node v, and Sibling (u) has the same parent node as the node u. A set of nodes (not including u). Here, the label Label x, label from x Label x, y (node y, the upper node of the node x) to derive the uses pseudo-random number generator G.

Figure 2009105853
Figure 2009105853

<暗号化処理>
図3を用いて、本実施形態に係る暗号化処理について説明する。
センターサーバは、メッセージMに対して,下記の手順に従い,ブロードキャストメッセージを生成する。
具体的には、センターサーバが、セッション鍵Kをランダムに生成し、メッセージMを暗号化し、暗号化メッセージF(M)を得る(ステップS301)。
<Encryption processing>
The encryption process according to the present embodiment will be described with reference to FIG.
The center server generates a broadcast message for the message M according to the following procedure.
Specifically, the center server randomly generates a session key K, encrypts the message M, and obtains an encrypted message F k (M) (step S301).

次に、すべての正当なクライアント端末を被覆する差分木Si1、Si2、・・・、Simを求める(ステップS302)。なお、ここで用いる被覆アルゴリズムについては、後述する。また、本方式における差分木とは、ノードvを頂点とする部分木から、ノードvの子孫のノードであるノードv、v、・・・、v(ただし、v、v、・・・、vは同一の親ノードを持つものとする)を頂点とする部分木を除外した木構造であり、数3と表記する。 Next, difference trees S i1 , S i2 ,..., S im covering all valid client terminals are obtained (step S302). The covering algorithm used here will be described later. Further, the differential trees in this manner, node v a a subtree whose vertices, node v 1, v 2 is a descendant node of the node v a, · · ·, v k (however, v 1, v 2 ,..., V k are assumed to have the same parent node).

Figure 2009105853
Figure 2009105853

ステップS302で作成した各差分木Sijに対し、鍵Lijを割り当て、暗号化する(ステップS303)。ここでは、数4に示す差分木に対して、数5に示す鍵を、数6のように割り当てるものとする。
暗号化関数Eと、これらの鍵を用いて、セッション鍵を暗号化し、暗号化セッション鍵ELi1(K)、ELi2(K)、・・・、ELik(K)を得る。
A key L ij is assigned to each difference tree S ij created in step S302 and encrypted (step S303). Here, the key shown in Equation 5 is assigned to the difference tree shown in Equation 4 as shown in Equation 6.
And encryption function E, using these keys, encrypts the session key, the encrypted session key E Li1 (K), E Li2 (K), obtained · · ·, E Lik a (K).

Figure 2009105853
Figure 2009105853

Figure 2009105853
Figure 2009105853

Figure 2009105853
Figure 2009105853

そして、全てのクライアント端末に,ブロードキャストメッセージ<[i1、i2、・・・、i、EL1(K)、EL2(K)、・・・、ELm(K)]、FK(M)>を配布する(ステップS304)。 Then, all the client terminals, the broadcast message <[i 1, i 2, ···, i m, E L1 (K), E L2 (K), ···, E Lm (K)], F K (M)> is distributed (step S304).

<復号処理>
図4を用いて、本実施形態に係る復号処理について説明する。
クライアント端末は、受信したブロードキャストメッセージ<[i1、i2、・・・、i、C1、C2、・・・、Cm]、M´>に対して、以下の処理を行なう。
<Decryption process>
A decoding process according to the present embodiment will be described with reference to FIG.
Client terminal, the received broadcast message <[i 1, i 2, ···, i m, C 1, C 2, ···, C m], M'> respect, the following processing is performed.

まず、クライアント端末自らが所属する差分木Sijの識別子iを求める(ステップS401)。なお、当該クライアント端末が無効化されている場合は、差分木の識別子を得ることはできない。 First, the identifier i j of the difference tree S ij to which the client terminal belongs is obtained (step S401). When the client terminal is invalidated, the difference tree identifier cannot be obtained.

次に、クライアント端末が、保有するラベルから鍵Lijを導出する(ステップ402)。そして、K=DLij(C)としてセッション鍵Kを得(ステップS403)、M=Dk(M´)としてメッセージMを得る(ステップS404)。 Next, the client terminal derives the key L ij from the label it holds (step 402). Then, a session key K is obtained as K = D Lij (C j ) (step S403), and a message M is obtained as M = Dk (M ′) (step S404).

<被覆処理>
図5を用いて、上記、暗号化処理で用いられる被覆アルゴリズムについて、説明する。
まず、T=ST(R)、S=φとする(ステップS501)。ここで、ST(R)とは、SD法における木構造(2分木)において、無効化したクライアント端末に対応付けられたノード、およびこれらの上位のノードからなる部分木である。
図6に例を示す。また、Sは、被覆に用いる差分木の集合を格納するための変数である。
<Coating treatment>
The covering algorithm used in the encryption process will be described with reference to FIG.
First, T = ST (R) and S = φ are set (step S501). Here, ST (R) is a subtree made up of nodes associated with invalidated client terminals and higher-order nodes in the tree structure (binary tree) in the SD method.
An example is shown in FIG. S is a variable for storing a set of difference trees used for covering.

次に、クライアント端末自ら、および兄弟のノードがすべてリーフノードあるようなノードv、v、・・・、vを選ぶ(ステップS502)。そして、k=nの場合には、ノードv、v、・・・、vをTから削除する(ステップS503)。ここで、nとは、ノードv、v、・・・、vの親ノードにおける枝分かれ数である。図7に例を示す。 Next, nodes v 1 , v 2 ,..., V k are selected such that the client terminal itself and all sibling nodes are leaf nodes (step S502). If k = n p , the nodes v 1 , v 2 ,..., V k are deleted from T (step S503). Here, the n p, is a node v 1, v 2, · · ·, branching number of the parent node of v k. An example is shown in FIG.

次に、k<nの場合には、ノードの上位にあるノードの中から、兄弟のノードを持つ最も下位のノードを探す。そして、見つかったノードをvとする。次に、集合Sを数7とし、vの下位にある全てのノードをTから削除する(ステップS504)。図8に例を示す。なお、兄弟のノードを持つ上位ノードが存在しない場合は、差分木
を集合Sに追加し、root以外の全てのノードをTから削除する。図9に例を示す。そして、Tが単一のリーフノードになるまで、ステップS502からステップS504の処理を繰り返し行う。
Next, in the case of k <n p , the lowest node having a sibling node is searched for among the nodes higher than the node. Then, the found node and v a. Next, the number 7 a set S, deletes all nodes from T subordinate to v a (step S504). An example is shown in FIG. If there is no upper node having sibling nodes, the difference tree is added to the set S, and all nodes other than root are deleted from T. An example is shown in FIG. Then, the processes from step S502 to step S504 are repeated until T becomes a single leaf node.

Figure 2009105853
Figure 2009105853

したがって、本実施形態によれば、例えば、2分木と4分木とからなるような任意の木構造を有するものについてもSD法を適用できるため、利用者のグループ化を行って、ブロードキャストメッセージサイズを軽減することができる。   Therefore, according to the present embodiment, for example, the SD method can be applied to a tree having an arbitrary tree structure such as a binary tree and a quadtree. The size can be reduced.

<実施例>
図10から図12を用いて、実施例について説明する。
本実施例においては、図10の木構造を用いた拡張SD法において、ノード8、13、14、17および20に対応付けられたクライアントd、d、d、d10およびd13が無効化されているものとする。ST(R)は、ノード8、13、14、17、20およびこれらのノードの上位ノードからなる部分木である。
<Example>
Examples will be described with reference to FIGS. 10 to 12.
In this embodiment, in the extended SD method using the tree structure of FIG. 10, the clients d 1 , d 6 , d 7 , d 10 and d 13 associated with the nodes 8, 13, 14, 17 and 20 are Assume that it has been disabled. ST (R) is a subtree composed of nodes 8, 13, 14, 17, 20 and upper nodes of these nodes.

各クライアント端末は、図11に示されるラベルを保有する。この例では、図12に示されるように、正当なクライアント端末は、4つの差分木で被覆される。正当なクライアント端末d、dおよびdは、ラベルLabel4、8を保有しているので、このラベルから一方向性関数を利用して鍵L4、8を、L4、8=Gkey(Label4、8)として導出し、セッション鍵Kを復号できる。 Each client terminal has the label shown in FIG. In this example, as shown in FIG. 12, a valid client terminal is covered with four difference trees. Since the legitimate client terminals d 1 , d 2 and d 3 have labels Labels 4 and 8 , the keys L 4 and 8 are assigned L 4 and 8 = G using a one-way function from the labels. Derived as key (Label 4, 8 ), the session key K can be decrypted.

正当なクライアント端末dおよびdは、ラベルLabel3、13、ラベルLabel3、14をともに保有しているので、これらのラベルから一方向性関数を利用して、数8で示される鍵を、数9のように導出し、セッション鍵Kを復号できる。 Since the legitimate client terminals d 5 and d 8 have both the labels Label 3 and 13 and the labels Label 3 and 14 , the key shown in Expression 8 is obtained using a one-way function from these labels. , And the session key K can be decrypted.

Figure 2009105853
Figure 2009105853

Figure 2009105853
Figure 2009105853

正当なクライアント端末d、d11、d12は、ラベルLabel6、17を保有しているので,一方向性関数を利用し鍵L6、17を、L6、17=Gkey(Label6、17)として導出し、セッション鍵Kを復号できる。 Since the legitimate client terminals d 9 , d 11 , and d 12 have labels Labels 6 and 17 , the keys L 6 and 17 are assigned L 6 and 17 = G key (Label 6 using a one-way function. 17 ) and the session key K can be decrypted.

正当なクライアント端末d14、d15およびd16は,ラベルLabel7、20を保有しているので、このラベルから一方向性関数を利用して鍵L7、20を導出し,セッション鍵Kを復号できる。 Since legitimate client terminals d 14 , d 15 and d 16 have labels Labels 7 and 20 , the keys L 7 and 20 are derived from these labels using a one-way function, and the session key K is obtained. Can be decrypted.

一方で、無効化されたクライアント端末dは,ラベルLabel4、8を保持していないので、鍵L4、8を導出できない。
また、ラベルLabel5、*、Label6、*、Label7、*(*は任意の整数)のいずれも保有しないので、数10で示される鍵、鍵L6、17および鍵L7、20のいずれも導出できない。
ゆえに、セッション鍵Kを復号できない。
On the other hand, since the disabled client terminal d 1 does not hold the labels Label 4 and 8 , the keys L 4 and 8 cannot be derived.
Also, since none of the labels Label 5, * , Label 6, * , Label 7, and * (* is an arbitrary integer) are held, the keys shown in Expression 10, the keys L 6, 17 and the keys L 7 , 20 Neither can be derived.
Therefore, the session key K cannot be decrypted.

Figure 2009105853
Figure 2009105853

無効化されたクライアント端末dおよびdは,ラベルLabel5、13、Label5、14の一方のみを保有しているので、導出に双方のラベルが必要となる数11で示される鍵を導出できない。
また,ラベルLabel4、*、Label6、*およびLabel7、*(*は任意の整数)のいずれも保有しないので,鍵L4、8、鍵L6、17および鍵L7、20のいずれも導出できない。
ゆえに、セッション鍵Kを復号できない。
Since the revoked client terminals d 6 and d 7 have only one of the labels Label 5 , 13 and Label 5 , 14 , the key represented by the number 11 that requires both labels for derivation is derived. Can not.
Also, the label Label 4, *, Label 6, * and Label 7, since * (* is an arbitrary integer) does not possess any of the key L 4, 8, one of the key L 6, 17 and the key L 7,20 Cannot be derived.
Therefore, the session key K cannot be decrypted.

Figure 2009105853
Figure 2009105853

無効化されたクライアント端末d17は、ラベルLabel6、17を保有しないので、鍵L6、17を導出できない。
また、ラベルLabel4、*、Label5、*およびLabel7、*(*は任意の整数)のいずれも保有しないので,鍵L4、8、数12で示される鍵および鍵L7、20のいずれも導出できない。ゆえに,セッション鍵Kを復号できない。
The revoked client terminal d 17 does not have the labels Labels 6 and 17 and therefore cannot derive the keys L 6 and 17 .
Also, since none of the labels Label 4, * , Label 5, *, and Label 7, * (* is an arbitrary integer) are held, the keys L 4 and 8 and the keys indicated by Equation 12 and the keys L 7 and 20 Neither can be derived. Therefore, the session key K cannot be decrypted.

Figure 2009105853
Figure 2009105853

無効化されたクライアント端末d13は、ラベルLabel7、20を保有しないので、鍵L7、20を導出できない。また、ラベルLabel4、*、Label5、*およびLabel6、*(*は任意の整数)のいずれも保有しないので、鍵L4、8、数13で示される鍵および鍵L6、17のいずれも導出できない。ゆえに、セッション鍵Kを復号できない。 Since the disabled client terminal d 13 does not have the labels Label 7 and 20 , the keys L 7 and 20 cannot be derived. Also, the label Label 4, *, Label 5, * and so Label 6, * (* is an arbitrary integer) does not possess any of the key L 4, 8, indicated by the number 13 key and the key L 6, 17 Neither can be derived. Therefore, the session key K cannot be decrypted.

Figure 2009105853
Figure 2009105853

上記のように、本発明によれば、例えば、図12に示すような2分木と4分木とからなるような任意の木構造を有するものについてもSD法を適用できるため、利用者のグループ化を行って、ブロードキャストメッセージサイズを軽減することができる。   As described above, according to the present invention, for example, the SD method can be applied to a tree having an arbitrary tree structure such as a binary tree and a quadtree as shown in FIG. Grouping can be performed to reduce the broadcast message size.

なお、任意の木構造を用いるSD法の処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムを装置に読み込ませ、実行することによって本発明の任意の木構造を用いるSD法を実現することができる。ここでいうコンピュータシステムとは、OSや周辺装置等のハードウェアを含む。   The SD method using an arbitrary tree structure is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read by the apparatus and executed to use the arbitrary tree structure of the present invention. The SD method can be realized. The computer system here includes an OS and hardware such as peripheral devices.

また、「コンピュータシステム」は、WWW(World Wide Web)システムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。   Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW (World Wide Web) system is used. The program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. Here, the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line.

また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。更に、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。   The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, and what is called a difference file (difference program) may be sufficient.

以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。   The embodiments of the present invention have been described in detail with reference to the drawings. However, the specific configuration is not limited to the embodiments, and includes designs and the like that do not depart from the gist of the present invention.

本実施形態の処理を示すフローである。It is a flow which shows the process of this embodiment. 本実施形態に係る準備処理のフローである。It is a flow of the preparation process which concerns on this embodiment. 本実施形態に係る暗号化処理のフローである。It is the flow of the encryption process which concerns on this embodiment. 本実施形態に係る復号処理のフローである。It is a flow of the decoding process which concerns on this embodiment. 本実施形態に係る被覆処理のフローである。It is the flow of the coating process which concerns on this embodiment. ST(R)の木構造例を示す図である。It is a figure which shows the tree structure example of ST (R). k=nの場合の処理例を示す図である。It is a figure which shows the process example in case of k = np . k<nの場合で、上位ノードのいずれかが兄弟ノードを持つ場合を例示した図である。It is the figure which illustrated the case where one of the upper nodes has a sibling node in the case of k <n p . k<nの場合で、兄弟ノードを持つ上位ノードが存在しない場合を例示した図である。It is the figure which illustrated the case where k < np , and there is no upper node having sibling nodes. 拡張SD法の具体例を示す図である。It is a figure which shows the specific example of the extended SD method. 各クライアント端末が保有するラベルを示した表である。It is the table | surface which showed the label which each client terminal has. 実施例に関する差分木による被覆の様子を示す図である。It is a figure which shows the mode of the covering by the difference tree regarding an Example. 従来例に係るブロードキャスト暗号の概念図である。It is a conceptual diagram of the broadcast encryption which concerns on a prior art example. a分木型拡張SD法を適用できない木構造を例示した図である。It is the figure which illustrated the tree structure which cannot apply a branch tree type | mold extended SD method.

Claims (4)

準備処理として、
任意の木構造の末端のノード(リーフノード)にクライアント端末を割り当てる第1のステップと、
前記任意の木構造における全てのノードにlビットのラベルを任意に割り当てる第2のステップと、
前記クライアント端末に、前記ラベルを割り当てる第3のステップと、
暗号化処理として、
センターサーバが、セッション鍵Kをランダムに生成し、メッセージMを暗号化して、暗号化メッセージF(M)を得る第4のステップと、
前記センターサーバが、全ての正当なクライアント端末を被覆する差分木Si1、Si2、・・・、Simを求める第5のステップと、
前記第5のステップで求めた差分木Sijに対して、鍵Lijを割り当てて、暗号化する第6のステップと、
前記全てのクライアント端末に、ブロードキャストメッセージ<[i、i、・・・、i、EL1(K)、EL2(K)、・・・、ELm(K)]、F(M)>を配布する第7のステップと、
復号化処理として、前記クライアント端末が受信したブロードキャストメッセージ<[i、i、・・・、i、C、C、・・・、C]、M´>に対して、
自らが所属する差分木Sijの識別子iを求める第8のステップと、
保有するラベルから鍵Lijを導出する第9のステップと、
K=DLij(C)として、セッション鍵Kを得る第10のステップと、
M=D(M´)としてメッセージMを得る第11のステップと、
を備えることを特徴とする任意の木構造に対応したSD法。
As preparation process,
A first step of assigning a client terminal to a terminal node (leaf node) of an arbitrary tree structure;
A second step of arbitrarily assigning l-bit labels to all nodes in the arbitrary tree structure;
A third step of assigning the label to the client terminal;
As an encryption process,
A fourth step in which the center server randomly generates a session key K, encrypts the message M, and obtains an encrypted message F k (M);
A fifth step in which the center server obtains difference trees S i1 , S i2 ,..., S im covering all valid client terminals;
A sixth step of assigning and encrypting a key L ij to the difference tree S ij obtained in the fifth step;
Wherein all of the client terminals, the broadcast message <[i 1, i 2, ···, i m, E L1 (K), E L2 (K), ···, E Lm (K)], F k ( A seventh step of distributing M)>;
As a decryption process, for the broadcast message <[i 1 , i 2 ,..., I m , C 1 , C 2 , ..., C m ], M ′> received by the client terminal,
An eighth step of obtaining the identifier i j of the difference tree S ij to which itself belongs,
A ninth step of deriving the key L ij from the label held;
A tenth step of obtaining a session key K as K = D Lij (C j );
An eleventh step of obtaining the message M as M = D k (M ′);
An SD method corresponding to an arbitrary tree structure characterized by comprising:
前記第5のステップにおける被覆処理が、
SD法における木構造(2分木)において、無効化した前記クライアント端末に対応付けられたノード、およびこれらの上位のノードからなる部分木(ST(R))をTとし、被覆に用いる差分木の集合を格納するための変数Sをφとする第12のステップと、
自ら、および兄弟のノードがすべて前記リーフノードであるようなノードv、v、・・・、vを選択する第13のステップと、
ノードv、v、・・・、vの親ノードにおける枝分かれ数nが所定値kであるときに、ノードv、v、・・・、vをTから削除する第14のステップと、
k<nのときに、ノードの上位にあるノードの中から、兄弟のノードをもつ最も下位のノードを探し、これをvとするとともに、vの下位にある全てのノードをTから削除する第15のステップと、
Tが単一の前記リーフノードになるまで、前記第13のステップから第15のステップを繰り返し実行する第16のステップと、
を備えることを特徴とする請求項1に記載の任意の木構造に対応したSD法。
The covering process in the fifth step is
In the tree structure (binary tree) in the SD method, T is a node associated with the invalidated client terminal and a subtree (ST (R)) composed of these higher-order nodes, and a difference tree used for covering A twelfth step in which a variable S for storing a set of
A thirteenth step of selecting nodes v 1 , v 2 ,..., V k such that all of them and their sibling nodes are said leaf nodes;
When node v 1, v 2, ···, v branching factor n p in the parent node of the k is a predetermined value k, 14 to remove a node v 1, v 2, ···, the v k from T And the steps
when k <n p, from among the nodes that are on top of the node, looking for the lowest node with the brother of the node, which together with a v a, all of the nodes in the lower v a from T A fifteenth step to delete;
A sixteenth step of repeatedly executing the thirteenth through fifteenth steps until T becomes a single leaf node;
The SD method corresponding to an arbitrary tree structure according to claim 1, comprising:
コンピュータに、
準備処理として、
任意の木構造の末端のノード(リーフノード)にクライアント端末を割り当てる第1のステップと、
前記任意の木構造における全てのノードにlビットのラベルを任意に割り当てる第2のステップと、
前記クライアント端末に、前記ラベルを割り当てる第3のステップと、
暗号化処理として、
センターサーバが、セッション鍵Kをランダムに生成し、メッセージMを暗号化して、暗号化メッセージF(M)を得る第4のステップと、
前記センターサーバが、全ての正当なクライアント端末を被覆する差分木Si1、Si2、・・・、Simを求める第5のステップと、
前記第5のステップで求めた差分木Sijに対して、鍵Lijを割り当てて、暗号化する第6のステップと、
前記全てのクライアント端末に、ブロードキャストメッセージ<[i、i、・・・、i、EL1(K)、EL2(K)、・・・、ELm(K)]、F(M)>を配布する第7のステップと、
復号化処理として、前記クライアント端末が受信したブロードキャストメッセージ<[i、i、・・・、i、C、C、・・・、C]、M´>に対して、
自らが所属する差分木Sijの識別子iを求める第8のステップと、
保有するラベルから鍵Lijを導出する第9のステップと、
K=DLij(C)として、セッション鍵Kを得る第10のステップと、
M=D(M´)としてメッセージMを得る第11のステップと、
を実行させるためのプログラム。
On the computer,
As preparation process,
A first step of assigning a client terminal to a terminal node (leaf node) of an arbitrary tree structure;
A second step of arbitrarily assigning l-bit labels to all nodes in the arbitrary tree structure;
A third step of assigning the label to the client terminal;
As an encryption process,
A fourth step in which the center server randomly generates a session key K, encrypts the message M, and obtains an encrypted message F k (M);
A fifth step in which the center server obtains difference trees S i1 , S i2 ,..., S im covering all valid client terminals;
A sixth step of assigning and encrypting a key L ij to the difference tree S ij obtained in the fifth step;
Wherein all of the client terminals, the broadcast message <[i 1, i 2, ···, i m, E L1 (K), E L2 (K), ···, E Lm (K)], F k ( A seventh step of distributing M)>;
As a decryption process, for the broadcast message <[i 1 , i 2 ,..., I m , C 1 , C 2 , ..., C m ], M ′> received by the client terminal,
An eighth step of obtaining the identifier i j of the difference tree S ij to which itself belongs,
A ninth step of deriving the key L ij from the label held;
A tenth step of obtaining a session key K as K = D Lij (C j );
An eleventh step of obtaining the message M as M = D k (M ′);
A program for running
前記第5のステップにおける被覆処理が、
SD法における木構造(2分木)において、無効化した前記クライアント端末に対応付けられたノード、およびこれらの上位のノードからなる部分木(ST(R))をTとし、被覆に用いる差分木の集合を格納するための変数Sをφとする第12のステップと、
自ら、および兄弟のノードがすべて前記リーフノードであるようなノードv、v、・・・、vを選択する第13のステップと、
ノードv、v、・・・、vの親ノードにおける枝分かれ数nが所定値kであるときに、ノードv、v、・・・、vをTから削除する第14のステップと、
k<nのときに、ノードの上位にあるノードの中から、兄弟のノードをもつ最も下位のノードを探し、これをvとするとともに、vの下位にある全てのノードをTから削除する第15のステップと、
Tが単一の前記リーフノードになるまで、前記第13のステップから第15のステップを繰り返し実行する第16のステップと、
を備えることを特徴とする請求項3に記載のプログラム。
The covering process in the fifth step is
In the tree structure (binary tree) in the SD method, T is a node associated with the invalidated client terminal and a subtree (ST (R)) composed of these higher-order nodes, and a difference tree used for covering A twelfth step in which a variable S for storing a set of
A thirteenth step of selecting nodes v 1 , v 2 ,..., V k such that all of them and their sibling nodes are said leaf nodes;
When node v 1, v 2, ···, v branching factor n p in the parent node of the k is a predetermined value k, 14 to remove a node v 1, v 2, ···, the v k from T And the steps
when k <n p, from among the nodes that are on top of the node, looking for the lowest node with the brother of the node, which together with a v a, all of the nodes in the lower v a from T A fifteenth step to delete;
A sixteenth step of repeatedly executing the thirteenth through fifteenth steps until T becomes a single leaf node;
The program according to claim 3, further comprising:
JP2007278081A 2007-10-25 2007-10-25 Sd method corresponding to optional tree structure, and program Pending JP2009105853A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007278081A JP2009105853A (en) 2007-10-25 2007-10-25 Sd method corresponding to optional tree structure, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007278081A JP2009105853A (en) 2007-10-25 2007-10-25 Sd method corresponding to optional tree structure, and program

Publications (1)

Publication Number Publication Date
JP2009105853A true JP2009105853A (en) 2009-05-14

Family

ID=40707083

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007278081A Pending JP2009105853A (en) 2007-10-25 2007-10-25 Sd method corresponding to optional tree structure, and program

Country Status (1)

Country Link
JP (1) JP2009105853A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009284220A (en) * 2008-05-22 2009-12-03 Kddi Corp Ternary sd method and program
US11966055B2 (en) 2018-07-19 2024-04-23 Magic Leap, Inc. Content interaction driven by eye metrics

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004520743A (en) * 2001-01-26 2004-07-08 インターナショナル・ビジネス・マシーンズ・コーポレーション Broadcast encryption and stateless receiver key revocation method
JP2006013790A (en) * 2004-06-24 2006-01-12 Internatl Business Mach Corp <Ibm> Encryption communication system for distributing message selectively to multiple decoding devices, encryption apparatus, decoding apparatus, encryption method, decoding method, encryption program and decoding program
JP2007189597A (en) * 2006-01-16 2007-07-26 Univ Of Electro-Communications Encryption device, encryption method, decoding device, and decoding method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004520743A (en) * 2001-01-26 2004-07-08 インターナショナル・ビジネス・マシーンズ・コーポレーション Broadcast encryption and stateless receiver key revocation method
JP2006013790A (en) * 2004-06-24 2006-01-12 Internatl Business Mach Corp <Ibm> Encryption communication system for distributing message selectively to multiple decoding devices, encryption apparatus, decoding apparatus, encryption method, decoding method, encryption program and decoding program
JP2007189597A (en) * 2006-01-16 2007-07-26 Univ Of Electro-Communications Encryption device, encryption method, decoding device, and decoding method

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
CSNJ200810002154; 福島和英,清本晋作,田中俊昭: '"Subset Difference Methodのn分木への拡張"' 電子情報通信学会2007年基礎・境界ソサイエティ大会講演論文集 A-7-3, 20070829, p.154, 社団法人電子情報通信学会 *
JPN6012038867; 福島和英,清本晋作,田中俊昭: '"Subset Difference Methodのn分木への拡張"' 電子情報通信学会2007年基礎・境界ソサイエティ大会講演論文集 A-7-3, 20070829, p.154, 社団法人電子情報通信学会 *
JPN7012004464; 菊池浩明,酒田晋吾: '"ユーザの秘密鍵サイズを削減したSD法"' 2004年暗号と情報セキュリティシンポジウム(SCIS2004)予稿集CS-ROM 1C4 ディジタルコンテンツ保護I, 20040127, 1C4-6 *
JPN7012004465; 福島和英,清本晋作,田中俊昭,櫻井幸一: '"n分木型拡張Subset Difference法の提案と解析"' コンピュータセキュリティシンポジウム 2007 (CSS2007) Vol.2007,No.10, 20071031, セッション1D DRM, 社団法人情報処理学会 *
JPN7012004466; 奥秋清次,清武康平,太田和夫,國廣昇: '"Binary Tree Encryptionを用いた同報通信暗号"' 2006年暗号と情報セキュリティシンポジウム 2A2 公開鍵暗号(1), 20060117, 2A2-4, 2006年暗号と情報セキュリティシンポジウム実行委 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009284220A (en) * 2008-05-22 2009-12-03 Kddi Corp Ternary sd method and program
US11966055B2 (en) 2018-07-19 2024-04-23 Magic Leap, Inc. Content interaction driven by eye metrics

Similar Documents

Publication Publication Date Title
US9015850B2 (en) Detecting and revoking pirate redistribution of content
US8411865B2 (en) Key management method for broadcast encryption in tree topology network
Katsumata et al. Lattice-based revocable (hierarchical) IBE with decryption key exposure resistance
JP4984827B2 (en) KEY GENERATION DEVICE, ENCRYPTION DEVICE, RECEPTION DEVICE, KEY GENERATION METHOD, ENCRYPTION METHOD, KEY PROCESSING METHOD, AND PROGRAM
US20090028330A1 (en) Encrypted communication for selectively delivering a message to multiple decrypting devices
Jin et al. A secure and lightweight data access control scheme for mobile cloud computing
KR20080030344A (en) Method and apparatus for broadcast encryption using bilinear map
JP2005286959A (en) Information processing method, decoding processing method, information processor and computer program
JP6468567B2 (en) Key exchange method, key exchange system
Vijayakumar et al. An effective key distribution for secure internet pay‐TV using access key hierarchies
JP4632413B2 (en) Information encryption device, information distribution device, control method therefor, computer program, and computer-readable storage medium
CN104168320B (en) The method and system that a kind of user data is shared
US8054973B2 (en) User key management method for broadcast encryption (BE)
WO2017126571A1 (en) Ciphertext management method, ciphertext management device, and program
KR20090127716A (en) Method of tracing device keys for broadcast encryption
CN112787822B (en) SM 9-based attribute encryption method and system under large attribute set
JP4432350B2 (en) Data processing method, program thereof, device thereof and receiving device
JP4891933B2 (en) Access control device, access control method and program
JP2009105853A (en) Sd method corresponding to optional tree structure, and program
JP5150175B2 (en) Client terminal covering method and program in SD method
US7860255B2 (en) Content distribution server, key assignment method, content output apparatus, and key issuing center
JP2009038416A (en) Multicast communication system, and group key management server
JP2007189597A (en) Encryption device, encryption method, decoding device, and decoding method
CN114938274A (en) Hierarchical key management and data security distribution method and system
JP2009284220A (en) Ternary sd method and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121106

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130312