JP2000216769A - Secret key generating method, encryption method and encryption communication method - Google Patents

Secret key generating method, encryption method and encryption communication method

Info

Publication number
JP2000216769A
JP2000216769A JP11016257A JP1625799A JP2000216769A JP 2000216769 A JP2000216769 A JP 2000216769A JP 11016257 A JP11016257 A JP 11016257A JP 1625799 A JP1625799 A JP 1625799A JP 2000216769 A JP2000216769 A JP 2000216769A
Authority
JP
Japan
Prior art keywords
entity
key
vector
secret key
center
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
JP11016257A
Other languages
Japanese (ja)
Other versions
JP3590284B2 (en
Inventor
Shigeo Tsujii
重男 辻井
Yasumichi Murakami
恭通 村上
Masao Kasahara
正雄 笠原
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.)
Murata Machinery Ltd
Kasahara Masao
Tsujii Shigeo
Original Assignee
Murata Machinery Ltd
Kasahara Masao
Tsujii Shigeo
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 Murata Machinery Ltd, Kasahara Masao, Tsujii Shigeo filed Critical Murata Machinery Ltd
Priority to JP01625799A priority Critical patent/JP3590284B2/en
Priority to US09/489,696 priority patent/US7065210B1/en
Publication of JP2000216769A publication Critical patent/JP2000216769A/en
Application granted granted Critical
Publication of JP3590284B2 publication Critical patent/JP3590284B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide an encryption communication method which adopts ID- NIKS where the scale of a mathematical structure is minimized, a coalition problem can be avoided and building of the encryption system is facilitated. SOLUTION: In this encryption communication method, a plurality of centers 1 that distribute a specific secret key to each entity are provided, specific information (ID information) for each entity is divided into several parts, and all private keys generated for divided specific information parts are distributed to the entities. Each entity uses a component corresponding to the divided specific information of an opposite side entity included in a secret key specific to each entity to generate a common key.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、エンティティ固有
の秘密鍵を生成する秘密鍵生成方法、情報の内容が当事
者以外にはわからないように情報を暗号化する暗号化方
法、及び、暗号文にて通信を行う暗号通信方法に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a secret key generation method for generating a private key unique to an entity, an encryption method for encrypting information so that the contents of the information cannot be understood by anyone other than the parties, and a cipher text. The present invention relates to an encryption communication method for performing communication.

【0002】[0002]

【従来の技術】高度情報化社会と呼ばれる現代社会で
は、コンピュータネットワークを基盤として、ビジネス
上の重要な文書・画像情報が電子的な情報という形で伝
送通信されて処理される。このような電子情報は、容易
に複写が可能である、複写物とオリジナルとの区別が困
難であるという性質があり、情報保全の問題が重要視さ
れている。特に、「コンピュータリソースの共有」,
「マルチアクセス」,「広域化」の各要素を満たすコン
ピュータネットワークの実現が高度情報化社会の確立に
不可欠であるが、これは当事者間の情報保全の問題とは
矛盾する要素を含んでいる。このような矛盾を解消する
ための有効な手法として、人類の過去の歴史上主として
軍事,外交面で用いられてきた暗号技術が注目されてい
る。
2. Description of the Related Art In a modern society called an advanced information society, important documents and image information in business are transmitted, communicated, and processed in the form of electronic information based on a computer network. Such electronic information has a property that it can be easily copied and it is difficult to distinguish a copy from an original, and thus the importance of information security is emphasized. In particular, "sharing of computer resources",
The realization of a computer network that satisfies the elements of “multi-access” and “wide area” is indispensable for the establishment of an advanced information society, but this includes elements inconsistent with the problem of information security between the parties. As an effective method for resolving such inconsistency, cryptographic technology that has been used mainly in military and diplomatic aspects in the past history of humankind has attracted attention.

【0003】暗号とは、情報の意味が当事者以外には理
解できないように情報を交換することである。暗号にお
いて、誰でも理解できる元の文(平文)を第三者には意
味がわからない文(暗号文)に変換することが暗号化で
あり、また、暗号文を平文に戻すことが復号であり、こ
の暗号化と復号との全過程をまとめて暗号系と呼ぶ。暗
号化の過程及び復号の過程には、それぞれ暗号化鍵及び
復号鍵と呼ばれる秘密の情報が用いられる。復号時には
秘密の復号鍵が必要であるので、この復号鍵を知ってい
る者のみが暗号文を復号でき、暗号化によって情報の秘
密性が維持され得る。
[0003] Encryption means exchanging information so that the meaning of the information cannot be understood by anyone other than the parties. In encryption, it is encryption to convert an original sentence (plaintext) that anyone can understand into a sentence (ciphertext) whose meaning is unknown to a third party, and decryption is to return the ciphertext to plaintext. The entire process of encryption and decryption is collectively called an encryption system. In the encryption process and the decryption process, secret information called an encryption key and a decryption key are used, respectively. Since a secret decryption key is required at the time of decryption, only a person who knows the decryption key can decrypt the ciphertext, and the encryption can maintain the confidentiality of the information.

【0004】暗号化鍵と復号鍵とは、等しくても良い
し、異なっていても良い。両者の鍵が等しい暗号方式
は、共通鍵暗号方式と呼ばれ、米国商務省標準局が採用
したDES(Data Encryption Standards)はその典型例
である。このような共通鍵暗号方式の従来例は、次のよ
うな3種の方法に分類できる。
[0004] The encryption key and the decryption key may be the same or different. An encryption method in which both keys are equal is called a common key encryption method, and DES (Data Encryption Standards) adopted by the United States Department of Commerce Standard Bureau is a typical example. Conventional examples of such a common key cryptosystem can be classified into the following three methods.

【0005】 第1の方法 暗号通信を行う可能性がある相手との共通鍵をすべて秘
密保管しておく方法。 第2の方法 暗号通信の都度、予備通信により鍵を共有し合う方法
(Diffie-Hellmanによる鍵共有方式,公開鍵方式による
鍵配送方式など)。 第3の方法 各ユーザ(エンティティ)の氏名,住所などの個人を特
定する公開された特定情報(ID(Identity)情報)を
利用して、予備通信を行うことなく、送信側のエンティ
ティ,受信側のエンティティが独立に同一の共通鍵を生
成する方法(KPS(Key Predistribution System),
ID−NIKS(ID-based Non-Interactive Key Shari
ng Schemes) など)。
[0005] A first method is to secretly store all common keys with a partner who may perform encrypted communication. Second method A method in which keys are shared by preliminary communication each time cryptographic communication is performed (a key sharing method using Diffie-Hellman, a key distribution method using a public key method, etc.). Third method The transmitting-side entity and the receiving-side using public specific information (ID (Identity) information) that specifies an individual such as the name and address of each user (entity) without performing preliminary communication. In which the same entity independently generates the same common key (KPS (Key Predistribution System),
ID-NIKS (ID-based Non-Interactive Key Shari
ng Schemes)).

【0006】[0006]

【発明が解決しようとする課題】このような従来の3種
の方法には、以下に述べるような問題がある。第1の方
法では、すべての共通鍵を保管しておくようにするの
で、不特定多数のユーザがエンティティとなって暗号通
信を行うネットワーク社会には適さない。また、第2の
方法は、鍵共有のための予備通信が必要である点が問題
である。
The above three conventional methods have the following problems. In the first method, since all common keys are stored, the method is not suitable for a network society in which an unspecified number of users act as entities and perform cryptographic communication. Also, the second method has a problem in that preliminary communication for key sharing is required.

【0007】第3の方法は、予備通信が不要であり、公
開された相手のID情報とセンタから予め配布されてい
る固有の秘密パラメータとを用いて、任意の相手との共
通鍵を生成できるので、便利な方法である。しかしなが
ら、次のような2つの問題点がある。一つは、センタが
Big Brother となる(すべてのエンティティの秘密を握
っており、Key Escrow System になってしまう)点であ
る。もう一つは、ある数のエンティティが結託するとセ
ンタの秘密を演算できる可能性がある点である。この結
託問題については、これを計算量的に回避するための工
夫が多数なされているが、完全な解決は困難である。
[0007] The third method does not require preliminary communication, and can generate a common key with an arbitrary partner by using the ID information of the disclosed partner and a unique secret parameter distributed in advance from the center. So it is a convenient way. However, there are the following two problems. One is the center
It is a Big Brother (which holds the secret of every entity and becomes a Key Escrow System). Another is that a certain number of entities may be able to compute the secret of the center when collaborating. Many attempts have been made to avoid this collusion problem in terms of computational complexity, but it is difficult to completely solve it.

【0008】この結託問題の難しさは、ID情報に基づ
く秘密パラメータがセンタ秘密と個人秘密との二重構造
になっていることに起因する。第3の方法では、センタ
の公開パラメータと個人の公開ID情報とこの2種類の
秘密パラメータとにて暗号系が構成され、しかも各エン
ティティが各自に配布された個人秘密を見せ合ってもセ
ンタ秘密が露呈されないようにする必要がある。よっ
て、その暗号系の構築の実現には解決すべき課題が多
い。
The difficulty of the collusion problem arises from the fact that the secret parameter based on the ID information has a double structure of the center secret and the personal secret. In the third method, an encryption system is composed of the public parameters of the center, the public ID information of the individual, and the two types of secret parameters. Even if each entity shows the personal secret distributed to each other, the center secret is used. Should not be exposed. Therefore, there are many problems to be solved in realizing the construction of the encryption system.

【0009】本発明は斯かる事情に鑑みてなされたもの
であり、特定情報(ID情報)をいくつかに分割し、複
数の各センタからその分割した特定情報に基づくすべて
の秘密鍵をエンティティに配布することにより、数学的
構造を最小限に抑えることができて、結託問題の回避を
可能にし、その暗号系の構築が容易であるID−NIK
Sによる秘密鍵生成方法,暗号化方法及び暗号通信方法
を提供することを目的とする。
[0009] The present invention has been made in view of such circumstances, and divides specific information (ID information) into several pieces, and transmits all secret keys based on the divided specific information to entities from a plurality of centers. ID-NIK, which can minimize the mathematical structure by distributing, avoids collusion problems, and facilitates construction of its cryptographic system
It is an object of the present invention to provide a secret key generation method, an encryption method, and an encryption communication method using S.

【0010】[0010]

【課題を解決するための手段】請求項1に係る秘密鍵生
成方法は、センタから各エンティティへ送付すべき各エ
ンティティ固有の秘密鍵を生成する方法において、前記
各エンティティの特定情報を分割した分割特定情報を利
用して、前記各エンティティ固有の秘密鍵を生成するこ
とを特徴とする。
According to a first aspect of the present invention, there is provided a method for generating a secret key unique to each entity to be transmitted from a center to each entity, wherein the specific information of each entity is divided. A secret key unique to each entity is generated using specific information.

【0011】請求項2に係る暗号化方法は、センタから
各エンティティへ各エンティティ固有の秘密鍵を送付
し、エンティティが前記センタから送付された該エンテ
ィティ固有の秘密鍵を利用して平文を暗号文に暗号化す
る暗号化方法において、前記各エンティティの特定情報
を分割した分割特定情報を利用して、前記各エンティテ
ィ固有の秘密鍵を生成し、この秘密鍵に含まれている、
暗号文の送信先である相手のエンティティの分割特定情
報に対応する成分を使用して生成した共通鍵を用いて平
文を暗号文に暗号化することを特徴とする。
According to a second aspect of the present invention, the center sends a secret key unique to each entity from the center to each entity, and the entity encrypts the plaintext using the secret key unique to the entity sent from the center. In an encryption method for encrypting, the divided specific information obtained by dividing the specific information of each entity is used to generate a secret key unique to each entity, which is included in the secret key.
The plaintext is encrypted into a ciphertext using a common key generated using a component corresponding to the division specifying information of the other party as the destination of the ciphertext.

【0012】請求項3に係る暗号通信方法は、センタか
ら各エンティティへ各エンティティ固有の秘密鍵を送付
し、一方のエンティティが前記センタから送付された該
エンティティ固有の秘密鍵から求めた共通鍵を用いて平
文を暗号文に暗号化して他方のエンティティへ伝送し、
該他方のエンティティが伝送された暗号文を、前記セン
タから送付された該エンティティ固有の秘密鍵から求め
た、前記共通鍵と同一の共通鍵を用いて元の平文に復号
することにより、エンティティ間で情報の通信を行う暗
号通信方法において、前記センタが複数設けられてお
り、その複数の各センタは、各エンティティの特定情報
を分割した分割特定情報を利用して各エンティティ固有
の秘密鍵を生成し、各エンティティは、自身固有の秘密
鍵に含まれている、相手のエンティティの分割特定情報
に対応する成分を使用して前記共通鍵を生成するように
したことを特徴とする。
According to a third aspect of the present invention, the center transmits a secret key unique to each entity from the center to each entity, and one of the entities transmits a common key obtained from the secret key unique to the entity sent from the center. To encrypt the plaintext into ciphertext and transmit it to the other entity,
The other entity decrypts the transmitted ciphertext into the original plaintext using the same common key as the common key, which is obtained from the private key unique to the entity sent from the center. In the cryptographic communication method for performing information communication by using a plurality of centers, each of the plurality of centers generates a secret key unique to each entity by using divided specific information obtained by dividing specific information of each entity. Each entity generates the common key using a component included in its own private key and corresponding to the division specifying information of the partner entity.

【0013】結託問題を解決することを目的として提案
されてきたエンティティの特定情報に基づく種々の暗号
系が不成功となった理由は、エンティティの結託情報か
らセンタ秘密を割り出せないようにするための工夫を数
学的構造に求め過ぎていたためである。数学的構造が複
雑過ぎると、安全性を証明するための方法も困難とな
る。そこで、本発明では、エンティティの特定情報をい
くつかに分割し、分割した各特定情報についてすべての
秘密鍵をエンティティに配布することにより、数学的構
造を最小限に抑えるようにする。
The various cryptosystems based on entity specific information that have been proposed to solve the collusion problem have been unsuccessful because the center secret cannot be determined from the entity collusion information. This is because the ingenuity was sought too much for the mathematical structure. If the mathematical structure is too complex, the methods to prove security are also difficult. Therefore, in the present invention, the mathematical structure is minimized by dividing the specific information of the entity into several pieces and distributing all the secret keys for each of the divided specific information to the entity.

【0014】本発明では、複数のセンタが設けられ、各
センタはあるエンティティの分割した1つの特定情報に
対応する秘密鍵を生成する。よって、すべてのエンティ
ティの秘密を1つのセンタが握るようなことはなく、各
センタがBig Brother にならない。また、数学的構造を
最小限に抑えているので、結託問題の回避を実現しやす
く、また、暗号系の実現も容易となる。更に、各エンテ
ィティが共通鍵を生成するための自身固有の秘密鍵をセ
ンタから送付されて予めテーブル形式で保持しているの
で、共通鍵生成に要する時間を大幅に短くできる。
In the present invention, a plurality of centers are provided, and each center generates a secret key corresponding to one piece of specific information of a certain entity. Therefore, no one center holds the secret of all entities, and each center does not become a Big Brother. Further, since the mathematical structure is minimized, it is easy to avoid the collusion problem, and it is also easy to realize a cryptosystem. Furthermore, since each entity sends its own secret key for generating a common key from the center and holds it in a table format in advance, the time required for generating the common key can be greatly reduced.

【0015】[0015]

【発明の実施の形態】以下、本発明の実施の形態につい
て具体的に説明する。図1は、本発明の暗号通信システ
ムの構成を示す模式図である。情報の隠匿を信頼できる
複数(K個)のセンタ1が設定されており、これらのセ
ンタ1としては、例えば社会の公的機関を該当できる。
このように複数のセンタ1を設けた点が従来の第3の方
法とは異なる。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments of the present invention will be specifically described below. FIG. 1 is a schematic diagram showing the configuration of the cryptographic communication system of the present invention. A plurality (K) of centers 1 that can reliably conceal information are set, and these centers 1 can be, for example, public institutions of society.
The point that a plurality of centers 1 are provided is different from the third conventional method.

【0016】これらの各センタ1と、この暗号系システ
ムを利用するユーザとしての複数の各エンティティa,
b,…,zとは、秘密通信路2a1,…,2aK、2b1
…,2 bK、・・・、2z1,…,2zKにより接続されてお
り、これらの秘密通信路を介して各センタ1から秘密の
鍵情報が各エンティティa,b,…,zへ伝送されるよ
うになっている。また、2人のエンティティの間には通
信路3ab,3az,3bz,…が設けられており、この通信
路3ab,3az,3bz,…を介して通信情報を暗号化した
暗号文が互いのエンティティ間で伝送されるようになっ
ている。
Each of these centers 1 and this cryptosystem
A plurality of entities a,
b,..., z are secret communication paths 2a1, ..., 2aK, 2b1,
…, 2 bK, ..., 2z1, ..., 2zKConnected by
From each center 1 via these secret communication paths.
The key information is transmitted to each entity a, b, ..., z
Swelling. Also, there is no communication between the two entities.
The communication paths 3ab, 3az, 3bz, ... are provided.
Communication information is encrypted via the routes 3ab, 3az, 3bz, ...
Ciphertext is now transmitted between entities
ing.

【0017】〔第1実施の形態〕まず、本発明の基本方
式である第1実施の形態について説明する。
[First Embodiment] First, a first embodiment, which is a basic system of the present invention, will be described.

【0018】(センタ1での準備処理)センタ1は以下
の公開鍵及び秘密鍵を準備し、公開鍵を公開する。 公開鍵 P 大きな素数 L IDベクトルのサイズ(L=KM) K IDベクトルの分割ブロック数 M 分割したIDベクトルのサイズ 秘密鍵 g GF(P)の原始元 Hj 乱数からなる2M ×2M の対称行列 (j=1,2,・・・,K) αij エンティティiの個人秘密乱数 (但し、αi1αi2・・・αiK≡1 (mod P−1))
(Preparation processing in the center 1) The center 1 prepares the following public key and private key, and publishes the public key. Public key P Large prime L Size of ID vector (L = KM) K Number of divided blocks of ID vector M Size of divided ID vector Secret key g Primitive element of GF (P) H 2M × 2 M composed of random numbers j Symmetric matrix (j = 1, 2,..., K) Personal secret random number of α ij entity i (however, α i1 α i2 ... Α iK ≡1 (mod P−1))

【0019】各エンティティの氏名,住所などを示す特
定情報であるIDベクトルをL次元2進ベクトルとし、
図2に示すようにそのIDベクトルをブロックサイズM
毎にK個のブロックに分割する。例えば、エンティティ
iのIDベクトル(ベクトルIi )を式(1)のように
分割する。分割特定情報である各ベクトルIij(j=
1,2,・・・,K)をID分割ベクトルと呼ぶ。
An ID vector, which is specific information indicating the name and address of each entity, is defined as an L-dimensional binary vector,
As shown in FIG.
Each time, it is divided into K blocks. For example, the ID vector (vector I i ) of the entity i is divided as in Expression (1). Each vector I ij (j =
, K) are called ID division vectors.

【0020】[0020]

【数1】 (Equation 1)

【0021】(エンティティの登録処理)エンティティ
iに登録を依頼された各センタ1は、準備した鍵とエン
ティティiのK個のID分割ベクトルについて、それぞ
れに対応するK個の秘密鍵ベクトルsij(j=1,2,
・・・,K)を以下の式(2-1),(2-2),・・・,(2-
K)に従って求め、求めたベクトルsijを秘密裏に送っ
て、登録を完了する。
(Entity Registration Processing) Each center 1 that has been requested to register with the entity i, for the prepared key and the K ID divided vectors of the entity i, has K corresponding secret key vectors s ij ( j = 1,2,
..., K) by the following equations (2-1), (2-2), ..., (2-
K), and sends the obtained vector s ij secretly to complete the registration.

【0022】[0022]

【数2】 (Equation 2)

【0023】但し、gをスカラー、A,Bを行列とした
場合、B=gA はAの各(μ,ν)成分についてgのべ
き乗を行うことを表す。即ち、式(3)のようになる。
また、Hj [ベクトルIij]は対称行列Hj からベクト
ルIijに対応した行を1行抜き出したものを表し、
[・]の操作を参照と定義する。
However, when g is a scalar and A and B are matrices, B = g A indicates that a power of g is performed for each (μ, ν) component of A. That is, Equation (3) is obtained.
H j [vector I ij ] represents a row obtained by extracting one row corresponding to the vector I ij from the symmetric matrix H j ,
The operation of [•] is defined as a reference.

【0024】[0024]

【数3】 (Equation 3)

【0025】(エンティティ間の共通鍵の生成処理)エ
ンティティiは、自身の秘密鍵ベクトルsi1の中から、
エンティティmのID分割ベクトルであるベクトルIm1
に対応する成分のベクトルsi1[ベクトルI m1]を選び
出し、また、j=2,・・・,Kの各ブロックについて
秘密鍵ベクトルsijの中から、ベクトルImjに対応する
成分のベクトルsij[ベクトルImj]を各ブロック毎に
選び出す。そして、Pを法とし、ベクトルsi1[ベクト
ルIm1]を底として残りのすべてのベクトルsij[ベク
トルImj](j=2,・・・,K)を順次べき乗するこ
とにより、共通鍵Kimを求める。このKimを求める演算
式は具体的に式(4)となり、このKimはエンティティ
m側から求めた共通鍵K miと一致する。
(Generation process of common key between entities)
Entity i has its own secret key vector si1From among
Vector I that is an ID division vector of entity mm1
Vector s of the component corresponding toi1[Vector I m1]
And for each block of j = 2,..., K
Secret key vector sijFrom the vector ImjCorresponding to
Component vector sij[Vector Imj] For each block
Pick out. Then, modulo P, the vector si1[Vect
Le Im1] And all remaining vectors sij[Bek
Toll Imj] (J = 2,..., K)
And the symmetric key KimAsk for. This KimOperation to find
The equation is specifically Equation (4).imIs an entity
Common key K obtained from m side miMatches.

【0026】[0026]

【数4】 (Equation 4)

【0027】次に、上述した暗号システムにおけるエン
ティティ間の情報の通信について説明する。図3は、2
人のエンティティa,b間における情報の通信状態を示
す模式図である。図2の例は、エンティティaが平文
(メッセージ)Mを暗号文Cに暗号化してそれをエンテ
ィティbへ伝送し、エンティティbがその暗号文Cを元
の平文(メッセージ)Mに復号する場合を示している。
Next, communication of information between entities in the above-described cryptographic system will be described. FIG.
It is a schematic diagram which shows the communication state of information between human entities a and b. The example of FIG. 2 is a case where the entity a encrypts a plaintext (message) M into a ciphertext C and transmits it to the entity b, and the entity b decrypts the ciphertext C into the original plaintext (message) M. Is shown.

【0028】j(j=1,2,・・・,K)番目のセン
タ1には、各エンティティa,b固有のベクトルsaj
bj(秘密鍵)を前記式(2-j)に従って求める秘密鍵生
成器1aが備えられている。そして、各エンティティ
a,bから登録が依頼されると、そのエンティティa,
bの秘密鍵ベクトルsaj,sbjがエンティティa,bへ
送付される。
In the j-th (j = 1, 2,..., K) -th center 1, vectors s aj ,
A secret key generator 1a for obtaining s bj (secret key) according to the above equation (2-j) is provided. Then, when registration is requested from each of the entities a and b, the entity a, b
The secret key vectors s aj and s bj of b are sent to the entities a and b.

【0029】エンティティa側には、K個の各センタ1
から送られる固有の秘密鍵ベクトルsa1,…,saj
…,saKをテーブル形式で格納しているメモリ10と、
これらの秘密鍵ベクトルの中からエンティティbに対応
する成分であるベクトルsa1[ベクトルIb1],…,ベ
クトルsaj[ベクトルIbj],…,ベクトルsaK[ベク
トルIbK]を選び出す成分選出器11と、選び出された
これらの成分を使用してエンティティaが求めるエンテ
ィティbとの共通鍵Kabを生成する共通鍵生成器12
と、共通鍵Kabを用いて平文(メッセージ)Mを暗号文
Cに暗号化して通信路30へ出力する暗号化器13とが
備えられている。
On the entity a side, each of the K centers 1
Unique secret key vector s a1 sent from, ..., s aj,
, A memory 10 storing s aK in a table format;
A component corresponding to the entity b from these secret key vector vector s a1 [Vector I b1], ..., vector s aj [Vector I bj], ..., component selection of selecting the vector s aK [Vector I bK] Key generator 12 for generating a common key K ab between a unit 11 and an entity b obtained by an entity a using these selected components.
And an encryptor 13 for encrypting a plaintext (message) M into a ciphertext C using the common key K ab and outputting the same to the communication path 30.

【0030】また、エンティティb側には、各センタ1
から送られる固有の秘密鍵ベクトルsb1,…,sbj
…,sbKをテーブル形式で格納しているメモリ20と、
これらの秘密ベクトルの中からエンティティaに対応す
る成分であるベクトルsb1[ベクトルIa1],…,ベク
トルsbj[ベクトルIaj],…,ベクトルsbK[ベクト
ルIaK]を選び出す成分選出器21と、選び出されたこ
れらの成分を使用してエンティティbが求めるエンティ
ティaとの共通鍵Kbaを生成する共通鍵生成器22と、
共通鍵Kbaを用いて通信路30から入力した暗号文Cを平
文(メッセージ)Mに復号して出力する復号器23とが
備えられている。
Each center 1 is located on the entity b side.
, A unique secret key vector s b1 , ..., s bj ,
, SbK is stored in a table format in a memory 20;
A component corresponding to the entity a from these secrets Vector s b1 [vector I a1], ..., vector s bj [vector I aj], ..., component selection unit to select a vector s bK [Vector I aK] 21, and a common key generator 22 that generates a common key K ba for the entity a determined by the entity b using the selected components,
A decryptor 23 is provided for decrypting the ciphertext C input from the communication channel 30 into a plaintext (message) M using the common key Kba and outputting the same.

【0031】エンティティaからエンティティbへ情報
を伝送しようとする場合、まず、各センタ1で式(2-
1),(2-2),…,(2-K)に従って求められて、予めメモ
リ10に格納されている秘密鍵ベクトルsa1,sa2
…,saKが成分選出器11へ読み出される。そして、成
分選出器11にて、エンティティbに対応する成分である
ベクトルsa1[ベクトルIb1],ベクトルsa2[ベクト
ルIb2],…,ベクトルs aK[ベクトルIbK]が選び出
されて共通鍵生成器12へ送られる。共通鍵生成器12
にて、これらの成分を使用して式(4)に従って共通鍵
abが求められ、暗号化器13へ送られる。暗号化器1
3において、この共通鍵Kabを用いて平文(メッセー
ジ)Mが暗号文Cに暗号化され、暗号文Cが通信路30
を介して伝送される。
Information from entity a to entity b
When transmitting the data, first, at each center 1, the equation (2-
1), (2-2),…, (2-K)
Secret key vector s stored ina1, Sa2,
…, SaKIs read out to the component selector 11. And
The component corresponding to the entity b in the classifier 11
Vector sa1[Vector Ib1], Vector sa2[Vect
Le Ib2], ..., vector s aK[Vector IbK] Is selected
It is sent to the common key generator 12. Common key generator 12
, A symmetric key using these components in accordance with equation (4).
KabIs sent to the encryptor 13. Encryptor 1
3, the common key KabUsing plain text (message
G) M is encrypted into a ciphertext C, and the ciphertext C is
Is transmitted via

【0032】通信路30を伝送された暗号文Cはエンテ
ィティbの復号器23へ入力される。各センタ1で式
(2-1),(2-2),…,(2-K)に従って求められて、予め
メモリ20に格納されている秘密鍵ベクトルsb1
b2,…,sbKが成分選出器21へ読み出される。そし
て、成分選出器21にて、エンティティaに対応する成
分であるベクトルsb1[ベクトルIa1],ベクトルsb2
[ベクトルIa2],…,ベクトルsbK[ベクトル
baK ]が選び出されて共通鍵生成器22へ送られる。
共通鍵生成器22にて、これらの成分を使用して式
(4)に従って共通鍵Kbaが求められ、復号器23へ送
られる。復号器23において、この共通鍵Kbaを用いて
暗号文Cが平文(メッセージ)Mに復号される。
The ciphertext C transmitted through the communication path 30 is input to the decoder 23 of the entity b. Each center 1 obtains the secret key vector s b1 , obtained in accordance with the equations (2-1), (2-2),..., (2-K) and stored in the memory 20 in advance.
s b2, ..., s bK is read out to the component selection unit 21. Then, in the component selector 21, the vector s b1 [vector I a1 ] and the vector s b2 which are components corresponding to the entity a
[Vector I a2 ],..., Vector s bK [vector I baK ] are selected and sent to the common key generator 22.
The common key generator 22 obtains the common key K ba according to the equation (4) using these components, and sends it to the decryptor 23. The decryption unit 23 decrypts the ciphertext C into a plaintext (message) M using the common key Kba .

【0033】本発明の方式では、各エンティティ固有の
秘密鍵ベクトルが予めエンティティ側のメモリに格納さ
れているので、共通鍵生成に要する時間が短くて済む。
In the method of the present invention, since the secret key vector unique to each entity is stored in advance in the memory on the entity side, the time required for generating a common key can be reduced.

【0034】次に、本発明の方式における安全性につい
て説明する。安全なID−NIKSの必要条件として、
秘密鍵生成関数及び鍵共有関数が多項式時間で分離でき
ないことが知られている。以下に、本発明の方式がこの
必要条件を満たすことを示す。
Next, security in the system of the present invention will be described. Requirements for secure ID-NIKS include:
It is known that a secret key generation function and a key sharing function cannot be separated in polynomial time. The following shows that the method of the present invention satisfies this requirement.

【0035】(秘密鍵生成関数)本発明の方式は、式
(5),(6)に示すK個の秘密鍵生成関数を有する。
(Secret key generation function) The system of the present invention has K secret key generation functions shown in equations (5) and (6).

【0036】[0036]

【数5】 (Equation 5)

【0037】Hを任意の対称行列した場合、式(7),
(8)に示すように、参照関数[・]は明らかに分離不
可能である。
When H is arbitrarily symmetric, an equation (7),
As shown in (8), the reference function [•] is clearly inseparable.

【0038】[0038]

【数6】 (Equation 6)

【0039】従って、前記式(5),(6)で表される
K個の秘密鍵生成関数は、式(9)に示すように、分離
不可能である。
Therefore, the K secret key generation functions represented by the above equations (5) and (6) are inseparable as shown in equation (9).

【0040】[0040]

【数7】 (Equation 7)

【0041】(鍵共有関数)本発明の方式における鍵共
有関数を、式(10)に示す。
(Key Sharing Function) The key sharing function in the method of the present invention is shown in equation (10).

【0042】[0042]

【数8】 (Equation 8)

【0043】秘密鍵生成関数の場合と同様に、式(10)
で表される鍵共有関数は、式(11)に示すように、分離
不可能である。
As in the case of the secret key generation function, equation (10)
Is not separable, as shown in equation (11).

【0044】[0044]

【数9】 (Equation 9)

【0045】従来より、不特定多数のエンティティの結
託によって暗号システム全体を破る攻撃(以下、非買収
結託という)が議論されている。一方、ある特定の個人
のみを攻撃する場合には、攻撃に必要なエンティティの
みを買収して、より少ない数の結託者にて行う攻撃(以
下、買収結託という)も有効である。以下、これらの非
買収結託,買収結託に対する本発明の方式の安全性につ
いて考察する。
Conventionally, attacks that break the entire cryptosystem by collusion of an unspecified number of entities (hereinafter referred to as non-acquisition collusion) have been discussed. On the other hand, in the case of attacking only a specific individual, it is also effective to acquire only the entities required for the attack and perform the attack with a smaller number of colluders (hereinafter referred to as acquisition collusion). Hereinafter, the security of the system of the present invention against these non-acquisition collusions and acquisition collusions will be considered.

【0046】(非買収結託に対する安全性)任意のエン
ティティのIDベクトルを結託者のIDベクトルの線形
結合で表現すること(結合攻撃)ができ、しかも、秘密
鍵生成関数または鍵共有関数が多項式時間で分離可能で
ある場合には、他のエンティティの秘密鍵を結託者の秘
密鍵から偽造すること(分離攻撃)が可能である。この
ような攻撃を線形攻撃という。
(Security Against Non-Acquisition Collusion) The ID vector of an arbitrary entity can be represented by a linear combination of the collaborator's ID vectors (association attack), and the secret key generation function or the key sharing function requires polynomial time. In this case, it is possible to forge the secret key of another entity from the secret key of the colluder (separation attack). Such an attack is called a linear attack.

【0047】本発明の方式でも、一次独立なL人の結託
者のIDベクトルを使用することにより、任意のエンテ
ィティのIDベクトルを線形結合として表現することが
できる。つまり、L人以上のエンティティによる結合攻
撃は成立する。しかしながら、前述したように秘密鍵生
成関数及び鍵共有関数が分離不可能な関数であるので、
万一任意のエンティティに対して結合攻撃が成立した場
合においても、そのエンティティの秘密鍵及び共通鍵を
分離攻撃によって偽造することはできない。よって、本
発明の方式には線形攻撃が通用しない。従って、非買収
結託に対して本発明の方式は、Lよりはるかに高い結託
閾値(結合攻撃に必要な最小の結託者数)を有する。
Also in the method of the present invention, the ID vectors of arbitrary entities can be expressed as a linear combination by using the ID vectors of the L independent colluders. That is, a combined attack by L or more entities is established. However, as described above, since the secret key generation function and the key sharing function are inseparable functions,
Even if a joint attack is made on an arbitrary entity, the secret key and common key of that entity cannot be forged by a separation attack. Therefore, the linear attack does not apply to the method of the present invention. Thus, for non-takeover collusions, the scheme of the present invention has a collusion threshold (minimum number of collateral required for a binding attack) much higher than L.

【0048】(買収結託に対する安全性)本発明の方式
に対して、特定のエンティティを攻撃する場合には、攻
撃に必要なすべてのエンティティを買収し、買収したエ
ンティティの秘密鍵のすべてを用いることによる以下の
ような乱数置換攻撃が考えられる。
(Security against Acquisition Collusion) In the case of attacking a specific entity with respect to the scheme of the present invention, all entities required for the attack are acquired and all private keys of the acquired entity are used. The following random number replacement attack by the following is conceivable.

【0049】エンティティのIDを分かりやすいように
氏名の漢字4文字(L=4×16=64ビット)とし、漢字
1文字を1ブロックとした例で説明する。即ち、K=
4,M=16と設定する。
For the sake of simplicity, the description will be made with an example in which the ID of the entity is four Chinese characters of the name (L = 4 × 16 = 64 bits) and one Chinese character is one block. That is, K =
4. Set M = 16.

【0050】エンティティZ,A,B,C,DのIDを
以下のように設定し、エンティティA,B,C,Dを買
収してエンティティZを攻撃する場合について考える。
Assume that the IDs of the entities Z, A, B, C, and D are set as follows, and the entities A, B, C, and D are acquired and the entity Z is attacked.

【0051】[0051]

【数10】 (Equation 10)

【0052】エンティティZの秘密鍵は以下のようにな
る。
The secret key of the entity Z is as follows.

【0053】[0053]

【数11】 [Equation 11]

【0054】結託者は以下のような計算を行って、エン
ティティZの秘密鍵を偽造する。
The colluder performs the following calculation to forge the secret key of the entity Z.

【0055】[0055]

【数12】 (Equation 12)

【0056】偽造したベクトルsZ1′〜ベクトルsZ4
はそれぞれベクトルsZ1〜ベクトルsZ4と同等の働きを
することが分かる。このように、本発明の方式に対し
て、攻撃に必用なエンティティを買収することが可能で
ある状況では、確かに結託攻撃が成立する。
Forged vector s Z1 ′ to vector s Z4
Have the same function as the vectors sZ1 to sZ4, respectively. Thus, in the situation where it is possible to acquire an entity necessary for an attack with respect to the method of the present invention, a collusion attack is certainly established.

【0057】しかしながら、このような買収結託攻撃が
成立するためには、攻撃目標のエンティティのK個のす
べてのID分割ベクトルに対し、全く同一のID分割ベ
クトルを有する結託者の秘密鍵を入手する必要がある。
ある特定のブロックについて、全く同一のID分割ベク
トルを有するエンティティは2M 人に1人であり、この
特別なエンティティをKブロックすべて買収すること
は、M=10,K=100 程度としても、現実的には容易で
ない。従って、買収結託に対しても本発明の方式は安全
であると言える。なお、パラメータM,Kは、暗号シス
テムの規模及び/または要求される安全性の程度に応じ
て適切に設定することができる。
However, in order to establish such a takeover collusion attack, a secret key of a colluder having exactly the same ID division vector is obtained for all K ID division vectors of the attack target entity. There is a need.
For one particular block, only one in every 2 M entities has the same ID split vector, and acquiring all K blocks of this special entity is a reality even if M = 10 and K = 100. It is not easy. Therefore, it can be said that the method of the present invention is safe even for a consignment. The parameters M and K can be set appropriately according to the scale of the encryption system and / or the required degree of security.

【0058】図4は、本発明の記録媒体の実施例の構成
を示す図である。ここに例示するプログラムは、各セン
タから送られてくる秘密鍵ベクトルsijの中からエンテ
ィティmに対応する成分を選び出す処理と、これらの選
び出した成分を使用して式(4)に従って共通鍵Kim
求める処理とを含んでおり、以下に説明する記録媒体に
記録されている。なお、コンピュータ40は、各エンテ
ィティ側に設けられている。
FIG. 4 is a diagram showing the configuration of an embodiment of the recording medium of the present invention. The program exemplified here is a process of selecting components corresponding to the entity m from the secret key vector s ij sent from each center, and using the selected components, the common key K is calculated according to the equation (4). and a process for obtaining im is recorded on a recording medium described below. The computer 40 is provided on each entity side.

【0059】図4において、コンピュータ40とオンラ
イン接続する記録媒体41は、コンピュータ40の設置
場所から隔たって設置される例えばWWW(World Wide
Web)のサーバコンピュータを用いてなり、記録媒体41
には前述の如きプログラム41aが記録されている。記
録媒体41から読み出されたプログラム41aがコンピ
ュータ40を制御することにより、各エンティティにお
いて通信対象のエンティティに対する共通鍵を演算す
る。
In FIG. 4, a recording medium 41 that is connected online to a computer 40 is, for example, a WWW (World Wide) that is installed away from the installation location of the computer 40.
(Web) server computer, and the recording medium 41
Stores the program 41a as described above. By controlling the computer 40 by the program 41a read from the recording medium 41, each entity calculates a common key for the communication target entity.

【0060】コンピュータ40の内部に設けられた記録
媒体42は、内蔵設置される例えばハードディスクドラ
イブまたはROMなどを用いてなり、記録媒体42には
前述の如きプログラム42aが記録されている。記録媒
体42から読み出されたプログラム42aがコンピュー
タ40を制御することにより、各エンティティにおいて
通信対象のエンティティに対する共通鍵を演算する。
The recording medium 42 provided inside the computer 40 uses, for example, a hard disk drive or a ROM installed therein, and the recording medium 42 stores the program 42a as described above. By controlling the computer 40 by the program 42a read from the recording medium 42, each entity calculates a common key for the communication target entity.

【0061】コンピュータ40に設けられたディスクド
ライブ40aに装填して使用される記録媒体43は、運
搬可能な例えば光磁気ディスク,CD−ROMまたはフ
レキシブルディスクなどを用いてなり、記録媒体43に
は前述の如きプログラム43aが記録されている。記録
媒体43から読み出されたプログラム43aがコンピュ
ータ40を制御することにより、各エンティティにおい
て通信対象のエンティティに対する共通鍵を演算する。
The recording medium 43 used by being loaded into the disk drive 40a provided in the computer 40 is a transportable medium such as a magneto-optical disk, a CD-ROM or a flexible disk. Is recorded. By controlling the computer 40 by the program 43a read from the recording medium 43, each entity calculates a common key for the communication target entity.

【0062】ところで、買収結託による乱数置換攻撃を
回避するためには、分割ブロックが独立して攻撃されな
いような工夫を施せば良い。即ち、全ブロックすべての
計算を完了して初めて乱数項が消去されるようにすれば
良い。このような観点に基づいて第1実施の形態を改良
した2つの実施の形態について、以下に説明する。
By the way, in order to avoid a random number substitution attack by a conspiracy, it is only necessary to take measures to prevent the divided blocks from being independently attacked. That is, the random number term may be erased only after all the blocks have been calculated. Two embodiments in which the first embodiment is improved based on such a viewpoint will be described below.

【0063】〔第2実施の形態〕乱数消去方法を組み合
わせることにより、乱数置換攻撃に対して強化した本発
明の他の例(第2実施の形態)を説明する。
[Second Embodiment] Another example (second embodiment) of the present invention in which a random number erasing method is combined to enhance a random number replacement attack will be described.

【0064】(センタ1での準備処理)第1実施の形態
と同様に、センタ1は以下の公開鍵及び秘密鍵を準備
し、公開鍵を公開する。 公開鍵 P 大きな素数 L IDベクトルのサイズ(L=KM) K IDベクトルの分割ブロック数 M 分割したIDベクトルのサイズ 秘密鍵 g GF(P)の原始元 Hj 乱数からなる2M ×2M の対称行列 (j=1,2,・・・,K) αi エンティティiの個人秘密乱数 (但し、αi1αi2・・・αiK≡1 (mod P−1))
(Preparation Processing in Center 1) As in the first embodiment, the center 1 prepares the following public key and private key, and publishes the public key. Public key P Large prime L Size of ID vector (L = KM) K Number of divided blocks of ID vector M Size of divided ID vector Secret key g Primitive element of GF (P) H 2M × 2 M composed of random numbers j Symmetric matrix (j = 1, 2,..., K) Personal secret random number of α i entity i (however, α i1 α i2 ... Α iK ≡1 (mod P−1))

【0065】なお、RSA暗号の安全性を用いるため、
P−1を素因数分解することが困難となるようにPを設
定する。このようにするためには、P=2pq+1
(p,q:素数)となる素数を使用すれば良い。
In order to use the security of the RSA encryption,
P is set so that it is difficult to factorize P-1. To do this, P = 2pq + 1
(P, q: prime number) may be used.

【0066】また、第1実施の形態と同様に、各エンテ
ィティのIDベクトルを、ブロックサイズMのK個のブ
ロック(ID分割ベクトル)に分割する(図2,式
(1)参照)。
Also, as in the first embodiment, the ID vector of each entity is divided into K blocks (ID division vectors) of block size M (see FIG. 2, equation (1)).

【0067】更に、式(12)に示すようにIDからK−
1次元の第2IDベクトルvi を生成するハッシュ関数
h(・)をセンタ1は公開する。但し、このハッシュ関
数で生成された第2IDベクトルvi の各成分は正の整
数をとり、式(13)に示すように、それらの和は比較的
小さな定数eになるとする。
Further, as shown in the equation (12), ID-K-
Center 1 hash function h (·) to generate a one-dimensional first 2ID vector v i is published. However, each component of the 2ID vector v i generated by the hash function takes a positive integer, as shown in equation (13), and their sum becomes relatively small constant e.

【0068】[0068]

【数13】 (Equation 13)

【0069】(エンティティの登録処理)エンティティ
iに登録を依頼された各センタ1は、準備した鍵とエン
ティティiのK個のID分割ベクトルについて、それぞ
れに対応するK個の秘密鍵ベクトルsij(j=1,2,
・・・,K)を以下の式(14-1),(14-2),・・・,
(14-K)に従って求め、求めたベクトルsijを秘密裏に
送って、登録を完了する。
(Entity Registration Processing) Each center 1 that has been requested to register with the entity i, with respect to the prepared key and the K ID division vectors of the entity i, has K corresponding secret key vectors s ij ( j = 1,2,
, K) by the following equations (14-1), (14-2),.
(14-K), and sends the obtained vector s ij secretly to complete the registration.

【0070】[0070]

【数14】 [Equation 14]

【0071】(エンティティ間の共通鍵の生成処理)エ
ンティティiは、公開されているハッシュ関数h(・)
を用いて、相手のエンティティmの第2IDベクトルの
ベクトルvm を式(15)に従って求める。
(Generation of Common Key Between Entities) Entity i is a publicly available hash function h (·)
Is used to find the vector v m of the second ID vector of the partner entity m according to equation (15).

【0072】[0072]

【数15】 (Equation 15)

【0073】エンティティiは、自分の秘密鍵ベクトル
i1の中から、エンティティmのID分割ベクトルであ
るベクトルIm1に対応する成分のベクトルsi1[ベクト
ルI m1]を選び出し、また、j=2,・・・,Kの各ブ
ロックについて秘密鍵ベクトルsijの中から、ベクトル
mjに対応する成分のベクトルsij[ベクトルImj]を
各ブロック毎に選び出す。そして、Pを法とし、ベクト
ルsi1[ベクトルIm1]を底として残りのすべてのベク
トルsij[ベクトルImj](j=2,・・・,K)を順
次vmj回ずつ繰り返しべき乗することにより、共通鍵K
imを求める。このKimを求める演算式は具体的に式(1
6)となり、このKimはエンティティm側から求めた共
通鍵Kmiと一致する。
Entity i has its own secret key vector
si1From the ID division vector of the entity m
Vector Im1Vector s of the component corresponding toi1[Vect
Le I m1], And j = 2,.
Secret key vector s about the lockijVector
ImjVector s of the component corresponding toij[Vector Imj]
Select for each block. And modulo P, vector
Le si1[Vector Im1] And all remaining vectors
Torsij[Vector Imj] (J = 2, ..., K) in order
Next vmjBy repeatedly raising to the power each time, the common key K
imAsk for. This KimThe expression for calculating
6) and this KimIs the share determined from the entity m side.
Passkey KmiMatches.

【0074】[0074]

【数16】 (Equation 16)

【0075】(乱数置換攻撃に対する安全性)前記のエ
ンティティA,Bの実例において、一般にvA2≠vB2
なるので、以下の式(17)に示すように、乱数置換攻撃
は成立しない。
(Security Against Random Number Substitution Attack) In the actual examples of the entities A and B, since v A2 ≠ v B2 generally holds, a random number substitution attack is not established as shown in the following equation (17).

【0076】[0076]

【数17】 [Equation 17]

【0077】〔第3実施の形態〕定数項を追加すること
により、個人乱数消去のプロセスを複雑にした本発明の
他の例(第3実施の形態)を説明する。
[Third Embodiment] Another example (third embodiment) of the present invention in which the process of deleting personal random numbers is complicated by adding a constant term will be described.

【0078】(センタ1での準備処理)第1実施の形態
と同様に、センタ1は以下の公開鍵及び秘密鍵を準備
し、公開鍵を公開する。 公開鍵 N N=PQ(P,Q:大きな素数) L IDベクトルのサイズ(L=KM) K IDベクトルの分割ブロック数 M 分割したIDベクトルのサイズ 秘密鍵 g Nを法とする最大生成元 Hj 乱数からなる2M ×2M の対称行列 (j=1,2,・・・,K) αij エンティティiの個人秘密乱数 (但し、αi1αi αiK≡1 (mod λ(N)) λ(・)はカーマイケル関数)
(Preparation Processing in Center 1) As in the first embodiment, the center 1 prepares the following public key and private key, and publishes the public key. Public key N N = PQ (P, Q: large prime number) L Size of ID vector (L = KM) K Number of divided blocks of ID vector M Size of divided ID vector Secret key g Maximum generator modulo N H 2M × 2M symmetric matrix composed of j random numbers (j = 1, 2,..., K) αij The private secret random number of entity i (however, α i1 α i α iK ≡1 (mod λ (N) ) Λ (・) is the Carmichael function)

【0079】また、第1実施の形態と同様に、各エンテ
ィティのIDベクトルを、ブロックサイズMのK個のブ
ロック(ID分割ベクトル)に分割する(図2,式
(1)参照)。
Further, as in the first embodiment, the ID vector of each entity is divided into K blocks (ID division vectors) having a block size M (see FIG. 2, equation (1)).

【0080】(エンティティの登録処理)エンティティ
iに登録を依頼された各センタ1は、準備した鍵とエン
ティティiのK個のID分割ベクトルについて、それぞ
れに対応するK個の秘密鍵ベクトルsij(j=1,2,
・・・,K−1,K)を以下の式(18-1),(18-2),
・・・,(18-K-1),(18-K)に従って求める。
(Entity Registration Processing) Each center 1 that has been requested to register with the entity i, with respect to the prepared key and the K ID division vectors of the entity i, obtains K corresponding secret key vectors s ij ( j = 1,2,
.., K-1, K) by the following equations (18-1), (18-2),
..., calculated according to (18-K-1), (18-K).

【0081】[0081]

【数18】 (Equation 18)

【0082】第3実施の形態は、第1実施の形態におい
て、αi2=・・・αi,K-1 =αi とし、αi1αi αiK
1(mod λ(N))としたものに、更にK−2個の個人
乱数βi2,・・・,βi,K-1 を追加したものである。セ
ンタ1は、式(19)に従って、ベクトルti を求める。
但し、βi =βi2+・・・+βi,K-1 とする。求めたベ
クトルsij及びベクトルti を秘密裏に送って、登録を
完了する。
The third embodiment differs from the first embodiment in that α i2 =... Α i, K−1 = α i and α i1 α i α iK
1 (mod λ (N)) and K−2 personal random numbers β i2 ,..., Β i, K−1 are further added. The center 1 obtains the vector t i according to equation (19).
Here, β i = β i2 +... + Β i, K−1 . The obtained vector s ij and vector t i are secretly sent to complete the registration.

【0083】[0083]

【数19】 [Equation 19]

【0084】(エンティティ間の共通鍵の生成処理)エ
ンティティiは、まず、j=2,・・・,K−1の各ブ
ロックについて秘密鍵ベクトルsijの中から、エンティ
ティmのID分割ベクトルであるベクトルI mjに対応す
る列ベクトルsij[ベクトルImj]を各ブロック毎に選
び出し、それらのすべての和Simを、式(20)のように
求める。
(Generation of Common Key Between Entities)
First, each i of j = 2,..., K−1
Secret key vector s about the lockijFrom among the entities
Vector I that is an ID division vector of tee m mjCorresponding to
Column vector sij[Vector Imj] Is selected for each block.
And sum them all SimAs in equation (20)
Ask.

【0085】[0085]

【数20】 (Equation 20)

【0086】更に、エンティティiは、自身の最初のブ
ロックの秘密鍵ベクトルsi1及び最後のブロックの秘密
鍵ベクトルsiKの中から、エンティティmのID分割ベ
クトルであるベクトルImjに対応する列を選び出し、S
imとベクトルti とを用いて、以下の式(21)のような
計算を行って、共通鍵Kimを求める。このKimはエンテ
ィティm側から求めた共通鍵Kmiと一致する。
Further, the entity i selects a column corresponding to the vector I mj that is the ID division vector of the entity m from the secret key vector s i1 of the first block and the secret key vector s iK of the last block. Select, S
Using the im and the vector t i , a calculation as in the following equation (21) is performed to obtain a common key Kim . This K im matches the common key K mi obtained from the entity m side.

【0087】[0087]

【数21】 (Equation 21)

【0088】(安全性の考察)この方式では、式(22)
のように設定すれば、Kim=xim2 im3 ・・・xim
,K-1と表記でき、xim2 ,xim3 ,・・・,xim,K-1
変数とする方程式を多数集めた場合には、原理的には鍵
を偽造することができる。
(Consideration of Security) In this system, the expression (22)
If you set likeim= Xim2xim3... xim
, K-1Can be written as xim2, Xim3, ..., xim, K-1To
When a large number of equations as variables are collected, in principle, the key
Can be forged.

【0089】[0089]

【数22】 (Equation 22)

【0090】しかしながら、本発明の方式では、数学的
構造を最小限に抑えており、これらの変数に分離可能と
いう構造がないので、これらのすべての変数を独立変数
として攻撃しなければならず、非常に莫大な数の結託者
を必要とする。最終ブロックは乱数置換攻撃で消去する
ようにしても、式(22)に示す項を独立変数として攻撃
しなければならないので、例えばM=10の場合、220
の特定の方程式を集めて攻撃する必要があり、安全性が
向上している。
However, in the method of the present invention, since the mathematical structure is minimized and there is no structure capable of separating these variables, all these variables must be attacked as independent variables. Requires a very large number of colluders. Also the last block so as to erase random substitution attack, since they must be attacked term shown in equation (22) as the independent variable, for example, in the case of M = 10, to attack attracting 2 as 20 a particular equation Need and safety is improved.

【0091】なお、第3実施の形態では、法として素因
数分解が困難な合成数Nを用いる場合について説明した
が、N=Pの場合も同様に行えることは勿論である。
In the third embodiment, the case has been described where the composite number N, for which prime factorization is difficult, is used as a modulus. However, it goes without saying that the same can be applied to the case where N = P.

【0092】[0092]

【発明の効果】以上詳述したように、本発明では、複数
のセンタが設けられ、各センタはエンティティの分割し
た1つのID情報に対応する鍵を生成するようにしたの
で、すべてのエンティティの秘密を1つのセンタが握る
ようなことはなく、各センタがBig Brother にならな
い。また、数学的構造を最小限に抑えているので、結託
問題の回避を実現しやすく、また、暗号系の実現も容易
である。更に、各エンティティが固有の秘密鍵を予め保
持しているので、共通鍵生成に要する時間を大幅に短く
できる。
As described above in detail, in the present invention, a plurality of centers are provided, and each center generates a key corresponding to one piece of ID information divided by an entity. No one center holds the secret, and each center does not become a Big Brother. In addition, since the mathematical structure is minimized, it is easy to avoid the collusion problem, and it is also easy to realize an encryption system. Furthermore, since each entity has a unique secret key in advance, the time required to generate a common key can be greatly reduced.

【0093】前述した従来の第3の方法によるID−N
IKSでは、一般的に、L×Lの対称行列をセンタ秘密
として、その情報の一部をL個の成分からなるベクトル
としてエンティティに配布しており、実現は非常に容易
であるが結託閾値はL程度に過ぎない。これに対して、
本発明の方式では、このLよりはるかに高い結託閾値を
持つことができる。
ID-N according to the third conventional method described above
In IKS, in general, an L × L symmetric matrix is used as a center secret and a part of the information is distributed to entities as a vector composed of L components. It is only about L. On the contrary,
In the scheme of the present invention, it is possible to have a collusion threshold much higher than this L.

【0094】従来の方式でも、2M ×2M のセンタ秘密
行列を用いることにより、本発明と同程度の結託閾値を
有するID−NIKSを構成することは可能である。し
かしながら、そのように構成されたID−NIKSで
は、鍵共有に2M 回の積演算またはべき乗演算が必要で
あって実用的ではなく、ほとんどの方式が分離可能であ
って一部の結託者の線形結合で表されたエンティティの
秘密鍵が偽造されてしまうという問題がある。これに対
して、本発明の方式では、保持する秘密鍵の数は多くな
るが、多くともK−1回のべき乗演算にて共通鍵を共有
することができ、鍵生成が非常に高速で行え、しかも、
例え一部のエンティティが結託者の線形結合で表された
としても、それらのエンティティの秘密鍵が偽造される
のを防ぐことができる。
Even in the conventional method, it is possible to construct an ID-NIKS having a collusion threshold comparable to that of the present invention by using a 2 M × 2 M center secret matrix. However, the ID-NIKS configured as described above requires 2 M product operations or exponentiation operations for key sharing, which is not practical. Most of the systems are separable, and some colluders are required. There is a problem that the secret key of the entity represented by the linear combination is forged. On the other hand, in the method of the present invention, the number of held secret keys is increased, but the common key can be shared by at most K-1 exponentiation operations, and key generation can be performed at very high speed. And
Even if some entities are represented by a linear combination of colluders, it is possible to prevent the secret keys of those entities from being forged.

【0095】(付記)なお、以上の説明に対して更に以
下の項を開示する。 (1) センタから各エンティティへ各エンティティ固
有の秘密鍵を送付し、一方のエンティティが前記センタ
から送付された該エンティティ固有の秘密鍵から求めた
共通鍵を用いて平文を暗号文に暗号化して他方のエンテ
ィティへ伝送し、該他方のエンティティが伝送された暗
号文を、前記センタから送付された該エンティティ固有
の秘密鍵から求めた、前記共通鍵と同一の共通鍵を用い
て元の平文に復号することにより、エンティティ間で情
報の通信を行う暗号通信方法において、前記センタが複
数設けられており、その複数の各センタは、各エンティ
ティの特定情報を分割した分割特定情報を利用して各エ
ンティティ固有の秘密鍵を生成し、各エンティティは、
自身固有の秘密鍵に含まれている、相手のエンティティ
の分割特定情報に対応する成分を使用して前記共通鍵を
生成するようにしており、各エンティティの分割特定情
報に前記各エンティティ固有の乱数を加えて、前記各エ
ンティティ固有の秘密鍵を生成する暗号通信方法。 (2) 第(1)項記載の暗号通信方法であって、前記
各センタにおける秘密鍵を生成する演算式は以下である
暗号通信方法。
(Supplementary Note) The following items are further disclosed with respect to the above description. (1) The center sends a private key unique to each entity to each entity, and one entity encrypts plaintext into ciphertext using a common key obtained from the private key unique to the entity sent from the center. Transmitted to the other entity, the other entity converts the transmitted ciphertext into the original plaintext using the same common key as the common key, obtained from the private key unique to the entity sent from the center. In a cryptographic communication method for performing information communication between entities by decrypting, a plurality of the centers are provided, and each of the plurality of centers uses the divided specific information obtained by dividing the specific information of each entity. Generate an entity-specific private key, and each entity
The common key is generated using a component included in its own private key and corresponding to the division identification information of the other entity, and the entity specific random number is included in the division identification information of each entity. And a secret key unique to each entity. (2) The cryptographic communication method according to (1), wherein an arithmetic expression for generating a secret key in each of the centers is as follows.

【0096】[0096]

【数23】 (Equation 23)

【0097】但し、 ベクトルsij:エンティティiのj番目の分割特定情報
に対応する秘密鍵(j=1,2,・・・,K) [ベクトルIij]:エンティティiのj番目の分割特定
情報 P:素数 K:エンティティiの特定情報の分割数 g:GF(P)の原始元 Hj :乱数からなる2M ×2M の対称行列 M:エンティティiの特定情報の分割サイズ αij:エンティティiの個人秘密乱数(但し、αi1・・
・αiK≡1(mod P−1)) (3) 第(2)項記載の暗号通信方法であって、各エ
ンティティにおける共通鍵を生成する演算式は以下であ
る暗号通信方法。
Where, vector s ij : secret key (j = 1, 2,..., K) corresponding to j-th division specifying information of entity i [vector I ij ]: j-th division specification of entity i Information P: Prime number K: Number of divisions of specific information of entity i g: Primitive element of GF (P) H j : 2M × 2M symmetric matrix composed of random numbers M: Division size of specific information of entity i α ij : The private secret random number of entity i (however, α i1
Α iK ≡1 (mod P−1)) (3) The cryptographic communication method according to the above (2), wherein an arithmetic expression for generating a common key in each entity is as follows.

【0098】[0098]

【数24】 (Equation 24)

【0099】但し、 Kim:一方のエンティティiが他方のエンティティmに
対して生成する共通鍵 ベクトルsij[ベクトルIij]:エンティティiの秘密
鍵ベクトルsijに含まれ、エンティティmの分割特定情
報に対応する成分 (4) 暗号通信システムのエンティティに設けられて
おり、平文から暗号文への暗号化処理及び暗号文から平
文への復号処理の用いる共通鍵を生成する共通鍵生成装
置において、前記エンティティの特定情報を分割した分
割特定情報毎に作成された前記エンティティ固有の秘密
鍵を格納する格納手段と、格納されている秘密鍵の中か
ら、通信相手のエンティティの分割特定情報に対応する
成分を選び出す選出手段と、選び出した成分を使用して
前記共通鍵を生成する手段とを備える共通鍵生成装置。 (5) 送信すべき情報である平文を暗号文に暗号化す
る暗号化処理、及び、送信された暗号文を元の平文に復
号する復号処理を、複数のエンティティ間で相互に行う
暗号通信システムにおいて、各エンティティの特定情報
を分割した分割特定情報を利用して各エンティティ固有
の秘密鍵を生成して各エンティティへ送付する複数のセ
ンタと、該センタから送付された自身の秘密鍵に含まれ
ている、通信対象のエンティティの分割特定情報に対応
する成分を使用して、前記暗号化処理及び復号処理に用
いる共通鍵を生成する複数のエンティティとを有する暗
号通信システム。 (6) 暗号通信システムにおける平文から暗号文への
暗号化処理及び暗号文から平文への復号処理に用いる共
通鍵をエンティティ側で生成するためのプログラムを記
録してあるコンピュータでの読み取り可能な記録媒体に
おいて、前記エンティティの特定情報を分割した分割特
定情報毎に作成された前記エンティティ固有の秘密鍵の
中から、通信相手のエンティティの分割特定情報に対応
する成分を選び出すことを前記コンピュータにさせるプ
ログラムコード手段と、選び出した成分を使用して前記
共通鍵を生成することを前記コンピュータにさせるプロ
グラムコード手段とを有する記録媒体。
Here, K im : a common key vector s ij [vector I ij ] generated by one entity i for the other entity m: included in the secret key vector s ij of the entity i, and specifying the division of the entity m (4) A common key generation device provided in an entity of the cryptographic communication system and configured to generate a common key used for encryption processing from plaintext to ciphertext and decryption processing from ciphertext to plaintext. Storage means for storing the private key unique to the entity created for each of the divided specific information obtained by dividing the specific information of the entity, and corresponding to the divided specific information of the entity of the communication partner from among the stored secret keys. A common key generation device comprising: a selection unit that selects a component; and a unit that generates the common key using the selected component. (5) A cryptographic communication system in which a plurality of entities mutually perform encryption processing for encrypting plaintext, which is information to be transmitted, into ciphertext, and decryption processing for decrypting the transmitted ciphertext into the original plaintext. , A plurality of centers that generate a private key unique to each entity by using the divided specific information obtained by dividing the specific information of each entity and send the generated private key to each entity, and are included in the own secret key transmitted from the center. And a plurality of entities that generate a common key used for the encryption processing and the decryption processing using components corresponding to the division specifying information of the communication target entity. (6) A computer-readable recording in which a program for generating, on the entity side, a common key used in the encryption process from plaintext to ciphertext and the decryption process from ciphertext to plaintext in the cryptographic communication system is recorded. A program for causing a computer to select, from a medium, a component corresponding to division specific information of an entity of a communication partner from a secret key unique to the entity created for each division specific information obtained by dividing the specific information of the entity. A recording medium comprising: code means; and program code means for causing the computer to generate the common key using selected components.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の暗号通信システムの構成を示す模式図
である。
FIG. 1 is a schematic diagram showing a configuration of a cryptographic communication system of the present invention.

【図2】エンティティのIDベクトルの分割例を示す模
式図である。
FIG. 2 is a schematic diagram showing an example of dividing an ID vector of an entity.

【図3】2人のエンティティ間における情報の通信状態
を示す模式図である。
FIG. 3 is a schematic diagram illustrating a communication state of information between two entities.

【図4】記録媒体の実施例の構成を示す図である。FIG. 4 is a diagram showing a configuration of an embodiment of a recording medium.

【符号の説明】[Explanation of symbols]

1 センタ 1a 秘密鍵生成器 10,20 メモリ 11,21 成分選出器 12,22 共通鍵生成器 13 暗号化器 23 復号器 30 通信路 40 コンピュータ 41,42,43 記録媒体 Reference Signs List 1 center 1a secret key generator 10,20 memory 11,21 component selector 12,22 common key generator 13 encryptor 23 decryptor 30 communication path 40 computer 41,42,43 recording medium

フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) H04L 9/00 673A (72)発明者 村上 恭通 京都府京都市伏見区竹田向代町136番地 村田機械株式会社本社工場内 (72)発明者 笠原 正雄 大阪府箕面市粟生外院4丁目15番3号 Fターム(参考) 5J104 AA01 AA16 EA02 EA26 JA03 NA02 NA27 NA30 PA07 Continued on the front page (51) Int.Cl. 7 Identification symbol FI Theme coat II (Reference) H04L 9/00 673A (72) Inventor Yasumichi Murakami 136 Takeda Mukodaicho, Fushimi-ku, Kyoto-shi, Kyoto Murata Machinery Co., Ltd. (72) Inventor Masao Kasahara 4-15-3 Aowai-in, Minoh-shi, Osaka F-term (reference) 5J104 AA01 AA16 EA02 EA26 JA03 NA02 NA27 NA30 PA07

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 センタから各エンティティへ送付すべき
各エンティティ固有の秘密鍵を生成する方法において、
前記各エンティティの特定情報を分割した分割特定情報
を利用して、前記各エンティティ固有の秘密鍵を生成す
ることを特徴とする秘密鍵生成方法。
1. A method for generating a private key unique to each entity to be sent from a center to each entity,
A secret key generation method, characterized in that a secret key unique to each entity is generated by using split specific information obtained by dividing the specific information of each entity.
【請求項2】 センタから各エンティティへ各エンティ
ティ固有の秘密鍵を送付し、エンティティが前記センタ
から送付された該エンティティ固有の秘密鍵を利用して
平文を暗号文に暗号化する暗号化方法において、前記各
エンティティの特定情報を分割した分割特定情報を利用
して、前記各エンティティ固有の秘密鍵を生成し、この
秘密鍵に含まれている、暗号文の送信先である相手のエ
ンティティの分割特定情報に対応する成分を使用して生
成した共通鍵を用いて平文を暗号文に暗号化することを
特徴とする暗号化方法。
2. A method of transmitting a secret key unique to each entity from a center to each entity, and the entity encrypting a plaintext into a ciphertext using the private key unique to the entity sent from the center. Generating a secret key unique to each of the entities by using the split specific information obtained by dividing the specific information of each of the entities, and dividing the other party included in the secret key, which is the transmission destination of the ciphertext; An encryption method characterized by encrypting a plaintext into a ciphertext using a common key generated using a component corresponding to specific information.
【請求項3】 センタから各エンティティへ各エンティ
ティ固有の秘密鍵を送付し、一方のエンティティが前記
センタから送付された該エンティティ固有の秘密鍵から
求めた共通鍵を用いて平文を暗号文に暗号化して他方の
エンティティへ伝送し、該他方のエンティティが伝送さ
れた暗号文を、前記センタから送付された該エンティテ
ィ固有の秘密鍵から求めた、前記共通鍵と同一の共通鍵
を用いて元の平文に復号することにより、エンティティ
間で情報の通信を行う暗号通信方法において、前記セン
タが複数設けられており、その複数の各センタは、各エ
ンティティの特定情報を分割した分割特定情報を利用し
て各エンティティ固有の秘密鍵を生成し、各エンティテ
ィは、自身固有の秘密鍵に含まれている、相手のエンテ
ィティの分割特定情報に対応する成分を使用して前記共
通鍵を生成するようにしたことを特徴とする暗号通信方
法。
3. A center transmits a secret key unique to each entity to each entity, and one entity encrypts plaintext into ciphertext using a common key obtained from the private key unique to the entity sent from the center. And transmits the encrypted text to the other entity using the same common key as the common key, obtained from the secret key unique to the entity sent from the center. In a cryptographic communication method for performing information communication between entities by decrypting into plain text, a plurality of centers are provided, and each of the plurality of centers uses divided specific information obtained by dividing specific information of each entity. A private key unique to each entity is generated by each entity, and each entity includes the specific identification information of the other entity included in its own private key. Wherein the common key is generated using a component corresponding to the information.
JP01625799A 1999-01-25 1999-01-25 Cryptographic communication method, cryptographic communication system, common key generation device, and recording medium Expired - Fee Related JP3590284B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP01625799A JP3590284B2 (en) 1999-01-25 1999-01-25 Cryptographic communication method, cryptographic communication system, common key generation device, and recording medium
US09/489,696 US7065210B1 (en) 1999-01-25 2000-01-24 Secret key generation method, encryption method, cryptographic communications method, common key generator, cryptographic communications system, and recording media

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01625799A JP3590284B2 (en) 1999-01-25 1999-01-25 Cryptographic communication method, cryptographic communication system, common key generation device, and recording medium

Publications (2)

Publication Number Publication Date
JP2000216769A true JP2000216769A (en) 2000-08-04
JP3590284B2 JP3590284B2 (en) 2004-11-17

Family

ID=11911520

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01625799A Expired - Fee Related JP3590284B2 (en) 1999-01-25 1999-01-25 Cryptographic communication method, cryptographic communication system, common key generation device, and recording medium

Country Status (1)

Country Link
JP (1) JP3590284B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9166785B2 (en) 2012-12-27 2015-10-20 Fujitsu Limited Cryptography processing device and cryptography processing method
JP2020507243A (en) * 2017-01-05 2020-03-05 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. Network devices and trusted third-party devices

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9166785B2 (en) 2012-12-27 2015-10-20 Fujitsu Limited Cryptography processing device and cryptography processing method
JP2020507243A (en) * 2017-01-05 2020-03-05 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. Network devices and trusted third-party devices
JP7059282B2 (en) 2017-01-05 2022-04-25 コーニンクレッカ フィリップス エヌ ヴェ Network devices and trusted third-party devices
JP7059282B6 (en) 2017-01-05 2022-06-03 コーニンクレッカ フィリップス エヌ ヴェ Network devices and trusted third-party devices

Also Published As

Publication number Publication date
JP3590284B2 (en) 2004-11-17

Similar Documents

Publication Publication Date Title
US6125185A (en) System and method for encryption key generation
JP2001211153A (en) Secret key generating method
US20110145576A1 (en) Secure method of data transmission and encryption and decryption system allowing such transmission
US20240097894A1 (en) Threshold key exchange
JP2003521197A (en) Communication method by key encryption escrow and recovery system
JP2001211154A (en) Secret key generating method, ciphering method, and cipher communication method
JPH10177341A (en) Method and system for depositing secret key for ras cipher
JP2009141767A (en) Generation system of encryption key, generation method of encryption key, encryption authentication system, and encrypted communication system
JP3590284B2 (en) Cryptographic communication method, cryptographic communication system, common key generation device, and recording medium
JP2001211157A (en) Secret key registering method, secret key register secret key issuing method, cipher communication method, cipher communication system and recording medium
Rushdi et al. A pedagogical multi-key multi-stage package to secure communication channels
JP2001211155A (en) Method and device for generating common key and cipher communication method
JP2001060944A (en) Cipher communication system
JP3546943B2 (en) Secret key generation device, encryption device, encryption communication method, encryption communication system, and recording medium
JP2001156766A (en) Encryption communication method and encryption communication system
Ingemarsson et al. Encryption and authentication in on-board processing satellite communication systems
JP3884593B2 (en) Secret key generation device, encryption device, encryption communication method, encryption communication system, and recording medium
JP3622072B2 (en) Encryption communication method
JP3657803B2 (en) Secret key generation device, encryption device, encryption communication method, encryption communication system, common key generation device, and recording medium
JP3953235B2 (en) Cryptographic communication method and cryptographic communication system
JP2000216768A (en) Encryption method, encryption communication method and encryption communication system
JP2001053738A (en) Private key generating method, ciphering method and cipher communication method
JP3587746B2 (en) Secret key generator, encryption device, encryption communication method, encryption communication system, and recording medium
JP2001156767A (en) Encryption communication method and encryption communication system
JP2002118544A (en) Encipherment method, cipher communication method, secret key generation method and shared key generation method, cipher communication system and secret key generation device, shared key generation device and recording medium

Legal Events

Date Code Title Description
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: 20040810

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040819

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees