Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3283202B2 - Encryption communication method - Google Patents
[go: Go Back, main page]

JP3283202B2 - Encryption communication method - Google Patents

Encryption communication method

Info

Publication number
JP3283202B2
JP3283202B2 JP00897297A JP897297A JP3283202B2 JP 3283202 B2 JP3283202 B2 JP 3283202B2 JP 00897297 A JP00897297 A JP 00897297A JP 897297 A JP897297 A JP 897297A JP 3283202 B2 JP3283202 B2 JP 3283202B2
Authority
JP
Japan
Prior art keywords
key
entity
secret
function
equation
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.)
Expired - Fee Related
Application number
JP00897297A
Other languages
Japanese (ja)
Other versions
JPH10210022A (en
Inventor
正雄 笠原
篤則 藤川
恭通 村上
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
Original Assignee
Murata Machinery Ltd
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 filed Critical Murata Machinery Ltd
Priority to JP00897297A priority Critical patent/JP3283202B2/en
Publication of JPH10210022A publication Critical patent/JPH10210022A/en
Application granted granted Critical
Publication of JP3283202B2 publication Critical patent/JP3283202B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、情報の内容が当事
者以外にはわからないように情報を暗号化して通信する
安全性が高い暗号通信方法に関する。
The present invention relates to the contents of the information about the safety high encrypted communication how to communicate to encrypt the information so that it does not know the other party.

【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】暗号化鍵と復号鍵とは、等しくても良い
し、異なっていても良い。両者の鍵が等しい暗号系は、
共通鍵暗号系と呼ばれ、米国商務省標準局が採用したD
ES(Data Encryption Standards)はその典型例であ
る。また、両者の鍵が異なる暗号系の一例として、公開
鍵暗号系と呼ばれる暗号系が提案された。この公開鍵暗
号系は、暗号系を利用する各ユーザ(エンティティ)が
暗号化鍵と復号鍵とを一対ずつ作成し、暗号化鍵を公開
鍵リストにて公開し、復号鍵のみを秘密に保持するとい
う暗号系である。公開鍵暗号系では、この一対となる暗
号化鍵と復号鍵とが異なり、一方向性関数を利用するこ
とによって暗号化鍵から復号鍵を割り出せないという特
徴を持たせている。
[0004] The encryption key and the decryption key may be the same or different. A cryptosystem in which both keys are equal,
It is called a common key cryptosystem and is adopted by the U.S. Department of Commerce
ES (Data Encryption Standards) is a typical example. As an example of an encryption system in which both keys are different, an encryption system called a public key encryption system has been proposed. In this public key cryptosystem, each user (entity) using the cryptosystem creates a pair of an encryption key and a decryption key, publishes the encryption key in a public key list, and keeps only the decryption key secret. It is an encryption system that does. In the public key cryptosystem, the pair of the encryption key and the decryption key are different, and a characteristic is that the decryption key cannot be determined from the encryption key by using the one-way function.

【0005】公開鍵暗号系は、暗号化鍵を公開するとい
う画期的な暗号系であって、高度情報化社会の確立に必
要な上述した3つの要素に適合するものであり、情報通
信技術の分野等での利用を図るべく、その研究が活発に
行われ、典型的な公開鍵暗号系としてRSA暗号系が提
案された。このRSA暗号系は、一方向性関数として素
因数分解の困難さを利用して実現されている。また、離
散対数問題を解くことの困難さ(離散対数問題)を利用
した公開鍵暗号系も種々の手法が提案されてきた。
The public key cryptosystem is an epoch-making cryptosystem that discloses an encryption key, and conforms to the above three elements necessary for establishing an advanced information society. The research has been actively conducted in order to use the RSA encryption system in the field and the like, and an RSA encryption system has been proposed as a typical public key encryption system. This RSA encryption system is realized by utilizing the difficulty of factorization as a one-way function. In addition, various methods have been proposed for a public key cryptosystem utilizing the difficulty of solving the discrete logarithm problem (discrete logarithm problem).

【0006】また、各エンティティの住所,氏名等の個
人を特定するID(Identity)情報を利用する暗号系が
提案された。この暗号系では、ID情報に基づいて送受
信者間で共通の暗号化鍵を生成する。また、このID情
報に基づく暗号技法は、(1)暗号文通信に先立って送
受信者間での予備通信を必要とする方式と、(2)暗号
文通信に先立って送受信者間での予備通信を必要としな
い方式とがある。特に、(2)の手法は予備通信が不要
であるので、エンティティの利便性が高く、将来の暗号
系の中枢をなすものと考えられている。
[0006] Further, an encryption system using ID (Identity) information for specifying an individual such as an address and a name of each entity has been proposed. In this encryption system, a common encryption key is generated between the transmitting and receiving parties based on the ID information. Further, the encryption technique based on the ID information includes (1) a method that requires preliminary communication between the transmitting and receiving parties before ciphertext communication, and (2) a preliminary communication between the transmitting and receiving parties before ciphertext communication. There is a method that does not require. In particular, since the method (2) does not require a preliminary communication, the convenience of the entity is high, and it is considered that it will be the center of the future cryptosystem.

【0007】この(2)の手法による暗号系は、ID−
NIKS(ID-based non-interactive key sharing sch
eme)と呼ばれており、通信相手のID情報を用いて予備
通信を行うことなく暗号化鍵を共有する方式を採用して
いる。ID−NIKSは、送受信者間で公開鍵,秘密鍵
を交換する必要がなく、また鍵のリスト及び第三者によ
るサービスも必要としない方式であり、任意のエンティ
ティ間で安全に通信を行える。
The encryption system according to the method (2) uses an ID-
NIKS (ID-based non-interactive key sharing sch
eme), and employs a method of sharing an encryption key without performing preliminary communication using ID information of a communication partner. The ID-NIKS is a method in which there is no need to exchange a public key and a secret key between a sender and a receiver, and does not require a key list or a service by a third party, and secure communication can be performed between arbitrary entities.

【0008】図12は、このID−NIKSのシステム
の原理を示す図である。信頼できるセンタの存在を仮定
し、このセンタを中心にして共有鍵生成システムを構成
している。図12において、エンティティXの名前,住
所,電話番号等のID情報は、ハッシュ関数h(・)を
用いてh(IDX )で表す。センタは任意のエンティテ
ィXに対して、センタ公開情報{PCi },センタ秘密
情報{SCi }及びエンティティXのID情報h(ID
X )に基づいて、以下のように秘密情報SXiを計算し、
秘密裏にエンティティXへ配布する。 SXi=Fi ({SCi },{PCi },h(IDX ))
FIG. 12 is a diagram showing the principle of this ID-NIKS system. Assuming the existence of a reliable center, a shared key generation system is configured around this center. In FIG. 12, ID information such as the name, address, and telephone number of the entity X is represented by h (ID X ) using a hash function h (·). The center sends the center public information {PC i }, center secret information {SC i }, and the ID information h (ID
X ), the secret information S Xi is calculated as follows,
Distribute to Entity X secretly. S Xi = F i ({SC i }, {PC i }, h (ID X ))

【0009】エンティティXは他の任意のエンティティ
Yとの間で、暗号化,復号のための共有鍵KXYを、エン
ティティX自身の秘密情報{SXi},センタ公開情報
{PCi }及び相手先のエンティティYのID情報h
(IDY )を用いて以下のように生成する。 XY =f({S Xi },{PC i },h(ID Y )) また、エンティティYも同様にエンティティXへの鍵を
共有鍵KYXを生成する。もし常にKXY=KYXの関係が成
立すれば、この鍵KXY,KYXをエンティティX,Y間で
暗号化鍵,復号鍵として使用できる。
The entity X exchanges a shared key K XY for encryption and decryption with any other entity Y by using the secret information {S Xi } of the entity X itself, the center public information {PC i }, and the other party. ID information h of the previous entity Y
It is generated as follows using (ID Y ). K XY = f ({S Xi }, {PC i }, h (ID Y )) Similarly, the entity Y also generates a shared key K YX as a key to the entity X. If the relationship of K XY = K YX always holds, the keys K XY and K YX can be used as the encryption key and the decryption key between the entities X and Y.

【0010】上述した公開鍵暗号系では、例えばRSA
暗号系の場合にその公開鍵の長さは現在の電話番号の十
数倍となり、極めて煩雑である。これに対して、ID−
NIKSでは、各ID情報を名簿という形式で登録して
おけば、この名簿を参照して任意のエンティティとの間
で共有鍵を生成することができる。従って、図12に示
すようなID−NIKSのシステムが安全に実現されれ
ば、多数のエンティティが加入するコンピュータネット
ワーク上で便利な暗号系を構築できる。このような理由
により、ID−NIKSが将来の暗号系の中心となると
期待されている。
In the above-mentioned public key cryptosystem, for example, RSA
In the case of an encryption system, the length of the public key is ten and several times the current telephone number, which is extremely complicated. On the other hand, ID-
In NIKS, if each ID information is registered in the form of a list, a shared key can be generated with an arbitrary entity by referring to the list. Therefore, if the ID-NIKS system shown in FIG. 12 is safely realized, a convenient encryption system can be constructed on a computer network to which many entities subscribe. For these reasons, ID-NIKS is expected to be the center of future encryption systems.

【0011】対称行列を利用した分離可能な演算を用い
るID−NIKSは、センタの秘密情報とエンティティ
との公開鍵の演算方法、及び乱数の有無に応じて、以下
の4種類に分類される。 (1)積和型NIKS (2)乱数付加積和型NIKS (3)べき積型NIKS (4)乱数付加乱べき積型NIKS
The ID-NIKS using a separable operation using a symmetric matrix is classified into the following four types according to a method of calculating a secret key of a center and a public key between an entity and the presence or absence of a random number. (1) Product-sum type NIKS (2) Random number addition product-sum type NIKS (3) Power product type NIKS (4) Random number addition random product type NIKS

【0012】これらの各種類のNIKSについて、以下
に簡単に説明するが、その前に演算の定義及びその定義
に基づく諸定理を示す。
A brief description of each of these types of NIKS will be given below. Before that, the definition of the operation and various theorems based on the definition will be shown.

【0013】A=(aij),B=(bij),C=
(cij)を適当な大きさの行列とした場合に、以下の演
算(定義1〜3)を定義する。
A = (a ij ), B = (b ij ), C =
When (c ij ) is a matrix of an appropriate size, the following operations (definitions 1 to 3) are defined.

【0014】[0014]

【数3】 (Equation 3)

【0015】また、上記定義に従うと、以下の諸定理
(定理1〜5)が成立する。但し、tは転置を意味す
る。
According to the above definition, the following theorems (theorems 1 to 5) hold. Here, t means transposition.

【0016】[0016]

【数4】 (Equation 4)

【0017】上記(1)〜(4)の何れの形式において
も、センタは秘密裏に以下に示すような準備,を行
う。 適当なn×nの対称行列Tを生成する。 登録を要求してきたエンティティのIDをn個の成
分を有する適当なベクトルに変換するための公開ハッシ
ュ関数h(・)を生成する。
In any of the above modes (1) to (4), the center secretly performs the following preparations. Generate an appropriate n × n symmetric matrix T. A public hash function h (·) for converting the ID of the entity requesting registration into an appropriate vector having n components is generated.

【0018】(1)積和型NIKS エンティティxに登録を依頼されたセンタは、ハッシュ
関数で示されるエンティティxの公開情報(公開鍵)ベ
クトルvx (=h(IDx ))と、対称行列Tとを用い
て、以下の計算に従って、エンティティxの秘密情報
(秘密鍵)ベクトルsx を求めて、エンティティxへ秘
密裏に送る。
(1) The center requested to register the product-sum type NIKS entity x registers a public information (public key) vector v x (= h (ID x )) of the entity x represented by a hash function and a symmetric matrix Using T and the following calculation, a secret information (secret key) vector s x of the entity x is obtained and secretly sent to the entity x.

【0019】[0019]

【数5】 (Equation 5)

【0020】以下の計算に従って、エンティティiがエ
ンティティjとの共有鍵Kijを求め、エンティティjが
エンティティiとの共有鍵Kjiを求める。明らかにKij
=K jiとなる。
According to the following calculation, the entity i
Shared key K with entity jijAnd the entity j is
Shared key K with entity ijiAsk for. Obviously Kij
= K jiBecomes

【0021】[0021]

【数6】 (Equation 6)

【0022】(2)乱数付加積和型NIKS エンティティxに登録を依頼されたセンタは、ベクトル
x (=h(IDx ))と対称行列Tと乱数ベクトルr
x とを用いて、以下の計算に従って、ベクトルsx を求
めて、エンティティxへ秘密裏に送る。但し、○は適当
な算法を示す。
(2) The center requested to be registered by the random number addition product-sum type NIKS entity x is a vector v x (= h (ID x )), a symmetric matrix T, and a random number vector r
Using x and the following calculation, a vector s x is obtained and sent to the entity x secretly. However, ○ indicates an appropriate algorithm.

【0023】[0023]

【数7】 (Equation 7)

【0024】エンティティiがエンティティjとの鍵共
有を行うために、以下の計算を行う。ここで、適当な手
法によって乱数項を消去することにより、共有鍵を共有
できる。
In order for the entity i to share a key with the entity j, the following calculation is performed. Here, the shared key can be shared by deleting the random number term by an appropriate method.

【0025】[0025]

【数8】 (Equation 8)

【0026】(3)べき積型NIKS エンティティxに登録を依頼されたセンタは、ベクトル
x (=h(IDx ))と対称行列Tとを用いて、以下
の計算に従って、ベクトルsx を求めて、エンティティ
xへ秘密裏に送る。
(3) The center requested to register the product-type NIKS entity x uses the vector v x (= h (ID x )) and the symmetric matrix T to convert the vector s x according to the following calculation. Asks and sends it secretly to entity x.

【0027】[0027]

【数9】 (Equation 9)

【0028】以下の計算に従って、エンティティiがエ
ンティティjとの共有鍵Kijを求め、エンティティjが
エンティティiとの共有鍵Kjiを求める。上述のべき積
演算の定理1より、Kij=Kjiとなる。
According to the following calculation, the entity i obtains a shared key K ij with the entity j, and the entity j obtains a shared key K ji with the entity i. From Theorem 1 of the power product operation described above, K ij = K ji .

【0029】[0029]

【数10】 (Equation 10)

【0030】(4)乱数付加乱べき積型NIKS エンティティxに登録を依頼されたセンタは、ベクトル
x (=h(IDx ))と対称行列Tと乱数ベクトルr
x とを用いて、以下の計算に従って、ベクトルsx を求
めて、エンティティxに秘密裏に送る。但し、○は適当
な算法を示す。
(4) Random number addition The center requested to be registered by the random product NIKS entity x is a vector v x (= h (ID x )), a symmetric matrix T, and a random number vector r
Using x and the following calculation, a vector s x is obtained and sent to the entity x secretly. However, ○ indicates an appropriate algorithm.

【0031】[0031]

【数11】 [Equation 11]

【0032】エンティティiがエンティティjとの鍵共
有を行うために、以下の計算に行う。ここで、適当な手
法によって乱数項を消去することにより、共有鍵を共有
できる。
In order for the entity i to share a key with the entity j, the following calculation is performed. Here, the shared key can be shared by deleting the random number term by an appropriate method.

【0033】[0033]

【数12】 (Equation 12)

【0034】[0034]

【発明が解決しようとする課題】通信相手のID情報を
用いて予備通信を行うことなく暗号化鍵及び復号鍵とな
る共有鍵を互いに共有するようなID−NIKSにあっ
ては、複数のエンティティの結託等の攻撃に対して十分
に安全であることが望まれる。しかしながら、以上のよ
うなID−NIKSにおいては、攻撃法が検討されて、
適当な人数のエンティティが結託すればセンタの秘密パ
ラメータが露呈するという問題を含んでいる。暗号学的
に安全なID−NIKSを構築できるか否かは、高度情
報化社会に重要な問題であり、より理想的な暗号方式の
探究が進められている。
In an ID-NIKS in which a shared key serving as an encryption key and a decryption key is shared with each other without performing preliminary communication using ID information of a communication partner, a plurality of entities are required. It is desired to be sufficiently secure against attacks such as collusion. However, in the above-mentioned ID-NIKS, attack methods have been studied,
This involves the problem that the secret parameters of the center are exposed if an appropriate number of entities collude. Whether it is possible to construct a cryptographically secure ID-NIKS is an important issue for a highly information-oriented society, and a search for a more ideal encryption system is being pursued.

【0035】本発明は斯かる事情に鑑みてなされたもの
であり、エンティティが結託してもセンタの秘密パラメ
ータが露呈することなく暗号文が復号されず、安全性が
極めて高い新規のID−NIKSによる暗号通信方法を
提供することを目的とする。
The present invention has been made in view of the above circumstances, and a new ID-NIKS with extremely high security is obtained even if an entity is colluded, without exposing the secret parameter of the center and without decrypting the ciphertext. and an object thereof is to <br/> providing encrypted communications how by.

【0036】[0036]

【課題を解決するための手段】請求項1に係る暗号通信
方法は、センタ装置から複数のエンティティ装置夫々
各エンティティ固有の暗号鍵を送付し、一方のエンティ
ティ装置が前記センタ装置から送付された該エンティテ
ィ固有の暗号鍵と公開された他方のエンティティの公開
鍵とを利用して平文を暗号文に暗号化して他方のエンテ
ィティ装置へ伝送し、該他方のエンティティ装置が伝送
された暗号文を前記センタ装置から送付された該エンテ
ィティ固有の暗号鍵と公開された前記一方のエンティテ
ィの公開鍵とを利用して元の平文に復号することによ
り、エンティティ装置間で情報の通信を行う暗号通信方
法において、前記センタ装置にて、公開鍵として公開さ
れた各エンティティ固有の第1の鍵とセンタ装置が管理
する対称行列とから(2)式に基づいて、第1の鍵を変
数とする第1の関数で表される各エンティティ固有の秘
密の第2の鍵を生成し、各エンティティ固有の乱数と第
2の鍵とから(3)式に基づいて第1秘密鍵を生成し、
前記乱数から(4)式に基づいて第2秘密鍵を生成し、
生成した第1秘密鍵及び第2秘密鍵を各エンティティ装
置に送付し、一方のエンティティ装置にて、第1秘密鍵
及び第2秘密鍵と他方のエンティティの第1の鍵とを用
いて、自身の第2の鍵及び相手の第1の鍵2変数とす
第2の関数で表され、平文を暗号文に暗号化する際及
び暗号文を平文に復号する際に用いる両エンティティ間
で共有する第3の鍵を(5),(6)式に基づいて生成
し、第1の鍵、第2の鍵及び第3の鍵を使用して、エン
ティティ装置間で暗号化した情報の通信を行うことと
るが、第2の関数に第1の関数を代入して得られる、自
身及び相手の第1の鍵を変数とする第3の関数を、それ
ぞれの変数について(1)式に定義されるような分離不
可能な関数に設定することを特徴とする。f(x+y)≠f(x)○f(y) …(1) 但し、 適当な可換な算法を○として、関数f(・)が次
式を満たす場合に、関数f(・)は算法○により分離不
可能であると定義する。
According to a first aspect of the present invention, there is provided an encryption communication method, wherein an encryption key unique to each entity is sent from a center device to each of a plurality of entity devices , and one of the entity devices is sent from the center device . The plaintext is encrypted into ciphertext using the encryption key unique to the entity and the public key of the other entity and transmitted to the other entity device, and the transmitted ciphertext is transmitted to the other entity device. A cryptographic communication method for performing information communication between entity devices by decrypting the original plaintext using the encryption key unique to the entity sent from the center device and the public key of the one entity that has been disclosed. at the center device, the first key and the center device of each entity unique published as the public key management
Based on and a symmetric matrix (2) which, varying the first key
Generating a second key for each entity unique private represented by a first function with several, second and each entity-specific random number
A first secret key is generated from the second key based on equation (3),
Generating a second secret key from the random number based on equation (4);
The generated first secret key and second secret key are stored in each entity device.
To the first private key at one of the entity devices.
And the second secret key and the first key of the other entity
And its own second key and the other party's first key are two variables .
A third key, which is expressed by a second function and shared between both entities when encrypting a plaintext into a ciphertext and when decrypting a ciphertext into a plaintext, is based on the equations (5) and (6). Generate
Then, communication of the encrypted information is performed between the entity devices using the first key, the second key, and the third key .
However , a third function obtained by substituting the first function for the second function and having the first key of the self and the other party as a variable is defined by the equation (1) for each variable. It is characterized by setting to a non-separable function. f (x + y) ≠ f (x) ○ f (y) (1) However, if an appropriate commutative algorithm is represented by 、 and the function f (・) satisfies the following equation, the function f (・) is the algorithm Define as inseparable by ○.

【0037】[0037]

【数13】 (Equation 13)

【0038】[0038]

【数14】 [Equation 14]

【0039】[0039]

【0040】[0040]

【0041】[0041]

【0042】[0042]

【0043】[0043]

【0044】[0044]

【0045】[0045]

【0046】[0046]

【0047】[0047]

【0048】[0048]

【0049】[0049]

【0050】[0050]

【0051】以下、本発明の暗号通信方法におけるID
−NIKSの概念について説明する。
Hereinafter, the ID in the encryption communication method of the present invention will be described.
-The concept of NIKS will be described.

【0052】まず、線形の概念を一般化して、関数にお
ける分離可能を次のように定義する。適当な可換な算法
を○として、関数f(・)が次の関係式を満たす場合
に、その関数f(・)は算法○により分離可能であると
定義する。 f(x+y)=f(x)○f(y) 例えば、f(x)=ax,f(x)=ax は、以下に示
すように分離可能である。 f(x+y)=a(x+y)=ax+ay=f(x)+
f(y) f(x+y)=ax+y =ax ・ay =f(x)・f
(y)
First, the concept of linearity is generalized, and separability in a function is defined as follows. When an appropriate commutative algorithm is represented by ○ and the function f (() satisfies the following relational expression, the function f (() is defined as being separable by the algorithm ○. f (x + y) = f (x) ○ f (y) for example, f (x) = ax, f (x) = a x is separable as shown below. f (x + y) = a (x + y) = ax + ay = f (x) +
f (y) f (x + y) = a x + y = a x · a y = f (x) · f
(Y)

【0053】また、行列のべき積演算の定義は、A,
B,Cをそれぞれm×l,l×n,m×nの行列とする
と、前述したように、以下のようになる。
The definition of the matrix product operation is A,
Assuming that B and C are m × l, l × n, and m × n matrices, respectively, as described above, the following is obtained.

【0054】[0054]

【数15】 (Equation 15)

【0055】また、2×2行列について、右べき積,左
べき積を具体的に例示すると、以下のようになる。
The right power product and the left power product of the 2 × 2 matrix are specifically exemplified as follows.

【0056】[0056]

【数16】 (Equation 16)

【0057】次に、NIKSを実現するための条件及び
安全なNIKSであるための条件について考察する。但
しi,j,k,1,y及びzはエンティティを表し、s
i はエンティティiの秘密鍵(特許請求の範囲の第2の
鍵)、vi は多くの場合にIDのハッシュ値であるエン
ティティiの公開鍵(特許請求の範囲の第1の鍵)、K
ijはエンティティiが求めたエンティティjとの共有鍵
(特許請求の範囲の第3の鍵)とする。
Next, conditions for realizing NIKS and conditions for secure NIKS will be considered. Where i, j, k, 1, y and z represent entities, and s
i is the private key of the entity i (the second key in the claims), v i is the public key of the entity i (the first key in the claims), which is often a hash value of the ID, K
ij is a shared key (third key in the claims) with entity j obtained by entity i.

【0058】NIKSを実現するためには、以下の3つ
の条件が必要である。 〔条件1(秘密鍵生成条件)〕センタはエンティティi
の公開鍵vi から対応する秘密鍵si を求めることがで
きる。
To realize NIKS, the following three conditions are required. [Condition 1 (secret key generation condition)] The center is the entity i
It is possible to find the secret key s i corresponding to the public key v i of.

【0059】[0059]

【数17】 [Equation 17]

【0060】〔条件2(共有鍵生成条件)〕エンティテ
ィiの秘密鍵si とエンティティjの公開鍵vj とから
共有鍵Kijを生成できる。
[Condition 2 (Shared Key Generation Condition)] A shared key K ij can be generated from the secret key s i of the entity i and the public key v j of the entity j.

【0061】〔条件3(鍵共有条件)〕エンティティi
がエンティティjに対して生成する共有鍵Kijと、エン
ティティjがエンティティiに対して生成する共有鍵K
jiとは等しい。Kij=Kji
[Condition 3 (Key Sharing Condition)] Entity i
Generates a shared key K ij for entity j and a shared key K generated for entity j for entity i
It is equal to ji . K ij = K ji

【0062】また、安全なNIKSには、以下の5つの
条件が必要である。 〔条件4(秘密鍵の安全性)〕 いかなるエンティティiも自身の公開鍵 i から自身の
秘密鍵si を求められない。
Further, the following five conditions are necessary for secure NIKS. [Condition 4 (safety of the secret key)] not required to own secret key s i from the public key v i of any entity i own.

【0063】[0063]

【数18】 (Equation 18)

【0064】〔条件5(共有鍵の安全性)〕2人のエン
ティティy,zの公開鍵vy ,vz からエンティティ
y,z間の共有鍵Kyzを求められない。
[Condition 5 (Security of Shared Key)] The shared key Kyz between the entities y and z cannot be obtained from the public keys v y and v z of the two entities y and z.

【0065】[0065]

【数19】 [Equation 19]

【0066】〔条件6(結託に対する秘密鍵の安全
性)〕複数のエンティティi,j,…の結託によって、
公開鍵vi ,vj ,…と秘密鍵si ,sj ,…とをいく
ら集めても、他のいかなるエンティティzの秘密鍵s z
を求められない。
[Condition 6 (Security of private key against collusion)
Gender)] by collusion of a plurality of entities i, j, ...
Public key vi, Vj, ... and secret key si, Sj, ...
, The secret key s of any other entity z z
Can not be asked.

【0067】[0067]

【数20】 (Equation 20)

【0068】〔条件7(結託に対する共有鍵の安全
性)〕複数のエンティティi,j,…の結託によって、
公開鍵vi ,vj ,…と秘密鍵si ,sj ,…とをいく
ら集めても、他のいかなるエンティティy,z間の共有
鍵Kyzを求められない。なお、複数のエンティティi,
j,k,…の結託によって、エンティティi,j,k,
…間の共有鍵Kij,Kik,Kjk,…をいくら集めても、
他のいかなるエンティティy,z間の共有鍵Kyzを求め
られないという条件も含まれる。
[Condition 7 (Security of Shared Key Against Collusion)] By collusion of a plurality of entities i, j,.
Public key v i, v j, ... and a secret key s i, s j, ... and also attracted much, and not be asked to share key K yz between any other entity y, z. Note that a plurality of entities i,
By the collusion of j, k, ..., entities i, j, k,
No matter how many shared keys K ij , K ik , K jk,.
The condition that the shared key Kyz between any other entities y and z cannot be obtained is also included.

【0069】[0069]

【数21】 (Equation 21)

【0070】〔条件8(センタ秘密の安全性)〕いかな
る攻撃によってもセンタ秘密は求められない。
[Condition 8 (Security of Center Secret)] The center secret is not required by any attack.

【0071】上述した条件1〜5は、それぞれ条件9〜
13と同値である。 〔条件9〕センタは、秘密鍵を生成するための関数(秘
密鍵生成関数:特許請求の範囲の第1の関数)f(・)
を計算できる。 si =f(vi
The above-mentioned conditions 1 to 5 correspond to conditions 9 to
It is the same value as 13. [Condition 9] The center is a function for generating a secret key (secret key generation function: a first function in the claims) f (·)
Can be calculated. s i = f (v i )

【0072】〔条件10〕共有鍵を生成するための関数
(共有鍵生成関数:特許請求の範囲の第2の関数)F
(・)は2変数関数で表せる。 Kij=F(si ,vj ) から対応する秘密鍵si を求めることができる。
[Condition 10] Function for Generating Shared Key (Shared Key Generation Function: Second Function in Claims) F
(•) can be represented by a two-variable function. The corresponding secret key s i can be obtained from K ij = F (s i , v j ).

【0073】〔条件11〕共有鍵生成関数F(・)に秘
密鍵生成関数f(・)を代入して得られる、公開鍵を変
数とする関数(共有鍵公開関数:特許請求の範囲の第3
の関数))Fp (・)は、対称関数である。 Fp (vi ,vj )=Fp (vj ,vi ) 但し、 Fp (vi ,vj )=F(f(vi ),vj )=F(s
i j
[Condition 11] A function that uses a public key as a variable and is obtained by substituting a secret key generation function f (•) into a shared key generation function F (•) (shared key public function: 3
)) F p (·) is a symmetric function. F p (v i, v j ) = F p (v j, v i) However, F p (v i, v j) = F (f (v i), v j) = F (s
i v j )

【0074】〔条件12〕各エンティティは、秘密鍵生
成関数f(・)を計算できない。
[Condition 12] Each entity cannot calculate the secret key generation function f (•).

【0075】〔条件13〕各エンティティは、共有鍵公
開関数Fp (・)を計算できない。
[Condition 13] Each entity cannot calculate the shared key public function F p (•).

【0076】上記条件6,条件7を満たすためには、線
形攻撃が適用できないか、または、それぞれ以下の条件
14,条件15を満たせば良い。
In order to satisfy the above conditions 6 and 7, the linear attack cannot be applied, or the following conditions 14 and 15 must be satisfied, respectively.

【0077】〔条件14〕秘密鍵生成関数f(・)は分
離不可能な関数である。 f(x+y)≠f(x)○f(y) もし分離可能な関数であると、エンティティの結託に伴
う秘密鍵による結託攻撃により破られる。例えば、エン
ティティi,jが結託して、vz =vi +vj と表され
る場合には、両エンティティi,jの秘密鍵si ,sj
を用意すれば、以下のようにして、エンティティzの秘
密鍵sz を求めることができる。 sz =f(vz ) =f(vi )○f(vj ) =si ○sj
[Condition 14] The secret key generation function f (•) is an inseparable function. f (x + y) ≠ f (x) ○ f (y) If the function is separable, it can be broken by a collusion attack using a secret key accompanying the collusion of an entity. For example, if the entities i and j are collaboratively expressed as v z = v i + v j , the secret keys s i and s j of both entities i and j
Is prepared, the secret key s z of the entity z can be obtained as follows. s z = f (v z) = f (v i) ○ f (v j) = s i ○ s j

【0078】〔条件15〕共有鍵公開関数Fp (・)は
分離不可能な関数である。 Fp (a,x+y)≠Fp (a,x)○Fp (a,y) 〔条件11〕より、Fp (・)は対称関数であるので、
次式も成立する。 Fp (x+y,a)≠Fp (x,a)○Fp (y,a) もし分離可能な関数であると、エンティティの結託に伴
う共有鍵による結託攻撃により破られてしまう。エンテ
ィティi,jが結託して、vz =vi +vj と表される
場合には、Kiy(=F(si ,vy )=Fp (vi ,v
y ))及びKjy=(F(sj ,vy )=Fp (vj ,v
y ))を準備しておけば、以下のようにして、エンティ
ティy,z間の共有鍵Kyzを求めることができる。 Kyz=Fp (vy ,vz ) =Fp (vy ,vi +vj ) =Fp (vy ,vi )○Fp (vy ,vj ) =Fp (vi ,vy )○Fp (vj ,vy ) =Kiy○Kjy また、vy =vi +vj ,vz =vk +vl と表される
場合には、Kik,Kil,Kjk及びKjlを準備しておけ
ば、以下のようにして、Kyzを求めることができる。 Kyz=Fp (vy ,vz ) =Fp (vi ,vz )○Fp (vj ,vz ) =Fp (vi ,vk )○Fp (vi ,vl ) ○Fp (vj ,vk )○Fp (vj ,vl ) =Kik○Kil○Kjk○Kjl
[Condition 15] The public key public function F p (•) is an inseparable function. F p (a, x + y) ≠ F p (a, x) F F p (a, y) From Condition 11, since F p (•) is a symmetric function,
The following equation also holds. F p (x + y, a) ≠ F p (x, a) ○ F p (y, a) If the function is separable, it will be broken by a collusion attack using a shared key accompanying the collusion of entities. When the entities i and j are collaboratively expressed as v z = v i + v j , K iy (= F (s i , v y ) = F p (v i , v
y )) and K zy = (F (s j , v y ) = F p (v j , v
If y )) is prepared, the shared key Kyz between the entities y and z can be obtained as follows. K yz = F p (v y , v z ) = F p (v y , v i + v j ) = F p (v y , v i ) ○ F p (v y , v j ) = F p (v i , v y) ○ F p ( v j, v y) = K iy ○ K jy Further, v y = v i + v j, when expressed as v z = v k + v l is, K ik, K il , if preparing a K jk and K jl, as follows, it can be obtained K yz. K yz = F p (v y , v z) = F p (v i, v z) ○ F p (v j, v z) = F p (v i, v k) ○ F p (v i, v l ) ○ F p (v j , v k ) ○ F p (v j , v l ) = K ikKil ○ K jk ○ K jl

【0079】この条件は厳しく、途中の計算によらず、
最後の鍵共有形がべき積型となっているだけで条件15
を満たさない。
This condition is severe, and regardless of the calculation in the middle,
Condition 15 only because the last key agreement type is the power product type
Does not satisfy

【0080】ところで、線形攻撃が適用できないために
は、例えば以下の条件16を満たせば良い。 〔条件16〕 攻撃目標のエンティティの公開鍵が、結託したエン
ティティの公開鍵の線形結合で表せない。 線形結合で表されるが、○の逆算法ができない。即
ち、下記式において、算法○に対するf(y)の逆元が
求められない。 f(x−y)=f(x)○(f(y))-1 エンティティは、自身の秘密鍵を知ることができな
い。
By the way, in order that the linear attack cannot be applied, for example, the following condition 16 may be satisfied. [Condition 16] The public key of the attack target entity cannot be represented by a linear combination of the public keys of the colluded entities. Although represented by a linear combination, the reverse calculation of ○ cannot be performed. That is, in the following equation, the inverse of f (y) with respect to the algorithm ○ cannot be obtained. f (xy) = f (x) ○ (f (y)) -1 The entity cannot know its own secret key.

【0081】このような条件16を満たすことにより、
安全なべき型NIKSを実現できる可能性がある。しか
しながら、現状では条件16を満たす方式はなく、条
件16を満たそうとする方式は、ユークリッド攻撃に
より、結託行列の逆行列が求まらなくても破れてしまう
ことが知られている。よって、条件16を満たそうと
するアプローチが有力であると考えられる。
By satisfying such condition 16,
There is a possibility that a safe NIKS should be realized. However, at present, there is no method that satisfies the condition 16, and it is known that the method that attempts to satisfy the condition 16 is broken by the Euclidean attack even if the inverse matrix of the collusion matrix is not obtained. Therefore, it is considered that an approach that satisfies the condition 16 is effective.

【0082】以上のような考察に基づいて、本発明のI
D−NIKSの暗号方式では、上述の共有鍵公開関数を
分離不可能な関数に設定する(条件15)。また、個人
乱数を導入して各エンティティの秘密鍵を判らなくし、
この乱数も秘密と考えて上述の秘密鍵生成関数を分離不
可能な関数と見なせるようにする(条件14)。更に、
各エンティティは自身の秘密鍵を知ることができないよ
うにする(条件16)。以上のようにすれば、如何な
る人数のエンティティの結託に対しても安全であるID
−NIKSを実現できる。
Based on the above considerations, the I
In the D-NIKS cryptosystem, the above-described shared key public function is set to an inseparable function (condition 15). Also, by introducing a personal random number, the secret key of each entity cannot be determined,
This random number is also considered to be secret, so that the above-described secret key generation function can be regarded as an inseparable function (condition 14). Furthermore,
Each entity is prevented from knowing its own secret key (condition 16). In this way, an ID that is secure against collusion of any number of entities
-NIKS can be realized.

【0083】[0083]

【発明の実施の形態】以下、本発明の実施の形態につい
て具体的に説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments of the present invention will be specifically described below.

【0084】図1は、本発明の暗号通信方法を実施する
ためのシステムの構成を示す模式図である。情報の隠匿
を信頼できるセンタ1が設定されており、このセンタ1
としては、例えば社会の公的機関を該当できる。このセ
ンタ1と、この暗号系システムを利用するユーザとして
の複数の各エンティティa,b,…,zとは秘密通信路
2a,2b,…,2zにより接続されており、この秘密
通信路秘密通信路暗号文を通信し合う2a,2b,…,
2zを介してセンタ1から秘密の鍵情報が各エンティテ
ィa,b,…,zへ伝送されるようになっている。ま
た、2人のエンティティの間には通信路3ab,3az,3
bz,…が設けられており、この通信路3ab,3az,3b
z,…を介して通信情報を暗号化した暗号文が互いのエ
ンティティ間で伝送されるようになっている。
FIG. 1 illustrates an embodiment of an encryption communication method according to the present invention.
FIG. 1 is a schematic diagram showing a configuration of a system for performing the above. A center 1 that can trust the concealment of information is set.
For example, a public organization of society can be applicable. The center 1 is connected to a plurality of entities a, b,..., Z as users who use the cryptosystem by secret communication paths 2a, 2b,. 2a, 2b,...
The secret key information is transmitted from the center 1 to each entity a, b,..., Z via 2z. In addition, communication paths 3ab, 3az, 3
bz,... are provided, and the communication paths 3ab, 3az, 3b
The cipher text obtained by encrypting the communication information via z,... is transmitted between the entities.

【0085】以下に、本発明のID−NIKSの実施の
形態を説明する。まず、(センタでの準備処理),(エ
ンティティの登録処理),(エンティティ間の共有鍵の
生成処理)の順序で、本発明の暗号系を説明する。
Hereinafter, an embodiment of the ID-NIKS of the present invention will be described. First, the cryptosystem of the present invention will be described in the order of (preparation processing at the center), (entity registration processing), and (shared key generation processing between entities).

【0086】(センタでの準備処理)センタは以下の公
開鍵及び秘密鍵を準備し、公開鍵を公開する。
(Preparation processing at the center) The center prepares the following public key and private key, and publishes the public key.

【0087】但し、λ(・)はCarmichael関数とする。
また、エンティティのID情報からn次元の公開鍵ベク
トルvを計算するためのハッシュ関数h(・)も同時に
公開する。ハッシュ関数はデータ列を別のデータ列に変
換する関数であり、一般的には長いデータ列を短いデー
タ列に変換する関数である。但し、このハッシュ関数を
用いて公開鍵ベクトルvを計算した場合に、全成分の和
がeとなるようにする。具体的には、公開鍵ベクトルv
が2値ベクトルである場合にはSchalkwijkアルゴリズム
を用いればよいし、一般的には、(n−1)個の成分を
ハッシュ値で求め、最後の1個の成分を全体の和がeと
なるように求めればよい。
Here, λ (·) is a Carmichael function.
Also, a hash function h (·) for calculating an n-dimensional public key vector v from the ID information of the entity is also made public. The hash function is a function for converting a data sequence into another data sequence, and is generally a function for converting a long data sequence into a short data sequence. However, when the public key vector v is calculated using this hash function, the sum of all components is set to e. Specifically, the public key vector v
Is a binary vector, the Schalkwijk algorithm may be used. In general, (n-1) components are obtained by a hash value, and the sum of the last one component is e. You can ask for it.

【0088】[0088]

【数22】 (Equation 22)

【0089】(エンティティの登録処理)エンティティ
iに登録を依頼されたセンタは、準備した鍵とエンティ
ティiの公開鍵ベクトルvi (=h(IDi ))とを用
いて以下の計算を行って、エンティティiのベクトルx
i (特許請求の範囲の第1秘密鍵)とyi (特許請求の
範囲の第2秘密鍵)とを求め、求めたベクトルxi 及び
i をエンティティiへ秘密裏に送って、登録を完了す
る。この際、直接エンティティiに秘密鍵si を送らな
い。
(Entity Registration Processing) The center requested to register by the entity i performs the following calculation using the prepared key and the public key vector v i (= h (ID i )) of the entity i. , The vector x of the entity i
i (the first secret key in the claims) and y i (the second secret key in the claims), transmit the obtained vectors x i and y i to the entity i in secret, and register Complete. At this time, the secret key s i is not sent directly to the entity i.

【0090】[0090]

【数23】 (Equation 23)

【0091】(エンティティ間の共有鍵の生成処理)エ
ンティティiは、エンティティjとの鍵共有を行うため
に、以下の計算を行って、kij及び共有鍵Kijを求め
る。
(Generation of Shared Key Between Entities) In order to share a key with the entity j, the entity i obtains k ij and the shared key K ij by performing the following calculation.

【0092】[0092]

【数24】 (Equation 24)

【0093】上記kij,Kijを求める際の実際の計算の
手法を、ベクトルvj が多値ベクトルである一般的な
場合、ベクトルvj の各成分が比較的小さい場合、
ベクトルvj が2値ベクトルである特別な場合に分け
て、下記に示す。
[0093] The k ij, the method of actual calculation for obtaining the K ij, if the vector v j is generally a multi-valued vector, if the components of the vector v j is relatively small,
The special case where the vector v j is a binary vector is shown below.

【0094】[0094]

【数25】 (Equation 25)

【0095】次に、上述した暗号システムにおけるエン
ティティ間の情報の通信について説明する。図2は、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.

【0096】エンティティa側には、エンティティbの
個人識別情報IDb を入力し、ハッシュ関数を利用して
ベクトルvb (公開鍵)を得る公開鍵生成器11と、セ
ンタから送られる秘密のベクトルxa 及びya と公開鍵
生成器11からの公開鍵であるベクトルvb とに基づい
てエンティティaが求めるエンティティbとの共有鍵K
abを生成する共有鍵生成器12と、共有鍵Kabを用いて
平文(メッセージ)Mを暗号文Cに暗号化して通信路3
0へ出力する暗号化器13とが備えられている。また、
エンティティb側には、エンティティaの個人識別情報
IDa を入力し、ハッシュ関数を利用してベクトルva
(公開鍵)を得る公開鍵生成器21と、センタから送ら
れる秘密のベクトルxb 及びyb と公開鍵生成器21か
らの公開鍵であるベクトルva とに基づいてエンティテ
ィbが求めるエンティティaとの共有鍵Kbaを生成する
共有鍵生成器22と、共有鍵Kbaを用いて通信路30か
ら入力した暗号文Cを平文(メッセージ)Mに復号して
出力する復号器23とが備えられている。
[0096] entity a side inputs the personal identification information ID b entity b, or public key generator 11 to obtain a vector v b (public key) by using a hash function, the secret is sent from the center vector x a and y a the public key is a public key from the generator 11 vector v b and the shared key K to the entity a seek entity b based on
ab , and encrypts the plaintext (message) M into a ciphertext C using the shared key Kab, and
And an encryptor 13 for outputting to 0. Also,
The entity b side, enter the personal identification information ID a entities a, vector v a using a hash function
A public key generator 21 for obtaining a (public key), and an entity a required by an entity b based on secret vectors x b and y b sent from the center and a vector v a being a public key from the public key generator 21 shared key and the shared key generator 22 for generating the K ba, feature a decoder 23 which decodes the ciphertext C input from the channel 30 to the plaintext (message) M outputs using the shared key K ba and Have been.

【0097】図3は、図2の共有鍵生成器12及び22
の内部構成を示す図である。共有鍵生成器12及び22
は、センタから送られるベクトルxを記憶する第1レジ
スタ41と、ベクトルxの各成分を記憶する第2レジス
タ42と、公開鍵生成器11及び21から送られるベク
トルvを記憶する第3レジスタ43と、ベクトルvの各
成分を記憶する第4レジスタ44と、自然数Nを記憶す
る第5レジスタ45と、第2,第4,第5レジスタ4
2,44,45の出力に応じて指数演算を行う第1高速
指数演算器46と、予めセットされてkを記憶する第6
レジスタ47と、第1高速指数演算器46及び第6レジ
スタ47の出力を乗算する乗算器48と、センタから送
られるyを記憶する第7レジスタ49と、自然数Pを記
憶する第8レジスタ50と、第6,第7,第8レジスタ
47,49,50の出力に応じて指数演算を行って共有
鍵Kを出力する第2高速指数演算器51とを有する。
FIG. 3 shows the shared key generators 12 and 22 of FIG.
FIG. 3 is a diagram showing an internal configuration of the device. Shared key generators 12 and 22
Is a first register 41 for storing the vector x sent from the center, a second register 42 for storing each component of the vector x, and a third register 43 for storing the vector v sent from the public key generators 11 and 21. A fourth register 44 for storing each component of the vector v, a fifth register 45 for storing a natural number N, and a second, fourth and fifth register 4
A first high-speed exponent calculator 46 for performing an exponent operation according to the outputs of 2, 44 and 45;
A register 47, a multiplier 48 for multiplying the outputs of the first high-speed exponent calculator 46 and the sixth register 47, a seventh register 49 for storing y sent from the center, and an eighth register 50 for storing a natural number P. , A second high-speed exponent calculator 51 that performs an exponent operation in accordance with the outputs of the sixth, seventh, and eighth registers 47, 49, and 50 and outputs a shared key K.

【0098】なお、自然数N及びPには、P=N+1の
関係があるので、第5レジスタ45の最下位のビットを
1にして作成したものを第8レジスタ50として利用す
るようにしても良い。また、ベクトルxの各成分とy、
ベクトルvの各成分とk、mod Nとmod Pのそ
れぞれの入力を切り換えるようにすれば、1個の高速指
数演算器のみを使用する構成も可能である。
Since the natural numbers N and P have a relationship of P = N + 1, the one created by setting the least significant bit of the fifth register 45 to 1 may be used as the eighth register 50. . Also, each component of the vector x and y,
By switching between each component of the vector v and each input of k, mod N, and mod P, a configuration using only one high-speed exponent calculator is also possible.

【0099】次に、動作について説明する。エンティテ
ィaからエンティティbへ情報を伝送しようとする場
合、まず、エンティティbの個人識別情報IDb が公開
鍵生成器11に入力されてベクトルvb (公開鍵)が得
られ、得られたベクトルvb が共有鍵生成器12へ送ら
れる。また、センタから(B)に従って求められたベク
トルxa 及びya が共有鍵生成器12へ入力される。図
3に示す構成を有する共有鍵生成器12にて、(C)
従って共有鍵Kabが求められ、暗号化器13へ送られ
る。暗号化器13において、この共有鍵Kabを用いて平
文(メッセージ)Mが暗号文Cに暗号化され、暗号文C
が通信路30を介して伝送される。通信路30を伝送さ
れた暗号文Cはエンティティbの復号器23へ入力され
る。エンティティaの個人識別情報IDa が公開鍵生成
器21に入力されてベクトルva (公開鍵)が得られ、
得られたベクトルva が共有鍵生成器22へ送られる。
また、センタから(B)に従って求められたベクトルx
b 及びyb が共有鍵生成器22へ入力される。図3に示
す構成を有する共有鍵生成器22にて、(C)に従って
共有鍵Kbaが求められ、復号器23へ送られる。復号器
23において、この共有鍵Kbaを用いて暗号文Cが平文
(メッセージ)Mに復号される。
Next, the operation will be described. If you from the entity a intends to transmit information to an entity b, firstly, the entity personal identification information ID b of b is input vector v b (public key) is obtained public key generator 11, resulting vector v b is sent to the shared key generator 12. Furthermore, the vector x a and y a which is determined in accordance with the center (B) is input to the common key generator 12. The shared key generator 12 having the configuration shown in FIG. 3 obtains the shared key Kab according to (C) , and sends it to the encryptor 13. In the encryptor 13, the plaintext (message) M is encrypted into the ciphertext C using the shared key Kab , and the ciphertext C
Is transmitted via the communication path 30. The ciphertext C transmitted through the communication path 30 is input to the decryptor 23 of the entity b. Personal identification information ID a of the entity a is input to the public key generator 21 vector v a (public key) is obtained,
The resulting vector v a is sent to the common key generator 22.
Also, a vector x obtained from the center according to (B)
b and y b are input to the shared key generator 22. The shared key generator 22 having the configuration shown in FIG. 3 obtains the shared key K ba in accordance with (C) and sends it to the decryptor 23. The decryption unit 23 decrypts the ciphertext C into a plaintext (message) M using the shared key Kba .

【0100】次に、このような本発明の暗号系が、安全
なID−NIKSを実現できていること、即ち、前述し
た条件1〜7を満たすことを検証する。
Next, it will be verified that such an encryption system of the present invention can realize secure ID-NIKS, that is, it satisfies the above conditions 1 to 7.

【0101】(条件1について)秘密鍵生成関数f
(・)は、以下の式で定義され、センタにてエンティテ
ィの公開鍵から対応する秘密鍵を求めることができる。
(Condition 1) Secret key generation function f
(•) is defined by the following equation, and the center can find the corresponding private key from the public key of the entity.

【0102】[0102]

【数26】 (Equation 26)

【0103】(条件2について)共有鍵生成関数F
(・)は、以下の式で定義され、一方のエンティティの
秘密鍵と他方のエンティティの公開鍵とから共有鍵を生
成できる。
(Condition 2) Shared key generation function F
(•) is defined by the following equation, and a shared key can be generated from the private key of one entity and the public key of the other entity.

【0104】[0104]

【数27】 [Equation 27]

【0105】(条件3について)共有鍵公開関数F
p (・)は、以下の式で定義され、Tが対称行列である
ので、以下の式で示すように、Fp (・)は対称関数で
あって、互いのエンティティが生成する共有鍵は等しく
なる。
(Condition 3) Shared key public function F
Since p (•) is defined by the following equation, and T is a symmetric matrix, as shown in the following equation, F p (•) is a symmetric function, and the shared key generated by each entity is Become equal.

【0106】[0106]

【数28】 [Equation 28]

【0107】(条件4について)各エンティティは、セ
ンタ秘密である対称行列Tを知らない限り、自身の秘密
鍵を計算できない。
(Condition 4) Each entity cannot calculate its own secret key unless it knows the symmetric matrix T that is the center secret.

【0108】(条件5について)各エンティティは、セ
ンタ秘密である対称行列Tを知らない限り、エンティテ
ィ間の共有鍵を計算できない。
(Condition 5) Each entity cannot calculate the shared key between the entities unless it knows the symmetric matrix T that is the center secret.

【0109】(条件6について)本発明の暗号方式は、
条件14を直接的には満たさないが、条件16を満た
すので、条件6も満たすことになる。例えば、ベクトル
z ≡ベクトルvi +ベクトルvj である場合に、ベク
トルsz ≡ベクトルsi ・ベクトルsj となるが、エン
ティティの秘密鍵のベクトルsi をエンティティに直接
送付せずに、個人乱数ri を用いてベクトルxi として
から送付するようにしているため、ベクトルxz とベク
トルxi ・ベクトルxj とは等しくならず、個人秘密ベ
クトルxzを求めることができない。なお、エンティテ
ィは自身の個人乱数を知ることはできないが、この個人
乱数は共有鍵を生成する段階で消去される。
(Condition 6) The encryption method of the present invention is as follows.
Although condition 14 is not directly satisfied, but condition 16 is satisfied, condition 6 is also satisfied. For example, in the case of a vector v z ≡ vector v i + vector v j, without sending becomes a vector s z ≡ vector s i · vector s j, direct the vector s i of the secret key of the entity to entity, because you have to send from a vector x i with personal random number r i, not equal to the vector x z and the vector x i · vector x j, it is impossible to determine the private secret vector x z. Note that the entity cannot know its own personal random number, but this personal random number is deleted when the shared key is generated.

【0110】(条件7について)共有鍵公開関数F
p (・)は、以下の式で示されるように、分離不可能な
関数であるので、複数のエンティティの結託によって、
公開鍵と秘密鍵とをいくら集めても、他のいかなるエン
ティティ間の共有鍵を求められない。
(Condition 7) Shared key public function F
Since p (•) is an inseparable function as shown by the following formula, by collusion of multiple entities,
No matter how many public and private keys you collect, you cannot ask for a shared key between any other entities.

【0111】[0111]

【数29】 (Equation 29)

【0112】(条件8について)センタ秘密(p,q,
d,L,ri ,g及びT)は、複数のエンティティが結
託しても露呈しない。センタ秘密の中のp,q,d,
L,ri 及びgが露呈しない根拠は以下の通りである。 p,q:素因数分解の難しさ d,L:RSA暗号系の安全性 ri :離散対数問題の難しさ g :ri 未知による安全性
(Condition 8) Center secret (p, q,
d, L, r i , g, and T) are not exposed when multiple entities collude. P, q, d, in the center secret
L, evidence that does not r i and g is exposed is as follows. p, q: difficulty d of factoring, L: the safety of the RSA encryption system r i: the discrete logarithm problem difficulty g: r i unknown due to safety

【0113】次に、結託攻撃に対する対称行列Tの安全
性について説明する。もし、本発明の暗号方式において
個人乱数がない場合、即ち、ベクトルvi ,ベクトルs
i ,ベクトルvj ,ベクトルsj ,…を用いた攻撃が可
能な場合、結託者1人についてn個の式が得られるが、
m人が結託したとしてもmn個の線形独立な式が得られ
るわけではない。
Next, the security of the symmetric matrix T against collusion attacks will be described. If there is no personal random number in the encryption system of the present invention, i.e., a vector v i, the vector s
If an attack using i , vector v j , vector s j ,... is possible, n expressions are obtained for one colluder.
Even if m people collaborate, mn linearly independent expressions cannot be obtained.

【0114】Tが対称行列であるので、最初の結託者1
人で最大n個の線形独立な式が得られ、2人目が結託す
ることにより最大(n−1)個の新たな線形独立な式が
得られる。以降同様に、新たに1人ずつ結託するエンテ
ィティが増えていくにつれて新たに得られる線形独立な
式が減っていく。従って、n人のエンティティが結託す
る場合には、最大で、n+(n−1)+…+2+1=
{n(n+1)/2}個の線形独立な式が得られる。一
方、センタ秘密変数も{n(n+1)/2}個であるの
で、n人のエンティティの結託によって、対称行列Tが
解けることが考えられる。
Since T is a symmetric matrix, the first colluder 1
A person obtains at most n linearly independent equations, and the second person collaborates to obtain at most (n-1) new linearly independent equations. Thereafter, similarly, as the number of entities to be newly consigned one by one increases, the newly obtained linearly independent expression decreases. Therefore, if n entities collude, at most n + (n-1) +... + 2 + 1 =
{N (n + 1) / 2} linearly independent equations are obtained. On the other hand, since the number of center secret variables is {n (n + 1) / 2}, the symmetric matrix T can be solved by collusion of n entities.

【0115】次に、本発明の方式のように個人乱数が付
加されている場合を考えると、センタの秘密行列の{n
(n+1)/2}個のセンタ秘密変数に加えて、更に個
人乱数もセンタ秘密変数となる。よって、m人のエンテ
ィティが結託する場合には、センタ秘密変数は{n(n
+1)/2+m}個となる。この結果、任意の人数のエ
ンティティが結託しても、対称行列Tを解くことは不可
能である。以下、これが不可能である理由を、結託人数
毎に分けて説明する。
Next, considering the case where a personal random number is added as in the method of the present invention, {n
In addition to the (n + 1) / 2} center secret variables, personal random numbers also become center secret variables. Thus, if m entities collude, the center secret variable is {n (n
+1) / 2 + m}. As a result, even if an arbitrary number of entities collude, it is impossible to solve the symmetric matrix T. Hereinafter, the reason why this is not possible will be described for each collusion person.

【0116】(n人未満のエンティティが結託する場
合)センタ秘密変数の数が、結託によって得られる線形
独立な式の数を上回るので、解くことができない。
(If less than n entities collude) The number of center secret variables exceeds the number of linearly independent equations obtained by collusion and cannot be solved.

【0117】(n人のエンティティが結託する場合)最
初の1人では、上述した乱数を設けない場合と同様に最
大n個の線形独立な式が得られる。次に、2人目が結託
すると、個人秘密乱数に関する項が1つ増えるので、乱
数を設けない場合に比べて1つ多い最大n個の線形独立
な式が得られる。更に、3人目が結託すると、乱数を設
けない場合に比べて1つ多い最大(n−1)個の線形独
立な式が得られる。以降同様に、新たに1人ずつ結託す
るエンティティが増えていくにつれて新たに得られる線
形独立な式が減っていく。従って、n人のエンティティ
が結託する場合には、最大で、n+n+(n−1)+…
+2={n(n+1)/2+(n−1)}個の線形独立
な式が得られる。一方、センタ秘密変数は{n(n+
1)/2+n}個であるので、線形独立な式の数がセン
タ秘密変数の数よりも1つ少なくなり、対称行列Tは解
けない。
(When n entities collude) The first person can obtain at most n linearly independent equations as in the case where no random numbers are provided. Next, when the second person colludes, the number of terms relating to the personal secret random number is increased by one, so that a maximum of n linearly independent expressions, which is one more than when no random number is provided, are obtained. Further, when the third person colludes, a maximum of (n-1) more linearly independent expressions are obtained, which is one more than when no random number is provided. Thereafter, similarly, as the number of entities to be newly consigned one by one increases, the newly obtained linearly independent expression decreases. Thus, if n entities collude, at most n + n + (n-1) +.
+ 2 = {n (n + 1) / 2 + (n-1)} linearly independent equations are obtained. On the other hand, the center secret variable is {n (n +
1) / 2 + n}, the number of linearly independent equations becomes one less than the number of center secret variables, and the symmetric matrix T cannot be solved.

【0118】((n+1)人のエンティティが結託する
場合)n人の場合に比べて新たに1つの個人秘密乱数が
加わるが、その他のn項は線形従属であるので、新たな
線形独立な式は1つしか得られない。このように、セン
タ秘密変数が1つ増加し、線形独立な式が1つ増加する
だけであるので、n人の結託で解けなければ、(n+
1)人の結託でも対称行列Tは解けない。
(In the case where (n + 1) entities collude) One new personal secret random number is added compared to the case of n individuals, but the other n terms are linearly dependent, so a new linearly independent equation is obtained. Can only get one. As described above, since the center secret variable increases by one and the linearly independent expression increases by one, if it cannot be solved by collusion of n persons, (n +
1) The symmetric matrix T cannot be solved even by collusion of people.

【0119】((n+2)人以上のエンティティが結託
する場合)n人,(n+1)人の結託の場合の関係より
帰納的に、何人結託しても対称行列Tは解けない。
(In the case where (n + 2) or more entities collude) The symmetric matrix T cannot be solved no matter how many people collaborate.

【0120】このように、センタでの秘密行列Tは任意
の人数のエンティティによる結託攻撃に対して安全であ
る。
Thus, the secret matrix T at the center is secure against collusion attacks by any number of entities.

【0121】ここで、個人乱数を設ける場合と個人乱数
を設けない場合とにおけるセンタの秘密行列Tの安全性
の具体例について説明する。図4は、個人乱数を設け
ず、5人のエンティティが結託した場合を示す。図4に
示すように、5×5の行列Tは対称行列であるので、成
分の未知数は15個である。また、図4に示すように、
線形独立な式の数は5+4+3+2+1=15となる。
よって、未知数の個数と線形独立な式の数とが一致する
ため、解くことができ、センタの秘密行列Tが求められ
てしまうことになる。
Here, a specific example of the security of the secret matrix T of the center in the case where the personal random number is provided and the case where the personal random number is not provided will be described. FIG. 4 shows a case where a personal random number is not provided and five entities collude. As shown in FIG. 4, since the 5 × 5 matrix T is a symmetric matrix, the number of unknown components is fifteen. Also, as shown in FIG.
The number of linearly independent equations is 5 + 4 + 3 + 2 + 1 = 15.
Therefore, since the number of unknowns and the number of linearly independent equations match, it can be solved, and the secret matrix T of the center is obtained.

【0122】一方、図5は、個人乱数を設け、5人のエ
ンティティが結託した場合を示す。個人乱数もセンタ側
での秘密と考えると、図5に示すように、未知数は行列
T由来の15個と乱数由来の5個との合計20個であ
る。また、図5に示すように、線形独立な式の数は5+
5+4+3+2=19となる。よって、未知数の個数が
線形独立な式の数より多くなるため、解くことができ
ず、センタの秘密が求められない。図6に、この場合の
方程式を示す。
On the other hand, FIG. 5 shows a case where personal random numbers are provided and five entities collude. Assuming that the personal random number is also a secret on the center side, as shown in FIG. 5, the unknown number is 15 in total from the matrix T and 5 in total from the random number. Also, as shown in FIG. 5, the number of linearly independent equations is 5+
5 + 4 + 3 + 2 = 19. Therefore, the number of unknowns is larger than the number of linearly independent equations, so that they cannot be solved and the secret of the center cannot be obtained. FIG. 6 shows an equation in this case.

【0123】次に、本発明の暗号通信方法における数値
例について説明する。図7〜図9に第1の数値例(公開
鍵のベクトルvの成分が多値である場合)を示す。ま
ず、センタにて、図7(a)に示すように、公開鍵
(P,N,e)及び秘密鍵(p,q,L,d,g,T,
i ,rj ,rk )を設定する。また、各エンティティ
i,j,kのIDに基づく多値の公開鍵のベクトル
i ,vj ,vk を計算して、図7(b)のように設定
する。このような設定条件に基づいて、各エンティティ
i,j,kのベクトルxi ,xj ,xk を求めると図7
(c)のようになり、ri -1,rj -1,rk -1及び
i ,yj ,yk を求めると図7(d)のようになる。
そして、エンティティi,j間の共有鍵Kij=Kji、エ
ンティティi,k間の共有鍵Kik=Kki、エンティティ
j,k間の共有鍵Kjk=Kkjは、それぞれ、図8
(a),(b),(c)のように求まる。また、この第
1の数値例における結託攻撃に対する安全性を図9に示
す。未知数が9個あって線形独立な式の数が8本である
ので、解くことができず、センタでの秘密は保持され
る。
Next, numerical values in the encryption communication method of the present invention will be described.
An example will be described. FIGS. 7 to 9 show first numerical examples (open to the public).
Key vector v is multi-valued). Ma
First, at the center, as shown in FIG.
(P, N, e) and secret key (p, q, L, d, g, T,
ri, Rj, Rk) Is set. Also, each entity
vector of multi-valued public key based on i, j, k ID
vi, Vj, VkIs calculated and set as shown in FIG.
I do. Based on such setting conditions, each entity
vector x of i, j, ki, Xj, XkFigure 7
(C), and ri -1, Rj -1, Rk -1as well as
yi, Yj, YkIs obtained as shown in FIG.
Then, the shared key K between the entities i and jij= Kji, D
Shared key K between entities i and kik= Kki,entity
Shared key K between j and kjk= KkjRespectively correspond to FIG.
(A), (b), and (c). In addition, this
Figure 9 shows the security against collusion attacks in the numerical example of 1.
You. There are 9 unknowns and 8 linearly independent equations
So it cannot be solved and the secret at the center is kept
You.

【0124】図10,図11に第2の数値例(公開鍵の
ベクトルvの成分が2値である場合)を示す。まず、セ
ンタにて、図10(a)に示すように、公開鍵(P,
N,e)及び秘密鍵(p,q,L,d,g,T,ri
j )を設定する。また、各エンティティi,jのID
に基づく2値の公開鍵ベクトルvi ,vj を計算して、
図10(b)のように設定する。このような設定条件に
基づいて、各エンティティi,jのri -1,rj -1及び
ベクトルsi ,sj を求めると図10(c)のようにな
る。更に、エンティティiにおけるベクトルxi ,yi
及び,共有鍵Kijを求めると図11(a)に示すように
なり、同様に、エンティティjにおけるベクトルxj
j 及び,共有鍵Kjiを求めると図11(b)に示すよ
うになる。
FIGS. 10 and 11 show a second numerical example (when the component of the vector v of the public key is binary). First, at the center, as shown in FIG. 10A, the public key (P,
N, e) and a secret key (p, q, L, d, g, T, r i ,
r j ). ID of each entity i, j
Calculate the binary public key vectors v i , v j based on
The settings are made as shown in FIG. FIG. 10C shows the values of r i -1 and r j -1 and the vectors s i and s j of the entities i and j based on the setting conditions. Further, vectors x i , y i in entity i
When the shared key K ij is obtained, the result is as shown in FIG. 11A. Similarly, the vectors x j ,
When y j and the shared key K ji are obtained, the result is as shown in FIG.

【0125】[0125]

【発明の効果】以上詳述したように、本発明では、前述
したNIKSを実現するための3つの条件及びその安全
性を確保するための5つの条件を満足するので、如何な
る人数のエンティティが結託しても、センタの秘密パラ
メータは露呈されず暗号文が復号されることがなく、極
めて高い安全性を達成できる。
As described in detail above, the present invention satisfies the three conditions for realizing the above-mentioned NIKS and the five conditions for ensuring its security. Even so, the secret parameter of the center is not exposed and the ciphertext is not decrypted, so that extremely high security can be achieved.

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

【図1】本発明の暗号通信方法を実施するためのシステ
ムの構成を示す模式図である。
FIG. 1 is a schematic diagram showing a configuration of a system for implementing an encryption communication method of the present invention.

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

【図3】図2の共有鍵生成器の内部構成を示す図であ
る。
FIG. 3 is a diagram showing an internal configuration of a shared key generator of FIG.

【図4】個人乱数を設けない場合のセンタでの秘密の安
全性を説明する図である。
FIG. 4 is a diagram illustrating security of secret at a center when no personal random number is provided.

【図5】個人乱数を設けた場合のセンタでの秘密の安全
性を説明する図である。
FIG. 5 is a diagram illustrating security of secret at a center when a personal random number is provided.

【図6】本発明の安全性を表す数値例を示す図である。FIG. 6 is a diagram showing an example of numerical values representing the security of the present invention.

【図7】本発明の第1の数値例を示す図である。FIG. 7 is a diagram showing a first numerical example of the present invention.

【図8】本発明の第1の数値例を示す図である。FIG. 8 is a diagram showing a first numerical example of the present invention.

【図9】本発明の第1の数値例を示す図である。FIG. 9 is a diagram showing a first numerical example of the present invention.

【図10】本発明の第2の数値例を示す図である。FIG. 10 is a diagram showing a second numerical example of the present invention.

【図11】本発明の第2の数値例を示す図である。FIG. 11 is a diagram showing a second numerical example of the present invention.

【図12】ID−NIKSのシステムの原理構成図であ
る。
FIG. 12 is a diagram illustrating the principle configuration of an ID-NIKS system.

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

1 センタ 11,21 公開鍵生成器 12,22 共有鍵生成器 13 暗号化器 23 復号器 30 通信路 1 Center 11, 21 Public Key Generator 12, 22 Shared Key Generator 13 Encryptor 23 Decryptor 30 Communication Path

───────────────────────────────────────────────────── フロントページの続き (72)発明者 笠原 正雄 大阪府箕面市粟生外院4丁目15番3号 (72)発明者 藤川 篤則 東京都町田市中町2−2−8 (72)発明者 村上 恭通 京都府宇治市槙島町本屋敷51−6 村田 機械株式会社社宅B棟602号 (56)参考文献 特開 平8−8972(JP,A) 予備通信不要なID−based暗号 化鍵共有の新方式の提案(第3報),電 子情報通信学会技術研究報告,1991年11 月29日,Vol.91,No.359(IS EC91−39),p.21−24 IDによる共通暗号化鍵生成方式 逐 次加算型乱数項消去法の提案,電子情報 通信学会技術研究報告,1992年12月 7 日,Vol.92,No.355(ISEC 92−60),p.29−38 (58)調査した分野(Int.Cl.7,DB名) H04L 9/08 JICSTファイル(JOIS)──────────────────────────────────────────────────続 き Continuation of the front page (72) Masao Kasahara 4-153-3, Ao Gaiin, Minoh-shi, Osaka (72) Inventor Atsunori Fujikawa 2-2-8 Nakamachi, Machida-shi, Tokyo (72) Inventor Yasutsu Murakami 51-6 Makishimacho Honashiki, Uji City, Kyoto Prefecture Murata Machinery Co., Ltd. Company Building B Bldg. 602 (56) Reference JP-A-8-8972 (JP, A) New method of ID-based encryption key sharing that does not require preliminary communication (3rd report), IEICE Technical Report, November 29, 1991, Vol. 91, No. 359 (ISEC 91-39), p. 21-24 Common encryption key generation method using ID Proposal of successive addition type random number term elimination method, IEICE Technical Report, December 7, 1992, Vol. 92, No. 355 (ISEC 92-60), p. 29-38 (58) Field surveyed (Int. Cl. 7 , DB name) H04L 9/08 JICST file (JOIS)

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 センタ装置から複数のエンティティ装置
夫々へ各エンティティ固有の暗号鍵を送付し、一方のエ
ンティティ装置が前記センタ装置から送付された該エン
ティティ固有の暗号鍵と公開された他方のエンティティ
の公開鍵とを利用して平文を暗号文に暗号化して他方の
エンティティ装置へ伝送し、該他方のエンティティ装置
が伝送された暗号文を前記センタ装置から送付された該
エンティティ固有の暗号鍵と公開された前記一方のエン
ティティの公開鍵とを利用して元の平文に復号すること
により、エンティティ装置間で情報の通信を行う暗号通
信方法において、前記センタ装置にて、 公開鍵として公開された各エンテ
ィティ固有の第1の鍵とセンタ装置が管理する対称行列
とから(2)式に基づいて、第1の鍵を変数とする第1
の関数で表される各エンティティ固有の秘密の第2の鍵
を生成し、各エンティティ固有の乱数と第2の鍵とから
(3)式に基づいて第1秘密鍵を生成し、前記乱数から
(4)式に基づいて第2秘密鍵を生成し、生成した第1
秘密鍵及び第2秘密鍵を各エンティティ装置に送付し、 一方のエンティティ装置にて、第1秘密鍵及び第2秘密
鍵と他方のエンティティの第1の鍵とを用いて、 自身の
第2の鍵及び相手の第1の鍵2変数とする第2の関数
で表され、平文を暗号文に暗号化する際及び暗号文を平
文に復号する際に用いる両エンティティ間で共有する第
3の鍵を(5),(6)式に基づいて生成し、 第1の鍵、第2の鍵及び第3の鍵を 使用して、エンティ
ティ装置間で暗号化した情報の通信を行うこととする
、第2の関数に第1の関数を代入して得られる、自身
及び相手の第1の鍵を変数とする第3の関数を、それぞ
れの変数について(1)式に定義されるような分離不可
能な関数に設定することを特徴とする暗号通信方法。f(x+y)≠f(x)○f(y) …(1) 但し、 適当な可換な算法を○として、関数f(・)が次
式を満たす場合に、関数f(・)は算法○により分離不
可能であると定義する。 【数1】 【数2】
1. A plurality of entity devices from the center device
Send each entity encryption key specific to each, by one entity device using the public key of the sent other entities exposed with the entity-specific cryptographic key from said center unit plaintext into ciphertext Encrypted and transmitted to the other entity device , and the other entity device transmits the transmitted ciphertext to the encryption key unique to the entity sent from the center device and the disclosed one entity. In the cryptographic communication method of performing information communication between entity devices by decrypting the original plaintext using a key, the center device includes a first key unique to each entity, which is disclosed as a public key, and Symmetric matrix managed by the center unit
And the first key having the first key as a variable based on the equation (2) .
Secret second key unique to each entity , expressed as a function of
Is generated from the random number unique to each entity and the second key.
Generate a first secret key based on equation (3), and
A second secret key is generated based on equation (4), and the generated first secret key is generated.
The secret key and the second secret key are sent to each entity device, and the first secret key and the second secret key are sent to one entity device.
Using a key and the first key of the other entity as a second function with its own second key and the other party's first key as two variables , when encrypting plaintext into ciphertext And a third key shared between the two entities used when decrypting the ciphertext into plaintext is generated based on equations (5) and (6), and a first key, a second key, and a third key are generated. use, and performs communication of encrypted information between entity device
Is a function obtained by substituting the first function for the second function and using the first key of itself and the other party as a variable as a variable, as defined in equation (1) for each variable. A cryptographic communication method characterized by setting functions that cannot be separated. f (x + y) ≠ f (x) ○ f (y) (1) However, if an appropriate commutative algorithm is represented by 、 and the function f (・) satisfies the following equation, the function f (・) is the algorithm Define as inseparable by ○. (Equation 1) (Equation 2)
JP00897297A 1997-01-21 1997-01-21 Encryption communication method Expired - Fee Related JP3283202B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP00897297A JP3283202B2 (en) 1997-01-21 1997-01-21 Encryption communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP00897297A JP3283202B2 (en) 1997-01-21 1997-01-21 Encryption communication method

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2002010865A Division JP2002290388A (en) 2002-01-18 2002-01-18 Cryptographic communication method, cryptographic method and key generation method, cryptographic communication system, center device and entity device

Publications (2)

Publication Number Publication Date
JPH10210022A JPH10210022A (en) 1998-08-07
JP3283202B2 true JP3283202B2 (en) 2002-05-20

Family

ID=11707611

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00897297A Expired - Fee Related JP3283202B2 (en) 1997-01-21 1997-01-21 Encryption communication method

Country Status (1)

Country Link
JP (1) JP3283202B2 (en)

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
IDによる共通暗号化鍵生成方式 逐次加算型乱数項消去法の提案,電子情報通信学会技術研究報告,1992年12月 7日,Vol.92,No.355(ISEC92−60),p.29−38
予備通信不要なID−based暗号化鍵共有の新方式の提案(第3報),電子情報通信学会技術研究報告,1991年11月29日,Vol.91,No.359(ISEC91−39),p.21−24

Also Published As

Publication number Publication date
JPH10210022A (en) 1998-08-07

Similar Documents

Publication Publication Date Title
Mambo et al. Proxy cryptosystems: Delegation of the power to decrypt ciphertexts
CN114282928B (en) Encryption key storage and transfer based on blockchain system combined with wallet management system
US5812671A (en) Cryptographic communication system
JPH0918469A (en) Cryptographic communication device, system, and cryptographic device
Chang et al. A new generalized group-oriented cryptoscheme without trusted centers
JP4450969B2 (en) Key sharing system, secret key generation device, common key generation system, encryption communication method, encryption communication system, and recording medium
Qin et al. Simultaneous authentication and secrecy in identity-based data upload to cloud
CN113378204A (en) Composite identification password method combining chaos and SM9
JP4485122B2 (en) Public key cryptosystem, signature system, cryptographic communication system, secret key generator, public key generator, and computer program
JP2000047581A (en) Encryption method, encryption / decryption device, and encryption communication system
JP3283202B2 (en) Encryption communication method
CN116743358A (en) A deniable multi-receiver authentication method and system
Bultel et al. A posteriori openable public key encryption
JP3622072B2 (en) Encryption communication method
JP2002290388A (en) Cryptographic communication method, cryptographic method and key generation method, cryptographic communication system, center device and entity device
Wang et al. Authorization-limited transformation-free proxy cryptosystems and their security analyses
JP3464153B2 (en) Encryption communication method and encryption communication system
JPH11317733A (en) Encryption communication method, encryption method, and encryption communication system
JP2000216768A (en) Encryption method, encryption communication method, and encryption communication system
JP3587746B2 (en) Secret key generator, encryption device, encryption communication method, encryption communication system, and recording medium
Venkateswarlu et al. An Expensive Study of Homomorphic Encryption to Secure Cloud Data
JP2001053738A (en) Secret key generation method, encryption method, and encryption communication method
JP3657803B2 (en) Secret key generation device, encryption device, encryption communication method, encryption communication system, common key generation device, and recording medium
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
Kuang-Hui et al. A new group key generating model for group sharing

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080301

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090301

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090301

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100301

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees