JP2005123678A - Information processing apparatus, information recording medium and information processing method, and computer program - Google Patents

Information processing apparatus, information recording medium and information processing method, and computer program Download PDF

Info

Publication number
JP2005123678A
JP2005123678A JP2003353310A JP2003353310A JP2005123678A JP 2005123678 A JP2005123678 A JP 2005123678A JP 2003353310 A JP2003353310 A JP 2003353310A JP 2003353310 A JP2003353310 A JP 2003353310A JP 2005123678 A JP2005123678 A JP 2005123678A
Authority
JP
Japan
Prior art keywords
key
ciphertext
information processing
node
decryption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2003353310A
Other languages
Japanese (ja)
Other versions
JP4561074B2 (en
Inventor
Tomoyuki Asano
智之 浅野
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 JP2003353310A priority Critical patent/JP4561074B2/en
Publication of JP2005123678A publication Critical patent/JP2005123678A/en
Application granted granted Critical
Publication of JP4561074B2 publication Critical patent/JP4561074B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To construct an encrypted text providing structure that is built up by adopting a combination of an n-multi linear map and a hierarchical tree configuration and can attain efficient processing. <P>SOLUTION: In the hierarchical tree configuration configured to interconnect a root acting like an apex node and leaves being lowermost nodes, an information processing apparatus whose decryption of an encrypted text is permitted is selected among a plurality of information processing apparatuses corresponding to the leaves. In the production processing for the encrypted text decryptable on the basis of only a stored key of the selected encrypted text decryption permitting apparatus, an encryption key is produced by adopting the n-multi linear map (wherein: n is an integer of 2 or over) and a decryptable encrypted text on the basis of only the stored key of the selected encrypted text decryption permitting apparatus is produced and provided. Through the configuration above, the computing volume for reception and decryption processing of the encrypted text can be reduced and the efficient processing can be realized. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、マルチリニアマップ(multilinear map)に階層型木構造を組み合わせた暗号文配信構成を構築することにより、効率的な暗号文送受信および解析を可能とし、生成する暗号文の削減、暗号文を受領し復号するユーザデバイス、受信機等の情報処理装置における計算量の削減を実現する情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムに関する。   The present invention relates to an information processing apparatus, an information recording medium, an information processing method, and a computer program. More specifically, by constructing a ciphertext distribution configuration that combines a multi-linear map with a hierarchical tree structure, efficient ciphertext transmission / reception and analysis are possible, and the generation of ciphertext can be reduced. The present invention relates to an information processing apparatus, an information recording medium, an information processing method, and a computer program that realize a reduction in calculation amount in an information processing apparatus such as a user device and a receiver that receive and decrypt ciphertext.

昨今、音楽等のオーディオデータ、映画等の画像データ、ゲームプログラム、各種アプリケーションプログラム等、様々なソフトウエアデータ(以下、これらをコンテンツ(Content)と呼ぶ)が、インターネット等のネットワークを介して、あるいはCD(Compact Disc)、DVD(Digital Versatile Disk)、MD(Mini Disk)等の情報記録媒体(メディア)を介して流通している。これらの流通コンテンツは、ユーザの所有するPC(Personal Computer)、CDプレーヤ、DVDプレーヤ、MDプレーヤ等の再生装置、あるいはゲーム機器等の様々な情報処理装置において再生され利用される。   Recently, various software data (hereinafter referred to as content) such as audio data such as music, image data such as movies, game programs, various application programs, etc. are transmitted via a network such as the Internet or It is distributed through information recording media (media) such as CD (Compact Disc), DVD (Digital Versatile Disk), MD (Mini Disk). These distributed contents are played back and used in playback devices such as PCs (Personal Computers), CD players, DVD players, and MD players owned by users, or various information processing devices such as game machines.

音楽データ、画像データ等、多くのコンテンツは、一般的にその作成者あるいは販売者に頒布権等が保有されている。従って、これらのコンテンツの配布に際しては、一定の利用制限、すなわち、正規なユーザに対してのみ、コンテンツの利用を許諾し、許可のない複製等が行われないようにする構成をとるのが一般的となっている。   Many contents, such as music data and image data, generally have distribution rights or the like held by the creator or seller. Therefore, when distributing these contents, it is common to adopt a configuration that restricts the use of the contents, that is, permits the use of the contents only to authorized users and prevents unauthorized copying or the like. It is the target.

特に、近年においては、情報をデジタル的に記録する記録装置や記憶媒体が普及しつつある。このようなデジタル記録装置および記憶媒体によれば、例えば画像や音声を劣化させることなく記録、再生を繰り返すことが可能であり、不正コピーコンテンツのインターネットを介した配信や、CD−R等の記録媒体に対する不正コピーという問題が発生している。   In particular, in recent years, recording devices and storage media for digitally recording information are becoming widespread. According to such a digital recording apparatus and storage medium, for example, recording and reproduction can be repeated without degrading images and sound, distribution of illegally copied content via the Internet, recording of CD-R, etc. There is a problem of unauthorized copying of media.

このようなコンテンツの不正利用を防止する1つの方式として、コンテンツあるいは暗号化コンテンツを復号するための鍵を暗号化して提供するシステムがある。例えばブロードキャスト・エンクリプション(Broadcast Encryption)方式の一態様である階層型木構造を適用した暗号化データ提供構成は、提供する暗号化データに含まれる暗号文の設定を適宜変更することで、特定の選択された正規ユーザまたは正規デバイスのみにおいて復号可能な暗号文の提供を行うシステムである。   As one method for preventing such unauthorized use of content, there is a system that provides an encrypted key for decrypting content or encrypted content. For example, an encrypted data providing configuration to which a hierarchical tree structure, which is an aspect of the broadcast encryption method, is applied, by appropriately changing the setting of the ciphertext included in the provided encrypted data. This is a system that provides ciphertext that can be decrypted only by a selected authorized user or authorized device.

階層型木構造を適用した暗号鍵等の暗号データ提供処理について、図を参照して説明する。   A process for providing encrypted data such as an encryption key to which a hierarchical tree structure is applied will be described with reference to the drawings.

図1に示す階層型木構造は2分木を用いており、その最下層が葉(リーフ)と呼ばれ、頂点、各分岐部およびリーフを含む部分をノードと称する。なお、頂点をルート、あるいはルートノードと呼ぶ。図1に示す2分木階層型木構造において、リーフは8〜15、ノードは1〜15、ルートは1である。   The hierarchical tree structure shown in FIG. 1 uses a binary tree, the lowest layer of which is called a leaf, and a portion including a vertex, each branching portion, and a leaf is called a node. The vertex is called a root or a root node. In the binary tree hierarchical tree structure shown in FIG. 1, the leaves are 8 to 15, the nodes are 1 to 15, and the root is 1.

この2分木階層型木構造におけるリーフ8〜15にコンテンツの利用機器としての再生機、受信機等の情報処理装置を1つずつ割り当てる。   Information processing devices such as a playback device and a receiver as content use devices are assigned to the leaves 8 to 15 in the binary tree hierarchical tree structure one by one.

また、木の各ノード(リーフを含む)1〜15にそれぞれノードキーを1つずつ割り当てる。リーフ8〜15に割り当てるノードキーはリーフキーと呼ばれる場合もある。   One node key is assigned to each node (including leaves) 1 to 15 of the tree. Node keys assigned to the leaves 8 to 15 may be called leaf keys.

リーフに対応する各情報処理装置には、対応するリーフからルートまでの経路にあるノードに割り当てられたノードキーが与えられる。図1の構成では、リーフ8から15までに割り当てられた8台の情報処理装置があり、ノード1から15までにそれぞれノードキーが割り当てられており、リーフ8に対応する情報処理装置101には、ノード1,2,4,8に割り当てられた4個のノードキーが与えられる。また、リーフ12に対応する情報処理装置102には、ノード1,3,6,12に割り当てられた4個のノードキーが与えられる。核情報処理装置は、これらのノードキーを安全に保管する。   Each information processing apparatus corresponding to a leaf is given a node key assigned to a node on the path from the corresponding leaf to the root. In the configuration of FIG. 1, there are eight information processing devices assigned to the leaves 8 to 15, and node keys are assigned to the nodes 1 to 15, respectively. Four node keys assigned to the nodes 1, 2, 4 and 8 are given. The information processing apparatus 102 corresponding to the leaf 12 is given four node keys assigned to the nodes 1, 3, 6, and 12. The nuclear information processing apparatus securely stores these node keys.

このノードキーの配布処理を伴うセッティングを用いて、選択した情報処理装置のみが取得可能な情報を送信する方法を図2を参照して説明する。たとえば、特定の音楽、画像データ等のコンテンツの暗号化データをブロードキャスト配信、あるいはDVD等の記録媒体に格納して誰でも取得可能な状態で流通させ、その暗号化コンテンツを復号するための鍵(コンテンツキー:Kc)を特定のユーザ、すなわち正規なコンテンツ利用権を持つユーザまたは情報処理装置のみにおいて取得可能とする構成を実現する。   A method of transmitting information that can be acquired only by the selected information processing apparatus using the setting accompanying the node key distribution process will be described with reference to FIG. For example, encrypted data of content such as specific music and image data is broadcasted, or stored in a recording medium such as a DVD and distributed in a state where anyone can obtain it, and a key for decrypting the encrypted content ( A configuration is realized in which the content key: Kc) can be acquired only by a specific user, that is, a user having a regular content usage right or an information processing apparatus.

図2に示すリーフ14に割り当てられた情報処理装置を不正な機器として、排除(リボーク)し、それ以外の情報処理装置が正規な情報処理装置であるとする。この場合、リーフ14に割り当てられた情報処理装置ではコンテンツキーKcを取得できないが、他の情報処理装置ではコンテンツキーKcを取得できる暗号文を生成して、その暗号文をネットワークを介してあるいは記録媒体に格納して配布する。   It is assumed that the information processing apparatus assigned to the leaf 14 shown in FIG. 2 is excluded (revoked) as an unauthorized device, and other information processing apparatuses are legitimate information processing apparatuses. In this case, the information processing device assigned to the leaf 14 cannot acquire the content key Kc, but other information processing devices generate a ciphertext that can acquire the content key Kc and record the ciphertext via the network or Store and distribute on media.

この場合、リボーク(排除)される情報処理装置が持つノードキー(図2では×印で表現)以外のノードキーのうち、できるだけ多数の情報処理装置に共有されているもの、すなわち木の上部にあるものをいくつか用いて、コンテンツキーを暗号化して送信すればよい。   In this case, among the node keys other than the node key (represented by x in FIG. 2) of the information processing device to be revoked (excluded), the key shared by as many information processing devices as possible, that is, the one located above the tree It is only necessary to encrypt the content key and transmit it using

図2に示す例では、ノード2,6,15のノードキーを用いて、コンテンツキーKcを暗号化した暗号文のセットを生成して提供する。すなわち、
E(NK,Kc),E(NK,Kc),E(NK15,Kc)
の暗号文を生成して、ネットワーク配信あるいは記録媒体に格納して提供する。なお、E(A,B)はデータBを鍵Aで暗号化したデータを意味する。またNKは、図に示す第n番のノードキーを意味する。従って、上記式は、
コンテンツキーKcをノードキーNKで暗号化した暗号化データE(NK,Kc)と、コンテンツキーKcをノードキーNKで暗号化した暗号化データE(NK,Kc)と、コンテンツキーKcをノードキーNK15で暗号化した暗号化データE(NK15,Kc)と、を含む3つの暗号文のセットであることを意味している。
In the example shown in FIG. 2, a set of ciphertexts in which the content key Kc is encrypted is generated and provided using the node keys of the nodes 2, 6, and 15. That is,
E (NK 2 , Kc), E (NK 6 , Kc), E (NK 15 , Kc)
Is generated and stored in a network distribution or recording medium. E (A, B) means data obtained by encrypting data B with the key A. NK n means the n-th node key shown in the figure. Therefore, the above formula is
The encrypted data E (NK 2 , Kc) obtained by encrypting the content key Kc with the node key NK 2 , the encrypted data E (NK 6 , Kc) obtained by encrypting the content key Kc with the node key NK 6 , and the content key Kc This means that it is a set of three ciphertexts including encrypted data E (NK 15 , Kc) encrypted with the node key NK 15 .

上記3つの暗号文を作り、例えば同報通信路を用いて全情報処理装置に送信すれば、リボーク対象でない情報処理装置(図2示すリーフ8〜13および15に対応する情報処理装置)はいずれかの暗号文を自分が持つノードキーで復号することが可能であり、コンテンツキーKcを得ることができる。しかし、リボーク(排除)されたリーフ14に対応する情報処理装置は、上記の3つの暗号文に適用された3つのノードキーNK、NK、NK15のいずれも保有していないので、この暗号文を受領しても、復号処理を行うことができずコンテンツキーKcを得ることはできない。 If the above three ciphertexts are created and transmitted to all information processing devices using, for example, a broadcast channel, any information processing device that is not a revoke target (information processing device corresponding to leaves 8 to 13 and 15 shown in FIG. 2) Such a ciphertext can be decrypted with the node key that it has, and the content key Kc can be obtained. However, the information processing apparatus corresponding to the revoked leaf 14 does not have any of the three node keys NK 2 , NK 6 , and NK 15 applied to the above three ciphertexts. Even if the sentence is received, the decryption process cannot be performed and the content key Kc cannot be obtained.

上述した処理においては、3つの暗号文E(NK,Kc),E(NK,Kc),E(NK15,Kc)が各情報処理装置に提供されることになる。リボークされていない各情報処理装置は、自分がどの暗号文を復号できるのかを調べ、その復号可能な暗号文を選択して復号処理を行う。上述の例では3つの暗号文の設定であるが、実際には、情報処理装置の数は膨大な数となり、情報処理装置に提供される暗号文の数も大量となる。従って、暗号文の先頭から順次、復号処理を繰り返し実行してみるといった処理は負担が大きくなる。 In the processing described above, three ciphertexts E (NK 2 , Kc), E (NK 6 , Kc), and E (NK 15 , Kc) are provided to each information processing apparatus. Each information processing apparatus that has not been revoked checks which ciphertext can be decrypted by itself, selects the ciphertext that can be decrypted, and performs decryption processing. In the above example, three ciphertexts are set. However, in practice, the number of information processing apparatuses is enormous, and the number of ciphertexts provided to the information processing apparatuses is also large. Therefore, the processing of repeatedly executing the decryption process sequentially from the beginning of the ciphertext increases the burden.

このため、暗号文の提供時に、各情報処理装置が選択すべき暗号文を知ることが可能な鍵指定コードを暗号文とともに各情報処理装置に提供する構成が提案されている。この構成については、例えば特許文献1に詳細が記述されている。   For this reason, a configuration has been proposed in which, when ciphertext is provided, a key designation code capable of knowing the ciphertext to be selected by each information processing apparatus is provided to each information processing apparatus together with the ciphertext. Details of this configuration are described in Patent Document 1, for example.

鍵指定コードを暗号文とともに各情報処理装置に提供する構成について、図3を参照して説明する。図3に示すように、暗号化に用いられたノードキーを木構造を用いて表し、その構造をコード化して鍵指定コードを作り、これを暗号文ブロックとともに同報送信する。情報処理装置は鍵指定コードを受領し、受領した鍵指定コードを解析することで自分がどの暗号文をどのノードキーを用いて復号すればよいかを知り、効率的に復号処理を行うことが可能となる。   A configuration in which the key designation code is provided to each information processing apparatus together with the ciphertext will be described with reference to FIG. As shown in FIG. 3, the node key used for encryption is represented using a tree structure, and the structure is encoded to create a key designation code, which is broadcasted together with a ciphertext block. The information processing device receives the key designation code and analyzes the received key designation code to know which ciphertext should be decrypted using which node key and can efficiently perform decryption processing. It becomes.

鍵指定コードについて、説明する。図3は、先の図2と同様、リボーク(排除)機器をリーフ14に対応する情報処理装置として、3つの暗号文、
E(NK,Kc),E(NK,Kc),E(NK15,Kc)
を送信する場合の例を示している。
The key designation code will be described. FIG. 3 shows three ciphertexts as an information processing device corresponding to the leaf 14, as in FIG. 2.
E (NK 2 , Kc), E (NK 6 , Kc), E (NK 15 , Kc)
The example in the case of transmitting is shown.

まず、図3において、太線で示した部分木は、暗号化に用いられたノードキーが割り当てられたすべてのノード121,122,123をリーフとし、もとの木構造のルート120をルートとする木であり、これを鍵指定木と呼ぶ。   First, in FIG. 3, the subtree indicated by the thick line is a tree in which all nodes 121, 122, and 123 to which the node key used for encryption is assigned are leaves, and the root 120 of the original tree structure is the root. This is called a key designation tree.

鍵指定木の構造をデータで示すため、各ノードから、左右に枝が出ているかどうかを表す情報を設定する。   In order to indicate the structure of the key designation tree with data, information indicating whether or not branches are left and right is set from each node.

1つのノードにつき2ビットの情報(鍵指定情報)[00][01][10][11]のいずれかを用いて表現する。すなわち、あるノードにつけられた鍵指定情報の最初(左側)のビットが[1]ならばそのノードから左に枝が出ている(鍵指定木に左側の子ノードが存在する)ことを示し、[0]ならばそのノードから左に枝は出ていない(左側の子ノードは存在しない)ことを示す。鍵指定情報の最後(右側)は、同様に右側の枝の情報を表す。   Each node is expressed using one of 2-bit information (key designation information) [00] [01] [10] [11]. That is, if the first (left side) bit of the key designation information attached to a certain node is [1], it indicates that there is a branch left from that node (the left side child node exists in the key designation tree), [0] indicates that there is no branch left from that node (the left child node does not exist). Similarly, the last (right side) of the key designation information represents the right branch information.

すなわち、あるノードの鍵指定情報ビットが[11]であればそのノードから両側に枝が出ていることを示し、[01]であれば左側のみに、[10]であれば右側のみに枝が出ていることを示す。また[00]は枝はいずれも出ておらず、そのノードが鍵指定木のリーフであることを示す。   That is, if the key designation information bit of a certain node is [11], it indicates that a branch has come out from both sides of the node. If [01], the branch is only on the left side. Indicates that the [00] indicates that no branch has come out, and that the node is a leaf of the key designation tree.

すなわち、各ノードにおいて、左右に鍵指定木の枝があるか否かを2ビットの情報で示し、枝がある場合を[1]ない場合を[0]として、
左右とも枝ありの場合:[11]
左にのみ枝ありの場合:[10]
右にのみ枝ありの場合:[01]
左右に枝なしの場合 :[00]
として鍵指定情報ビットを設定する。
That is, in each node, whether or not there is a branch of the key designation tree on the left and right is indicated by 2-bit information.
If both left and right branches: [11]
When there is a branch only on the left: [10]
When there is a branch only on the right: [01]
When there are no branches on the left and right: [00]
Set the key designation information bit.

この鍵指定情報ビットを鍵指定木の上位層から順に、かつ同層については左から順に並べて、鍵指定コードを設定する。図3に示す構成の場合、鍵指定木は、ノードNo.1,2,3,6,7,15によって構成されているので、これらの各ノードの鍵指定情報ビットを順に並べたデータ、すなわち、
[110011000100]
が、鍵指定コードとして設定される。
The key designation code is set by arranging the key designation information bits in order from the upper layer of the key designation tree and from the left in the same layer. In the case of the configuration shown in FIG. 1, 2, 3, 6, 7 and 15, so that data in which the key designation information bits of each of these nodes are arranged in order, that is,
[110011000100]
Is set as the key designation code.

複数の暗号文からなる暗号文ブロックと、上記の鍵指定コードを受領したユーザデバイスとしての情報処理装置は、鍵指定コードに基づいて、鍵指定木を再構築し、自装置に格納したノードキーによって復号可能な暗号文を選択し、選択した暗号文を複合してコンテンツキーを取得し、取得したコンテンツキーで暗号化されたコンテンツを復号してコンテンツの利用を行なうことが可能となる。   The information processing apparatus as the user device that has received the ciphertext block composed of a plurality of ciphertexts and the above key designation code reconstructs the key designation tree based on the key designation code, and uses the node key stored in the own apparatus. It becomes possible to select a ciphertext that can be decrypted, obtain a content key by combining the selected ciphertext, decrypt the content encrypted with the obtained content key, and use the content.

このように同報通信路を用いて、暗号文の提供者としての送信機(送信者)が任意に選択した暗号文の受領者、すなわち受信機(受信者)のグループに安全にコンテンツキーなどの秘密情報を送信する手法は、一般的にリボケーションスキーム(revocation scheme)や、ブロードキャスト・エンクリプション(broadcast encryption scheme)と呼ばれる。   In this way, using a broadcast channel, a content key, etc. can be securely sent to a recipient of a ciphertext arbitrarily selected by a transmitter (sender) as a ciphertext provider, that is, a group of receivers (receivers). The secret information transmission method is generally called a revocation scheme or a broadcast encryption scheme.

リボケーションスキームや、ブロードキャスト・エンクリプションを実現する各方式の効率を評価する主要項目として、
(1)暗号文を受領して処理を行なうユーザデバイス、受信機等の情報処理装置が安全に保管しなければならない鍵の数(サイズ)
(2)同報通信されるメッセージの数(サイズ)、
(3)暗号文を受領して処理を行なうユーザデバイス、受信機等の情報処理装置が必要とする計算量
の3つの評価項目がある。
As a main item to evaluate the efficiency of each scheme that realizes revocation schemes and broadcast encryption,
(1) Number of keys (size) that information devices such as user devices and receivers that receive and process ciphertext must securely store
(2) Number of broadcast messages (size),
(3) There are three evaluation items for the amount of calculation required by information processing devices such as user devices and receivers that receive and process ciphertexts.

上記の3つの評価項目のすべてを小さくする方式、あるいは少なくとも上記項目中の1つまたは2つを小さくする方式が、より優れた方式であるとされるが、これまでに公知となっている各方式では、総受信機数Nや、暗号文の復号許容受信機以外の排除受信機(リボーク受信機)数rに依存していずれかの評価項目が大きくなってしまうという問題があった。   A method of reducing all of the above three evaluation items, or a method of reducing at least one or two of the above items is considered to be a better method. In the system, there is a problem that one of the evaluation items becomes large depending on the total number N of receivers or the number r of excluded receivers (revoke receivers) other than the ciphertext decryption allowable receiver.

これまでに公知となっている方式のうち、非特許文献1に記載された方式では、Diffie−Hellman inversion assumptionを満たす暗号学的なnマルチリニアマップ(n−multilinear map)が存在するという仮定のもとで、上記の(1)と(2)の評価項目をともに定数とするようなブロードキャスト・エンクリプション方式が提案されている。なお、マルチリニアマップ(n−multilinear map)については、本明細書の[発明を実施するための最良の形態]中において詳細を説明する。   Among the methods known so far, in the method described in Non-Patent Document 1, it is assumed that there is a cryptographic n-multilinear map that satisfies the Diffie-Hellman inversion assumption. Basically, a broadcast encryption method has been proposed in which the evaluation items (1) and (2) are both constants. The details of the multi-linear map (n-multilinear map) will be described in [Best Mode for Carrying Out the Invention] of this specification.

しかしながら、この方式では上記評価項目中の(3)の受信機が必要とする計算量が、総受信者数であるNに比例するものとなってしまう。このため、この計算量を小さくする方式の開発が課題となっている。
特開2001−352322号公報 D.Boneh and A.Silverberg著の論文"Applications of Multilinear Forms to Cryptography"(この論文は、国際暗号研究協会が管理しているウェブサイトのテクニカルレポートとしてhttp://eprint.iacr.org/2002/080/に掲載されているとともに、著者の一人であるProf.Bonehが管理するウェブサイトにhttp://crypto.stanford.edu/~dabo./papers/mlinear.pdfとして掲載されている)
However, in this method, the amount of calculation required by the receiver (3) in the evaluation items is proportional to N which is the total number of recipients. For this reason, the development of a method for reducing the amount of calculation is an issue.
JP 2001-352322 A D. Boneh and A.M. Silverberg's paper "Applications of Multiformal Forms to Cryptography" (This paper was published in http://eprint.iacr.org/2002/080/ as a technical report of a website managed by the International Association for Cryptographic Research. And is listed on the website managed by Prof. Boneh, one of the authors, as http://crypto.stanford.edu/~dabo./papers/mlearear.pdf)

本発明は、このような状況に鑑みてなされたものであり、以下の実施例中において詳細を説明するDiffie−Hellman inversion assumption、またはgeneralized Diffie−Hellman assumptionを満たすマルチリニアマップ(multilinear map)が存在するという前提の下で、マルチリニアマップ(multilinear map)に階層型木構造を組み合わせた暗号文配信構成を構築することにより、効率的な暗号文送受信および解析を可能とし、生成する暗号文の削減、暗号文を受領し復号するユーザデバイス、受信機等の情報処理装置における計算量の削減を実現したものである。   The present invention has been made in view of such circumstances, and there is a multi-linear map that satisfies Diffie-Hellman inversion assumption or generalized Diffie-Hellman assumption described in detail in the following examples. Based on the premise that the ciphertext is distributed, a ciphertext distribution configuration that combines a multi-linear map with a hierarchical tree structure enables efficient ciphertext transmission / reception and analysis, and reduces the amount of ciphertext that is generated. This realizes a reduction in calculation amount in an information processing apparatus such as a user device or a receiver that receives and decrypts ciphertext.

上記論文(非特許文献1)に記載の方式を適用した構成において計算量が大きいのは、必要とするマルチリニアマップがNリニアマップ(Nは総受信機数)であるためである。本発明は、階層木構造を用いることによりこれを大幅に減少させることを可能とした情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムを提供することを目的とする。   The reason why the calculation amount is large in the configuration to which the method described in the above paper (Non-Patent Document 1) is applied is that the required multi-linear map is an N linear map (N is the total number of receivers). It is an object of the present invention to provide an information processing apparatus, an information recording medium, an information processing method, and a computer program that can greatly reduce the use of a hierarchical tree structure.

本発明の第1の側面は、
暗号文生成処理を実行する情報処理装置であり、
頂点ノードとしてのルートと、最下位ノードであるリーフを連結した構成を持つ階層木構成において、前記リーフに対応する複数の情報処理装置から暗号文の復号を許容する情報処理装置を選択し、選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号処理部を有し、
前記暗号処理部は、
nマルチリニアマップ(ただし、nは2以上の整数)を適用して暗号鍵を生成するとともに、生成した暗号鍵によって前記暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する構成であることを特徴とする情報処理装置にある。
The first aspect of the present invention is:
An information processing apparatus that executes ciphertext generation processing,
In a hierarchical tree configuration having a configuration in which a root as a vertex node and a leaf that is the lowest node are connected, an information processing device that allows decryption of ciphertext is selected from a plurality of information processing devices corresponding to the leaf, and is selected. A cipher processing unit that executes a process for generating a ciphertext that can be decrypted based only on the storage key of the ciphertext decryption-permitted device.
The cryptographic processing unit
Generate an encryption key by applying an n multi-linear map (where n is an integer equal to or greater than 2), and generate a ciphertext that can be decrypted based on only the storage key of the ciphertext decryption permitted device using the generated encryption key An information processing apparatus is characterized by being configured to execute processing.

さらに、本発明の情報処理装置の一実施態様において、前記リーフに対応する複数の情報処理装置の各々は、前記ルートから自リーフに至るパス上のノードに対応するノードキーを有し、前記暗号処理部は、前記暗号文復号許容機器の格納ノードキーにおいてのみ復号可能な暗号文の生成処理を実行する構成であることを特徴とする。   Furthermore, in an embodiment of the information processing apparatus of the present invention, each of the plurality of information processing apparatuses corresponding to the leaf has a node key corresponding to a node on a path from the root to the own leaf, and the cryptographic process The unit is configured to execute a process for generating a ciphertext that can be decrypted only in a storage node key of the ciphertext decryption-permitted device.

さらに、本発明の情報処理装置の一実施態様において、前記暗号処理部は、前記nマルチリニアマップを適用して生成する鍵として、下記定義、
Ks=(Φ,・・・Φα∈G
に基づくセッションキーKsを生成する構成である、
ただし、Gは、Diffie−Hellman inversion assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
αは、α∈[1,p−1],ただし、pはGの位数、
Φは、下記の処理により定められる値、
(1)カウンタjを用意し、j=1とセットする、
(2)カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる、
(2a)もしi∈Kならば、Φ=gとセットし、jを1増やして次のiの処理に移る、
(3)もしj≦nならば、j≦nの間、下記の処理を繰り返す、
(3a)Φ=gとセットし、jを1増やす、
ただし、Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
nは、nマルチリニアマップの規定数nであり2以上の整数、
Kは、前記階層木構成において、暗号文復号許容機器のみを選択して設定される部分木ルート集合であり、
は、ノードiの公開値でありg∈Gを満たす、
gはGの生成元、
であることを特徴とする。
Furthermore, in one embodiment of the information processing apparatus of the present invention, the encryption processing unit defines the following definition as a key generated by applying the n multi-linear map:
Ks = (Φ 1 , ... Φ n ) α ∈ G 2
Is a configuration for generating a session key Ks based on
However, G 2 is, Diffie-Hellman inversion assumption satisfying n multilinear map e: a group defines a G 1 nG 2,
α is α∈ [1, p−1], where p is the order of G 1 ,
Φ j is a value determined by the following process,
(1) Prepare a counter j and set j = 1.
(2) A counter i is prepared, and i is incremented by 1 from 1 to 2N−1 while performing the following processing.
(2a) If i∈K, set Φ j = g i , increase j by 1 and move to the next processing of i.
(3) If j ≦ n, repeat the following process while j ≦ n.
(3a) Set Φ j = g and increase j by 1.
Where N is the total number of information processing devices corresponding to the leafs that are the lowest nodes in the hierarchical tree structure,
n is the specified number n of the n multi-linear map and is an integer greater than or equal to 2,
K is a subtree root set that is set by selecting only the ciphertext decryption permitted device in the hierarchical tree configuration,
g i is the public value of node i and satisfies g i ∈G 1 ,
g is the generator of G 1
It is characterized by being.

さらに、本発明の情報処理装置の一実施態様において、前記暗号処理部は、前記nマルチリニアマップを適用して生成する鍵として、下記定義、

Figure 2005123678
に基づくセッションキーKsを生成する構成である、
ただし、Gは、generalized Diffie−Hellman assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
gは、群Gの生成元であり、
は、階層木構成における各構成ノードiに設定されるノードキーであり、h=gxiが公開値として設定される、
ことを特徴とする。 Furthermore, in one embodiment of the information processing apparatus of the present invention, the encryption processing unit defines the following definition as a key generated by applying the n multi-linear map:
Figure 2005123678
Is a configuration for generating a session key Ks based on
However, G 2 is, generalized Diffie-Hellman satisfy assumption n multilinear map e: a group defines a G 1 nG 2,
g is the generator of group G 1 and
x i is a node key set for each configuration node i in the hierarchical tree configuration, and h i = g xi is set as a public value.
It is characterized by that.

さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、前記暗号鍵の生成処理に適用するnマルチリニアマップの規定数nを、
Diffie−Hellman inversion assumptionを満たすnマルチリニアマップを用いる場合、

Figure 2005123678
として設定し、
generalized Diffie−Hellman assumptionを満たすnマルチリニアマップを用いる場合、
Figure 2005123678
として設定する構成、
ただし、
Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
rは、前記暗号文復号許容機器以外のリボーク(排除)機器数、
Figure 2005123678
は、rlog(N/r)以下の最大の整数、
であることを特徴とする。 Furthermore, in an embodiment of the information processing apparatus of the present invention, the information processing apparatus uses a specified number n of n multi-linear maps to be applied to the encryption key generation process,
When using an n multi-linear map that satisfies Diffie-Hellman inversion assumption,
Figure 2005123678
Set as
When using an n multi-linear map that satisfies the generalized Diffie-Hellman assumption,
Figure 2005123678
Configuration to set as
However,
N is the total number of information processing devices corresponding to the leaves that are the lowest nodes in the hierarchical tree structure;
r is the number of revocation (exclusion) devices other than the ciphertext decryption permitted device,
Figure 2005123678
Is the largest integer less than or equal to rlog (N / r),
It is characterized by being.

さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、前記暗号鍵の生成処理に適用するnマルチリニアマップの規定数nを、r≦Nの任意のrに対応可能な数n、すなわちrlog(N/r)の最大値に対応する整数値として設定する構成であることを特徴とする。   Furthermore, in one embodiment of the information processing apparatus of the present invention, the information processing apparatus can handle a predetermined number n of n multi-linear maps applied to the encryption key generation process to any r satisfying r ≦ N. The number n, that is, the configuration is set as an integer value corresponding to the maximum value of rlog (N / r).

さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、前記暗号鍵の生成処理に適用するnマルチリニアマップの規定数nを、リボーク(排除)機器数rについて、その最大値Rを設定し、r≦Rの任意数に対応可能な数n、すなわち、r=Rとしたときのrlog(N/r)の値に対応する整数値として設定する構成であることを特徴とする。   Furthermore, in an embodiment of the information processing apparatus of the present invention, the information processing apparatus sets the maximum number n of n multi-linear maps to be applied to the encryption key generation process for the maximum number of revocation (exclusion) devices r. The value R is set, and is configured to be set as an integer value corresponding to the value n of rlog (N / r) when r = R, which is a number n that can correspond to an arbitrary number r ≦ R. And

さらに、本発明の第2の側面は、
頂点ノードとしてのルートと、最下位ノードであるリーフを連結した構成を持つ階層木構成において、前記リーフに対応して設定された情報処理装置であり、
前記ルートから自リーフに至るパス上のノードに対応するノードキーを格納した記憶部と、
暗号文の復号処理を実行する暗号処理部であり、暗号文の暗号処理鍵であるnマルチリニアマップ(ただし、nは2以上の整数)を適用して生成された暗号鍵の算出処理を、前記ノードキーを適用して実行するとともに、生成した暗号鍵に基づいて暗号文の復号処理を実行する暗号処理部と、
を有することを特徴とする情報処理装置にある。
Furthermore, the second aspect of the present invention provides
In a hierarchical tree configuration having a configuration in which a root as a vertex node and a leaf that is the lowest node are connected, an information processing apparatus set corresponding to the leaf,
A storage unit storing a node key corresponding to a node on a path from the root to the self-leaf;
An encryption processing unit that performs decryption processing of ciphertext, and performs encryption key calculation processing generated by applying an n multi-linear map (where n is an integer of 2 or more) that is an encryption processing key for ciphertext, An encryption processing unit that executes by applying the node key and executes decryption processing of ciphertext based on the generated encryption key;
There is an information processing apparatus characterized by having.

さらに、本発明の情報処理装置の一実施態様において、前記暗号処理部は、下記定義、
Ks=(Φ,・・・Φα∈G
に基づくセッションキーKsによって暗号化された暗号文の復号処理を実行する構成であり、
セッションキーKsの算出処理として、下記処理1〜4、すなわち、
1.カウンタjを用意し、j=1とセットする、
2.カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる、
(a)もしi∈Kならば、iとIが一致するかどうかを調べる、
i.もしi=Iならば、Φ=sとセットし、jを1増やして次のiの処理に移る、
ii.もしi≠Iならば、Φ=gとセットし、jを1増やして次のiの処理に移る、
3.もしj≦nならば、j≦nの間、下記の処理を繰り返す、
(a)Φ=gとセットし、jを1増やす、
4.Ks=(φ,・・・,φ)を求める、
ただし、
は、Diffie−Hellman inversion assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
αは、α∈[1,p−1],ただし、pはGの位数、
Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
nは、nマルチリニアマップの規定数nであり2以上の整数、
Kは、前記階層木構成において、暗号文復号許容機器のみを選択して設定される部分木ルート集合、
は、ノードiのノードキー、
は、ノードiの公開値、
gはGの生成元,
Iは、部分木ルート集合Kに含まれるノード、
上記処理1〜4を実行してセッションキーKsの算出を実行する構成であることを特徴とする。
Furthermore, in one embodiment of the information processing apparatus of the present invention, the encryption processing unit is defined as follows:
Ks = (Φ 1 , ... Φ n ) α ∈ G 2
A process for decrypting ciphertext encrypted by a session key Ks based on
As the process for calculating the session key Ks, the following processes 1 to 4, that is,
1. Prepare counter j and set j = 1.
2. A counter i is prepared and i is incremented by 1 from 1 to 2N-1 while performing the following processing.
(A) If i∈K, check whether i and I match.
i. If i = I, set Φ j = s i , increase j by 1 and move on to the next i.
ii. If i ≠ I, set Φ j = g i , increase j by 1 and move on to the next i processing.
3. If j ≦ n, repeat the following process while j ≦ n.
(A) Set Φ j = g and increase j by 1.
4). Find Ks = (φ 1 ,..., Φ n ),
However,
G 2 is a group that defines an n multi-linear map e: G 1 n → G 2 that satisfies the Diffie-Hellman inversion assumption.
α is α∈ [1, p−1], where p is the order of G 1 ,
N is the total number of information processing devices corresponding to the leaves that are the lowest nodes in the hierarchical tree structure;
n is a specified number n of n multi-linear maps and is an integer of 2 or more,
K is a subtree root set that is set by selecting only ciphertext decryption permitted devices in the hierarchical tree configuration;
s i is the node key of node i,
g i is the public value of node i,
g is the generator of G 1
I is a node included in the subtree root set K,
It is the structure which performs the calculation of the session key Ks by performing the said processes 1-4.

さらに、本発明の情報処理装置の一実施態様において、前記暗号処理部は、下記定義、

Figure 2005123678
に基づくセッションキーKsによって暗号化された暗号文の復号処理を実行する構成であり、
セッションキーKsの算出処理として、下記処理1〜4、すなわち、
1.カウンタj,lを用意し、j=1,l=2Nとセットする、
2.カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる、
(a)もしi∈Kかつi≠IならばΦ=hとセットし、jを1増やして次のiの処理に移る、
3.もしj≦nならばj≦nの間、下記の処理を繰り返す。
(a)Φ=hとセットし、lを1増やし、jを1増やす、
4.セッションキーKsを、
Figure 2005123678
により算出する、
ただし、
は、generalized Diffie−Hellman assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
nは、nマルチリニアマップの規定数nであり2以上の整数、
Kは、前記階層木構成において、暗号文復号許容機器のみを選択して設定される部分木ルート集合、
は、階層木構成における各構成ノードiに設定されるノードキーであり、h=gxiが公開値、
Iは、部分木ルート集合Kに含まれるノード、
gは、群Gの生成元、
上記処理1〜4を実行してセッションキーKsの算出を実行する構成であることを特徴とする。 Furthermore, in one embodiment of the information processing apparatus of the present invention, the encryption processing unit is defined as follows:
Figure 2005123678
A process for decrypting ciphertext encrypted by a session key Ks based on
As the process for calculating the session key Ks, the following processes 1 to 4, that is
1. Prepare counters j and l, and set j = 1 and l = 2N.
2. A counter i is prepared and i is incremented by 1 from 1 to 2N-1 while performing the following processing.
(A) If i∈K and i ≠ I, set Φ j = h i , increase j by 1 and move on to the next processing of i.
3. If j ≦ n, the following processing is repeated while j ≦ n.
(A) Set Φ j = h l , increase 1 by 1 and increase j by 1.
4). Session key Ks
Figure 2005123678
Calculated by
However,
G 2 is a group that defines an n multi-linear map e: G 1 n → G 2 that satisfies a generalized Diffie-Hellman assumption.
N is the total number of information processing devices corresponding to the leaves that are the lowest nodes in the hierarchical tree structure;
n is the specified number n of the n multi-linear map and is an integer greater than or equal to 2,
K is a subtree root set that is set by selecting only ciphertext decryption permitted devices in the hierarchical tree configuration;
x i is a node key set for each configuration node i in the hierarchical tree configuration, and h i = g xi is a public value,
I is a node included in the subtree root set K,
g is the generator of group G 1 ,
It is the structure which performs the calculation of the session key Ks by performing the said processes 1-4.

さらに、本発明の第3の側面は、
暗号文を格納した情報記録媒体であり、
頂点ノードとしてのルートと、最下位ノードであるリーフを連結した構成を持つ階層木構成において、前記リーフに対応する複数の情報処理装置から暗号文の復号を許容する情報処理装置を選択し、選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文を格納し、
前記暗号文は、
nマルチリニアマップ(ただし、nは2以上の整数)を適用して生成した暗号鍵によって暗号化のなされた暗号文であることを特徴とする情報記録媒体にある。
Furthermore, the third aspect of the present invention provides
An information recording medium storing ciphertext,
In a hierarchical tree configuration having a configuration in which a root as a vertex node and a leaf that is the lowest node are connected, an information processing device that allows decryption of ciphertext is selected from a plurality of information processing devices corresponding to the leaf, and is selected. Store the ciphertext that can be decrypted based only on the storage key of the ciphertext decryption permitted device,
The ciphertext is
It is an information recording medium characterized in that it is a ciphertext encrypted with an encryption key generated by applying an n multi-linear map (where n is an integer of 2 or more).

さらに、本発明の情報記録媒体の一実施態様において、前記暗号文は、前記nマルチリニアマップを適用して生成される鍵、すなわち、下記定義、
Ks=(Φ,・・・Φα∈G
に基づくセッションキーKsによって暗号化された暗号文、
ただし、Gは、Diffie−Hellman inversion assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
αは、α∈[1,p−1],ただし、pはGの位数、
Φは、下記の処理により定められる値、
(1)カウンタjを用意し、j=1とセットする、
(2)カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる、
(2a)もしi∈Kならば、Φ=gとセットし、jを1増やして次のiの処理に移る、
(3)もしj≦nならば、j≦nの間、下記の処理を繰り返す、
(3a)Φ=gとセットし、jを1増やす、
ただし、Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
nは、nマルチリニアマップの規定数nであり2以上の整数、
Kは、前記階層木構成において、暗号文復号許容機器のみを選択して設定される部分木ルート集合であり、
は、ノードiの公開値、
gはGの生成元、
であることを特徴とする。
Furthermore, in one embodiment of the information recording medium of the present invention, the ciphertext is a key generated by applying the n multi-linear map, that is, the following definition:
Ks = (Φ 1 , ... Φ n ) α ∈ G 2
Ciphertext encrypted with a session key Ks based on
However, G 2 is, Diffie-Hellman inversion assumption satisfying n multilinear map e: a group defines a G 1 nG 2,
α is α∈ [1, p−1], where p is the order of G 1 ,
Φ j is a value determined by the following process,
(1) Prepare a counter j and set j = 1.
(2) A counter i is prepared, and i is incremented by 1 from 1 to 2N−1 while performing the following processing.
(2a) If i∈K, set Φ j = g i , increase j by 1 and move to the next processing of i.
(3) If j ≦ n, repeat the following process while j ≦ n.
(3a) Set Φ j = g and increase j by 1.
Where N is the total number of information processing devices corresponding to the leafs that are the lowest nodes in the hierarchical tree structure,
n is the specified number n of the n multi-linear map and is an integer greater than or equal to 2,
K is a subtree root set that is set by selecting only the ciphertext decryption permitted device in the hierarchical tree configuration,
g i is the public value of node i,
g is the generator of G 1
It is characterized by being.

さらに、本発明の情報記録媒体の一実施態様において、前記暗号文は、前記nマルチリニアマップを適用して生成される鍵、すなわち、下記定義、

Figure 2005123678
に基づくセッションキーKsによって暗号化された暗号文、
ただし、Gは、generalized Diffie−Hellman assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
gは、群Gの生成元であり、
は、階層木構成における各構成ノードiに設定されるノードキーであり、h=gxiが公開値として設定される、
であることを特徴とする。 Furthermore, in one embodiment of the information recording medium of the present invention, the ciphertext is a key generated by applying the n multi-linear map, that is, the following definition:
Figure 2005123678
Ciphertext encrypted with a session key Ks based on
However, G 2 is, generalized Diffie-Hellman satisfy assumption n multilinear map e: a group defines a G 1 nG 2,
g is the generator of group G 1 and
x i is a node key set for each configuration node i in the hierarchical tree configuration, and h i = g xi is set as a public value.
It is characterized by being.

さらに、本発明の第4の側面は、
暗号文生成処理を実行する情報処理方法であり、
頂点ノードとしてのルートと、最下位ノードであるリーフを連結した構成を持つ階層木構成において、前記リーフに対応する複数の情報処理装置から暗号文の復号を許容する情報処理装置を選択し、選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号処理ステップを有し、
前記暗号処理ステップは、
nマルチリニアマップ(ただし、nは2以上の整数)を適用して暗号鍵を生成する鍵生成ステップと、
生成した暗号鍵によって前記暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号文生成ステップとを有することを特徴とする情報処理方法にある。
Furthermore, the fourth aspect of the present invention provides
An information processing method for executing ciphertext generation processing,
In a hierarchical tree configuration having a configuration in which a root as a vertex node and a leaf that is the lowest node are connected, an information processing device that allows decryption of ciphertext is selected from a plurality of information processing devices corresponding to the leaf, and is selected. An encryption processing step for executing a process for generating a decryptable ciphertext based only on the storage key of the ciphertext decryption-permitted device,
The cryptographic processing step includes
a key generation step of generating an encryption key by applying an n multilinear map (where n is an integer of 2 or more);
And a ciphertext generation step of executing a ciphertext generation process that can be decrypted based on only the storage key of the ciphertext decryption permitted device using the generated encryption key.

さらに、本発明の情報処理方法の一実施態様において、前記リーフに対応する複数の情報処理装置の各々は、前記ルートから自リーフに至るパス上のノードに対応するノードキーを有し、前記暗号処理ステップは、前記暗号文復号許容機器の格納ノードキーにおいてのみ復号可能な暗号文の生成処理を実行することを特徴とする。   Furthermore, in an embodiment of the information processing method of the present invention, each of the plurality of information processing devices corresponding to the leaf has a node key corresponding to a node on a path from the root to the leaf, and the cryptographic processing The step is characterized in that a process of generating a ciphertext that can be decrypted only in a storage node key of the ciphertext decryption-permitted device is executed.

さらに、本発明の情報処理方法の一実施態様において、前記鍵生成ステップは、前記nマルチリニアマップを適用して生成する鍵として、下記定義、
Ks=(Φ,・・・Φα∈G
に基づくセッションキーKsを生成するステップである、
ただし、Gは、Diffie−Hellman inversion assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
αは、α∈[1,p−1],ただし、pはGの位数、
Φは、下記の処理により定められる値、
(1)カウンタjを用意し、j=1とセットする、
(2)カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる、
(2a)もしi∈Kならば、Φ=gとセットし、jを1増やして次のiの処理に移る、
(3)もしj≦nならば、j≦nの間、下記の処理を繰り返す、
(3a)Φ=gとセットし、jを1増やす、
ただし、Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
nは、nマルチリニアマップの規定数nであり2以上の整数、
Kは、前記階層木構成において、暗号文復号許容機器のみを選択して設定される部分木ルート集合であり、
は、ノードiの公開値、
gはGの生成元、
であることを特徴とする。
Furthermore, in an embodiment of the information processing method of the present invention, the key generation step includes the following definitions as keys generated by applying the n multi-linear map:
Ks = (Φ 1 , ... Φ n ) α ∈ G 2
Generating a session key Ks based on:
However, G 2 is, Diffie-Hellman inversion assumption satisfying n multilinear map e: a group defines a G 1 nG 2,
α is α∈ [1, p−1], where p is the order of G 1 ,
Φ j is a value determined by the following process,
(1) Prepare a counter j and set j = 1.
(2) A counter i is prepared, and i is incremented by 1 from 1 to 2N−1 while performing the following processing.
(2a) If i∈K, set Φ j = g i , increase j by 1 and move to the next processing of i.
(3) If j ≦ n, repeat the following process while j ≦ n.
(3a) Set Φ j = g and increase j by 1.
Where N is the total number of information processing devices corresponding to the leafs that are the lowest nodes in the hierarchical tree structure,
n is the specified number n of the n multi-linear map and is an integer greater than or equal to 2,
K is a subtree root set that is set by selecting only the ciphertext decryption permitted device in the hierarchical tree configuration,
g i is the public value of node i,
g is the generator of G 1
It is characterized by being.

さらに、本発明の情報処理方法の一実施態様において、前記鍵生成ステップは、前記nマルチリニアマップを適用して生成する鍵として、下記定義、

Figure 2005123678
に基づくセッションキーKsを生成するステップである、
ただし、Gは、generalized Diffie−Hellman assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
gは、群Gの生成元であり、
は、階層木構成における各構成ノードiに設定されるノードキーであり、h=gxiが公開値として設定される、
ことを特徴とする。 Furthermore, in an embodiment of the information processing method of the present invention, the key generation step includes the following definitions as keys generated by applying the n multi-linear map:
Figure 2005123678
Generating a session key Ks based on:
However, G 2 is, generalized Diffie-Hellman satisfy assumption n multilinear map e: a group defines a G 1 nG 2,
g is the generator of group G 1 and
x i is a node key set for each configuration node i in the hierarchical tree configuration, and h i = g xi is set as a public value.
It is characterized by that.

さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、前記暗号鍵の生成処理に適用するnマルチリニアマップの規定数nを、
Diffie−Hellman inversion assumptionを満たすnマルチリニアマップを用いる場合、

Figure 2005123678
として設定し、
generalized Diffie−Hellman assumptionを満たすnマルチリニアマップを用いる場合、
Figure 2005123678
として設定する構成、
ただし、
Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
rは、前記暗号文復号許容機器以外のリボーク(排除)機器数、
Figure 2005123678
は、rlog(N/r)以下の最大の整数、
を有することを特徴とする。 Furthermore, in one embodiment of the information processing method of the present invention, the information processing method further includes a specified number n of n multi-linear maps to be applied to the encryption key generation process.
When using an n multi-linear map that satisfies Diffie-Hellman inversion assumption,
Figure 2005123678
Set as
When using an n multi-linear map that satisfies the generalized Diffie-Hellman assumption,
Figure 2005123678
Configuration to set as
However,
N is the total number of information processing devices corresponding to the leaves that are the lowest nodes in the hierarchical tree structure;
r is the number of revocation (exclusion) devices other than the ciphertext decryption permitted device,
Figure 2005123678
Is the largest integer less than or equal to rlog (N / r),
It is characterized by having.

さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法において、前記暗号鍵の生成処理に適用するnマルチリニアマップの規定数nを、r≦Nの任意のrに対応可能な数n、すなわちrlog(N/r)の最大値に対応する整数値として設定することを特徴とする。   Furthermore, in an embodiment of the information processing method of the present invention, in the information processing method, the specified number n of n multi-linear maps applied to the encryption key generation process can correspond to any r of r ≦ N. It is set as an integer value corresponding to the maximum value of the number n, that is, rlog (N / r).

さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法において、前記暗号鍵の生成処理に適用するnマルチリニアマップの規定数nを、リボーク(排除)機器数rについて、その最大値Rを設定し、r≦Rの任意数に対応可能な数n、すなわち、r=Rとしたときのrlog(N/r)の値に対応する整数値として設定することを特徴とする。   Furthermore, in one embodiment of the information processing method of the present invention, in the information processing method, the prescribed number n of n multi-linear maps applied to the encryption key generation processing is set to the maximum for the number r of revoke (exclusion) devices. The value R is set, and is set to a number n that can correspond to an arbitrary number r ≦ R, that is, an integer value corresponding to the value of rlog (N / r) when r = R.

さらに、本発明の第5の側面は、
暗号文の復号処理を実行する情報処理方法であり、
nマルチリニアマップ(ただし、nは2以上の整数)を適用して生成された暗号鍵の算出処理を、階層木構成中の頂点ノードとしてのルートから自装置の対応するリーフに至るパス上のノードに設定されたノードキーを適用して実行する鍵算出ステップと、
前記鍵算出ステップにおいて算出した暗号鍵に基づいて暗号文の復号処理を実行する暗号文復号ステップと、
を有することを特徴とする情報処理方法にある。
Furthermore, the fifth aspect of the present invention provides
An information processing method for executing decryption processing of ciphertext,
An encryption key calculation process generated by applying an n multi-linear map (where n is an integer equal to or greater than 2) is performed on the path from the root as a vertex node in the hierarchical tree structure to the corresponding leaf of the own device. A key calculation step executed by applying a node key set in the node; and
A ciphertext decryption step for performing ciphertext decryption processing based on the cipher key calculated in the key calculation step;
There is an information processing method characterized by comprising:

さらに、本発明の情報処理方法の一実施態様において、前記鍵算出ステップは、下記定義、
Ks=(Φ,・・・Φα∈G
に基づくセッションキーKsの算出処理として、下記処理1〜4、すなわち、
1.カウンタjを用意し、j=1とセットする、
2.カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる、
(a)もしi∈Kならば、iとIが一致するかどうかを調べる、
i.もしi=Iならば、Φ=sとセットし、jを1増やして次のiの処理に移る、
ii.もしi≠Iならば、Φ=gとセットし、jを1増やして次のiの処理に移る、
3.もしj≦nならば、j≦nの間、下記の処理を繰り返す、
(a)Φ=gとセットし、jを1増やす、
4.Ks=(φ,・・・,φ)を求める、
ただし、
は、Diffie−Hellman inversion assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
αは、α∈[1,p−1],ただし、pはGの位数、
Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
nは、nマルチリニアマップの規定数nであり2以上の整数、
Kは、前記階層木構成において、暗号文復号許容機器のみを選択して設定される部分木ルート集合、
は、ノードiの秘密キー、
は、ノードiの公開キー、
gはGの生成元、
Iは、部分木ルート集合Kに含まれるノード、
上記処理1〜4を実行してセッションキーKsの算出を実行するステップであることを特徴とする。
Furthermore, in one embodiment of the information processing method of the present invention, the key calculation step has the following definition:
Ks = (Φ 1 , ... Φ n ) α ∈ G 2
As the process for calculating the session key Ks based on the following processes 1-4,
1. Prepare counter j and set j = 1.
2. A counter i is prepared and i is incremented by 1 from 1 to 2N-1 while performing the following processing.
(A) If i∈K, check whether i and I match.
i. If i = I, set Φ j = s i , increase j by 1 and move on to the next i.
ii. If i ≠ I, set Φ j = g i , increase j by 1 and move on to the next i processing.
3. If j ≦ n, repeat the following process while j ≦ n.
(A) Set Φ j = g and increase j by 1.
4). Find Ks = (φ 1 ,..., Φ n ),
However,
G 2 is a group that defines an n multi-linear map e: G 1 n → G 2 that satisfies the Diffie-Hellman inversion assumption.
α is α∈ [1, p−1], where p is the order of G 1 ,
N is the total number of information processing devices corresponding to the leaves that are the lowest nodes in the hierarchical tree structure;
n is a specified number n of n multi-linear maps and is an integer of 2 or more,
K is a subtree root set that is set by selecting only ciphertext decryption permitted devices in the hierarchical tree configuration;
s i is the secret key of node i,
g i is the public key of node i,
g is the generator of G 1
I is a node included in the subtree root set K,
It is a step of executing the above-described processes 1 to 4 and calculating a session key Ks.

さらに、本発明の情報処理方法の一実施態様において、前記鍵算出ステップは、下記定義、

Figure 2005123678
に基づくセッションキーKsの算出処理として、下記処理1〜4、すなわち、
1.カウンタj,lを用意し、j=1,l=2Nとセットする、
2.カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる、
(a)もしi∈Kかつi≠IならばΦ=hとセットし、jを1増やして次のiの処理に移る、
3.もしj≦nならば、j≦nの間、下記の処理を繰り返す。
(a)Φ=hとセットし、lを1増やし、jを1増やす、
4.上記セッションキーKsを算出する、
ただし、
は、generalized Diffie−Hellman assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
nは、nマルチリニアマップの規定数nであり2以上の整数、
Kは、前記階層木構成において、暗号文復号許容機器のみを選択して設定される部分木ルート集合、
は、階層木構成における各構成ノードiに設定されるノードキーであり、h=gxiが公開値、
Iは、部分木ルート集合Kに含まれるノード、
gは、群Gの生成元、
上記処理1〜4を実行してセッションキーKsの算出を実行するステップであることを特徴とする。 Furthermore, in one embodiment of the information processing method of the present invention, the key calculation step has the following definition:
Figure 2005123678
As the process for calculating the session key Ks based on the following processes 1-4,
1. Prepare counters j and l, and set j = 1 and l = 2N.
2. A counter i is prepared and i is incremented by 1 from 1 to 2N-1 while performing the following processing.
(A) If i∈K and i ≠ I, set Φ j = h i , increase j by 1 and move on to the next processing of i.
3. If j ≦ n, the following processing is repeated while j ≦ n.
(A) Set Φ j = h l , increase 1 by 1 and increase j by 1.
4). Calculating the session key Ks;
However,
G 2 is a group that defines an n multi-linear map e: G 1 n → G 2 that satisfies a generalized Diffie-Hellman assumption.
N is the total number of information processing devices corresponding to the leaves that are the lowest nodes in the hierarchical tree structure;
n is the specified number n of the n multi-linear map and is an integer greater than or equal to 2,
K is a subtree root set that is set by selecting only ciphertext decryption permitted devices in the hierarchical tree configuration;
x i is a node key set for each configuration node i in the hierarchical tree configuration, and h i = g xi is a public value,
I is a node included in the subtree root set K,
g is the generator of group G 1 ,
It is a step of executing the above-described processes 1 to 4 and calculating a session key Ks.

さらに、本発明の第6の側面は、
暗号文生成処理を実行するコンピュータ・プログラムであり、
頂点ノードとしてのルートと、最下位ノードであるリーフを連結した構成を持つ階層木構成において、前記リーフに対応する複数の情報処理装置から暗号文の復号を許容する情報処理装置を選択し、選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号処理ステップを有し、
前記暗号処理ステップは、
nマルチリニアマップ(ただし、nは2以上の整数)を適用して暗号鍵を生成する鍵生成ステップと、
生成した暗号鍵によって前記暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号文生成ステップとを有することを特徴とするコンピュータ・プログラムにある。
Furthermore, the sixth aspect of the present invention provides
A computer program for executing ciphertext generation processing;
In a hierarchical tree configuration having a configuration in which a root as a vertex node and a leaf that is the lowest node are connected, an information processing device that allows decryption of ciphertext is selected from a plurality of information processing devices corresponding to the leaf, and is selected. An encryption processing step for executing a process for generating a decryptable ciphertext based only on the storage key of the ciphertext decryption-permitted device,
The cryptographic processing step includes
a key generation step of generating an encryption key by applying an n multilinear map (where n is an integer of 2 or more);
And a ciphertext generation step for executing a ciphertext generation process that can be decrypted based on only the storage key of the ciphertext decryption permitted device using the generated encryption key.

さらに、本発明の第7の側面は、
暗号文の復号処理を実行するコンピュータ・プログラムであり、
nマルチリニアマップ(ただし、nは2以上の整数)を適用して生成された暗号鍵の算出処理を、階層木構成中の頂点ノードとしてのルートから自装置の対応するリーフに至るパス上のノードに設定されたノードキーを適用して実行する鍵算出ステップと、
前記鍵算出ステップにおいて算出した暗号鍵に基づいて暗号文の復号処理を実行する暗号文復号ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
Furthermore, the seventh aspect of the present invention provides
A computer program for performing decryption processing of ciphertext,
An encryption key calculation process generated by applying an n multi-linear map (where n is an integer equal to or greater than 2) is performed on the path from the root as a vertex node in the hierarchical tree structure to the corresponding leaf of the own device. A key calculation step executed by applying a node key set in the node; and
A ciphertext decryption step for performing ciphertext decryption processing based on the cipher key calculated in the key calculation step;
There is a computer program characterized by comprising:

なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、CDやFD、MOなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。   The computer program of the present invention is, for example, a storage medium or communication medium provided in a computer-readable format to a computer system capable of executing various program codes, such as a CD, FD, or MO. It is a computer program that can be provided by a recording medium or a communication medium such as a network. By providing such a program in a computer-readable format, processing corresponding to the program is realized on the computer system.

本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。   Other objects, features, and advantages of the present invention will become apparent from a more detailed description based on embodiments of the present invention described later and the accompanying drawings. In this specification, the system is a logical set configuration of a plurality of devices, and is not limited to one in which the devices of each configuration are in the same casing.

本発明の構成によれば、頂点ノードとしてのルートと、最下位ノードであるリーフを連結した構成を持つ階層木構成において、リーフに対応する複数の情報処理装置から暗号文の復号を許容する情報処理装置を選択し、選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理において、nマルチリニアマップ(ただし、nは2以上の整数)を適用して暗号鍵を生成する構成とすることで、暗号文復号許容機器の格納鍵のみに基づいて復号可能な1つの暗号文として生成することが可能となり、暗号文の受領、復号処理を実行する受信機としてのユーザデバイスにおける計算量が削減され、効率的な処理が実現される。   According to the configuration of the present invention, in a hierarchical tree configuration having a configuration in which a root as a vertex node and a leaf that is the lowest node are connected, information that allows decryption of ciphertext from a plurality of information processing devices corresponding to the leaf In a ciphertext generation process that can be decrypted based on only the storage key of the selected ciphertext decryption permitted device by selecting a processing device, an encryption key is applied by applying an n multi-linear map (where n is an integer of 2 or more) Can be generated as a single ciphertext that can be decrypted based only on the storage key of the ciphertext decryption permitting device, and as a receiver for receiving ciphertext and performing decryption processing. The amount of calculation in the user device is reduced, and efficient processing is realized.

本発明の構成によれば、Diffie−Hellman inversion assumption、またはgeneralized Diffie−Hellman assumptionを満たすマルチリニアマップ(multilinear map)に階層型木構造を組み合わせた暗号文配信構成を構築することにより、階層木構成中のリーフに対応する複数の情報処理装置から選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文として必要な数を削減することが可能となり、リーフの数の増加、リボーク機器の増加などの要因が発生した場合においても、必要な暗号文数を増加させることのない効率的な暗号文の生成および提供構成が実現される。   According to the configuration of the present invention, a hierarchical tree configuration is constructed by constructing a ciphertext distribution configuration in which a hierarchical tree structure is combined with a multi-linear map that satisfies Diffie-Hellman inversion assumption or generalized Diffie-Hellman assumption. It is possible to reduce the necessary number of ciphertexts that can be decrypted based only on the storage key of the ciphertext decryption-permitted device selected from a plurality of information processing devices corresponding to the middle leaf. Even when factors such as an increase in devices occur, an efficient ciphertext generation and provision configuration without increasing the number of necessary ciphertexts is realized.

以下、図面を参照しながら本発明の情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラムの詳細について説明する。   The details of the information processing apparatus, information recording medium, information processing method, and computer program of the present invention will be described below with reference to the drawings.

実施例1は、Diffie−Hellman inversion assumptionを満たすマルチリニアマップ(multilinear map)が存在するという前提の下で、マルチリニアマップを用いた鍵配信技術に階層木構造を組み合わせることによって、各受信機が必要とする計算量を削減させることを可能とした構成例である。   In the first embodiment, on the assumption that there is a multi-linear map that satisfies Diffie-Hellman inversion assumption, each receiver can combine a key distribution technique using a multi-linear map with a hierarchical tree structure. This is a configuration example that can reduce the amount of calculation required.

まず、上記背景技術の欄で説明した非特許文献「D.Boneh and A.Silverberg著の論文"Applications of Multilinear Forms to Cryptography」に基づいて、暗号学的なnマルチリニアマップ(n−multilinear map)について説明する。   First, based on the non-patent document “D. Boneh and A. Silverberg” “Applications of Multilinear Forms to Cryptography” described in the background section above, a cryptographic n-multilinear map is used. Will be described.

nマルチリニアマップe:G →Gとは、下記の条件(1),(2),(3)を満たすものである。
(1)GとGは同じ素数の位数を持つ群である。
(2)下記条件を満足する。

Figure 2005123678
(3)もしg∈GがGの生成元であるならば、e(g,・・・g)はGの生成元である。 The n multi-linear map e: G 1 n → G 2 satisfies the following conditions (1), (2), and (3).
(1) G 1 and G 2 are groups having the same prime order.
(2) The following conditions are satisfied.
Figure 2005123678
(3) If gεG 1 is a generator of G 1 , e (g,... G) is a generator of G 2 .

そして、暗号学的なnマルチリニアマップ(n−multilinear map)とは、
(1)GおよびG上の群の演算が効率的に行える。
(2)nマルチリニアマップeが効率的に計算可能である。
(3)G上の離散対数問題を解く効率的なアルゴリズムがない。
という3つの条件を満たすようなnマルチリニアマップである。
And the cryptographic n-multilinear map (n-multilinear map) is
(1) computation of the group on G 1 and G 2 can be performed efficiently.
(2) The n multi-linear map e can be calculated efficiently.
(3) there is no efficient algorithm to solve the discrete logarithm problem on G 1.
It is an n multi-linear map that satisfies the following three conditions.

現在までに、n=2については、Tate paringまたはWeil paringという技術を用いて暗号学的なnマルチリニアマップを構成できると考えられている。   To date, it is considered that for n = 2, a cryptographic n multi-linear map can be constructed using a technique called Tate paring or Weil paring.

本実施例の説明においては、以下の(a)(b)の態様順に具体的な暗号文配信構成について説明する。
(a)任意数n(n>1)について暗号学的なnマルチリニアマップが存在すると仮定し、そのようなマップであるnマルチリニアマップeを用いたブロードキャスト・エンクリプション方式
(b)n=2とした暗号学的な2マルチリニアマップを用いたブロードキャスト・エンクリプション方式
In the description of this embodiment, a specific ciphertext distribution configuration will be described in the order of the following modes (a) and (b).
(A) Assuming that there is a cryptographic n-multilinear map for an arbitrary number n (n> 1), a broadcast encryption scheme using such a map n-multilinear map e (b) n = Broadcast encryption method using a cryptographic 2 multi-linear map

なお、本実施例において、暗号文の配信処理を実行する送信者は、図4に示すような、葉(リーフ)の数が受信者数Nである階層木を定義し、各ノードiに番号をつけ、各ノードに受信機(またはユーザ)を対応付ける。各リーフは、それぞれ異なる鍵を持つ。これらの詳細構成については後述する。   In this embodiment, the sender who executes the ciphertext distribution process defines a hierarchical tree in which the number of leaves is N, as shown in FIG. And associate a receiver (or user) with each node. Each leaf has a different key. These detailed configurations will be described later.

この階層木構成に基づいて、特定の選択されたリーフを暗号文復号許容リーフとし、その他のリーフをリボーク(排除)リーフとして、暗号文の解読のできないリーフとして設定する。すなわち、暗号文提供者は、暗号文復号許容リーフにおいてのみ、解読可能な暗号文を生成して送信する。   Based on this hierarchical tree structure, a specific selected leaf is set as a ciphertext decryption-allowed leaf, and other leaves are set as revoke (exclusion) leaves as leaves that cannot be decrypted. That is, the ciphertext provider generates and transmits a ciphertext that can be decrypted only in the ciphertext decryption allowable leaf.

暗号文は、ネットワークを介した通信、あるいはCD,DVD等の情報記録媒体に格納して提供される。この暗号文は、全てのリーフ対応の受信機(ユーザ)が取得可能である。ただし、提供した暗号文は、リボークされた機器に格納された鍵を用いて復号することはできず、リボーク機器以外の機器、すなわち、暗号文復号許容リーフに対応する機器に格納された鍵によってのみ復号できる。   The ciphertext is provided through communication via a network or an information recording medium such as a CD or DVD. This ciphertext can be acquired by all leaf-compatible receivers (users). However, the provided ciphertext cannot be decrypted by using the key stored in the revoked device, and the key stored in the device other than the revoked device, that is, the device corresponding to the ciphertext decryption allowable leaf is used. Can only decrypt.

本発明は、このような階層木構造を適用した暗号文提供構成において、nマルチリニアマップを用いたブロードキャスト・エンクリプション方式を適用した処理構成である。   The present invention is a processing configuration in which a broadcast encryption scheme using an n-multilinear map is applied to a ciphertext providing configuration to which such a hierarchical tree structure is applied.

(a)任意数n(n>1)のnマルチリニアマップeを用いたブロードキャスト・エンクリプション方式   (A) Broadcast encryption scheme using an arbitrary number n (n> 1) of n multi-linear maps e

まず、任意数n(n>1)のnマルチリニアマップeを用いたブロードキャスト・エンクリプション方式について説明する。   First, a broadcast encryption scheme using an arbitrary number n (n> 1) of n multi-linear maps e will be described.

本実施例において説明するブロードキャスト・エンクリプション方式は、
(1)セットアップ、
(2)暗号化および送信、
(3)受信および復号、
の3つのフェーズに分かれている。セットアップフェーズは、システムの立ち上げ時に1度だけ行う。暗号化および送信、受信および復号の各フェーズは、情報の送信を行うたびに繰り返す。
The broadcast encryption method described in this embodiment is
(1) Setup,
(2) Encryption and transmission,
(3) reception and decoding,
It is divided into three phases. The setup phase is performed only once at system startup. The encryption, transmission, reception, and decryption phases are repeated each time information is transmitted.

ブロードキャスト・エンクリプション方式を構成するエンティティは、
(a)暗号文の生成および提供処理を行なう情報処理装置としての送信者(送信機)、
(b)暗号文の受領および復号処理を行なう情報処理装置としてのユーザデバイス等の受信機あるいは受信者(ユーザ)
(c)ブロードキャスト・エンクリプション・システムを管理する管理センタ
である。
The entities that make up the broadcast encryption scheme are:
(A) a sender (transmitter) as an information processing device that performs ciphertext generation and provision processing;
(B) Receiver or receiver (user) such as a user device as an information processing apparatus for receiving and decrypting ciphertext
(C) A management center that manages the broadcast encryption system.

暗号文の受領および復号処理を行なう情報処理装置またはユーザの総数をNとする。また、システムを管理する管理センタを設ける。上記(1)セットアップ処理は、送信者あるいは管理センタが実行する。   Let N be the total number of information processing devices or users that receive and decrypt ciphertext. A management center for managing the system is also provided. The (1) setup process is executed by the sender or the management center.

簡単のため、暗号文を受領する情報処理装置またはユーザの総数:Nは2のべき乗の数とする。実際のNが2のべき乗でない場合は、Nより大きな最小の2のべき乗の数をNとして用いても構わない。   For simplicity, the total number of information processing apparatuses or users that receive ciphertext: N is a power of 2. If actual N is not a power of 2, the smallest number of powers of 2 larger than N may be used as N.

(1)セットアップ
以下、暗号文の生成および提供処理を行なうエンティティまたは情報処理装置を送信者または送信機とし、暗号文を受領するエンティティまたは情報処理装置を受信者または受信機として説明する。セットアップ処理は、送信者側、あるいはシステム管理者によって実行されるが、以下では、送信者においてセットアップ処理を行うものとして説明する。
(1) Setup Hereinafter, an entity or information processing apparatus that performs ciphertext generation and provision processing will be described as a sender or a transmitter, and an entity or information processing apparatus that receives a ciphertext will be described as a receiver or a receiver. The setup process is executed by the sender or the system administrator. In the following description, it is assumed that the setup process is performed by the sender.

図4に示すように、送信者は葉(リーフ)の数が受信者数Nである2分木を階層木として定義し、各ノードiに番号をつける。すなわち、階層木のルート(頂点ノード)を1とし、それ以降、上位ノードから、また同一レベルのノード内では左のノードから、幅優先(breadth first order)で各ノードにノード識別子としてのノード番号2,3,4,・・・を付与する。   As shown in FIG. 4, the sender defines a binary tree having N leaves as the number of recipients as a hierarchical tree, and assigns a number to each node i. That is, the root (vertex node) of the hierarchical tree is set to 1, and thereafter, the node number 2 as a node identifier is assigned to each node from the upper node and from the left node within the same level node with breadth priority (breadth first order). , 3, 4,.

2分木の最下層にあるノードであるリーフ(葉)にはNから2N−1までのリーフ識別子としてのリーフ番号を付与する。   Leaf numbers as leaf identifiers from N to 2N−1 are assigned to leaves (leaves) that are nodes at the lowest layer of the binary tree.

受信機は1つずつ各リーフ(葉)に割り当てる。受信者数N=16である2分木の定義と受信機の割り当てを示したのが図4である。リーフ(葉)にはN=16から2N−1=31までのリーフ番号が付与される。   The receiver assigns each leaf one by one. FIG. 4 shows the definition of the binary tree with the number of recipients N = 16 and the assignment of receivers. Leaf numbers from N = 16 to 2N−1 = 31 are assigned to the leaves.

図5を参照して、暗号文を生成し提供する送信装置等の情報処理装置、暗号文を受領して、暗号文を選択し復号する処理を実行する受信装置等の情報処理装置(階層木構造のリーフに設定される機器)の構成例について説明する。なお、本方式においてディスクなどの記録媒体に暗号文、鍵指定コードを格納して提供する場合は、送信装置はディスク書き込み装置もしくはディスク製造装置、受信機はディスク再生装置などの情報処理装置によって構成される。   Referring to FIG. 5, an information processing device such as a transmission device that generates and provides ciphertext, and an information processing device such as a reception device that receives ciphertext and executes processing for selecting and decrypting the ciphertext (hierarchical tree) A configuration example of a device set in the leaf of the structure will be described. In this system, when ciphertext and key designation code are stored and provided on a recording medium such as a disc, the transmitting device is constituted by a disc writing device or disc manufacturing device, and the receiver is constituted by an information processing device such as a disc reproducing device. Is done.

一例としての情報処理装置は、図5に示すように、コントローラ301、演算ユニット302、入出力インタフェース303、セキュア記憶部304、メイン記憶部305、大容量記憶部306を備える。   As illustrated in FIG. 5, the information processing apparatus as an example includes a controller 301, an arithmetic unit 302, an input / output interface 303, a secure storage unit 304, a main storage unit 305, and a large capacity storage unit 306.

コントローラ301は、例えばコンピュータ・プログラムに従ったデータ処理を実行する制御部としての機能を有するCPUによって構成される。演算ユニット302は、例えば暗号鍵の生成、乱数生成、及び暗号処理のための専用の演算機能を提供する。入出力インタフェース303は、キーボード、マウス等の入力手段からのデータ入力や、外部出力装置に対するデータ出力、ネットワークを介したデータ送受信処理に対応するインタフェースである。   The controller 301 is configured by a CPU having a function as a control unit that executes data processing according to a computer program, for example. The arithmetic unit 302 provides a dedicated arithmetic function for generating cryptographic keys, random numbers, and cryptographic processing, for example. The input / output interface 303 is an interface corresponding to data input from an input unit such as a keyboard and a mouse, data output to an external output device, and data transmission / reception processing via a network.

セキュア記憶部304は、例えば暗号鍵としてのノードキー、各種IDなど、安全にまたは秘密に保持すべきデータを保存する記憶部である。メイン記憶部305は、例えばコントローラ301において実行するデータ処理プログラム、その他、一時記憶処理パラメータ、プログラム実行のためのワーク領域等に使用されるメモリ領域である。セキュア記憶部304及びメイン記憶部305は、例えばRAM、ROM等によって構成されるメモリである。大容量記憶部306は、ハードディスク、CD、DVD、MD等の大容量のデータ記録、読み出し可能な記憶部であり暗号化コンテンツなどを記録する。   The secure storage unit 304 is a storage unit that stores data that should be held safely or secretly, such as a node key as an encryption key and various IDs. The main storage unit 305 is a memory area used for, for example, a data processing program executed by the controller 301, other temporary storage processing parameters, a work area for program execution, and the like. The secure storage unit 304 and the main storage unit 305 are memories configured by, for example, RAM, ROM, and the like. The large-capacity storage unit 306 is a storage unit that can record and read large-capacity data such as hard disks, CDs, DVDs, and MDs, and records encrypted content and the like.

なお、以下の説明においては、理解を容易にするため、暗号文を提供する情報処理装置を送信機、暗号文を受領する情報処理装置(リーフに対応付けられている)を受信機と称して説明する。ただし、ユーザに対する暗号文の提供は、前述したように、ネットワークを介して、あるいは情報記録媒体に格納して提供することができるものであり、暗号文提供側、受領側においてデータ送受信構成が必ずしも必要な構成ではない。   In the following description, for ease of understanding, an information processing device that provides ciphertext is referred to as a transmitter, and an information processing device that receives ciphertext (associated with a leaf) is referred to as a receiver. explain. However, the provision of ciphertext to the user can be provided via a network or stored in an information recording medium as described above, and the data transmission / reception configuration is not necessarily provided on the ciphertext providing side and the receiving side. Not a required configuration.

背景技術の欄において説明したように、本出願人は先に出願済みの特開2001−352322号公報において、例えば図4に示す木の各ノードにノードキーを割り当て、各受信機は自分が割り当てられたリーフ(葉)からルートまでのパス上のノードのノードキーを保持する構成としたブロードキャスト・エンクリプション方式を開示している。   As described in the background section, the applicant assigns a node key to each node of the tree shown in FIG. 4, for example, in Japanese Patent Application Laid-Open No. 2001-352322, which has been filed earlier, and each receiver is assigned by himself / herself. In addition, a broadcast encryption system configured to hold a node key of a node on a path from a leaf to a root is disclosed.

この方式においては、各受信機が持つ鍵の数がlogN+1、同報通信される暗号文数の上限がrlog(N/r)各受信機が必要な計算量は1回の復号処理となる。すなわち、各受信機は、送信機から提供される複数の暗号文から、自装置(受信機)の有するノードキーによって復号可能な暗号文を1つ選択して、選択した暗号文の復号処理を行なう。
ただし、
N:ユーザ(受信機)の総数
r:情報の受信者として選択されない(リボークされる)受信機の数
である。
In this method, the number of keys held by each receiver is logN + 1, and the upper limit of the number of ciphertexts to be broadcast is rlog (N / r). The calculation amount required for each receiver is one decryption process. That is, each receiver selects one ciphertext that can be decrypted by the node key of its own device (receiver) from a plurality of ciphertexts provided from the transmitter, and performs a decryption process on the selected ciphertext. .
However,
N: Total number of users (receivers) r: Number of receivers that are not selected (revoked) as information recipients.

具体的には、例えば図6の構成を持つ2分木構成、すなわち、リボーク(排除)機器をリーフ14に対応する1つの情報処理装置とした場合は、
総受信機数N=8(No.8〜No.15)
リボーク受信機数r=1(No.14)
となり、
各受信機が持つ鍵の数は、logN+1=log8+1=4
同報通信される暗号文数の上限は、rlog(N/r)=3
となる。
Specifically, for example, when the binary tree configuration having the configuration of FIG. 6 is used, that is, when the revocation (exclusion) device is one information processing device corresponding to the leaf 14,
Total number of receivers N = 8 (No. 8 to No. 15)
Number of revoke receivers r = 1 (No. 14)
And
The number of keys that each receiver has is logN + 1 = log8 + 1 = 4
The upper limit of the number of ciphertexts to be broadcast is rlog (N / r) = 3
It becomes.

すなわち、リボーク(排除)機器をリーフ14に対応する1つの情報処理装置とした場合には、以下の3つ(rlog(N/r)=3)の暗号文、
E(NK,Kc),E(NK,Kc),E(NK15,Kc)
を送信することが必要となる。
That is, when the revoke device is one information processing device corresponding to the leaf 14, the following three ciphertexts (rlog (N / r) = 3):
E (NK 2 , Kc), E (NK 6 , Kc), E (NK 15 , Kc)
It is necessary to send

本発明では、上記の従来方式で、最大rlog(N/r)個の暗号文の送信を必要としていたものを、n=rlog(N/r)としたnマルチリニアマップを適用することにより、1つの鍵を導出し、その鍵で暗号化した1つの暗号文を送信するのみで、リボーク機器を除く暗号文復号許容受信機においてのみ復号可能な暗号文提供を可能とした。   In the present invention, by applying an n multilinear map in which n = rlog (N / r) is used in the above-described conventional method, which requires transmission of a maximum of rlog (N / r) ciphertexts, Only by deriving one key and transmitting one ciphertext encrypted with the key, it is possible to provide a ciphertext that can be decrypted only by a ciphertext decryption acceptable receiver excluding the revoke device.

システム管理者または暗号文提供者としての送信者はDiffie−Hellman inversion assumptionを満たすnマルチリニアマップを定め、受信機に公開する。   A sender as a system administrator or ciphertext provider defines an n multi-linear map that satisfies Diffie-Hellman inversion assumption and publishes it to the receiver.

ここで、Diffie−Hellman inversion assumptionを満たすとは、gとg∈Gが与えられたときに、
e(g,・・・g)1/b∈G
を計算することが困難であることを言う。なお、gは、群Gの生成元である。
Here, satisfying Diffie-Hellman inversion assumption means that when g and g b ∈G 1 are given,
e (g,... g) 1 / b ∈ G 2
Say that it is difficult to calculate. Incidentally, g is a generator of the group G 1.

ただし、nは下記のいずれかの定め方で定める。
(I)総受信機数Nと、リボーク受信機数rの全ての組み合わせから必要なnマルチリニアマップの規定数nを決める。
(II)システムでリボーク受信機数rの上限Rを定め、そこから必要なnマルチリニアマップの規定数nを決める。
However, n is determined by one of the following methods.
(I) A required number n of n multilinear maps required is determined from all combinations of the total number of receivers N and the number of revoke receivers r.
(II) An upper limit R of the number r of revoke receivers is determined by the system, and a prescribed number n of necessary n multi-linear maps is determined therefrom.

暗号鍵の生成処理に適用するnマルチリニアマップの規定数nの算出式は、
Diffie−Hellman inversion assumptionを満たすnマルチリニアマップを用いる場合、例えば、

Figure 2005123678
として設定できる。
ただし、
Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
rは、前記暗号文復号許容機器以外のリボーク(排除)機器数、
Figure 2005123678
は、rlog(N/r)以下の最大の整数である The formula for calculating the prescribed number n of the n multi-linear map applied to the encryption key generation process is:
When using an n multi-linear map satisfying Diffie-Hellman inversion assumption, for example,
Figure 2005123678
Can be set as
However,
N is the total number of information processing devices corresponding to the leaves that are the lowest nodes in the hierarchical tree structure;
r is the number of revocation (exclusion) devices other than the ciphertext decryption permitted device,
Figure 2005123678
Is the largest integer less than or equal to rlog (N / r)

いま、総受信機数N=16として、リボーク受信機数r=1からr=15までの各値に対する、従来方式における必要最大暗号分数rlog(N/r)の値を求めると下表のようになる。   Now, assuming that the total number of receivers N = 16, the value of the maximum required cryptographic fraction rlog (N / r) in the conventional method for each value from the number of revoke receivers r = 1 to r = 15 is as shown in the table below. become.

Figure 2005123678
Figure 2005123678

上述のように、この方式においては、各リボーク受信機数rに対し最悪でもrlog(N/r)個の暗号文を送信すればよいから、上表により、いかなるリボーク受信機数rに対しても最大8個の暗号文を送信すれば充分であり、最大暗号文数=8となる。   As described above, in this method, it is only necessary to transmit rlog (N / r) ciphertexts at the worst for each number of revoke receivers r. It is sufficient to transmit a maximum of 8 ciphertexts, and the maximum number of ciphertexts = 8.

本発明では、複数個の暗号文を同報通信する代わりに、nマルチリニアマップ(n−multilinear map)を用いて作られた鍵に基づく1つの暗号文を送信する。   In the present invention, instead of broadcasting a plurality of ciphertexts, one ciphertext based on a key created using an n-multilinear map is transmitted.

暗号文送信システムに対応して必要なnマルチリニアマップの規定数nの定め方には、上述の(I),(II)があるが、
方式(I)を適用した場合、受信機総数N未満のいずれのリボーク受信機数rにも対応できるように、n=8とする。
There are the above-mentioned (I) and (II) as the method of determining the prescribed number n of the n multi-linear map necessary for the ciphertext transmission system.
When the method (I) is applied, n = 8 so that any number of revoke receivers r less than the total number N of receivers can be handled.

また、上記方式(II)を適用した場合には、システムで対応するリボーク受信機数rの上限Rをあらかじめ定める。たとえば、このシステムでは2台までの受信機のリボークに対応する、すなわちR=2とした場合、上表からr=2のときrlog(N/r)=6であるので、n=6と定める。   When the above method (II) is applied, an upper limit R of the number r of revoke receivers corresponding to the system is determined in advance. For example, in this system, when revoking of up to two receivers is performed, that is, R = 2, rlog (N / r) = 6 when r = 2 from the above table, so that n = 6 is determined. .

次に、各ノードi(ただしi=1,2,・・・,2N−1)について、
公開値g∈G
を定める。
Next, for each node i (where i = 1, 2,..., 2N−1)
Public value g i ∈G 1
Determine.

はG中のランダムな要素をそれぞれ選んでもよいし、先に定めたマルチリニアマップから別の方法で定めてもよい。各gはノードとの対応とともに公開する。また、ランダムな値α∈[1,p−1]を定め、各iについて、
秘密鍵s=g α
を計算する。
g i may each select a random element in G 1 , or may be determined by another method from the previously determined multi-linear map. Each g i will be published along with the correspondence between the nodes. Also, define a random value α∈ [1, p−1], and for each i,
Private key s i = g i α
Calculate

ここでpは群Gの位数である。また受信機u(ただしm=1,・・・,N)に対して、受信機uが割り当てられた葉からルートに至るパス上のノードの秘密鍵sを鍵として秘密に与える。受信機は秘密鍵sを安全に保管する。また送信者は群Gの生成元gを選び公開する。 Where p is the order of the group G i. Further, the secret key s i of the node on the path from the leaf to which the receiver u m is assigned to the root is secretly given to the receiver u m (where m = 1,..., N). The receiver securely stores the private key s i . The sender to publish select the generator g of the group G i.

図4に示した例では、リーフNo.19の受信機uは秘密鍵s,s,s,s,s19を与えられる。 In the example shown in FIG. Nineteen receivers u 4 are given secret keys s 1 , s 2 , s 4 , s 9 and s 19 .

(2)暗号化および送信
送信者は総受信機数N個の受信機のうち、その通信において情報を復号させる受信機の集合、すなわち、情報復号許容受信機集合S⊆{1,・・・,n}を選択する。次に、情報復号許容受信機集合Sに含まれない、すなわちリボークする受信機に割り当てられたリーフ(葉)からルートまでのすべての枝、ノード、そのノードに接する枝を取り除く。すると、1つ以上の切り離された部分木が残るが、それぞれの部分木のルートの集合をKと置く。
(2) Encryption and transmission The sender is a set of receivers for decoding information in the communication among the N receivers in total number of receivers, that is, an information decryption allowable receiver set S⊆ {1,. , N}. Next, all the branches from the leaf to the root that are not included in the information decoding allowable receiver set S, that is, assigned to the receiver to be revoked, nodes, and branches that contact the nodes are removed. Then, one or more separated subtrees remain, but the set of roots of each subtree is set as K.

図7に、図4のセッティングで受信機u,u11,u12の3台の受信機をリボークする場合の部分木を太線で示す。図に示すように、部分木のルートの集合K={5,7,9,12,16}となる。部分木は、図7に示す構成では、部分木131,132,133,134,135の5つの要素があり、各々は、通信において情報の復号を許容する受信機の集合S={16,18〜19,20〜23,24〜25,28〜30}をリーフとして構成した部分木である。 In FIG. 7, the partial tree in the case of revoking the three receivers u 3 , u 11 , u 12 with the setting of FIG. 4 is indicated by a thick line. As shown in the figure, the set of roots of the subtree is K = {5, 7, 9, 12, 16}. In the configuration shown in FIG. 7, the subtree has five elements, that is, subtrees 131, 132, 133, 134, and 135, each of which is a set of receivers S = {16, 18 that allows decoding of information in communication. -19, 20-23, 24-25, 28-30} are subtrees configured as leaves.

ここで、上記のnの定め方において方式(I)を採用した場合には、いかなるリボーク機器数rの値に対しても、また方式(II)を採用した場合には、r≦Rなるr、すなわち最大リボーク受信機数R以下のいかなるリボーク受信機数rに対しても、部分木のルートの集合Kの要素数、即ち|K|が高々nになる。|K|は、部分木ルート集合Kの要素数である。図7の構成において、|K|、すなわち、部分木ルート集合K={5,7,9,12,16}の要素数は5である。   Here, when the method (I) is adopted in the above method of determining n, for any value of the number of revoke devices r, and when the method (II) is adopted, r ≦ R where r ≦ R. That is, for any number of revoke receivers r less than or equal to the maximum number of revoke receivers R, the number of elements of the root tree set K, that is, | K | | K | is the number of elements of the subtree root set K. In the configuration of FIG. 7, | K |, that is, the number of elements of the subtree root set K = {5, 7, 9, 12, 16} is 5.

そして、その通信におけるセッションキーKsを
Ks=(Φ,・・・,Φα∈G
として計算する。ただし、Φは下記のように定める。
(1)カウンタjを用意し、j=1とセットする。
(2)カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる。
(2a)もしi∈Kならば、Φ=gとセットし、jを1増やして次のiの処理に移る。
(3)もしj≦nならば、j≦nの間、下記の処理を繰り返す。
(3a)Φ=gとセットし、jを1増やす。
Then, the session key Ks in the communication is represented as Ks = (Φ 1 ,..., Φ n ) α ∈ G 2
Calculate as However, Φ j is determined as follows.
(1) Prepare a counter j and set j = 1.
(2) A counter i is prepared and i is incremented by 1 from 1 to 2N−1 while performing the following processing.
(2a) If i∈K, set Φ j = g i , increase j by 1, and proceed to the next processing of i.
(3) If j ≦ n, the following processing is repeated while j ≦ n.
(3a) Set Φ j = g and increase j by one.

上記の処理は、nマルチリニアマップeの入力として、部分木ルート集合Kに含まれるiについてgを使用し、それ以外のn−|K|個の入力についてはg(ダミー)を用い、最後にnマルチリニアマップの出力を(G上で)α乗するものである。|K|は、部分木ルート集合Kの要素数である。 The above processing uses g i for i included in the subtree root set K as input of the n multilinear map e, and uses g (dummy) for the other n− | K | inputs. Finally the output of the n multi-linear map (on G 2) is to multiply alpha. | K | is the number of elements of the subtree root set K.

図7のセッティングでn=8の場合、セッションキーKsは、
Ks=(g,g,g,g12,g16,g,g,g)α
となる。
In the setting of FIG. 7, when n = 8, the session key Ks is
Ks = (g 5, g 7 , g 9, g 12, g 16, g, g, g) α
It becomes.

送信者は、送信すべき情報をセッションキーKsを用いて暗号化して、セッションキーKsを作るのに用いられたノードの集合Kを表す情報(たとえば、ノード番号のリスト)とともに同報通信路で受信機に送信する。また、部分木ルート集合Kを表す情報は、背景技術の欄で説明した鍵指定コード等のタグ情報を用いて表してもよい。さらに、情報の暗号化は、セッションキーKsをそのまま使ってもよいし、たとえばセッションキーKsをSHA−1や、MD5等のハッシュ関数に入力して所望のサイズに変換した値を用いてもよい。   The sender encrypts the information to be transmitted using the session key Ks and uses the broadcast channel together with information (for example, a list of node numbers) representing the node set K used to create the session key Ks. Send to receiver. The information representing the subtree root set K may be represented using tag information such as the key designation code described in the background art section. Furthermore, the information encryption may use the session key Ks as it is, or may use a value obtained by inputting the session key Ks into a hash function such as SHA-1 or MD5 and converting it to a desired size. .

たとえば放送アプリケーションの場合には、その通信における情報復号許容受信機集合Sを表す情報を送信した後に放送コンテンツをセッションキーKsで暗号化して送信してもよいし、情報復号許容受信機集合Sを表す情報と、セッションキーKsを用いてコンテンツキーKcを暗号化した暗号文を送信した後に、セッションキーKsで暗号化されたコンテンツを送信してもよい。CDなどの記録メディアのアプリケーションの場合には、放送アプリケーションにおいて放送していた情報をディスクに記録して配布すればよい。   For example, in the case of a broadcast application, after transmitting information indicating the information decryption allowable receiver set S in the communication, the broadcast content may be transmitted after being encrypted with the session key Ks. The content encrypted and the content encrypted with the session key Ks may be transmitted after transmitting the information and the ciphertext obtained by encrypting the content key Kc using the session key Ks. In the case of an application for a recording medium such as a CD, the information broadcast in the broadcast application may be recorded on a disk and distributed.

(3)受信および復号
受信機uは、同報通信路から送信された情報を受信し、自分がその通信において情報を復号させる受信機の集合、すなわち情報復号許容受信機集合Sに含まれるかどうかを調べる。
(3) Reception and Decoding The receiver u m is included in a set of receivers that receive information transmitted from the broadcast channel and decode the information in the communication, that is, an information decoding allowable receiver set S. Find out if.

これは、自身が秘密鍵を持つノード(自分が割り当てられた葉からルートまでのパス上のノード)が部分木ルート集合Kに含まれるかどうかを調べることにより実行可能である。もし自分が情報復号許容受信機集合Sに含まれなければ、その通信を復号できないので処理を終了する。自分が情報復号許容受信機集合Sに含まれていれば、下記の処理によりセッションキーKsを求め、これを用いて送信された情報を復号する。もし受信機uが情報復号許容受信機集合Sに含まれていれば、部分木ルート集合Kに含まれるノードのうちのただ1つが、uが秘密鍵を保持しているノードの1つとなる。このノードをIとする。 This can be performed by checking whether or not a node having a secret key (a node on a path from the leaf to which the node is assigned) is included in the subtree root set K. If it is not included in the information decoding permission receiver set S, the communication is not able to be decoded, and the process is terminated. If oneself is included in the information decryption allowable receiver set S, the session key Ks is obtained by the following process, and the transmitted information is decrypted using this. If the receiver u m is included in the information decoding allowable receiver set S, only one of the nodes included in the subtree root set K is one of the nodes where u m holds the secret key. Become. Let this node be I.

1.カウンタjを用意し、j=1とセットする。
2.カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる。
(a)もしi∈Kならば、iとIが一致するかどうかを調べる。
i.もしi=Iならば、Φ=sとセットし、jを1増やして次のiの処理に移る。
ii.もしi≠Iならば、Φ=gとセットし、jを1増やして次のiの処理に移る。
3.もしj≦nならば、j≦nの間下記の処理を繰り返す。
(a)Φ=gとセットし、jを1増やす。
4.Ks=(φ,・・・,φ)を求める。
1. A counter j is prepared and j = 1 is set.
2. A counter i is prepared, and i is incremented by 1 from 1 to 2N−1 while performing the following processing.
(A) If iεK, check whether i and I match.
i. If i = I, Φ j = s i is set, j is incremented by 1, and the process proceeds to the next i.
ii. If i ≠ I, Φ j = g i is set, j is incremented by 1, and the process proceeds to the next i.
3. If j ≦ n, the following processing is repeated while j ≦ n.
(A) Set Φ j = g and increase j by one.
4). Ks = (φ 1 ,..., Φ n ) is obtained.

たとえば図7のセッティングで、受信機uはノード9の秘密鍵s=g αを所持しているので、
Ks=(g,g,s,g12,g16,g,g,g)
によりセッションキーKsを求める。
For example, in the setting of FIG. 7, the receiver u 4 has the secret key s 9 = g 9 α of the node 9.
Ks = (g 5, g 7 , s 9, g 12, g 16, g, g, g)
To obtain the session key Ks.

上記の構成とすることにより、nマルチリニアマップを用いてブロードキャスト・エンクリプション方式を構成可能となる。   With the above configuration, a broadcast encryption method can be configured using n multi-linear maps.

本実施例の方式で同報通信される暗号文は1つであり、各受信機が安全に保持する鍵の数はlogN+1個である。また、nはrlog(N/r)を上限として定めることができる。関数の実行量は入力要素数に依存する。上述の論文で提案されている方式は、入力要素数n=Nであったためこのマッピングに要する計算量が大きくなると予想されるが、本発明では入力要素数を小さくすることでこの計算量を削減している。   The ciphertext broadcast by the method of this embodiment is one, and the number of keys securely held by each receiver is logN + 1. Further, n can be determined with rlog (N / r) as an upper limit. The amount of function execution depends on the number of input elements. In the method proposed in the above paper, since the number of input elements is n = N, the amount of calculation required for this mapping is expected to increase. However, in the present invention, the amount of calculation is reduced by reducing the number of input elements. doing.

上述した処理例、すなわち、Diffie−Hellman inversion assumptionを満たすマルチリニアマップ(multilinear map)が存在するという前提の下で、マルチリニアマップを用いた鍵配信技術に階層木構造を組み合わせることによって、各受信機が必要とする計算量を削減させることを可能とした構成例において、暗号文を生成し、提供する情報処理装置において実行する処理シーケンスと、暗号文を受領して復号処理を行なうリーフ対応の例えば受信機等の情報処理装置における処理シーケンスについてフローチャートを参照して説明する。   Under the premise that there is a multi-linear map satisfying the above-described processing example, that is, Diffie-Hellman inversion assumption, each reception is performed by combining a hierarchical tree structure with a key distribution technique using the multi-linear map. In a configuration example that can reduce the amount of calculation required by the machine, a ciphertext is generated and a processing sequence that is executed in an information processing device that provides the ciphertext, and a leaf compatible that receives the ciphertext and performs decryption processing For example, a processing sequence in an information processing apparatus such as a receiver will be described with reference to a flowchart.

まず、図8を参照して、暗号文を生成し、提供する情報処理装置において実行する処理シーケンスについて説明する。   First, a processing sequence executed in an information processing apparatus that generates and provides a ciphertext will be described with reference to FIG.

暗号文送信側の情報処理装置は、まず、ステップS101において、N個の受信機のうち、その通信において情報を復号させる受信機の集合S⊆{1,・・・,n}を選択する。   In step S101, the information processing apparatus on the ciphertext transmission side first selects a set S⊆ {1,..., N} of receivers to decrypt information in the communication among the N receivers.

ステップS102において、リボーク機器を除く情報を復号させる受信機の集合Sに基づいて決定される部分木のルートの集合Kを決定する。例えば図7の構成においては、部分木のルートの集合K={5,7,9,12,16}となる。   In step S102, a set K of subtree routes determined based on a set S of receivers that decode information excluding the revoke device is determined. For example, in the configuration of FIG. 7, the set of roots of the subtree is K = {5, 7, 9, 12, 16}.

ステップS103において、セッションキーKsを設定する。セッションキーKsを
Ks=(Φ,・・・,Φα∈G
として計算する。
In step S103, a session key Ks is set. The session key Ks is represented as Ks = (Φ 1 ,..., Φ n ) α ∈ G 2
Calculate as

セッションキーKsの具体的計算例を、図9に示す。この図9に示す処理は、前述したとおり、
Ks=(Φ,・・・,Φα∈G
として計算する。ただし、Φは下記のように定める。
(1)カウンタjを用意し、j=1とセットする。
(2)カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる。
(2a)もしi∈Kならば、Φ=gとセットし、jを1増やして次のiの処理に移る。
(3)もしj≦nならば、j≦nの間、下記の処理を繰り返す。
(3a)Φ=gとセットし、jを1増やす。
A specific calculation example of the session key Ks is shown in FIG. The process shown in FIG. 9 is as described above.
Ks = (Φ 1 ,..., Φ n ) α ∈ G 2
Calculate as However, Φ j is determined as follows.
(1) Prepare a counter j and set j = 1.
(2) A counter i is prepared and i is incremented by 1 from 1 to 2N−1 while performing the following processing.
(2a) If i∈K, set Φ j = g i , increase j by 1, and proceed to the next processing of i.
(3) If j ≦ n, the following processing is repeated while j ≦ n.
(3a) Set Φ j = g and increase j by one.

上記の処理は、マップeの入力として、Kに含まれるiについてgを使用し、それ以外のn−|K|個の入力についてはgを用い、最後にマップの出力を(G上で)α乗するものである。 The above processing uses g i for i included in K as the input of map e, uses g for the other n− | K | inputs, and finally outputs the map (on G 2 )) To the power of α.

ステップS104において、
セッションキーKsによってコンテンツキーKcを暗号化し、暗号化コンテンツキー
Enc(Ks,Kc)
を算出する。
In step S104,
The content key Kc is encrypted with the session key Ks, and the encrypted content key Enc (Ks, Kc)
Is calculated.

ステップS105において、
a.部分木のルート集合Kを示す情報(たとえば、ノード番号のリスト)
b.暗号化コンテンツキーEnc(Ks,Kc)
c.暗号化コンテンツEnc(Kc,Con)
を通信路を介して送信する。あるいは情報記録媒体に書き込み、提供する。
In step S105,
a. Information indicating the root set K of the subtree (for example, a list of node numbers)
b. Encrypted content key Enc (Ks, Kc)
c. Encrypted content Enc (Kc, Con)
Is transmitted via a communication path. Or it writes in an information recording medium and provides.

情報記録媒体に格納した情報例を図10に示す。情報記録媒体400は、例えばCD、DVD等の情報記録媒体である。ここに、
部分木のルート集合Kを示す情報(たとえば、ノード番号のリスト)401
暗号化コンテンツキーEnc(Ks,Kc)402
暗号化コンテンツEnc(Kc,Con)403
を格納し、提供する。
An example of information stored in the information recording medium is shown in FIG. The information recording medium 400 is an information recording medium such as a CD or a DVD. here,
Information indicating the root set K of the subtree (for example, a list of node numbers) 401
Encrypted content key Enc (Ks, Kc) 402
Encrypted content Enc (Kc, Con) 403
Store and serve.

階層木構造のリーフに対応するユーザ機器としての情報処理装置は、いずれも同報通信路あるいは情報記録媒体を介して、これらの情報を受領することが可能である。しかし、その通信において情報を復号させる受信機の集合Sに含まれる機器のみが暗号文Enc(Ks,Kc)402に適用したセッションキーKsを自己の保有鍵として保持しており、リポーク機器は、暗号文Enc(Ks,Kc)402に適用したセッションキーKsを保有していないので、受信機の集合Sに含まれる機器のみが暗号文Enc(Ks,Kc)402を復号してコンテンツキーKcを取得し、取得したコンテンツキーKcに基づいて暗号化コンテンツEnc(Kc,Con)403を復号してコンテンツ(Con)を取得できる。   Any information processing apparatus as user equipment corresponding to a leaf having a hierarchical tree structure can receive such information via a broadcast communication path or an information recording medium. However, only a device included in the set S of receivers that decrypts information in the communication holds the session key Ks applied to the ciphertext Enc (Ks, Kc) 402 as its own possessed key. Since the session key Ks applied to the ciphertext Enc (Ks, Kc) 402 is not held, only the device included in the receiver set S decrypts the ciphertext Enc (Ks, Kc) 402 and obtains the content key Kc. Based on the acquired content key Kc, the encrypted content Enc (Kc, Con) 403 can be decrypted to acquire the content (Con).

図11を参照して、
a.部分木のルート集合Kを示す情報(たとえば、ノード番号のリスト)
b.暗号化コンテンツキーEnc(Ks,Kc)
c.暗号化コンテンツEnc(Kc,Con)
上記a〜cの各情報を受領したユーザ機器としての情報処理装置における処理手順について説明する。
Referring to FIG.
a. Information indicating the root set K of the subtree (for example, a list of node numbers)
b. Encrypted content key Enc (Ks, Kc)
c. Encrypted content Enc (Kc, Con)
A processing procedure in the information processing apparatus as the user equipment that has received the information items a to c will be described.

まず、ステップS201において、部分木のルート集合Kを示す情報(たとえば、ノード番号のリスト)を読み出す。   First, in step S201, information (for example, a list of node numbers) indicating the root set K of the subtree is read.

ステップS202において、自身の装置が、その通信において情報を復号させる受信機の集合、すなわち情報復号許容受信機集合Sに含まれるか否かを判定する。これは、自身が秘密鍵を持つノード(自分が割り当てられた葉からルートまでのパス上のノード)が部分木のルート集合Kに含まれるかどうかを調べることにより実行可能である。もし、情報復号許容受信機集合Sに含まれなければ、その通信を復号できないので処理を終了する。   In step S202, it is determined whether or not its own device is included in a set of receivers that decode information in the communication, that is, an information decoding allowable receiver set S. This can be executed by checking whether or not a node having a secret key (a node on the path from the leaf to which the node is assigned) is included in the root set K of the subtree. If it is not included in the information decoding allowable receiver set S, the communication cannot be decoded and the process is terminated.

自分が情報復号許容受信機集合Sに含まれていれば、ステップS203に進み、セッションキーKsを導出する。   If it is included in the information decoding permission receiver set S, the process proceeds to step S203, and the session key Ks is derived.

セッションキーKsの具体的計算例を、図12に示す。この図12に示す処理は、前述したとおり、以下の処理である。
1.カウンタjを用意し、j=1とセットする。
2.カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる。
(a)もしi∈Kならば、iとIが一致するかどうかを調べる。
i.もしi=Iならば、Φ=sとセットし、jを1増やして次のiの処理に移る。
ii.もしi≠Iならば、Φ=gとセットし、jを1増やして次のiの処理に移る。
3.もしj≦nならばj≦nの間下記の処理を繰り返す。
(a)Φ=gとセットし、jを1増やす。
4.Ks=(φ,・・・,φ)を求める。
A specific calculation example of the session key Ks is shown in FIG. The process shown in FIG. 12 is the following process as described above.
1. A counter j is prepared and j = 1 is set.
2. A counter i is prepared, and i is incremented by 1 from 1 to 2N−1 while performing the following processing.
(A) If iεK, check whether i and I match.
i. If i = I, Φ j = s i is set, j is incremented by 1, and the process proceeds to the next i.
ii. If i ≠ I, Φ j = g i is set, j is incremented by 1, and the process proceeds to the next i.
3. If j ≦ n, the following processing is repeated while j ≦ n.
(A) Set Φ j = g and increase j by one.
4). Ks = (φ 1 ,..., Φ n ) is obtained.

ステップS204において、セッションキーKsを適用して暗号文Enc(Ks,Kc)を復号してコンテンツキーKcを取得し、取得したコンテンツキーKcに基づいて暗号化コンテンツEnc(Kc,Con)を復号してコンテンツ(Con)を取得する。   In step S204, the ciphertext Enc (Ks, Kc) is decrypted by applying the session key Ks to acquire the content key Kc, and the encrypted content Enc (Kc, Con) is decrypted based on the acquired content key Kc. To acquire the content (Con).

(b)n=2とした暗号学的な2マルチリニアマップを用いたブロードキャスト・エンクリプション方式   (B) Broadcast encryption method using a cryptographic two-multilinear map with n = 2

上述の実施例においては、任意のn(n>1)に対する暗号学的なnマルチリニアマップ(n−multilinear map)が存在することを前提としているが、以下、既に実証されているn=2とした暗号学的なnマルチリニアマップ、すなわち2マルチリニアマップにおける具体例を説明する。なお、n=2とした暗号学的なnマルチリニアマップについては、D.Boneh and M.Franklin著の論文"Identity−Based Encryption from the Weil Paring"(この論文は、著者の一人であるProf.Bonehが管理するウェブサイトにhttp://crypto.stanford.edu/~dabo./papers/ibe.pdfとして掲載されている)   In the above-described embodiment, it is assumed that there is a cryptographic n-multilinear map for an arbitrary n (n> 1). Hereinafter, n = 2 that has already been demonstrated. A specific example of the cryptographic n multi-linear map, that is, the two multi-linear map will be described. For the cryptographic n multi-linear map with n = 2, see D.C. Boneh and M.M. Franklin's paper "Identity-Based Encryption from the Weil Paring" .Published as .pdf)

前述したように、本出願人は、特開2001−352322号公報において、図4に示す木の各ノードにノードキーを割り当て、各受信機は自分が割り当てられたリーフ(葉)からルートまでのパス上のノードのノードキーを保持する構成としたブロードキャスト・エンクリプション方式を開示している。   As described above, the present applicant assigns a node key to each node of the tree shown in FIG. 4 in Japanese Patent Laid-Open No. 2001-352322, and each receiver has a path from a leaf (leaf) to which it is assigned to the root. A broadcast encryption method configured to hold the node key of the upper node is disclosed.

従来方式においては、各受信機が持つ鍵の数がlogN+1、同報通信される暗号文数の上限がrlog(N/r)各受信機が必要な計算量は1回の復号処理である。
ただし、
ただし、N:ユーザ(受信機)の総数
r:情報の受信者として選択されない(リボークされる)受信機の数
である。
In the conventional method, the number of keys held by each receiver is log N + 1, and the upper limit of the number of ciphertexts to be broadcast is r log (N / r). The amount of calculation required for each receiver is one decryption process.
However,
Where N is the total number of users (receivers) r is the number of receivers that are not selected (revoked) as information recipients.

このような階層木構造の暗号文配信システムでは、リボーク機器数rに応じて、最大nlog(N/r)個の暗号文をすることになるが、2マルチリニアマップを適用することで、最大の暗号文数を、

Figure 2005123678
とすることができる。 In such a ciphertext distribution system having a hierarchical tree structure, a maximum of nlog (N / r) ciphertexts are generated according to the number of revoked devices r. Ciphertext number of
Figure 2005123678
It can be.

以下において説明するブロードキャスト・エンクリプション方式について、上述の任意のnを適用した処理例と同様、
(1)セットアップ、
(2)暗号化および送信、
(3)受信および復号、
の3つのフェーズに区分して説明する。セットアップフェーズは、システムの立ち上げ時に1度だけ行う。暗号化および送信、受信および復号の各フェーズは、情報の送信を行うたびに繰り返す。
For the broadcast encryption method described below, as in the example of processing using any n described above,
(1) Setup,
(2) Encryption and transmission,
(3) reception and decoding,
These will be described in the following three phases. The setup phase is performed only once at system startup. The encryption, transmission, reception, and decryption phases are repeated each time information is transmitted.

ブロードキャスト・エンクリプション方式を構成するエンティティとして、暗号文の生成および提供処理を行なう情報処理装置としての送信者(送信機)と、暗号文の受領および復号処理を行なう情報処理装置としてのユーザデバイス等の受信機あるいは受信者(ユーザ)であり、暗号文の受領および復号処理を行なう情報処理装置またはユーザの総数をNとする。また、システムを管理する管理センタを設ける。上記(1)セットアップ処理は、送信者あるいは管理センタが実行する。   As an entity constituting the broadcast encryption system, a sender (transmitter) as an information processing device that performs ciphertext generation and provision processing, a user device as an information processing device that performs ciphertext reception and decryption processing, and the like And N is the total number of information processing apparatuses or users who receive and decrypt ciphertexts. A management center for managing the system is also provided. The (1) setup process is executed by the sender or the management center.

簡単のため、暗号文を受領する情報処理装置またはユーザの総数:Nは2のべき乗の数とする。実際のNが2のべき乗でない場合は、Nより大きな最小の2のべき乗の数をNとして用いても構わない。   For simplicity, the total number of information processing apparatuses or users that receive ciphertext: N is a power of 2. If actual N is not a power of 2, the smallest number of powers of 2 larger than N may be used as N.

(1)セットアップ
以下、暗号文の生成および提供処理を行なうエンティティまたは情報処理装置を送信者または送信機とし、暗号文を受領するエンティティまたは情報処理装置を受信者または受信機として説明する。セットアップ処理は、送信者側、あるいはシステム管理者によって実行されるが、以下では、送信者においてセットアップ処理を行うものとして説明する。
(1) Setup Hereinafter, an entity or information processing apparatus that performs ciphertext generation and provision processing will be described as a sender or transmitter, and an entity or information processing apparatus that receives ciphertext will be described as a receiver or receiver. The setup process is executed by the sender or the system administrator. In the following description, it is assumed that the setup process is performed by the sender.

送信者は、Diffie−Hellman inversion assumptionを満たす2マルチリニアマップ(2−multilinear map)を定め、受信機に公開する。   The sender defines a 2-multilinear map that satisfies Diffie-Hellman inversion assumption and publishes it to the receiver.

ここで、Diffie−Hellman inversion assumptionを満たすとは、gとg∈Gが与えられたときに、
e(g,・・・g)1/b∈G
を計算することが困難であることを言う。なお、gは、群Gの生成元である。
Here, satisfying Diffie-Hellman inversion assumption means that when g and g b ∈G 1 are given,
e (g,... g) 1 / b ∈ G 2
Say that it is difficult to calculate. Incidentally, g is a generator of the group G 1.

各ノードi(ただしi=1,2,・・・,2N−1)について、
公開値g∈G
を定める。
For each node i (where i = 1, 2,..., 2N−1)
Public value g i ∈G 1
Determine.

はG中のランダムな要素をそれぞれ選んでもよいし、先に定めたマルチリニアマップから別の方法で定めてもよい。各gはノードとの対応とともに公開する。また、ランダムな値α∈[1,p−1]を定め、各iについて、
秘密鍵s=g α
を計算する。
g i may each select a random element in G 1 , or may be determined by another method from the previously determined multi-linear map. Each g i will be published along with the correspondence between the nodes. Also, define a random value α∈ [1, p−1], and for each i,
Private key s i = g i α
Calculate

ここでpは群Gの位数である。また受信機u(ただしm=1,・・・,N)に対して、uが割り当てられた葉からルートに至るパス上のノードの秘密鍵sを鍵として秘密に与える。受信機は秘密鍵sを安全に保管する。送信者は群Gの生成元gを選択し公開する。 Where p is the order of the group G i. Further, the secret key s i of the node on the path from the leaf to which u m is allocated to the root is secretly given to the receiver u m (where m = 1,..., N). The receiver securely stores the private key s i . The sender to publish select the generator g of the group G i.

図4に示した例では、受信機uは秘密鍵s,s,s,s,s19を与えられる。 In the example shown in FIG. 4, the receiver u 4 is given secret keys s 1 , s 2 , s 4 , s 9 , s 19 .

(2)暗号化および送信
送信者はN個の受信機のうち、その通信において情報を復号させる受信機の集合S⊆{1,・・・,n}を選択する。次に、情報復号許容受信機集合Sに含まれない、すなわちリボークするレシーバに割り当てられたリーフ(葉)からルートまでのすべての枝、ノード、そのノードに接する枝を取り除く。すると、1つ以上の切り離された部分木が残るが、それぞれの部分木のルートの集合をKと置く。
(2) Encryption and transmission The sender selects a set S⊆ {1,..., N} of receivers to decrypt information in the communication among N receivers. Next, all branches from the leaf to the root that are not included in the information decoding allowable receiver set S, that is, assigned to the receiver to be revoked, nodes, and branches that contact the nodes are removed. Then, one or more separated subtrees remain, but the set of roots of each subtree is set as K.

次に、部分木ルート集合Kの要素をその番号iの順に、2つずつ、

Figure 2005123678
個のサブグループSGに分割する。
ただし、
Figure 2005123678
である。 Next, the elements of the subtree root set K are arranged in order of the number i, two by two,
Figure 2005123678
Divide into subgroups SG k .
However,
Figure 2005123678
It is.

なお、
|K|は、部分木ルート集合Kの要素数を示し、

Figure 2005123678
は、|K|/2以上である最小の整数を表す。 In addition,
| K | indicates the number of elements of the subtree root set K,
Figure 2005123678
Represents the smallest integer greater than or equal to | K | / 2.

ただし、最後のサブグループ

Figure 2005123678
に部分木のルートの集合Kの要素が1つしか入らない場合には、ノード番号2Nのダミーノードの存在を仮定し、このダミーノードがこのサブグループのもう1つの要素となる。 However, the last subgroup
Figure 2005123678
If there is only one element of the root set K in the subtree, it is assumed that there is a dummy node with node number 2N, and this dummy node is another element of this subgroup.

上述の例と同様、図4に示す2分木構成、すなわち、各受信機が1つずつ各リーフ(葉)に割り当てられ受信者数N=16である2分木構成を想定し、図7に示すように、図4のセッティングでu,u11,u12の3台の受信機をリボークする場合の処理について説明する。 As in the above example, assume the binary tree configuration shown in FIG. 4, that is, the binary tree configuration in which each receiver is assigned to each leaf and the number of recipients is N = 16. As shown in FIG. 4, processing when the three receivers u 3 , u 11 , and u 12 are revoked with the setting shown in FIG. 4 will be described.

図7に示すように、部分木のルートの集合K={5,7,9,12,16}となる。この場合、サブグループは、
SG={5,7}
SG={9,12}
SG={16,32}
となる。
As shown in FIG. 7, the set of roots of the subtree is K = {5, 7, 9, 12, 16}. In this case, the subgroup is
SG 1 = {5,7}
SG 2 = {9,12}
SG 3 = {16, 32}
It becomes.

そして、その通信におけるサブグループSG用のサブグループキーKSGkを、
SGk=e(Φj1,Φj2α∈G
として定める。
なお、Φj1,Φj2はサブグループSGの要素であるノードj,j(j<jとする)に対応する公開鍵gj1およびgj2である。
ただし、jがKの要素ではない。すなわちダミーノードである場合には、
Φj2=gとする。
Then, the sub-group key K SGk for the sub-group SG k in its communication,
K SGk = e (Φ j1 , Φ j2 ) α ∈ G 2
Determine as
Φ j1 and Φ j2 are public keys g j1 and g j2 corresponding to nodes j 1 and j 2 (assuming j 1 <j 2 ) that are elements of the subgroup SG k .
However, j 2 is not an element of K. That is, if it is a dummy node,
Let Φ j2 = g.

上記の例では、各サブグループキーKSGkは、下記のように設定される。
SG1=e(g,gα
SG2=e(g,g12α
SG3=e(g16,g)α
である。
In the above example, each subgroup key K SGk is set as follows .
K SG1 = e (g 5 , g 7 ) α
K SG2 = e (g 9 , g 12 ) α
K SG3 = e (g 16 , g) α
It is.

次に、その通信における全体のセッションキーKsをランダムに定める。セッションキーKsは通信の内容(たとえば映画などのコンテンツ)を暗号化するための鍵であり、たとえば暗号化アルゴリズムに米国標準のAESの128bit版を用いる際には、セッションキーKsは128bitとなる。   Next, the entire session key Ks in the communication is determined randomly. The session key Ks is a key for encrypting the contents of communication (for example, content such as a movie). For example, when the 128-bit version of the American standard AES is used for the encryption algorithm, the session key Ks is 128 bits.

次に、個々のサブグループキーを用いてセッションキーKsを暗号化した暗号文

Figure 2005123678
を、暗号文
CT=E(H(KSGk),Ks)として設定する。
ただし、E(A,B)は鍵Aを用いた平文Bの暗号化を示す。 Next, ciphertext obtained by encrypting the session key Ks using each subgroup key
Figure 2005123678
Is set as ciphertext CT k = E (H (K SGk ), Ks).
Here, E (A, B) indicates encryption of plaintext B using the key A.

暗号化アルゴリズムとしてはたとえば米国標準のAESの128bit版を用いる。関数Hは、Gの任意の要素を、使用する暗号化アルゴリズムの鍵長(たとえば128bit)に縮約するハッシュ関数である。暗号化アルゴリズムEとハッシュ関数Hはシステムであらかじめ定めてあり(送信者が定めてもよい)、公開されている。 As an encryption algorithm, for example, a 128-bit version of AES of American standard is used. Function H, any element of G 2, a condensation promises hash function to the key length of the encryption algorithm (e.g. 128bit) to be used. The encryption algorithm E and the hash function H are predetermined by the system (may be determined by the sender) and are made public.

送信者は、送信すべき情報をセッションキーKを用いて暗号化して、部分木のルートの集合Kを表す情報(たとえば、ノード番号のリスト)と、上記の暗号文、

Figure 2005123678
とを、ともに同報通信路で受信機に送信する。 The sender encrypts information to be transmitted by using the session key K s , information (for example, a list of node numbers) representing the root tree set K, and the above ciphertext,
Figure 2005123678
Are transmitted to the receiver via a broadcast channel.

たとえば放送アプリケーションの場合には、部分木のルートの集合Kを表す情報を送信した後に、暗号文、

Figure 2005123678
を送信し、その後に放送コンテンツをセッションキーKsで暗号化して送信してもよい。 For example, in the case of a broadcast application, after sending information representing a set K of subtree roots,
Figure 2005123678
After that, the broadcast content may be encrypted with the session key Ks and transmitted.

あるいは、通信において情報を復号させる受信機の集合Sを表す情報と、暗号文

Figure 2005123678
と、セッションキーKsで暗号化したコンテンツキーKcを送信した後に、コンテンツキーKcで暗号化されたコンテンツを送信してもよい。CDなどの記録メディアのアプリケーションの場合には、放送アプリケーションにおいて放送していた情報をディスクに記録して配布すればよい。 Alternatively, information representing a set S of receivers for decrypting information in communication and ciphertext
Figure 2005123678
Then, after transmitting the content key Kc encrypted with the session key Ks, the content encrypted with the content key Kc may be transmitted. In the case of an application for a recording medium such as a CD, the information broadcast in the broadcast application may be recorded on a disk and distributed.

(3)受信および復号
受信機uは、同報通信路から送信された情報を受信し、自分がその通信において情報を復号させる受信機の集合Sに含まれるかどうかを調べる。これは、自身が秘密鍵を持つノード(自分が割り当てられた葉からルートまでのパス上のノード)がKに含まれるかどうかを調べることにより行える。
(3) Reception and decoding The receiver u m receives information transmitted from the broadcast channel and checks whether it is included in the set S of receivers for decoding information in the communication. This can be done by checking whether K includes a node having a secret key (node on the path from the leaf to which it is assigned to the root).

もし自分が情報復号許容受信機集合Sに含まれなければ、その通信を復号できないので処理を終了する。自分が情報復号許容受信機集合Sに含まれていれば、自分がどのサブグループの暗号文を復号すべきかを調べる。これは、部分木ルート集合Kの要素を2つずつ区切ったときの何番目に、自分が秘密鍵を持つノードが入るかを探すことで求められる。そして、受信機uは、自分が所有する秘密鍵に対応するサブグループSGのサブグループキーを下記のようにして求める。
SGk=e(s,Φ)∈G (i<jの場合)
SGk=e(Φ,s)∈G (i>jの場合)
If it is not included in the information decoding permission receiver set S, the communication is not able to be decoded, and the process is terminated. If it is included in the information decryption allowable receiver set S, it is checked which subgroup ciphertext should be decrypted by itself. This can be obtained by searching for the number of nodes when the elements of the sub-tree root set K are divided into two when the node having the secret key is entered. Then, the receiver u m obtains the sub group key of the sub group SG k corresponding to the secret key owned by itself as follows.
K SGk = e (s i , Φ j ) ∈G 2 (when i <j)
K SGk = e (Φ j , s i ) εG 2 (when i> j)

ここで、sは、サブグループSGの要素のうち、受信機uが秘密鍵を持つノードiに対応する秘密鍵であり、Φは、iではないほうのノードjに対応する公開情報gである。ただし、jが部分木のルートの集合Kの要素ではない、すなわちダミーノードである場合には、Φ=gとする。 Here, s i is a secret key corresponding to the node i in which the receiver u m has a secret key among the elements of the subgroup SG k , and Φ j is a public key corresponding to the node j that is not i is information g i. However, if j is not an element of the root tree set K, that is, is a dummy node, Φ j = g.

たとえば上記の例で受信機uはノードgの秘密鍵s=g αを所持しているので、
SG2=e(s,Φ12
としてサブグループSGのサブグループキーKSG2を求めることができる。
For example, in the above example, the receiver u m possesses the secret key s 9 = g 9 α of the node g.
K SG2 = e (s 9 , Φ 12 )
Can be determined subgroup key K SG2 subgroup SG 2 as.

次に、受信機uは、上で求めたサブグループキーKSGkからハッシュ値H(KSGk)を計算し、これを用いて暗号文CTkを復号してセッションキーKsを求め、これを用いて送信された情報を復号する。 Next, the receiver u m calculates a hash value H (K SGk ) from the subgroup key K SGk obtained above, and uses this to decrypt the ciphertext CTk to obtain a session key Ks, which is used. The information sent is decrypted.

上記のような構成とすることにより、2マルチリニアマップを用いてN個の受信機に鍵(セッションキーKs)を安全に配信できるシステムを構成することが可能となる。上記構成では受信機が安全に保管しなければならない鍵は1つ(x)だけであり、たとえばセッションキーKsを直接コンテンツの暗号化に用いる場合などにおいて、鍵配信のために同報通信されるメッセージの個数は、

Figure 2005123678
となる。 With the configuration as described above, it is possible to configure a system that can securely distribute a key (session key Ks) to N receivers using two multi-linear maps. In the above configuration, the receiver has only one key (x i ) that must be securely stored. For example, when the session key Ks is directly used for content encryption, it is broadcast for key distribution. The number of messages
Figure 2005123678
It becomes.

なお、リボークする受信機数をrとしたときに、部分木ルート集合Kの要素数|K|の最大値はrlog(N/r)であることがわかっている。 It is known that the maximum value of the number of elements | K | of the subtree root set K is rlog 2 (N / r), where r is the number of receivers to be revoked.

上記は2マルチリニアマップを用いる方法について詳しく述べたが、この方式は、前述したように、任意の整数n>1に対するnマルチリニアマップを用いる方式にそのまま拡張可能である。nが大きくなると、受信機が保管する鍵数は1のままであるのに対し、同報通信されるメッセージ数が、

Figure 2005123678
となり、上記のn=2の場合に比べてこの面での効率がよくなる。 The above has described in detail the method using two multi-linear maps. However, as described above, this method can be directly extended to a method using n multi-linear maps for an arbitrary integer n> 1. As n increases, the number of keys stored by the receiver remains one, whereas the number of broadcast messages is
Figure 2005123678
Therefore, the efficiency in this aspect is improved as compared with the case of n = 2.

(変形例)
上述した実施例においては、最後のサブグループ

Figure 2005123678
に部分木ルート集合Kの要素が1つしか入らない場合には、ノード番号2Nのダミーノードを利用していたが、変形例としてはそのサブグループにKの要素が1つしか入らない場合には、そのノードiの秘密鍵sを用いて、セッションキーを暗号化してもよい。 (Modification)
In the embodiment described above, the last subgroup
Figure 2005123678
In the case where only one element of the sub-tree root set K is included, the dummy node having the node number 2N is used. However, as a modified example, only one element of K is included in the subgroup. May encrypt the session key using the secret key s i of the node i.

すなわち、暗号文を

Figure 2005123678
として設定してもよい。ここで、H'は、Gの任意の要素を、使用する暗号化アルゴリズムの鍵長(たとえば128bit)に縮約するハッシュ関数であり、公開されているものとする。 That is, the ciphertext
Figure 2005123678
May be set as Here, H ′ is a hash function that reduces an arbitrary element of G 1 to the key length (for example, 128 bits) of the encryption algorithm to be used, and is publicly available.

上述した処理例、すなわち、Diffie−Hellman inversion assumptionを満たす2マルチリニアマップを用いた鍵配信技術に階層木構造を組み合わせることによって、各受信機が必要とする計算量を削減させることを可能とした構成例において、暗号文を生成し、提供する情報処理装置において実行する処理シーケンスと、暗号文を受領して復号処理を行なうリーフ対応の例えば受信機等の情報処理装置における処理シーケンスについてフローチャートを参照して説明する。   It is possible to reduce the amount of calculation required for each receiver by combining a hierarchical tree structure with the above-described processing example, that is, key distribution technology using two multi-linear maps satisfying Diffie-Hellman inversion assumption. In the configuration example, see the flowchart for the processing sequence executed in the information processing apparatus that generates and provides the ciphertext and the processing sequence in the information processing apparatus such as a receiver that accepts the ciphertext and performs the decryption processing. To explain.

まず、図13を参照して、暗号文を生成し、提供する情報処理装置において実行する処理シーケンスについて説明する。   First, a processing sequence executed in an information processing apparatus that generates and provides a ciphertext will be described with reference to FIG.

暗号文送信側の情報処理装置は、まず、ステップS301において、N個の受信機のうち、その通信において情報を復号させる受信機の集合S⊆{1,・・・,n}を選択する。   First, in step S301, the information processing apparatus on the ciphertext transmission side selects a set S⊆ {1,..., N} of receivers to decrypt information in the communication among the N receivers.

ステップS302において、リボーク機器を除く情報を復号させる受信機の集合Sに基づいて決定される部分木のルートの集合Kを決定する。例えば図7の構成においては、部分木のルートの集合K={5,7,9,12,16}となる。   In step S302, a root set K of subtrees determined based on a set S of receivers for decoding information excluding the revoke device is determined. For example, in the configuration of FIG. 7, the set of roots of the subtree is K = {5, 7, 9, 12, 16}.

ステップS303において、サブグループSG用のサブグループキーKSGkを、
SGk=e(Φj1,Φj2α∈G
として定める。
In step S303, the sub-group key K SGk for the sub-group SG k,
K SGk = e (Φ j1 , Φ j2 ) α ∈ G 2
Determine as

ステップS304において、その通信における全体のセッションキーKsをランダムに定める。セッションキーKsは通信の内容(たとえば映画などのコンテンツ)を暗号化するための鍵であり、たとえば暗号化アルゴリズムに米国標準のAESの128bit版を用いる際には、セッションキーKsは128bitとなる。   In step S304, the entire session key Ks in the communication is randomly determined. The session key Ks is a key for encrypting the contents of communication (for example, content such as a movie). For example, when the 128-bit version of the American standard AES is used for the encryption algorithm, the session key Ks is 128 bits.

次に、ステップS305において、個々のサブグループキーを用いてセッションキーKsを暗号化した暗号文
CT=E(H(KSGk),Ks)を導出する。
Next, in step S305, a ciphertext CT k = E (H (K SGk ), Ks) obtained by encrypting the session key Ks using each subgroup key is derived.

次にステップS306において、セッションキーKsによってコンテンツキーKcを暗号化し、暗号化コンテンツキー
Enc(Ks,Kc)
を算出する。
In step S306, the content key Kc is encrypted with the session key Ks, and the encrypted content key Enc (Ks, Kc) is encrypted.
Is calculated.

ステップS307において、
a.部分木のルート集合Kを示す情報(たとえば、ノード番号のリスト)
b.個々のサブグループキーを用いてセッションキーKsを暗号化した暗号文CT=E(H(KSGk),Ks)
c.暗号化コンテンツキーEnc(Ks,Kc)
d.暗号化コンテンツEnc(Kc,Con)
を通信路を介して送信する。あるいは情報記録媒体に書き込み、提供する。
In step S307,
a. Information indicating the root set K of the subtree (for example, a list of node numbers)
b. Ciphertext CT k = E (H (K SGk ), Ks) obtained by encrypting session key Ks using each subgroup key
c. Encrypted content key Enc (Ks, Kc)
d. Encrypted content Enc (Kc, Con)
Is transmitted via a communication path. Or it writes in an information recording medium and provides.

情報記録媒体に格納した情報例を図14に示す。情報記録媒体500は、例えばCD、DVD等の情報記録媒体である。ここに、
部分木のルート集合Kを示す情報(たとえば、ノード番号のリスト)501
個々のサブグループキーを用いてセッションキーKsを暗号化した暗号文CT=E(H(KSGk),Ks)502
暗号化コンテンツキーEnc(Ks,Kc)503
暗号化コンテンツEnc(Kc,Con)504
を格納し、提供する。
An example of information stored in the information recording medium is shown in FIG. The information recording medium 500 is an information recording medium such as a CD or a DVD. here,
Information (for example, a list of node numbers) 501 indicating the root set K of the subtree
Ciphertext CT k = E (H (K SGk ), Ks) 502 obtained by encrypting session key Ks using each subgroup key
Encrypted content key Enc (Ks, Kc) 503
Encrypted content Enc (Kc, Con) 504
Store and serve.

階層木構造のリーフに対応するユーザ機器としての情報処理装置は、いずれも同報通信路あるいは情報記録媒体を介して、これらの情報を受領することが可能である。しかし、その通信において情報を復号させる受信機の集合Sに含まれる機器のみが、個々のサブグループキーを用いてセッションキーKsを暗号化した暗号文CT=E(H(KSGk),Ks)502に適用したサブグループキーを導出するための秘密キーを自己の保有鍵として保持しており、リボーク機器は、暗号文CT=E(H(KSGk),Ks)502に適用したサブグループキーを導出するための秘密キーを保有していないので、受信機の集合Sに含まれる機器のみが暗号文CT=E(H(KSGk),Ks)502を復号してセッションキーKsを取得し、さらに、取得したセッションキーKsにより、暗号化コンテンツキーEnc(Ks,Kc)を復号してコンテンツキーKcを取得し、取得したコンテンツキーKcに基づいて暗号化コンテンツEnc(Kc,Con)504を復号してコンテンツ(Con)を取得できる。 Any information processing apparatus as user equipment corresponding to a leaf having a hierarchical tree structure can receive such information via a broadcast communication path or an information recording medium. However, only the devices included in the set S of receivers that decrypt the information in the communication can encrypt the ciphertext CT k = E (H (K SGk ), Ks with the session key Ks encrypted using the individual subgroup keys. ) The secret key for deriving the sub group key applied to 502 is held as its own key, and the revoke device uses the sub key applied to the ciphertext CT k = E (H (K SGk ), Ks) 502. Since the private key for deriving the group key is not held, only the device included in the receiver set S decrypts the ciphertext CT k = E (H (K SGk ), Ks) 502 and the session key Ks Furthermore, the encrypted content key Enc (Ks, Kc) is decrypted with the acquired session key Ks to acquire the content key Kc, and the acquired content key Encrypted content Enc (Kc, Con) 504 by decoding the can acquire the content (Con) based on Kc.

図15を参照して、
a.部分木のルート集合Kを示す情報(たとえば、ノード番号のリスト)
b.個々のサブグループキーを用いてセッションキーKsを暗号化した暗号文CT=E(H(KSGk),Ks)
c.暗号化コンテンツキーEnc(Ks,Kc)
d.暗号化コンテンツEnc(Kc,Con)
上記a〜dの各情報を受領したユーザ機器としての情報処理装置における処理手順について説明する。
Referring to FIG.
a. Information indicating the root set K of the subtree (for example, a list of node numbers)
b. Ciphertext CT k = E (H (K SGk ), Ks) obtained by encrypting session key Ks using each subgroup key
c. Encrypted content key Enc (Ks, Kc)
d. Encrypted content Enc (Kc, Con)
A processing procedure in the information processing apparatus as the user equipment that has received the information items a to d will be described.

まず、ステップS401において、部分木のルート集合Kを示す情報(たとえば、ノード番号のリスト)を読み出す。   First, in step S401, information (for example, a list of node numbers) indicating the root set K of the subtree is read.

ステップS402において、自身の装置が、その通信において情報を復号させる受信機の集合、すなわち情報復号許容受信機集合Sに含まれるか否かを判定する。これは、自身が秘密鍵を持つノード(自分が割り当てられた葉からルートまでのパス上のノード)が部分木のルート集合Kに含まれるかどうかを調べることにより実行可能である。もし、情報復号許容受信機集合Sに含まれなければ、その通信を復号できないので処理を終了する。   In step S402, it is determined whether or not its own device is included in a set of receivers that decode information in the communication, that is, an information decoding allowable receiver set S. This can be executed by checking whether or not a node having a secret key (a node on the path from the leaf to which the node is assigned) is included in the root set K of the subtree. If it is not included in the information decoding allowable receiver set S, the communication cannot be decoded and the process is terminated.

自分が情報復号許容受信機集合Sに含まれていれば、ステップS403に進み、自分が所有する秘密鍵に対応するサブグループSGのサブグループキーを前述したように、下記のようにして求める。
SGk=e(s,Φ)∈G (i<jの場合)
SGk=e(Φ,s)∈G (i>jの場合)
If it is included in the information decryption allowable receiver set S, the process proceeds to step S403, and the subgroup key of the subgroup SGk corresponding to the private key that it owns is obtained as described above. .
K SGk = e (s i , Φ j ) ∈G 2 (when i <j)
K SGk = e (Φ j , s i ) εG 2 (when i> j)

次に、ステップS404において、サブグループキーKSGkからハッシュ値H(KSGk)を計算し、これを用いてセッションキーの暗号化データである暗号文CT=E(H(KSGk),Ks)を復号してセッションキーKsを求める。 Next, in step S404, a hash value H (K SGk ) is calculated from the subgroup key K SGk , and using this, the ciphertext CT k = E (H (K SGk ), Ks, which is the encrypted data of the session key. ) To obtain the session key Ks.

ステップS405において、セッションキーKsを適用して暗号文Enc(Ks,Kc)を復号してコンテンツキーKcを取得し、ステップS406において、取得したコンテンツキーKcに基づいて暗号化コンテンツEnc(Kc,Con)を復号してコンテンツ(Con)を取得する。   In step S405, the ciphertext Enc (Ks, Kc) is decrypted by applying the session key Ks to obtain the content key Kc. In step S406, the encrypted content Enc (Kc, Con is based on the obtained content key Kc. ) To obtain the content (Con).

以下、本発明の第2実施例について説明する。実施例2は、generalized Diffie−Hellman assumptionを満たすマルチリニアマップ(multilinear map)が存在するという前提の下で、マルチリニアマップを用いた鍵配信技術に階層木構造を組み合わせることによって、各受信機が必要とする計算量を削減させることを可能とした実施例である。   The second embodiment of the present invention will be described below. In the second embodiment, on the assumption that there is a multilinear map satisfying the generalized Diffie-Hellman assumption, each receiver is configured by combining a hierarchical tree structure with a key distribution technique using a multilinear map. This is an embodiment that makes it possible to reduce the amount of calculation required.

本実施例の説明においても上述の実施例1と同様、以下の(a)(b)の態様別に、順に具体的な暗号文配信構成について説明する。
(a)任意数n(n>1)について暗号学的なnマルチリニアマップが存在すると仮定し、そのようなマップであるnマルチリニアマップeを用いたブロードキャスト・エンクリプション方式
(b)n=2とした暗号学的な2マルチリニアマップを用いたブロードキャスト・エンクリプション方式
Also in the description of the present embodiment, as in the first embodiment, a specific ciphertext distribution configuration will be described in order for each of the following modes (a) and (b).
(A) Assuming that there is a cryptographic n-multilinear map for an arbitrary number n (n> 1), a broadcast encryption scheme using such a map n-multilinear map e (b) n = Broadcast encryption method using a cryptographic 2 multi-linear map

(a)任意数n(n>1)のnマルチリニアマップeを用いたブロードキャスト・エンクリプション方式   (A) Broadcast encryption scheme using an arbitrary number n (n> 1) of n multi-linear maps e

まず、任意数n(n>1)を設定したnマルチリニアマップeを用いたブロードキャスト・エンクリプション方式について説明する。   First, a broadcast encryption method using an n multilinear map e in which an arbitrary number n (n> 1) is set will be described.

以下、本実施例2におけるブロードキャスト・エンクリプション方式について、上述の実施例1と同様、
(1)セットアップ、
(2)暗号化および送信、
(3)受信および復号、
の3つのフェーズに区分して説明する。
Hereinafter, the broadcast encryption method in the second embodiment is the same as in the first embodiment.
(1) Setup,
(2) Encryption and transmission,
(3) reception and decoding,
These will be described in the following three phases.

セットアップフェーズは、システムの立ち上げ時に1度だけ行う。暗号化および送信、受信および復号の各フェーズは、情報の送信を行うたびに繰り返す。   The setup phase is performed only once at system startup. The encryption, transmission, reception, and decryption phases are repeated each time information is transmitted.

ブロードキャスト・エンクリプション方式を構成するエンティティとして、暗号文の生成および提供処理を行なう情報処理装置としての送信者(送信機)と、暗号文の受領および復号処理を行なう情報処理装置としてのユーザデバイス等の受信機あるいは受信者(ユーザ)であり、暗号文の受領および復号処理を行なう情報処理装置またはユーザの総数をNとする。また、システムを管理する管理センタを設ける。上記(1)セットアップ処理は、送信者あるいは管理センタが実行する。   As an entity constituting the broadcast encryption system, a sender (transmitter) as an information processing device that performs ciphertext generation and provision processing, a user device as an information processing device that performs ciphertext reception and decryption processing, and the like And N is the total number of information processing apparatuses or users who receive and decrypt ciphertexts. A management center for managing the system is also provided. The (1) setup process is executed by the sender or the management center.

簡単のため、暗号文を受領する情報処理装置またはユーザの総数:Nは2のべき乗の数とする。実際のNが2のべき乗でない場合は、Nより大きな最小の2のべき乗の数をNとして用いても構わない。   For simplicity, the total number of information processing apparatuses or users that receive ciphertext: N is a power of 2. If actual N is not a power of 2, the smallest number of powers of 2 larger than N may be used as N.

(1)セットアップ
以下、暗号文の生成および提供処理を行なうエンティティまたは情報処理装置を送信者または送信機とし、暗号文を受領するエンティティまたは情報処理装置を受信者または受信機として説明する。セットアップ処理は、送信者側、あるいはシステム管理者によって実行されるが、以下では、送信者においてセットアップ処理を行うものとして説明する。
(1) Setup Hereinafter, an entity or information processing apparatus that performs ciphertext generation and provision processing will be described as a sender or a transmitter, and an entity or information processing apparatus that receives a ciphertext will be described as a receiver or a receiver. The setup process is executed by the sender or the system administrator. In the following description, it is assumed that the setup process is performed by the sender.

送信者は、実施例1と同様に、リーフ(葉)の数がNである2分木を定義し、各ノードiに番号を付与する。受信機は1つずつ各リーフ(葉)に割り当てる。   As in the first embodiment, the sender defines a binary tree with N leaves and assigns a number to each node i. The receiver assigns each leaf one by one.

送信者はgeneralized Diffie−Hellman assumptionを満たすnマルチリニアマップ(n−multilinear map)を定め、受信機に公開する。ただし、nは総受信機数Nに対し、n=N−1と定める。   The sender defines an n-multilinear map that satisfies the generalized Diffie-Hellman assumption and publishes it to the receiver. However, n is determined as n = N−1 with respect to the total number N of receivers.

ここで、generalized Diffie−Hellman assumptionを満たすとは、

Figure 2005123678
と、
n個の受信機{1,・・・,n}のうちの部分集合、情報復号許容受信機集合S⊂{1,・・・,n}に対する
Figure 2005123678
が与えられたときに、
Figure 2005123678
を求めることが困難であることを言う。ここでgは群Gの生成元である。 Here, satisfying the generalized Diffie-Hellman assumption:
Figure 2005123678
When,
a subset of n receivers {1,..., n}, information decoding allowable receiver set S⊂ {1,.
Figure 2005123678
Is given,
Figure 2005123678
Saying that it is difficult to seek. Where g is the generator of the group G 1.

ただし、nは、実施例1の方法で求めたものマイナス1とする。実施例1においては、nは下記のいずれかの定め方で定めていた。
(I)総受信機数Nと、リボーク受信機数rの全ての組み合わせから必要なnを決める。
(II)システムでリボーク受信機数rの上限Rを定め、そこから必要なnを決める。
However, n is set to minus 1 obtained by the method of the first embodiment. In Example 1, n was determined by one of the following methods.
(I) Necessary n is determined from all combinations of the total number of receivers N and the number of revoke receivers r.
(II) An upper limit R of the number r of revoke receivers is determined by the system, and necessary n is determined therefrom.

暗号鍵の生成処理に適用するnマルチリニアマップの規定数nの算出式は、
generalized Diffie−Hellman assumptionを満たすnマルチリニアマップを用いる場合、例えば、

Figure 2005123678
として設定可能である。
ただし、
Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
rは、前記暗号文復号許容機器以外のリボーク(排除)機器数、
Figure 2005123678
は、rlog(N/r)以下の最大の整数である。 The formula for calculating the prescribed number n of the n multi-linear map applied to the encryption key generation process is:
When using an n multi-linear map that satisfies the generalized Diffie-Hellman assumption, for example,
Figure 2005123678
Can be set as
However,
N is the total number of information processing devices corresponding to the leaves that are the lowest nodes in the hierarchical tree structure;
r is the number of revocation (exclusion) devices other than the ciphertext decryption permitted device,
Figure 2005123678
Is the largest integer less than or equal to rlog (N / r).

実施例2においては、例えば実施例1と同様にN=16のとき、実施例1の(I)の方法をとった場合にはn=8としたが、実施例2ではn=7とする。同様に(II)の方法をとった場合には実施例1ではn=6としたが、本実施例ではn=5とする。   In the second embodiment, for example, when N = 16 as in the first embodiment, when the method (I) of the first embodiment is used, n = 8, but in the second embodiment, n = 7. . Similarly, when the method (II) is adopted, n = 6 in the first embodiment, but n = 5 in the present embodiment.

次に、i=1,2,・・・,2N+n−1の各iに対し、ランダムな値xi∈[1,p−1]を選び、それぞれに対し、

Figure 2005123678
を計算する。ここでpは群Gの位数であり、gはGの生成元である。各hを公開する。 Then, for each i of i = 1, 2,..., 2N + n−1, choose a random value xi∈ [1, p−1],
Figure 2005123678
Calculate Here, p is the order of the group G 1 and g is the generator of G 1 . Make each h i public.

受信機uには、それが割り当てられた葉からルートに至るまでのパス上の各ノードjに対応するlogN+1個のxを与える。受信機はxを安全に保管する。 The receiver u m is given logN + 1 x j corresponding to each node j on the path from the leaf to which it is assigned to the root. The receiver stores x j securely.

いま、図4のセッティングで、N=16であり、n=7と決めたとする。すると、2N+n−1=38なので、送信者はx,・・・,x38とh,・・・,h38を用意してhを公開する。例えば、受信機uには、ノード1,2,4,9,19に対応するx,x,x,x,x19を与える。 Now, assume that N = 16 and n = 7 in the setting of FIG. Then, since the 2N + n-1 = 38, the sender x 1, ···, x 38 and h 1, ···, to expose the h i are prepared h 38. For example, the receiver u 4 is provided with x 1 , x 2 , x 4 , x 9 , x 19 corresponding to the nodes 1 , 2 , 4 , 9 , 19 .

(2)暗号化および送信
送信者はN個の受信機のうち、その通信において情報を復号させる受信機の集合、すなわち、情報復号許容受信機集合S⊆{1,・・・,n}を選択する。次に、情報復号許容受信機集合Sに含まれない、すなわちリボークするレシーバに割り当てられたリーフ(葉)からルートまでのすべての枝、ノード、そのノードに接する枝を取り除く。
(2) Encryption and transmission The sender selects a set of receivers that decrypt information in the communication among N receivers, that is, an information decryption allowable receiver set S⊆ {1,..., N}. select. Next, all branches from the leaf to the root that are not included in the information decoding allowable receiver set S, that is, assigned to the receiver to be revoked, nodes, and branches that contact the nodes are removed.

すると、1つ以上の切り離された部分木が残るが、それぞれの部分木のルートの集合をKと置く。図7に、図4のセッティングでu,u11,u12の3台の受信機をリボークする場合の部分木を示す。 Then, one or more separated subtrees remain, but the set of roots of each subtree is set as K. FIG. 7 shows a subtree when the three receivers u 3 , u 11 , and u 12 are revoked with the setting shown in FIG.

図7に示すように、部分木ルート集合K={5,7,9,12,16}となる。ここで、上記のnの定め方において(I)を採用した場合には、いかなるリボーク受信機数rの値に対しても、また(II)を採用した場合には、r≦Rなるr、すなわち最大リボーク受信機数R以下のいかなるリボーク受信機数rに対しても、部分木のルートの集合Kの要素数|K|が高々n+1になる。rは情報の受信者として選択されない(リボークされる)受信機の数である。Rは、システム上のリボーク数rの最大値である。   As shown in FIG. 7, the subtree root set K = {5, 7, 9, 12, 16}. Here, when (I) is adopted in the method of determining n above, for any value of the number of revoke receivers r, and when (II) is adopted, r ≦ r such that r ≦ R, That is, for any number r of revoke receivers less than the maximum number of revoke receivers R, the number of elements | K | of the root tree set K is at most n + 1. r is the number of receivers that are not selected (revoked) as recipients of information. R is the maximum number of revokes r on the system.

階層木構造を適用した通信におけるセッションキーKsを下記のようにして導出し、それを用いて情報を暗号化して、Kを表す情報とともに同報送信する。

Figure 2005123678
A session key Ks in communication to which a hierarchical tree structure is applied is derived as described below, and information is encrypted using the session key Ks and broadcasted together with information representing K.
Figure 2005123678

ここで、部分木ルート集合Kの要素数|K|=n+1の場合には、上式のx2N2N+1・・・x2N+n−|K|の部分は使用されない点に注意されたい。 Here, it should be noted that when the number of elements | K | = n + 1 of the subtree root set K, the portion of x 2N x 2N + 1 ... X 2N + n− | K |

図7のセッティングでn=7の場合、

Figure 2005123678
となる。 When n = 7 in the setting of FIG.
Figure 2005123678
It becomes.

また、Kを表す情報は、背景技術の欄で説明した鍵指定コード等のタグ情報を用いて表してもよい。さらに、情報の暗号化は、セッションキーKsをそのまま使ってもよいし、たとえばセッションキーKsをSHA−1や、MD5等のハッシュ関数に入力して所望のサイズに変換した値を用いてもよい。   Further, the information representing K may be represented using tag information such as a key designation code described in the background art section. Furthermore, the information encryption may use the session key Ks as it is, or may use a value obtained by inputting the session key Ks into a hash function such as SHA-1 or MD5 and converting it to a desired size. .

たとえば放送アプリケーションの場合には、情報復号許容受信機集合Sを表す情報を送信した後に放送コンテンツをセッションキーKsで暗号化して送信してもよいし、情報復号許容受信機集合Sを表す情報と、セッションキーKsを用いてコンテンツキーKcを暗号化した暗号文を送信した後に、セッションキーKsで暗号化されたコンテンツを送信してもよい。CDなどの記録メディアのアプリケーションの場合には、放送アプリケーションにおいて放送していた情報をディスクに記録して配布すればよい。   For example, in the case of a broadcast application, after transmitting information representing the information decryption allowable receiver set S, the broadcast content may be transmitted after being encrypted with the session key Ks. After transmitting the ciphertext obtained by encrypting the content key Kc using the session key Ks, the content encrypted with the session key Ks may be transmitted. In the case of an application for a recording medium such as a CD, the information broadcast in the broadcast application may be recorded on a disk and distributed.

ところで、送信者がセッションキーKsを導出する際には、別の方法を用いてもよい。すなわち、i∈Kである部分木ルート集合Kの要素数|K|個のiをピックアップし、さらに2Nから2N+n−|K|までのn+1−|K|個のiをピックアップする。ピックアップされた全部でn+1個のiのうちのn個に対応するhをそれぞれ入力としてマップeの出力を求め、その出力に対し残ったひとつのiに対するx乗(G上で)を行うことにより上記と等しいKsを求めることができる。なお、この求め方は、後述の、受信機uがKsを求める方法と同様である。 By the way, when the sender derives the session key Ks, another method may be used. That is, i of the number of elements | K | in the subtree root set K with i∈K is picked up, and n + 1− | K | i from 2N to 2N + n− | K | are picked up. Obtains the output of the map e a h i corresponding to n of the picked-up a total of (n + 1) i as input, respectively, x i-th power for one remaining for that output i (on G 2) By doing so, Ks equal to the above can be obtained. Note that this Determination is similar to the method described below, the receiver u m seeks Ks.

(3)受信および復号
受信機uは、同報通信路から送信された情報を受信し、自分がその通信において情報を復号させる受信機の集合、すなわち情報復号許容受信機集合Sに含まれるかどうかを調べる。これは、自身が秘密鍵を持つノード(自分が割り当てられた葉からルートまでのパス上のノード)がKに含まれるかどうかを調べることにより行える。もし自分が情報復号許容受信機集合Sに含まれなければ、その通信を復号できないので処理を終了する。自分が情報復号許容受信機集合Sに含まれていれば、下記の処理によりセッションキーKsを求め、これを用いて送信された情報を復号する。もし受信機uが情報復号許容受信機集合Sに含まれていれば、Kに含まれるノードのうちのただ1つが、uが秘密鍵を保持しているノードの1つとなる。このノードをIとする。
(3) Reception and Decoding The receiver u m is included in a set of receivers that receive information transmitted from the broadcast channel and decode the information in the communication, that is, an information decoding allowable receiver set S. Find out if. This can be done by checking whether K includes a node having a secret key (node on the path from the leaf to which it is assigned to the root). If it is not included in the information decoding permission receiver set S, the communication is not able to be decoded, and the process is terminated. If oneself is included in the information decryption allowable receiver set S, the session key Ks is obtained by the following process, and the transmitted information is decrypted using this. If the receiver u m is included in the information decryption allowable receiver set S, only one of the nodes included in K is one of the nodes where u m holds the secret key. Let this node be I.

1.カウンタj,lを用意し、j=1,l=2Nとセットする。
2.カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる。
(a)もしi∈Kかつi≠IならばΦ=hとセットし、jを1増やして次のiの処理に移る。
3.もしj≦nならばj≦nの間、下記の処理を繰り返す。
(a)Φ=hとセットし、lを1増やし、jを1増やす。
4.以下のセッションキーKsを求める。

Figure 2005123678
1. Counters j and l are prepared, and j = 1 and l = 2N are set.
2. A counter i is prepared, and i is incremented by 1 from 1 to 2N−1 while performing the following processing.
(A) If i∈K and i ≠ I, set Φ j = h i , increase j by 1, and proceed to the next processing of i.
3. If j ≦ n, the following processing is repeated while j ≦ n.
(A) Set Φ j = h l , increase 1 by 1, and increase j by 1.
4). The following session key Ks is obtained.
Figure 2005123678

たとえば図7のセッティングで、受信機uはノード9の秘密鍵xを所持しているので、下式、

Figure 2005123678
によりKsを求める。 For example, in the setting of FIG. 7, the receiver u 4 possesses the secret key x 9 of the node 9.
Figure 2005123678
To obtain Ks.

上記の構成とすることにより、実施例1と同様、nマルチリニアマップを用いてブロードキャスト・エンクリプション方式を構成可能となる。   With the above configuration, the broadcast encryption method can be configured using the n multi-linear map, as in the first embodiment.

本実施例の方式で同報通信される暗号文は1つであり、各受信機が安全に保持する鍵の数はlogN+1個である。また、nはrlog(N/r)−1を上限として定めることができる。関数の実行量は入力要素数に依存する。上述の論文で提案されている方式は、入力要素数n=Nであったためこのマッピングに要する計算量が大きくなると予想されるが、本発明では入力要素数を小さくすることでこの計算量を削減している。   The ciphertext broadcast by the method of this embodiment is one, and the number of keys securely held by each receiver is logN + 1. Further, n can be determined with rlog (N / r) -1 as the upper limit. The amount of function execution depends on the number of input elements. In the method proposed in the above paper, since the number of input elements is n = N, the amount of calculation required for this mapping is expected to increase. However, in the present invention, the amount of calculation is reduced by reducing the number of input elements. doing.

上述した処理例、すなわち、generalized Diffie−Hellman assumptionを満たすマルチリニアマップ(multilinear map)が存在するという前提の下で、マルチリニアマップを用いた鍵配信技術に階層木構造を組み合わせることによって、各受信機が必要とする計算量を削減させることを可能とした構成例において、暗号文を生成し、提供する情報処理装置において実行する処理シーケンスと、暗号文を受領して復号処理を行なうリーフ対応の例えば受信機等の情報処理装置における処理シーケンスは、実施例1において図8を参照して説明した暗号文送信側シーケンスと、図11を参照して説明した暗号文受信側シーケンスと同様のものとなる。   Under the premise that there is a multi-linear map that satisfies the above-described processing example, ie, generalized Diffie-Hellman assumption, each reception is performed by combining a key distribution technique using a multi-linear map with a hierarchical tree structure. In a configuration example that can reduce the amount of calculation required by the machine, a ciphertext is generated and a processing sequence that is executed in an information processing device that provides the ciphertext, and a leaf compatible that receives the ciphertext and performs decryption processing For example, the processing sequence in the information processing apparatus such as a receiver is the same as the ciphertext transmitting side sequence described with reference to FIG. 8 in the first embodiment and the ciphertext receiving side sequence described with reference to FIG. Become.

ただし、実施例2においては、暗号文送信側の処理におけるセッションキーKsの算出処理、および、暗号文受信側の処理におけるセッションキーKsの算出処理が異なるものとなる。   However, in the second embodiment, the process for calculating the session key Ks in the process on the ciphertext sending side and the process for calculating the session key Ks in the process on the ciphertext receiving side are different.

すなわち、図8におけるステップS103におけるセッションキーKsは、図16に示す算出処理、すなわち、前述したように、

Figure 2005123678
によって算出する。 That is, the session key Ks in step S103 in FIG. 8 is calculated as shown in FIG. 16, that is, as described above,
Figure 2005123678
Calculated by

一方、暗号文受信側の処理におけるセッションキーKsの算出処理、すなわち、図11におけるステップS203におけるセッションキーKsは、図17に示す算出処理、すなわち、前述したように、以下の処理プロセスに従って、セッションキーKsを求める。   On the other hand, the calculation process of the session key Ks in the process on the ciphertext receiving side, that is, the session key Ks in step S203 in FIG. 11 is performed according to the calculation process shown in FIG. Find the key Ks.

1.カウンタj,lを用意し、j=1,l=2Nとセットする。
2.カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる。
(a)もしi∈Kかつi≠IならばΦ=hとセットし、jを1増やして次のiの処理に移る。
3.もしj≦nならばj≦nの間、下記の処理を繰り返す。
(a)Φ=hとセットし、lを1増やし、jを1増やす。
4.以下のセッションキーKsを求める。

Figure 2005123678
1. Counters j and l are prepared, and j = 1 and l = 2N are set.
2. A counter i is prepared, and i is incremented by 1 from 1 to 2N−1 while performing the following processing.
(A) If i∈K and i ≠ I, set Φ j = h i , increase j by 1, and proceed to the next processing of i.
3. If j ≦ n, the following processing is repeated while j ≦ n.
(A) Set Φ j = h l , increase 1 by 1, and increase j by 1.
4). The following session key Ks is obtained.
Figure 2005123678

(b)n=2とした暗号学的な2マルチリニアマップを用いたブロードキャスト・エンクリプション方式   (B) Broadcast encryption method using a cryptographic two-multilinear map with n = 2

上述の実施例においては、任意のn(n>1)に対する暗号学的なnマルチリニアマップ(n−multilinear map)が存在することを前提としているが、以下、既に実証されているn=2とした暗号学的なnマルチリニアマップ、すなわち2マルチリニアマップにおける具体例を説明する。なお、n=2とした暗号学的なnマルチリニアマップについては、D.Boneh and M.Franklin著の論文"Identity−Based Encryption from the Weil Paring"(この論文は、著者の一人であるProf.Bonehが管理するウェブサイトにhttp://crypto.stanford.edu/~dabo./papers/ibe.pdfとして掲載されている)   In the above-described embodiment, it is assumed that there is a cryptographic n-multilinear map for an arbitrary n (n> 1). Hereinafter, n = 2 that has already been demonstrated. A specific example of the cryptographic n multi-linear map, that is, the two multi-linear map will be described. For the cryptographic n multi-linear map with n = 2, see D.C. Boneh and M.M. Franklin's paper "Identity-Based Encryption from the Wel Paring" (this article is available on the website managed by Prof. Boneh, one of the authors: http://crypto.stanford.edu/~dabos/. .Published as .pdf)

以下、n=2とした2マルチリニアマップを適用したブロードキャスト・エンクリプション方式について、上述の例と同様、
(1)セットアップ、
(2)暗号化および送信、
(3)受信および復号、
の3つのフェーズに区分して説明する。
In the following, the broadcast encryption method applying the 2 multi-linear map with n = 2 is similar to the above example.
(1) Setup,
(2) Encryption and transmission,
(3) reception and decoding,
These will be described in the following three phases.

セットアップフェーズは、システムの立ち上げ時に1度だけ行う。暗号化および送信、受信および復号の各フェーズは、情報の送信を行うたびに繰り返す。   The setup phase is performed only once at system startup. The encryption, transmission, reception, and decryption phases are repeated each time information is transmitted.

ブロードキャスト・エンクリプション方式を構成するエンティティとして、暗号文の生成および提供処理を行なう情報処理装置としての送信者(送信機)と、暗号文の受領および復号処理を行なう情報処理装置としてのユーザデバイス等の受信機あるいは受信者(ユーザ)であり、暗号文の受領および復号処理を行なう情報処理装置またはユーザの総数をNとする。また、システムを管理する管理センタを設ける。上記(1)セットアップ処理は、送信者あるいは管理センタが実行する。   As an entity constituting the broadcast encryption system, a sender (transmitter) as an information processing device that performs ciphertext generation and provision processing, a user device as an information processing device that performs ciphertext reception and decryption processing, and the like And N is the total number of information processing apparatuses or users who receive and decrypt ciphertexts. A management center for managing the system is also provided. The (1) setup process is executed by the sender or the management center.

簡単のため、暗号文を受領する情報処理装置またはユーザの総数:Nは2のべき乗の数とする。実際のNが2のべき乗でない場合は、Nより大きな最小の2のべき乗の数をNとして用いても構わない。   For simplicity, the total number of information processing apparatuses or users that receive ciphertext: N is a power of 2. If actual N is not a power of 2, the smallest number of powers of 2 larger than N may be used as N.

(1)セットアップ
以下、暗号文の生成および提供処理を行なうエンティティまたは情報処理装置を送信者または送信機とし、暗号文を受領するエンティティまたは情報処理装置を受信者または受信機として説明する。セットアップ処理は、送信者側、あるいはシステム管理者によって実行されるが、以下では、送信者においてセットアップ処理を行うものとして説明する。
(1) Setup Hereinafter, an entity or information processing apparatus that performs ciphertext generation and provision processing will be described as a sender or a transmitter, and an entity or information processing apparatus that receives a ciphertext will be described as a receiver or a receiver. The setup process is executed by the sender or the system administrator. In the following description, it is assumed that the setup process is performed by the sender.

送信者は、実施例1と同様に、リーフ(葉)の数がNである2分木を定義し、各ノードiに番号を付与する。受信機は1つずつ各リーフ(葉)に割り当てる。   As in the first embodiment, the sender defines a binary tree with N leaves and assigns a number to each node i. The receiver assigns each leaf one by one.

送信者はgeneralized Diffie−Hellman assumptionを満たすnマルチリニアマップ(n−multilinear map)を定め、受信機に公開する。ただし、n=2である。   The sender defines an n-multilinear map that satisfies the generalized Diffie-Hellman assumption and publishes it to the receiver. However, n = 2.

次に、i=1,2,・・・,2N+n−1の各iに対し、ランダムな値xi∈[1,p−1]を選び、それぞれに対し、

Figure 2005123678
を計算する。ただし、n=2であるのでi=1〜2N+1である。また、ここでpは群Gの位数であり、gはGの生成元である。各hを公開する。 Then, for each i of i = 1, 2,..., 2N + n−1, choose a random value xi∈ [1, p−1],
Figure 2005123678
Calculate However, since n = 2, i = 1 to 2N + 1. Here, p is the order of the group G 1 and g is a generator of G 1 . Make each h i public.

なお、x、hは、ノードiに対応するが、ノード番号2Nおよび2N+1のダミーノードの存在を仮定し、x2N,h2Nはノード2Nに、x2N+1,h2N+1はノード2N+1に対応すると考える。 Note that x i and h i correspond to the node i, but it is assumed that dummy nodes having node numbers 2N and 2N + 1 exist, x 2N and h 2N correspond to the node 2N, and x 2N + 1 and h 2N + 1 correspond to the node 2N + 1. I think so.

受信機uには、それが割り当てられた葉からルートに至るまでのパス上の各ノードjに対応するlogN+1個のxを与える。受信機はxを安全に保管する。 The receiver u m is given logN + 1 x j corresponding to each node j on the path from the leaf to which it is assigned to the root. The receiver stores x j securely.

いま、図4のセッティングで、N=16であり、n=2であるので、2N+n−1=33なので、送信者はx,・・・,x33とh,・・・,h33を用意してhを公開する。例えば、受信機uには、ノード1,2,4,9,19に対応するx,x,x,x,x19を与える。 Now, in the setting of FIG. 4, N = 16 and n = 2, so 2N + n−1 = 33, so that the sender is x 1 ,..., X 33 and h 1 ,. the prepared to publish the h i. For example, the receiver u 4 is provided with x 1 , x 2 , x 4 , x 9 , x 19 corresponding to the nodes 1 , 2 , 4 , 9 , 19 .

(2)暗号化および送信
送信者はN個の受信機のうち、その通信において情報を復号させる受信機の集合、すなわち情報復号許容受信機集合S⊆{1,・・・,n}を選択する。次に、情報復号許容受信機集合Sに含まれない、すなわちリボークするレシーバに割り当てられたリーフ(葉)からルートまでのすべての枝、ノード、そのノードに接する枝を取り除く。すると、1つ以上の切り離された部分木が残るが、それぞれの部分木のルートの集合をKと置く。
(2) Encryption and transmission The sender selects a set of receivers to decrypt information in the communication among N receivers, that is, an information decryption allowable receiver set S⊆ {1,..., N}. To do. Next, all branches from the leaf to the root that are not included in the information decoding allowable receiver set S, that is, assigned to the receiver to be revoked, nodes, and branches that contact the nodes are removed. Then, one or more separated subtrees remain, but the set of roots of each subtree is set as K.

次に、Kの要素をその番号iの順に、3つずつ、

Figure 2005123678
個のサブグループSGに分割する。 Next, three elements of K in the order of the number i,
Figure 2005123678
Divide into subgroups SG k .

ただし、

Figure 2005123678
である。 However,
Figure 2005123678
It is.

なお、
|K|は、部分木ルート集合Kの要素数を示し、

Figure 2005123678
は、|K|/3以上である最小の整数を表す。 In addition,
| K | indicates the number of elements of the subtree root set K,
Figure 2005123678
Represents the smallest integer greater than or equal to | K | / 3.

ただし、最後のサブグループ

Figure 2005123678
にKの要素が1つしか入らない場合には、ダミー受信機2Nと2N+1もサブグループの要素であるとし、また、
Figure 2005123678
に、部分木のルートの集合Kの要素が2つだけ入る場合には、ダミーの受信機2Nもこのサブグループの要素であるとする。 However, the last subgroup
Figure 2005123678
, The dummy receivers 2N and 2N + 1 are also subgroup elements, and
Figure 2005123678
If only two elements of the root tree set K are included, the dummy receiver 2N is also an element of this subgroup.

上述の例と同様、図4に示す2分木構成、すなわち、各受信機が1つずつ各リーフ(葉)に割り当てられ受信者数N=16である2分木構成を想定し、図7に示すように、図4のセッティングでu,u11,u12の3台の受信機をリボークする場合の処理について説明する。 As in the above example, assume the binary tree configuration shown in FIG. 4, that is, the binary tree configuration in which each receiver is assigned to each leaf and the number of recipients is N = 16. As shown in FIG. 4, processing when the three receivers u 3 , u 11 , and u 12 are revoked with the setting shown in FIG. 4 will be described.

図7に示すように、部分木のルートの集合K={5,7,9,12,16}となる。この場合、サブグループは、
SG={5,7,9}
SG={12,16,32}
となる。
ただし、ノード32はダミーノードである。
As shown in FIG. 7, the set of roots of the subtree is K = {5, 7, 9, 12, 16}. In this case, the subgroup is
SG 1 = {5, 7, 9}
SG 2 = {12, 16, 32}
It becomes.
However, the node 32 is a dummy node.

そして、その通信におけるサブグループSG用のサブグループキーKSGkを、

Figure 2005123678
として定める。 Then, the sub-group key K SGk for the sub-group SG k in its communication,
Figure 2005123678
Determine as

上記の例では、サブグループSGとサブグループSGのサブグループキーは以下のように示される。

Figure 2005123678
In the above example, a subgroup key subgroup SG 1 and subgroup SG 2 is shown as follows.
Figure 2005123678

次に、その通信における全体のセッションキーKsをランダムに定める。セッションキーKsは通信の内容(たとえば映画などのコンテンツ)を暗号化するための鍵であり、たとえば暗号化アルゴリズムに米国標準のAESの128bit版を用いる際には、セッションキーKsは128bitとなる。   Next, the entire session key Ks in the communication is determined randomly. The session key Ks is a key for encrypting the contents of communication (for example, content such as a movie). For example, when the 128-bit version of the American standard AES is used for the encryption algorithm, the session key Ks is 128 bits.

次に、個々のサブグループキーを用いてセッションキーKsを暗号化した暗号文

Figure 2005123678
を、暗号文
CT=E(H(KSGk),Ks)として設定する。
ただし、E(A,B)は鍵Aを用いた平文Bの暗号化を示す。 Next, ciphertext obtained by encrypting the session key Ks using each subgroup key
Figure 2005123678
Is set as ciphertext CT k = E (H (K SGk ), Ks).
Here, E (A, B) indicates encryption of plaintext B using the key A.

暗号化アルゴリズムとしてはたとえば米国標準のAESの128bit版を用いる。関数Hは、Gの任意の要素を、使用する暗号化アルゴリズムの鍵長(たとえば128bit)に縮約するハッシュ関数である。暗号化アルゴリズムEとハッシュ関数Hはシステムであらかじめ定めてあり(送信者が定めてもよい)、公開されている。 As an encryption algorithm, for example, a 128-bit version of AES of American standard is used. Function H, any element of G 2, a condensation promises hash function to the key length of the encryption algorithm (e.g. 128bit) to be used. The encryption algorithm E and the hash function H are predetermined by the system (may be determined by the sender) and are made public.

送信者は、送信すべき情報をセッションキーKを用いて暗号化して、部分木のルートの集合Kを表す情報(たとえば、ノード番号のリスト)と、上記の暗号文、

Figure 2005123678
とを、ともに同報通信路で受信機に送信する。 The sender encrypts information to be transmitted by using the session key K s , information (for example, a list of node numbers) representing the root tree set K, and the above ciphertext,
Figure 2005123678
Are transmitted to the receiver via a broadcast channel.

たとえば放送アプリケーションの場合には、部分木のルートの集合Kを表す情報を送信した後に、暗号文、

Figure 2005123678
を送信し、その後に放送コンテンツをセッションキーKsで暗号化して送信してもよいし、通信において情報を復号させる受信機の集合、すなわち情報復号許容受信機集合Sを表す情報と、暗号文
Figure 2005123678
と、セッションキーKsで暗号化したコンテンツキーKcを送信した後に、コンテンツキーKcで暗号化されたコンテンツを送信してもよい。CDなどの記録メディアのアプリケーションの場合には、放送アプリケーションにおいて放送していた情報をディスクに記録して配布すればよい。 For example, in the case of a broadcast application, after sending information representing a set K of subtree roots,
Figure 2005123678
And then the broadcast content may be transmitted after being encrypted with the session key Ks, or a set of receivers for decrypting information in communication, that is, information indicating an information decryption allowable receiver set S, and ciphertext
Figure 2005123678
Then, after transmitting the content key Kc encrypted with the session key Ks, the content encrypted with the content key Kc may be transmitted. In the case of an application for a recording medium such as a CD, the information broadcast in the broadcast application may be recorded on a disk and distributed.

(3)受信および復号
受信機uは、同報通信路から送信された情報を受信し、自分がその通信において情報を復号させる受信機の集合、すなわち情報復号許容受信機集合Sに含まれるかどうかを調べる。これは、自身が秘密鍵を持つノード(自分が割り当てられた葉からルートまでのパス上のノード)がKに含まれるかどうかを調べることにより行える。
(3) Reception and Decoding The receiver u m is included in a set of receivers that receive information transmitted from the broadcast channel and decode the information in the communication, that is, an information decoding allowable receiver set S. Find out if. This can be done by checking whether K includes a node having a secret key (node on the path from the leaf to which it is assigned to the root).

もし自分が情報復号許容受信機集合Sに含まれなければ、その通信を復号できないので処理を終了する。自分が情報復号許容受信機集合Sに含まれていれば、自分がどのサブグループの暗号文を復号すべきかを調べる。これは、部分木のルートの集合Kの要素を3つずつ区切ったときの何番目に、自分が秘密鍵を持つノードが入るかを探すことで求められる。そして、受信機uは、自分が所有する秘密鍵に対応するサブグループSGのサブグループキーを下記のようにして求める。 If it is not included in the information decoding permission receiver set S, the communication is not able to be decoded, and the process is terminated. If it is included in the information decryption allowable receiver set S, it is checked which subgroup ciphertext should be decrypted by itself. This can be obtained by searching for the number of nodes having a secret key when the elements of the set K of the root of the subtree are divided into three. Then, the receiver u m obtains the sub group key of the sub group SG k corresponding to the secret key owned by itself as follows.

Figure 2005123678
ここで、xは、サブグループSGの要素のうち、受信機uが秘密鍵を持つノードiに対応する秘密鍵であり、hj1、hj2は、iではないほうのノードj,jに対応する公開情報gである。ただし、iが、サブグループ
Figure 2005123678
の要素であり、このサブグループに部分木のルートの集合Kの要素(実在の要素)が1つしか含まれない場合には、ダミーノード2Nおよび2N+1に対応する公開情報h2N,h2N+1を用い、このサブグループに部分木のルートの集合Kの要素(実在の要素)が2つだけ含まれる場合には、ダミーノード2Nに対応する公開情報h2Nを用いる。
Figure 2005123678
Here, x i is a secret key corresponding to the node i in which the receiver u m has a secret key among the elements of the subgroup SG k , and h j1 and h j2 are the nodes j 1 that are not i. , it is a public information g i corresponding to the j 2. Where i is a subgroup
Figure 2005123678
And when this subgroup includes only one element (real element) of the root tree set K, the public information h 2N and h 2N + 1 corresponding to the dummy nodes 2N and 2N + 1 are obtained. If the subgroup includes only two elements (existing elements) of the root tree set K, the public information h 2N corresponding to the dummy node 2N is used.

たとえば上記の例で受信機uはノード9の秘密鍵xを所持しているので、
SG1=e(h,hx9
としてサブグループSGのサブグループキーKSG1を求めることができる。
For example, in the above example, the receiver u 4 possesses the secret key x 9 of the node 9, so
K SG1 = e (h 5 , h 7 ) x 9
Can be determined subgroup key K SG1 subgroup SG 1 as.

次に、受信機uは、上で求めたサブグループキーKSGkからハッシュ値H(KSGk)を計算し、これを用いて暗号文CTkを復号してセッションキーKsを求め、これを用いて送信された情報を復号する。 Next, the receiver u m calculates a hash value H (K SGk ) from the subgroup key K SGk obtained above, and uses this to decrypt the ciphertext CTk to obtain a session key Ks, which is used. The information sent is decrypted.

上記のような構成とすることにより、2マルチリニアマップを用いてN個の受信機に鍵(セッションキーKs)を安全に配信できるシステムを構成することが可能となる。上記構成では受信機が安全に保管しなければならない鍵は1つ(x)だけであり、たとえばセッションキーKsを直接コンテンツの暗号化に用いる場合などにおいて、鍵配信のために同報通信されるメッセージの個数は、

Figure 2005123678
となる。 With the configuration as described above, it is possible to configure a system that can securely distribute a key (session key Ks) to N receivers using two multi-linear maps. In the above configuration, the receiver has only one key (x i ) that must be securely stored. For example, when the session key Ks is directly used for content encryption, it is broadcast for key distribution. The number of messages
Figure 2005123678
It becomes.

なお、リボークする受信機数をrとしたときに、部分木ルート集合Kの要素数|K|の最大値はrlog(N/r)であることがわかっている。 It is known that the maximum value of the number of elements | K | of the subtree root set K is rlog 2 (N / r), where r is the number of receivers to be revoked.

上記は2マルチリニアマップを用いる方法について詳しく述べたが、この方式は、前述したように、任意の整数n>1に対するnマルチリニアマップを用いる方式にそのまま拡張可能である。nが大きくなると、受信機が保管する鍵数は1のままであるのに対し、同報通信されるメッセージ数が、

Figure 2005123678
となり、上記のn=2の場合に比べてこの面での効率がよくなる。 The above has described in detail the method using two multi-linear maps. However, as described above, this method can be directly extended to a method using n multi-linear maps for an arbitrary integer n> 1. As n increases, the number of keys stored by the receiver remains one, whereas the number of broadcast messages is
Figure 2005123678
Therefore, the efficiency in this aspect is improved as compared with the case of n = 2.

上述した処理例、すなわち、generalized Diffie−Hellman assumptionを満たす2マルチリニアマップを用いた鍵配信技術に階層木構造を組み合わせることによって、各受信機が必要とする計算量を削減させることを可能とした構成例において、暗号文を生成し、提供する情報処理装置において実行する処理シーケンスと、暗号文を受領して復号処理を行なうリーフ対応の例えば受信機等の情報処理装置における処理シーケンスは、先に実施例1において説明した図13(暗号文提供側)、図15(暗号文受領側)と同様の処理シーケンスによって実行される。ただし、それぞれの処理において、サブグループキーの算出処理方法が異なってくる。サブグループキーの算出処理は上述の説明に記載の通りである。   By combining a hierarchical tree structure with the above-described processing example, that is, a key distribution technique using two multi-linear maps satisfying the generalized Diffie-Hellman assumption, it is possible to reduce the amount of calculation required for each receiver. In the configuration example, the processing sequence executed in the information processing apparatus that generates and provides the ciphertext, and the processing sequence in the information processing apparatus such as a receiver that accepts the ciphertext and performs the decryption processing, The processing sequence is the same as in FIG. 13 (ciphertext providing side) and FIG. 15 (ciphertext receiving side) described in the first embodiment. However, the subgroup key calculation processing method differs in each process. The sub group key calculation process is as described above.

以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。   The present invention has been described in detail above with reference to specific embodiments. However, it is obvious that those skilled in the art can make modifications and substitutions of the embodiments without departing from the gist of the present invention. In other words, the present invention has been disclosed in the form of exemplification, and should not be interpreted in a limited manner. In order to determine the gist of the present invention, the claims section described at the beginning should be considered.

なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。   The series of processes described in the specification can be executed by hardware, software, or a combined configuration of both. When executing processing by software, the program recording the processing sequence is installed in a memory in a computer incorporated in dedicated hardware and executed, or the program is executed on a general-purpose computer capable of executing various processing. It can be installed and run.

例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。   For example, the program can be recorded in advance on a hard disk or ROM (Read Only Memory) as a recording medium. Alternatively, the program is temporarily or permanently stored on a removable recording medium such as a flexible disk, a CD-ROM (Compact Disc Read Only Memory), an MO (Magneto optical) disk, a DVD (Digital Versatile Disc), a magnetic disk, or a semiconductor memory. It can be stored (recorded). Such a removable recording medium can be provided as so-called package software.

なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。   The program is installed on the computer from the removable recording medium as described above, or is wirelessly transferred from the download site to the computer, or is wired to the computer via a network such as a LAN (Local Area Network) or the Internet. The computer can receive the program transferred in this manner and install it on a recording medium such as a built-in hard disk.

なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。   Note that the various processes described in the specification are not only executed in time series according to the description, but may be executed in parallel or individually according to the processing capability of the apparatus that executes the processes or as necessary. Further, in this specification, the system is a logical set configuration of a plurality of devices, and the devices of each configuration are not limited to being in the same casing.

以上、説明したように、本発明の構成によれば、頂点ノードとしてのルートと、最下位ノードであるリーフを連結した構成を持つ階層木構成において、リーフに対応する複数の情報処理装置から暗号文の復号を許容する情報処理装置を選択し、選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理において、nマルチリニアマップ(ただし、nは2以上の整数)を適用して暗号鍵を生成する構成とすることで、暗号文復号許容機器の格納鍵のみに基づいて復号可能な1つの暗号文として生成することが可能となり、暗号文の受領、復号処理を実行する受信機としてのユーザデバイスにおける計算量が削減され、効率的な処理が実現される。従って、本発明は、階層木構造を適用した暗号文の提供構成において利用可能である。具体的には、暗号文生成、提供、送信を実行する情報処理装置、暗号文の復号、再生を実行するユーザデバイスとしての情報処理装置、暗号化コンテンツ等を格納した情報記録媒体において適用可能である。   As described above, according to the configuration of the present invention, in a hierarchical tree configuration having a configuration in which a root as a vertex node and a leaf that is the lowest node are connected, encryption is performed from a plurality of information processing devices corresponding to the leaf. In the process of generating a ciphertext that can be decrypted based only on the storage key of the selected ciphertext decryption permitted device, selecting an information processing device that permits the decryption of the text, n multi-linear map (where n is an integer of 2 or more) ) To generate a cipher key that can be generated as a single ciphertext that can be decrypted based only on the storage key of the ciphertext decryption-permitted device. The amount of calculation in the user device as a receiver that executes the above is reduced, and efficient processing is realized. Therefore, the present invention can be used in a ciphertext providing configuration to which a hierarchical tree structure is applied. Specifically, it can be applied to an information processing apparatus that executes ciphertext generation, provision, and transmission, an information processing apparatus as a user device that executes decryption and reproduction of ciphertext, and an information recording medium that stores encrypted content. is there.

本発明の構成によれば、Diffie−Hellman inversion assumption、またはgeneralized Diffie−Hellman assumptionを満たすマルチリニアマップ(multilinear map)に階層型木構造を組み合わせた暗号文配信構成を構築することにより、階層木構成中のリーフに対応する複数の情報処理装置から選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文として必要な数を削減することが可能となり、リーフの数の増加、リボーク機器の増加などの要因が発生した場合においても、必要な暗号文数を増加させることのない効率的な暗号文の生成および提供構成が実現される。従って、本発明は、階層木構造を適用した暗号文の提供構成において利用可能である。具体的には、暗号文生成、提供、送信を実行する情報処理装置、暗号文の復号、再生を実行するユーザデバイスとしての情報処理装置、暗号化コンテンツ等を格納した情報記録媒体において適用可能である。   According to the configuration of the present invention, a hierarchical tree configuration is constructed by constructing a ciphertext distribution configuration in which a hierarchical tree structure is combined with a multi-linear map that satisfies Diffie-Hellman inversion assumption or generalized Diffie-Hellman assumption. It is possible to reduce the necessary number of ciphertexts that can be decrypted based only on the storage key of the ciphertext decryption-permitted device selected from a plurality of information processing devices corresponding to the middle leaf. Even when factors such as an increase in devices occur, an efficient ciphertext generation and provision configuration without increasing the number of necessary ciphertexts is realized. Therefore, the present invention can be used in a ciphertext providing configuration to which a hierarchical tree structure is applied. Specifically, it can be applied to an information processing apparatus that executes ciphertext generation, provision, and transmission, an information processing apparatus as a user device that executes decryption and reproduction of ciphertext, and an information recording medium that stores encrypted content. is there.

2分木階層型木構造について説明する図である。It is a figure explaining a binary tree hierarchical tree structure. 2分木階層型木構造において、選択した情報処理装置のみが取得可能な情報を送信する方法を説明する図である。It is a figure explaining the method of transmitting the information which only the selected information processing apparatus can acquire in a binary tree hierarchical tree structure. 鍵指定コードを暗号文とともに各情報処理装置に提供する構成について説明する図である。It is a figure explaining the structure which provides a key specification code to each information processing apparatus with a ciphertext. 本発明の適用可能な葉(リーフ)の数が受信者数Nである階層木構成例を示す図である。It is a figure which shows the hierarchical tree structural example whose number of the leaves (leaf) which can apply this invention is the number N of recipients. 暗号文を生成し提供する送信装置等の情報処理装置、暗号文を受領して情報取得を行なう受信装置等の情報処理装置の構成例を示す図である。It is a figure which shows the structural example of information processing apparatuses, such as a transmitter which produces | generates and provides a ciphertext, and information processing apparatuses, such as a receiver which receives a ciphertext and acquires information. 階層木構成に基づいて暗号文を情報処理装置に提供する構成におけるリーフの所有鍵数および提供暗号文数について説明する図である。It is a figure explaining the number of possessed keys of a leaf and the number of provided ciphertexts in a configuration that provides ciphertexts to an information processing device based on a hierarchical tree configuration. リボーク受信機を排除した部分木構成について説明する図である。It is a figure explaining the subtree structure which excluded the revoke receiver. 暗号文を生成し、提供する情報処理装置において実行する処理シーケンスについて説明するフローチャートである。It is a flowchart explaining the process sequence performed in the information processing apparatus which produces | generates and provides a ciphertext. 暗号文を生成し、提供する情報処理装置において実行するセッションキーKsの具体的計算例を説明する図である。It is a figure explaining the specific calculation example of the session key Ks performed in the information processing apparatus which produces | generates and provides a ciphertext. 暗号文を生成し、提供する情報処理装置において生成した情報の情報記録媒体格納例を示す図である。It is a figure which shows the example of information recording medium storage of the information produced | generated in the information processing apparatus which produces | generates and provides a ciphertext. 暗号文を受領し、復号する情報処理装置において実行する処理シーケンスについて説明するフローチャートである。It is a flowchart explaining the process sequence performed in the information processing apparatus which receives and decrypts a ciphertext. 暗号文を受領し、復号する情報処理装置において実行するセッションキーKsの具体的計算例を説明する図である。It is a figure explaining the specific calculation example of the session key Ks performed in the information processing apparatus which receives and decrypts a ciphertext. n=2のマルチリニアマップ適用時において、暗号文を生成し、提供する情報処理装置において実行する処理シーケンスについて説明するフローチャートである。It is a flowchart explaining the process sequence performed in the information processing apparatus which produces | generates and provides a ciphertext at the time of applying the multi-linear map of n = 2. n=2のマルチリニアマップ適用時において、暗号文を生成し、提供する情報処理装置において生成した情報の情報記録媒体格納例を示す図である。It is a figure which shows the example of information recording medium storage of the information produced | generated in the information processing apparatus which produces | generates and provides a ciphertext at the time of the multi-linear map of n = 2. n=2のマルチリニアマップ適用時において、暗号文を受領し、復号する情報処理装置において実行する処理シーケンスについて説明するフローチャートである。It is a flowchart explaining the process sequence performed in the information processing apparatus which receives and decrypts a ciphertext at the time of applying the multi-linear map of n = 2. 暗号文を生成し、提供する情報処理装置において実行するセッションキーKsの具体的計算例を説明する図である。It is a figure explaining the specific calculation example of the session key Ks performed in the information processing apparatus which produces | generates and provides a ciphertext. 暗号文を受領し、復号する情報処理装置において実行するセッションキーKsの具体的計算例を説明する図である。It is a figure explaining the specific calculation example of the session key Ks performed in the information processing apparatus which receives and decrypts a ciphertext.

符号の説明Explanation of symbols

101,102 情報処理装置
120 ルートノード
121,122,123 ノード
131,132,133,134,135 部分木
301 コントローラ
302 演算ユニット
303 入出力インタフェース
304 セキュア記憶部
305 メイン記憶部
306 大容量記憶部
400 情報記録媒体
401 部分木のルート集合Kを示す情報
402 暗号化コンテンツキーEnc(Ks,Kc)
403 暗号化コンテンツEnc(Kc,Con)
500 情報記録媒体
501 部分木のルート集合Kを示す情報
502 暗号文CT=E(H(KSGk),Ks)
503 暗号化コンテンツキーEnc(Ks,Kc)
504 暗号化コンテンツEnc(Kc,Con)
101, 102 Information processing device 120 Root node 121, 122, 123 Node 131, 132, 133, 134, 135 Subtree 301 Controller 302 Arithmetic unit 303 Input / output interface 304 Secure storage unit 305 Main storage unit 306 Mass storage unit 400 Information Recording medium 401 Information indicating root set K of subtree 402 Encrypted content key Enc (Ks, Kc)
403 Encrypted content Enc (Kc, Con)
500 Information recording medium 501 Information indicating root set K of subtree 502 Ciphertext CT k = E (H (K SGk ), Ks)
503 Encrypted content key Enc (Ks, Kc)
504 Encrypted content Enc (Kc, Con)

Claims (25)

暗号文生成処理を実行する情報処理装置であり、
頂点ノードとしてのルートと、最下位ノードであるリーフを連結した構成を持つ階層木構成において、前記リーフに対応する複数の情報処理装置から暗号文の復号を許容する情報処理装置を選択し、選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号処理部を有し、
前記暗号処理部は、
nマルチリニアマップ(ただし、nは2以上の整数)を適用して暗号鍵を生成するとともに、生成した暗号鍵によって前記暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する構成であることを特徴とする情報処理装置。
An information processing apparatus that executes ciphertext generation processing,
In a hierarchical tree configuration having a configuration in which a root as a vertex node and a leaf that is the lowest node are connected, an information processing device that allows decryption of ciphertext is selected from a plurality of information processing devices corresponding to the leaf, and is selected. A cipher processing unit that executes a process for generating a ciphertext that can be decrypted based only on the storage key of the ciphertext decryption-permitted device.
The cryptographic processing unit
Generate an encryption key by applying an n multi-linear map (where n is an integer equal to or greater than 2), and generate a ciphertext that can be decrypted based on only the storage key of the ciphertext decryption permitted device using the generated encryption key An information processing apparatus having a configuration for executing processing.
前記リーフに対応する複数の情報処理装置の各々は、前記ルートから自リーフに至るパス上のノードに対応するノードキーを有し、
前記暗号処理部は、
前記暗号文復号許容機器の格納ノードキーにおいてのみ復号可能な暗号文の生成処理を実行する構成であることを特徴とする請求項1に記載の情報処理装置。
Each of the plurality of information processing devices corresponding to the leaf has a node key corresponding to a node on a path from the root to the own leaf,
The cryptographic processing unit
The information processing apparatus according to claim 1, wherein a ciphertext generation process that can be decrypted only by a storage node key of the ciphertext decryption permitted apparatus is executed.
前記暗号処理部は、
前記nマルチリニアマップを適用して生成する鍵として、下記定義、
Ks=(Φ,・・・Φα∈G
に基づくセッションキーKsを生成する構成である、
ただし、Gは、Diffie−Hellman inversion assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
αは、α∈[1,p−1],ただし、pはGの位数、
Φは、下記の処理により定められる値、
(1)カウンタjを用意し、j=1とセットする、
(2)カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる、
(2a)もしi∈Kならば、Φ=gとセットし、jを1増やして次のiの処理に移る、
(3)もしj≦nならば、j≦nの間、下記の処理を繰り返す、
(3a)Φ=gとセットし、jを1増やす、
ただし、Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
nは、nマルチリニアマップの規定数nであり2以上の整数、
Kは、前記階層木構成において、暗号文復号許容機器のみを選択して設定される部分木ルート集合であり、
は、ノードiの公開値でありg∈Gを満たす、
gはGの生成元、
であることを特徴とする請求項1に記載の情報処理装置。
The cryptographic processing unit
As a key to be generated by applying the n multi-linear map, the following definition:
Ks = (Φ 1 , ... Φ n ) α ∈ G 2
Is a configuration for generating a session key Ks based on
However, G 2 is, Diffie-Hellman inversion assumption satisfying n multilinear map e: a group defines a G 1 nG 2,
α is α∈ [1, p−1], where p is the order of G 1 ,
Φ j is a value determined by the following process,
(1) Prepare a counter j and set j = 1.
(2) A counter i is prepared, and i is incremented by 1 from 1 to 2N−1 while performing the following processing.
(2a) If i∈K, set Φ j = g i , increase j by 1 and move to the next processing of i.
(3) If j ≦ n, repeat the following process while j ≦ n.
(3a) Set Φ j = g and increase j by 1.
Where N is the total number of information processing devices corresponding to the leafs that are the lowest nodes in the hierarchical tree structure,
n is the specified number n of the n multi-linear map and is an integer greater than or equal to 2,
K is a subtree root set that is set by selecting only the ciphertext decryption permitted device in the hierarchical tree configuration,
g i is the public value of node i and satisfies g i ∈G 1 ,
g is the generator of G 1
The information processing apparatus according to claim 1, wherein:
前記暗号処理部は、
前記nマルチリニアマップを適用して生成する鍵として、下記定義、
Figure 2005123678
に基づくセッションキーKsを生成する構成である、
ただし、Gは、generalized Diffie−Hellman assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
gは、群Gの生成元であり、
は、階層木構成における各構成ノードiに設定されるノードキーであり、h=gxiが公開値として設定される、
ことを特徴とする請求項1に記載の情報処理装置。
The cryptographic processing unit
As a key to be generated by applying the n multi-linear map, the following definition:
Figure 2005123678
Is a configuration for generating a session key Ks based on
However, G 2 is, generalized Diffie-Hellman satisfy assumption n multilinear map e: a group defines a G 1 nG 2,
g is the generator of group G 1 and
x i is a node key set for each configuration node i in the hierarchical tree configuration, and h i = g xi is set as a public value.
The information processing apparatus according to claim 1.
前記情報処理装置は、
前記暗号鍵の生成処理に適用するnマルチリニアマップの規定数nを、
Diffie−Hellman inversion assumptionを満たすnマルチリニアマップを用いる場合、
Figure 2005123678
として設定し、
generalized Diffie−Hellman assumptionを満たすnマルチリニアマップを用いる場合、
Figure 2005123678
として設定する構成、
ただし、
Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
rは、前記暗号文復号許容機器以外のリボーク(排除)機器数、
Figure 2005123678
は、rlog(N/r)以下の最大の整数、
であることを特徴とする請求項1に記載の情報処理装置。
The information processing apparatus includes:
The specified number n of n multi-linear maps to be applied to the encryption key generation process,
When using an n multi-linear map that satisfies Diffie-Hellman inversion assumption,
Figure 2005123678
Set as
When using an n multi-linear map that satisfies the generalized Diffie-Hellman assumption,
Figure 2005123678
Configuration to set as
However,
N is the total number of information processing devices corresponding to the leaves that are the lowest nodes in the hierarchical tree structure;
r is the number of revocation (exclusion) devices other than the ciphertext decryption permitted device,
Figure 2005123678
Is the largest integer less than or equal to rlog (N / r),
The information processing apparatus according to claim 1, wherein:
前記情報処理装置は、
前記暗号鍵の生成処理に適用するnマルチリニアマップの規定数nを、
r≦Nの任意のrに対応可能な数n、すなわちrlog(N/r)の最大値に対応する整数値として設定する構成であることを特徴とする請求項5に記載の情報処理装置。
The information processing apparatus includes:
The specified number n of n multi-linear maps to be applied to the encryption key generation process,
6. The information processing apparatus according to claim 5, wherein the information processing apparatus is configured to be set as an integer value corresponding to a maximum number n of rlog (N / r), which can correspond to any r of r ≦ N.
前記情報処理装置は、
前記暗号鍵の生成処理に適用するnマルチリニアマップの規定数nを、
リボーク(排除)機器数rについて、その最大値Rを設定し、r≦Rの任意数に対応可能な数n、すなわち、r=Rとしたときのrlog(N/r)の値に対応する整数値として設定する構成であることを特徴とする請求項5に記載の情報処理装置。
The information processing apparatus includes:
The specified number n of n multi-linear maps to be applied to the encryption key generation process,
The maximum value R is set for the number r of revoke (exclusion) devices, and this corresponds to the number n that can correspond to an arbitrary number r ≦ R, that is, the value of rlog (N / r) when r = R. The information processing apparatus according to claim 5, wherein the information processing apparatus is configured as an integer value.
頂点ノードとしてのルートと、最下位ノードであるリーフを連結した構成を持つ階層木構成において、前記リーフに対応して設定された情報処理装置であり、
前記ルートから自リーフに至るパス上のノードに対応するノードキーを格納した記憶部と、
暗号文の復号処理を実行する暗号処理部であり、暗号文の暗号処理鍵であるnマルチリニアマップ(ただし、nは2以上の整数)を適用して生成された暗号鍵の算出処理を、前記ノードキーを適用して実行するとともに、生成した暗号鍵に基づいて暗号文の復号処理を実行する暗号処理部と、
を有することを特徴とする情報処理装置。
In a hierarchical tree configuration having a configuration in which a root as a vertex node and a leaf that is the lowest node are connected, an information processing apparatus set corresponding to the leaf,
A storage unit storing a node key corresponding to a node on a path from the root to the self-leaf;
An encryption processing unit that performs decryption processing of ciphertext, and performs encryption key calculation processing generated by applying an n multi-linear map (where n is an integer of 2 or more) that is an encryption processing key for ciphertext, An encryption processing unit that executes by applying the node key and executes decryption processing of ciphertext based on the generated encryption key;
An information processing apparatus comprising:
前記暗号処理部は、
下記定義、
Ks=(Φ,・・・Φα∈G
に基づくセッションキーKsによって暗号化された暗号文の復号処理を実行する構成であり、
セッションキーKsの算出処理として、下記処理1〜4、すなわち、
1.カウンタjを用意し、j=1とセットする、
2.カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる、
(a)もしi∈Kならば、iとIが一致するかどうかを調べる、
i.もしi=Iならば、Φ=sとセットし、jを1増やして次のiの処理に移る、
ii.もしi≠Iならば、Φ=gとセットし、jを1増やして次のiの処理に移る、
3.もしj≦nならば、j≦nの間、下記の処理を繰り返す、
(a)Φ=gとセットし、jを1増やす、
4.Ks=(φ,・・・,φ)を求める、
ただし、
は、Diffie−Hellman inversion assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
αは、α∈[1,p−1],ただし、pはGの位数、
Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
nは、nマルチリニアマップの規定数nであり2以上の整数、
Kは、前記階層木構成において、暗号文復号許容機器のみを選択して設定される部分木ルート集合、
は、ノードiの秘密キー、
は、ノードiの公開キー、
Iは、部分木ルート集合Kに含まれるノード、
gはGの生成元、
上記処理1〜4を実行してセッションキーKsの算出を実行する構成であることを特徴とする請求項8に記載の情報処理装置。
The cryptographic processing unit
The following definitions
Ks = (Φ 1 , ... Φ n ) α ∈ G 2
A process for decrypting ciphertext encrypted by a session key Ks based on
As the process for calculating the session key Ks, the following processes 1 to 4, that is,
1. Prepare counter j and set j = 1.
2. A counter i is prepared and i is incremented by 1 from 1 to 2N-1 while performing the following processing.
(A) If i∈K, check whether i and I match.
i. If i = I, set Φ j = s i , increase j by 1 and move on to the next i.
ii. If i ≠ I, set Φ j = g i , increase j by 1 and move on to the next i processing.
3. If j ≦ n, repeat the following process while j ≦ n.
(A) Set Φ j = g and increase j by 1.
4). Find Ks = (φ 1 ,..., Φ n ),
However,
G 2 is a group that defines an n multi-linear map e: G 1 n → G 2 that satisfies the Diffie-Hellman inversion assumption.
α is α∈ [1, p−1], where p is the order of G 1 ,
N is the total number of information processing devices corresponding to the leaves that are the lowest nodes in the hierarchical tree structure;
n is the specified number n of the n multi-linear map and is an integer greater than or equal to 2,
K is a subtree root set that is set by selecting only ciphertext decryption permitted devices in the hierarchical tree configuration;
s i is the secret key of node i,
g i is the public key of node i,
I is a node included in the subtree root set K,
g is the generator of G 1
The information processing apparatus according to claim 8, wherein the processes 1 to 4 are executed to calculate a session key Ks.
前記暗号処理部は、
下記定義、
Figure 2005123678
に基づくセッションキーKsによって暗号化された暗号文の復号処理を実行する構成であり、
セッションキーKsの算出処理として、下記処理1〜4、すなわち、
1.カウンタj,lを用意し、j=1,l=2Nとセットする、
2.カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる、
(a)もしi∈Kかつi≠IならばΦ=hとセットし、jを1増やして次のiの処理に移る、
3.もしj≦nならばj≦nの間、下記の処理を繰り返す。
(a)Φ=hとセットし、lを1増やし、jを1増やす,
4.セッションキーKsを、
Figure 2005123678
により算出する、
ただし、
は、generalized Diffie−Hellman assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
nは、nマルチリニアマップの規定数nであり2以上の整数、
Kは、前記階層木構成において、暗号文復号許容機器のみを選択して設定される部分木ルート集合、
は、階層木構成における各構成ノードiに設定されるノードキーであり、h=gxiが公開値、
Iは、部分木ルート集合Kに含まれるノード、
gは、群Gの生成元、
上記処理1〜4を実行してセッションキーKsの算出を実行する構成であることを特徴とする請求項8に記載の情報処理装置。
The cryptographic processing unit
The following definitions
Figure 2005123678
A process for decrypting ciphertext encrypted by a session key Ks based on
As the process for calculating the session key Ks, the following processes 1 to 4, that is,
1. Prepare counters j and l, and set j = 1 and l = 2N.
2. A counter i is prepared and i is incremented by 1 from 1 to 2N-1 while performing the following processing.
(A) If i∈K and i ≠ I, set Φ j = h i , increase j by 1 and move on to the next processing of i.
3. If j ≦ n, the following processing is repeated while j ≦ n.
(A) Set Φ j = h l , increase 1 by 1 and increase j by 1.
4). Session key Ks
Figure 2005123678
Calculated by
However,
G 2 is a group that defines an n multi-linear map e: G 1 n → G 2 that satisfies a generalized Diffie-Hellman assumption.
N is the total number of information processing devices corresponding to the leaves that are the lowest nodes in the hierarchical tree structure;
n is the specified number n of the n multi-linear map and is an integer greater than or equal to 2,
K is a subtree root set that is set by selecting only ciphertext decryption permitted devices in the hierarchical tree configuration;
x i is a node key set for each configuration node i in the hierarchical tree configuration, and h i = g xi is a public value,
I is a node included in the subtree root set K,
g is the generator of group G 1 ,
The information processing apparatus according to claim 8, wherein the processes 1 to 4 are executed to calculate a session key Ks.
暗号文を格納した情報記録媒体であり、
頂点ノードとしてのルートと、最下位ノードであるリーフを連結した構成を持つ階層木構成において、前記リーフに対応する複数の情報処理装置から暗号文の復号を許容する情報処理装置を選択し、選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文を格納し、
前記暗号文は、
nマルチリニアマップ(ただし、nは2以上の整数)を適用して生成した暗号鍵によって暗号化のなされた暗号文であることを特徴とする情報記録媒体。
An information recording medium storing ciphertext,
In a hierarchical tree configuration having a configuration in which a root as a vertex node and a leaf that is the lowest node are connected, an information processing device that allows decryption of ciphertext is selected from a plurality of information processing devices corresponding to the leaf, and is selected. Store the ciphertext that can be decrypted based only on the storage key of the ciphertext decryption permitted device,
The ciphertext is
An information recording medium, which is a ciphertext encrypted with an encryption key generated by applying an n multi-linear map (where n is an integer of 2 or more).
前記暗号文は、
前記nマルチリニアマップを適用して生成される鍵、すなわち、下記定義、
Ks=(Φ,・・・Φα∈G
に基づくセッションキーKsによって暗号化された暗号文、
ただし、Gは、Diffie−Hellman inversion assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
αは、α∈[1,p−1],ただし、pはGの位数、
Φは、下記の処理により定められる値、
(1)カウンタjを用意し、j=1とセットする、
(2)カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる、
(2a)もしi∈Kならば、Φ=gとセットし、jを1増やして次のiの処理に移る、
(3)もしj≦nならば、j≦nの間、下記の処理を繰り返す、
(3a)Φ=gとセットし、jを1増やす、
ただし、Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
nは、nマルチリニアマップの規定数nであり2以上の整数、
Kは、前記階層木構成において、暗号文復号許容機器のみを選択して設定される部分木ルート集合であり、
は、ノードiの公開値でありg∈Gを満たす、
gはGの生成元,
であることを特徴とする請求項11に記載の情報記録媒体。
The ciphertext is
A key generated by applying the n multi-linear map, that is, the following definition:
Ks = (Φ 1 , ... Φ n ) α ∈ G 2
Ciphertext encrypted with a session key Ks based on
However, G 2 is, Diffie-Hellman inversion assumption satisfying n multilinear map e: a group defines a G 1 nG 2,
α is α∈ [1, p−1], where p is the order of G 1 ,
Φ j is a value determined by the following process,
(1) Prepare a counter j and set j = 1.
(2) A counter i is prepared, and i is incremented by 1 from 1 to 2N−1 while performing the following processing.
(2a) If i∈K, set Φ j = g i , increase j by 1 and move to the next processing of i.
(3) If j ≦ n, repeat the following process while j ≦ n.
(3a) Set Φ j = g and increase j by 1.
Where N is the total number of information processing devices corresponding to the leafs that are the lowest nodes in the hierarchical tree structure,
n is the specified number n of the n multi-linear map and is an integer greater than or equal to 2,
K is a subtree root set that is set by selecting only the ciphertext decryption permitted device in the hierarchical tree configuration,
g i is the public value of node i and satisfies g i ∈G 1 ,
g is the generator of G 1
The information recording medium according to claim 11, wherein:
前記暗号文は、
前記nマルチリニアマップを適用して生成される鍵、すなわち、下記定義、
Figure 2005123678
に基づくセッションキーKsによって暗号化された暗号文、
ただし、Gは、generalized Diffie−Hellman assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
gは、群Gの生成元であり、
は、階層木構成における各構成ノードiに設定されるノードキーであり、h=gxiが公開値として設定される、
であることを特徴とする請求項11に記載の情報記録媒体。
The ciphertext is
A key generated by applying the n multi-linear map, that is, the following definition:
Figure 2005123678
Ciphertext encrypted with a session key Ks based on
However, G 2 is, generalized Diffie-Hellman satisfy assumption n multilinear map e: a group defines a G 1 nG 2,
g is the generator of group G 1 and
x i is a node key set for each configuration node i in the hierarchical tree configuration, and h i = g xi is set as a public value.
The information recording medium according to claim 11, wherein:
暗号文生成処理を実行する情報処理方法であり、
頂点ノードとしてのルートと、最下位ノードであるリーフを連結した構成を持つ階層木構成において、前記リーフに対応する複数の情報処理装置から暗号文の復号を許容する情報処理装置を選択し、選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号処理ステップを有し、
前記暗号処理ステップは、
nマルチリニアマップ(ただし、nは2以上の整数)を適用して暗号鍵を生成する鍵生成ステップと、
生成した暗号鍵によって前記暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号文生成ステップとを有することを特徴とする情報処理方法。
An information processing method for executing ciphertext generation processing,
In a hierarchical tree configuration having a configuration in which a root as a vertex node and a leaf that is the lowest node are connected, an information processing device that allows decryption of ciphertext is selected from a plurality of information processing devices corresponding to the leaf, and is selected. An encryption processing step for executing a process for generating a decryptable ciphertext based only on the storage key of the ciphertext decryption-permitted device,
The cryptographic processing step includes
a key generation step of generating an encryption key by applying an n multilinear map (where n is an integer of 2 or more);
An information processing method comprising: a ciphertext generation step of executing a ciphertext generation process that can be decrypted based only on a stored key of the ciphertext decryption-permitted device using the generated encryption key.
前記リーフに対応する複数の情報処理装置の各々は、前記ルートから自リーフに至るパス上のノードに対応するノードキーを有し、
前記暗号処理ステップは、
前記暗号文復号許容機器の格納ノードキーにおいてのみ復号可能な暗号文の生成処理を実行することを特徴とする請求項14に記載の情報処理方法。
Each of the plurality of information processing devices corresponding to the leaf has a node key corresponding to a node on a path from the root to the own leaf,
The cryptographic processing step includes
The information processing method according to claim 14, wherein a ciphertext generation process that can be decrypted only with a storage node key of the ciphertext decryption-permitted device is executed.
前記鍵生成ステップは、
前記nマルチリニアマップを適用して生成する鍵として、下記定義、
Ks=(Φ,・・・Φα∈G
に基づくセッションキーKsを生成するステップである、
ただし、Gは、Diffie−Hellman inversion assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
αは、α∈[1,p−1],ただし、pはGの位数、
Φは、下記の処理により定められる値、
(1)カウンタjを用意し、j=1とセットする、
(2)カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる、
(2a)もしi∈Kならば、Φ=gとセットし、jを1増やして次のiの処理に移る、
(3)もしj≦nならば、j≦nの間、下記の処理を繰り返す、
(3a)Φ=gとセットし、jを1増やす、
ただし、Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
nは、nマルチリニアマップの規定数nであり2以上の整数、
Kは、前記階層木構成において、暗号文復号許容機器のみを選択して設定される部分木ルート集合であり、
は、ノードiの公開値でありg∈Gを満たす、
gはGの生成元,
であることを特徴とする請求項14に記載の情報処理方法。
The key generation step includes:
As a key to be generated by applying the n multi-linear map, the following definition:
Ks = (Φ 1 , ... Φ n ) α ∈ G 2
Generating a session key Ks based on:
However, G 2 is, Diffie-Hellman inversion assumption satisfying n multilinear map e: a group defines a G 1 nG 2,
α is α∈ [1, p−1], where p is the order of G 1 ,
Φ j is a value determined by the following process,
(1) Prepare a counter j and set j = 1.
(2) A counter i is prepared, and i is incremented by 1 from 1 to 2N−1 while performing the following processing.
(2a) If i∈K, set Φ j = g i , increase j by 1 and move to the next processing of i.
(3) If j ≦ n, repeat the following process while j ≦ n.
(3a) Set Φ j = g and increase j by 1.
Where N is the total number of information processing devices corresponding to the leafs that are the lowest nodes in the hierarchical tree structure,
n is the specified number n of the n multi-linear map and is an integer greater than or equal to 2,
K is a subtree root set that is set by selecting only the ciphertext decryption permitted device in the hierarchical tree configuration,
g i is the public value of node i and satisfies g i ∈G 1 ,
g is the generator of G 1
The information processing method according to claim 14, wherein:
前記鍵生成ステップは、
前記nマルチリニアマップを適用して生成する鍵として、下記定義、
Figure 2005123678
に基づくセッションキーKsを生成するステップである、
ただし、Gは、generalized Diffie−Hellman assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
gは、群Gの生成元であり、
は、階層木構成における各構成ノードiに設定されるノードキーであり、h=gxiが公開値として設定される、
ことを特徴とする請求項14に記載の情報処理方法。
The key generation step includes:
As a key to be generated by applying the n multi-linear map, the following definition:
Figure 2005123678
Generating a session key Ks based on:
However, G 2 is, generalized Diffie-Hellman satisfy assumption n multilinear map e: a group defines a G 1 nG 2,
g is the generator of group G 1 and
x i is a node key set for each configuration node i in the hierarchical tree configuration, and h i = g xi is set as a public value.
The information processing method according to claim 14.
前記情報処理方法は、さらに、
前記暗号鍵の生成処理に適用するnマルチリニアマップの規定数nを、
Diffie−Hellman inversion assumptionを満たすnマルチリニアマップを用いる場合、
Figure 2005123678
として設定し、
generalized Diffie−Hellman assumptionを満たすnマルチリニアマップを用いる場合、
Figure 2005123678
として設定する構成、
ただし、
Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
rは、前記暗号文復号許容機器以外のリボーク(排除)機器数、
Figure 2005123678
は、rlog(N/r)以下の最大の整数、
を有することを特徴とする請求項14に記載の情報処理方法。
The information processing method further includes:
The specified number n of n multi-linear maps to be applied to the encryption key generation process,
When using an n multi-linear map that satisfies Diffie-Hellman inversion assumption,
Figure 2005123678
Set as
When using an n multi-linear map that satisfies the generalized Diffie-Hellman assumption,
Figure 2005123678
Configuration to set as
However,
N is the total number of information processing devices corresponding to the leaves that are the lowest nodes in the hierarchical tree structure;
r is the number of revocation (exclusion) devices other than the ciphertext decryption permitted device,
Figure 2005123678
Is the largest integer less than or equal to rlog (N / r),
The information processing method according to claim 14, further comprising:
前記情報処理方法において、
前記暗号鍵の生成処理に適用するnマルチリニアマップの規定数nを、
r≦Nの任意のrに対応可能な数n、すなわちrlog(N/r)の最大値に対応する整数値として設定することを特徴とする請求項18に記載の情報処理方法。
In the information processing method,
The specified number n of n multi-linear maps to be applied to the encryption key generation process,
19. The information processing method according to claim 18, wherein the number n is set as an integer value corresponding to the maximum value of rlog (N / r), which is a number n that can correspond to any r of r ≦ N.
前記情報処理方法において、
前記暗号鍵の生成処理に適用するnマルチリニアマップの規定数nを、
リボーク(排除)機器数rについて、その最大値Rを設定し、r≦Rの任意数に対応可能な数n、すなわち、r=Rとしたときのrlog(N/r)の値に対応する整数値として設定することを特徴とする請求項18に記載の情報処理方法。
In the information processing method,
The specified number n of n multi-linear maps to be applied to the encryption key generation process,
The maximum value R is set for the number r of revoke (exclusion) devices, and this corresponds to the number n that can correspond to an arbitrary number r ≦ R, that is, the value of rlog (N / r) when r = R. The information processing method according to claim 18, wherein the information processing method is set as an integer value.
暗号文の復号処理を実行する情報処理方法であり、
nマルチリニアマップ(ただし、nは2以上の整数)を適用して生成された暗号鍵の算出処理を、階層木構成中の頂点ノードとしてのルートから自装置の対応するリーフに至るパス上のノードに設定されたノードキーを適用して実行する鍵算出ステップと、
前記鍵算出ステップにおいて算出した暗号鍵に基づいて暗号文の復号処理を実行する暗号文復号ステップと、
を有することを特徴とする情報処理方法。
An information processing method for executing decryption processing of ciphertext,
An encryption key calculation process generated by applying an n multi-linear map (where n is an integer equal to or greater than 2) is performed on the path from the root as a vertex node in the hierarchical tree structure to the corresponding leaf of the own device. A key calculation step executed by applying a node key set in the node; and
A ciphertext decryption step for performing ciphertext decryption processing based on the cipher key calculated in the key calculation step;
An information processing method characterized by comprising:
前記鍵算出ステップは、
下記定義、
Ks=(Φ,・・・Φα∈G
に基づくセッションキーKsの算出処理として、下記処理1〜4、すなわち、
1.カウンタjを用意し、j=1とセットする、
2.カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる、
(a)もしi∈Kならば、iとIが一致するかどうかを調べる、
i.もしi=Iならば、Φ=sとセットし、jを1増やして次のiの処理に移る、
ii.もしi≠Iならば、Φ=gとセットし、jを1増やして次のiの処理に移る、
3.もしj≦nならば、j≦nの間、下記の処理を繰り返す、
(a)Φ=gとセットし、jを1増やす、
4.Ks=(φ,・・・,φ)を求める、
ただし、
は、Diffie−Hellman inversion assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
αは、α∈[1,p−1],ただし、pはGの位数、
Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
nは、nマルチリニアマップの規定数nであり2以上の整数、
Kは、前記階層木構成において、暗号文復号許容機器のみを選択して設定される部分木ルート集合、
は、ノードiの秘密キー、
は、ノードiの公開キー、
gはGの生成元、
Iは、部分木ルート集合Kに含まれるノード、
上記処理1〜4を実行してセッションキーKsの算出を実行するステップであることを特徴とする請求項21に記載の情報処理方法。
The key calculating step includes
The following definitions
Ks = (Φ 1 , ... Φ n ) α ∈ G 2
As the process for calculating the session key Ks based on the following processes 1-4,
1. Prepare counter j and set j = 1.
2. A counter i is prepared and i is incremented by 1 from 1 to 2N-1 while performing the following processing.
(A) If i∈K, check whether i and I match.
i. If i = I, set Φ j = s i , increase j by 1 and move on to the next i.
ii. If i ≠ I, set Φ j = g i , increase j by 1 and move on to the next i processing.
3. If j ≦ n, repeat the following process while j ≦ n.
(A) Set Φ j = g and increase j by 1.
4). Find Ks = (φ 1 ,..., Φ n ),
However,
G 2 is a group that defines an n multi-linear map e: G 1 n → G 2 that satisfies the Diffie-Hellman inversion assumption.
α is α∈ [1, p−1], where p is the order of G 1 ,
N is the total number of information processing devices corresponding to the leaves that are the lowest nodes in the hierarchical tree structure;
n is the specified number n of the n multi-linear map and is an integer greater than or equal to 2,
K is a subtree root set that is set by selecting only ciphertext decryption permitted devices in the hierarchical tree configuration;
s i is the secret key of node i,
g i is the public key of node i,
g is the generator of G 1
I is a node included in the subtree root set K,
22. The information processing method according to claim 21, wherein the information processing method is a step of executing the processes 1 to 4 to calculate a session key Ks.
前記鍵算出ステップは、
下記定義、
Figure 2005123678
に基づくセッションキーKsの算出処理として、下記処理1〜4、すなわち、
1.カウンタj,lを用意し、j=1,l=2Nとセットする、
2.カウンタiを用意し、以下の処理を行いながらiを1から2N−1まで1ずつ増加させる、
(a)もしi∈Kかつi≠IならばΦ=hとセットし、jを1増やして次のiの処理に移る、
3.もしj≦nならば、j≦nの間、下記の処理を繰り返す。
(a)Φ=hとセットし、lを1増やし、jを1増やす、
4.上記セッションキーKsを算出する、
ただし、
は、generalized Diffie−Hellman assumptionを満たすnマルチリニアマップe:G →Gを定義する群であり、
Nは階層木構成の最下位ノードであるリーフに対応する情報処理装置の総数、
nは、nマルチリニアマップの規定数nであり2以上の整数、
Kは、前記階層木構成において、暗号文復号許容機器のみを選択して設定される部分木ルート集合、
は、階層木構成における各構成ノードiに設定されるノードキーであり、h=gxiが公開値、
Iは、部分木ルート集合Kに含まれるノード、
gは、群Gの生成元、
上記処理1〜4を実行してセッションキーKsの算出を実行するステップであることを特徴とする請求項21に記載の情報処理方法。
The key calculating step includes
The following definitions
Figure 2005123678
As the process for calculating the session key Ks based on the following processes 1-4,
1. Prepare counters j and l, and set j = 1 and l = 2N.
2. A counter i is prepared and i is incremented by 1 from 1 to 2N-1 while performing the following processing.
(A) If i∈K and i ≠ I, set Φ j = h i , increase j by 1 and move on to the next processing of i.
3. If j ≦ n, the following processing is repeated while j ≦ n.
(A) Set Φ j = h l , increase 1 by 1 and increase j by 1.
4). Calculating the session key Ks;
However,
G 2 is a group that defines an n multi-linear map e: G 1 n → G 2 that satisfies a generalized Diffie-Hellman assumption.
N is the total number of information processing devices corresponding to the leaves that are the lowest nodes in the hierarchical tree structure;
n is the specified number n of the n multi-linear map and is an integer greater than or equal to 2,
K is a subtree root set that is set by selecting only ciphertext decryption permitted devices in the hierarchical tree configuration;
x i is a node key set for each configuration node i in the hierarchical tree configuration, and h i = g xi is a public value,
I is a node included in the subtree root set K,
g is the generator of group G 1 ,
22. The information processing method according to claim 21, wherein the information processing method is a step of executing the processes 1 to 4 to calculate a session key Ks.
暗号文生成処理を実行するコンピュータ・プログラムであり、
頂点ノードとしてのルートと、最下位ノードであるリーフを連結した構成を持つ階層木構成において、前記リーフに対応する複数の情報処理装置から暗号文の復号を許容する情報処理装置を選択し、選択した暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号処理ステップを有し、
前記暗号処理ステップは、
nマルチリニアマップ(ただし、nは2以上の整数)を適用して暗号鍵を生成する鍵生成ステップと、
生成した暗号鍵によって前記暗号文復号許容機器の格納鍵のみに基づいて復号可能な暗号文の生成処理を実行する暗号文生成ステップとを有することを特徴とするコンピュータ・プログラム。
A computer program for executing ciphertext generation processing;
In a hierarchical tree configuration having a configuration in which a root as a vertex node and a leaf that is the lowest node are connected, an information processing device that allows decryption of ciphertext is selected from a plurality of information processing devices corresponding to the leaf, and is selected. An encryption processing step for executing a process for generating a decryptable ciphertext based only on the storage key of the ciphertext decryption-permitted device,
The cryptographic processing step includes
a key generation step of generating an encryption key by applying an n multilinear map (where n is an integer of 2 or more);
A computer program comprising: a ciphertext generation step for executing a process for generating a ciphertext that can be decrypted based only on a storage key of the ciphertext decryption permitted device with the generated ciphertext.
暗号文の復号処理を実行するコンピュータ・プログラムであり、
nマルチリニアマップ(ただし、nは2以上の整数)を適用して生成された暗号鍵の算出処理を、階層木構成中の頂点ノードとしてのルートから自装置の対応するリーフに至るパス上のノードに設定されたノードキーを適用して実行する鍵算出ステップと、
前記鍵算出ステップにおいて算出した暗号鍵に基づいて暗号文の復号処理を実行する暗号文復号ステップと、
を有することを特徴とするコンピュータ・プログラム。
A computer program for performing decryption processing of ciphertext,
An encryption key calculation process generated by applying an n multi-linear map (where n is an integer equal to or greater than 2) is performed on the path from the root as a vertex node in the hierarchical tree structure to the corresponding leaf of the own device. A key calculation step executed by applying a node key set in the node; and
A ciphertext decryption step for performing ciphertext decryption processing based on the cipher key calculated in the key calculation step;
A computer program characterized by comprising:
JP2003353310A 2003-10-14 2003-10-14 Information processing apparatus, information processing method, and computer program Expired - Fee Related JP4561074B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003353310A JP4561074B2 (en) 2003-10-14 2003-10-14 Information processing apparatus, information processing method, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003353310A JP4561074B2 (en) 2003-10-14 2003-10-14 Information processing apparatus, information processing method, and computer program

Publications (2)

Publication Number Publication Date
JP2005123678A true JP2005123678A (en) 2005-05-12
JP4561074B2 JP4561074B2 (en) 2010-10-13

Family

ID=34611627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003353310A Expired - Fee Related JP4561074B2 (en) 2003-10-14 2003-10-14 Information processing apparatus, information processing method, and computer program

Country Status (1)

Country Link
JP (1) JP4561074B2 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008236377A (en) * 2007-03-20 2008-10-02 Sony Corp Key providing system, device, and method, terminal device, and key generating method
JP2010193226A (en) * 2009-02-19 2010-09-02 Mitsubishi Electric Corp Communication equipment, communication method and communication program
WO2015097834A1 (en) * 2013-12-26 2015-07-02 株式会社東芝 Communication control apparatus, communication control method and program
JP2017108451A (en) * 2017-02-21 2017-06-15 株式会社東芝 Communication control device, communication control method, program and communication system
JP2018139406A (en) * 2018-02-19 2018-09-06 株式会社東芝 Communication device, communication method, program, and communication system
US10673624B2 (en) 2014-10-31 2020-06-02 Kabushiki Kaisha Toshiba Communication control device, communication control method, and computer program product
CN111656728A (en) * 2017-11-23 2020-09-11 华为技术有限公司 Device, system and method for secure data communication
CN112733177A (en) * 2021-01-26 2021-04-30 中国人民解放军国防科技大学 Hierarchical identification password encryption method based on global hash

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JPN6009034565, Dalit Naor, et. al., "Revocation and Tracing Schemes for Stateless Receivers", Lecture Notes in Computer Science, 2001, Vol. 2139, p.41−62 *
JPN6010009905, Dan Boneh and Alice Silverberg, "Applications of Multilinear Forms to Cryptography", Cryptology ePrint Archive: Report 2002/080, 2002 *
JPN6010009907, Yevgeniy Dodis and Nelly Fazio, "Public Key Broadcast Encryption for Stateless Receivers", ACM CCS−9 Workshop, DRM 2002, Washington, DC, USA, November 18, 2002, Revised Papers, LNCS 2696, 2003, pp. 61−80 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008236377A (en) * 2007-03-20 2008-10-02 Sony Corp Key providing system, device, and method, terminal device, and key generating method
JP2010193226A (en) * 2009-02-19 2010-09-02 Mitsubishi Electric Corp Communication equipment, communication method and communication program
WO2015097834A1 (en) * 2013-12-26 2015-07-02 株式会社東芝 Communication control apparatus, communication control method and program
JP6100922B2 (en) * 2013-12-26 2017-03-22 株式会社東芝 COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL METHOD, PROGRAM, AND COMMUNICATION SYSTEM
US10700934B2 (en) 2013-12-26 2020-06-30 Kabushiki Kaisha Toshiba Communication control device, communication control method, and computer program product
US10673624B2 (en) 2014-10-31 2020-06-02 Kabushiki Kaisha Toshiba Communication control device, communication control method, and computer program product
JP2017108451A (en) * 2017-02-21 2017-06-15 株式会社東芝 Communication control device, communication control method, program and communication system
CN111656728A (en) * 2017-11-23 2020-09-11 华为技术有限公司 Device, system and method for secure data communication
JP2018139406A (en) * 2018-02-19 2018-09-06 株式会社東芝 Communication device, communication method, program, and communication system
CN112733177A (en) * 2021-01-26 2021-04-30 中国人民解放军国防科技大学 Hierarchical identification password encryption method based on global hash
CN112733177B (en) * 2021-01-26 2024-04-19 中国人民解放军国防科技大学 Hierarchical identification password encryption method based on global hash

Also Published As

Publication number Publication date
JP4561074B2 (en) 2010-10-13

Similar Documents

Publication Publication Date Title
US7340054B2 (en) Information processing method, decrypting method, information processing apparatus, and computer program
JP4902934B2 (en) Broadcast encryption method
US20070133806A1 (en) Information processing method, decryption method, information processing device, and computer program
JP4162237B2 (en) ENCRYPTED COMMUNICATION SYSTEM, ENCRYPTION DEVICE, DECRYPTION DEVICE, ENCRYPTION METHOD, DECRYPTION METHOD, ENCRYPTION PROGRAM, AND DECRYPTION PROGRAM
JP4561074B2 (en) Information processing apparatus, information processing method, and computer program
KR20090127716A (en) Method of tracing device keys for broadcast encryption
JP2010124071A (en) Communication device, communication method, and program
JP2006115464A (en) Information processing method, decoding method, information processing device, and computer program
JP4989293B2 (en) Content distribution system
JP2005333242A (en) Key management system and reproducing apparatus
JP2008131072A (en) Information processor, terminal device, information processing method, and key generation method
JP4161859B2 (en) Information processing apparatus, information recording medium, information processing method, and computer program
JP7325689B2 (en) Ciphertext conversion system, conversion key generation method, and conversion key generation program
JP2007189597A (en) Encryption device, encryption method, decoding device, and decoding method
JP4576824B2 (en) Information processing apparatus and information processing method
JP2004229128A (en) Encryption data distribution system, information processor and information processing method, and computer program
JP4635459B2 (en) Information processing method, decoding processing method, information processing apparatus, and computer program
JP2005191805A (en) Encryption message distribution method, information processing device, information processing method, and computer program
JP2007020025A (en) Information processing device, information processing method, and computer program
JP2005333241A (en) Key management system and reproducing apparatus
WO2009157050A1 (en) Information processing device and program
JP2005252916A (en) Information processing method and apparatus, decoding processing method, and computer program
JP5052207B2 (en) Broadcast encryption system capable of tracking unauthorized persons, center device and user device thereof, program thereof and recording medium thereof
JP6885325B2 (en) Cryptographic device, decryption device, encryption method, decryption method, program
JP2008131079A (en) Information processor, terminal device, information processing method, and key generation method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060904

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100302

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100426

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20100517

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100525

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100617

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100706

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100719

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

Free format text: PAYMENT UNTIL: 20130806

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130806

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees