JP2886517B2 - Common key communication system - Google Patents
Common key communication systemInfo
- Publication number
- JP2886517B2 JP2886517B2 JP9023746A JP2374697A JP2886517B2 JP 2886517 B2 JP2886517 B2 JP 2886517B2 JP 9023746 A JP9023746 A JP 9023746A JP 2374697 A JP2374697 A JP 2374697A JP 2886517 B2 JP2886517 B2 JP 2886517B2
- Authority
- JP
- Japan
- Prior art keywords
- entity
- random number
- data
- number data
- communication
- 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 - Lifetime
Links
Description
【0001】[0001]
【発明の属する技術分野】本発明は、ネットワーク上の
エンティティ間で互いの共通の暗号鍵を使用して暗号通
信を行う共通鍵通信システムに関する。[0001] 1. Field of the Invention [0002] The present invention relates to a common key communication system for performing cryptographic communication between entities on a network using a common encryption key.
【0002】[0002]
【従来の技術】近年、インターネット等のネットワーク
上で通信を行う際に、通信データの機密保持等のために
暗号文による通信技術が望まれている。2. Description of the Related Art In recent years, when communication is performed on a network such as the Internet, a communication technique using cipher text has been desired to maintain confidentiality of communication data.
【0003】この種の通信技術としては、例えば公開鍵
方式としてのRSAが著名であるが、この他に、ネット
ワークに含まれるエンティティ同士で通信を行う際に、
送信側のエンティティが通信データ(平文)を暗号鍵に
より暗号化して受信側のエンティティに送信し、それを
受信側のエンティティが送信側の上記暗号鍵と共通の暗
号鍵により元の通信データに復号する共通鍵通信方法が
一般に知られている。尚、ここで、エンティティとは、
ネットワークに接続された端末機等の装置、その装置の
使用者、その装置のソフトウェア、あるいはそれらの集
合等、通信を行う主体を意味するものである。[0003] As this kind of communication technology, for example, RSA as a public key method is famous. In addition, when communication is performed between entities included in a network,
The transmitting entity encrypts the communication data (plaintext) using the encryption key and transmits it to the receiving entity, which then decrypts the original communication data using the same encryption key as the transmitting-side encryption key. A common key communication method is generally known. Here, the entity is
It refers to a device such as a terminal connected to a network, a user of the device, software of the device, or a group of them, and a subject that performs communication.
【0004】そして、このような通信方法にあっては、
ネットワークに備えられたセンターが、エンティティ同
士の通信に際して、各エンティティにセンターで生成し
た前記共通の暗号鍵を配付するものが知られている。あ
るいは、例えばRolf Blom による論文「NON-PUBLIC KEY
DISTRIBUTION /Advances in Cryptology: Proceeding
s of CRYPTO '82 /Plenum Press 1983,pp.231-236」、
同じくRolf Blom による論文「An Optimal Class of Sy
mmetric Key Generation Systems/Advances in Crypto
logy: EUROCRYPT '84 /Springer LNCS 209, 1985,pp.3
35-338」、あるいは特公平5−48980号公報もしく
は米国特許第5016276号に見られるように、あら
かじめ共通の暗号鍵を生成するための個人鍵を各エンテ
ィティ毎に前記センターにより生成して、それを各エン
ティティに配付しておき、通信に際しては、各エンティ
ティが自身の個人鍵を通信相手側のエンティティに固有
の識別子(名前、住所等)に作用させることで、通信を
行うエンティティ同士で共通の暗号鍵を生成し得るよう
にしたものも知られている。[0004] In such a communication method,
It is known that a center provided in a network distributes the common encryption key generated by the center to each entity upon communication between the entities. Or, for example, a paper "NON-PUBLIC KEY" by Rolf Blom
DISTRIBUTION / Advances in Cryptology: Proceeding
s of CRYPTO '82 / Plenum Press 1983, pp. 231-236 ",
A paper by Rolf Blom, "An Optimal Class of Sy
mmetric Key Generation Systems / Advances in Crypto
logy: EUROCRYPT '84 / Springer LNCS 209, 1985, pp.3
35-338 ", or Japanese Patent Publication No. 5-48980 or U.S. Pat. No. 5,016,276, in which a private key for generating a common encryption key is generated in advance by the center for each entity. Is distributed to each entity, and at the time of communication, each entity applies its own private key to an identifier (name, address, etc.) unique to the entity at the other end of communication, so that the entity performing communication has a common There is also known one capable of generating an encryption key.
【0005】この場合、後者の手法では、各エンティテ
ィ毎の個人鍵は、センターのみが保持する各エンティテ
ィに共通のセンターアルゴリズムにより各エンティティ
の識別子を変換することで生成される。In this case, in the latter method, a private key for each entity is generated by converting an identifier of each entity by a center algorithm common to each entity held only by the center.
【0006】より詳しくは、後者の手法では、センター
アルゴリズムは、これを例えば任意の二つの識別子を示
す変数x,yの関数P(x,y)として表現したとき、
P(x,y)=P(y,x)なる対称性を有するように
設定される。そして、この関数P(x,y)の変数x,
yのうち、例えば変数yの値を各エンティティの実際の
識別子iとした関数P(x,i)(以下、これをPi
(x)と表現する)が各エンティティの個人鍵として各
エンティティに配付される。その後、識別子iのエンテ
ィティが他の識別子jのエンティティと通信を行う場合
には、識別子iのエンティティ側では、自己の個人鍵P
i(x)に相手側の識別子jを作用(変数xの値をjと
する)させてなるPi(j)が暗号鍵として生成され
る。同様に、識別子jのエンティティ側では、自己の個
人鍵Pj(x)に相手側の識別子iを作用させてなるP
j(i)が暗号鍵として生成される。このとき、前記の
対称性によって、Pi(j)=Pj(i)となり、これ
により、識別子i,jのエンティティ同士で共通の暗号
鍵が得られることとなる。More specifically, in the latter method, when the center algorithm expresses this as a function P (x, y) of variables x and y indicating any two identifiers,
P (x, y) = P (y, x) is set to have a symmetry. Then, variables x, of this function P (x, y)
y, a function P (x, i) in which the value of the variable y is the actual identifier i of each entity (hereinafter referred to as Pi
(Expressed as (x)) is distributed to each entity as a private key of each entity. Thereafter, when the entity having the identifier i communicates with another entity having the identifier j, the entity having the identifier i has its own private key P
Pi (j), which is obtained by causing the identifier j of the other party to act on i (x) (the value of the variable x is j), is generated as an encryption key. Similarly, on the entity side of the identifier j, the P obtained by applying the identifier i of the partner to the own private key Pj (x).
j (i) is generated as an encryption key. At this time, due to the symmetry, Pi (j) = Pj (i), whereby a common encryption key is obtained between the entities having the identifiers i and j.
【0007】ところで、前述のような共通鍵通信方法で
は、暗号通信の安全性を確保する上で、前記暗号鍵が事
実上、解読することができないことが必要となる。特
に、前記特公平5−48980号公報等に見られる方法
では、全ての暗号鍵にそれらを規定するセンターアルゴ
リズムに係わる情報が含まれているため、各暗号鍵の解
読の困難性を確保することが重要な課題となる。By the way, in the above-mentioned common key communication method, in order to secure the security of the encrypted communication, it is necessary that the encryption key cannot be practically decrypted. In particular, in the method disclosed in Japanese Patent Publication No. 5-48980, etc., since all the encryption keys include information relating to the center algorithm that defines them, it is necessary to ensure the difficulty of deciphering each encryption key. Is an important issue.
【0008】しかるに、従来の通信方法では、通信デー
タ(平文)そのものを暗号鍵により暗号化して通信を行
うようにしていたため、通信データの特徴等から暗号鍵
が解読されてしまう虞れを有するものとなっていた。そ
して、特に、前記特公平5−48980号公報等に見ら
れる方法では、暗号鍵が解読されてしまうと、複数のエ
ンティティの結託等により、センターアルゴリズムをも
解読されてしまう虞れを有するものとなっていた。However, in the conventional communication method, communication is performed by encrypting communication data (plaintext) itself using an encryption key, so that the encryption key may be decrypted due to characteristics of the communication data. Had become. In particular, in the method disclosed in Japanese Patent Publication No. 5-48980 or the like, when the encryption key is decrypted, there is a possibility that the center algorithm may be decrypted due to collusion of a plurality of entities. Had become.
【0009】[0009]
【発明が解決しようとする課題】本発明はかかる背景に
鑑み、共通の暗号鍵を使用してエンティティ間で暗号通
信を行うシステムにおける暗号鍵の種々の攻撃に対する
安全性を高めることができる共通鍵通信システムを提供
することを目的とする。SUMMARY OF THE INVENTION In view of the foregoing, the present invention provides a common key capable of improving the security against various attacks of a cryptographic key in a system for performing cryptographic communication between entities using a common cryptographic key. It is an object to provide a communication system .
【0010】さらには、通信の際の共通の暗号鍵を生成
するための秘密個人鍵を、各エンティティに固有の識別
子に各エンティティに共通の秘密アルゴリズムを施して
生成し、それを各エンティティに配付しておくシステム
では、センターの秘密アルゴリズムを含めて種々の攻撃
に対する安全性を高めることができる共通鍵通信システ
ムを提供することを目的とする。[0010] Furthermore, a secret private key for generating a common encryption key for communication is generated by applying a secret algorithm common to each entity to an identifier unique to each entity, and is distributed to each entity. The common key communication system that can enhance the security against various attacks including the secret algorithm of the center
The purpose is to provide a system.
【0011】[0011]
【課題を解決するための手段】本発明の共通鍵通信シス
テムの第1の態様はかかる目的を達成するために、複数
のエンティティの端末装置とセンターとを含むネットワ
ークにおいて、エンティティの端末装置間で通信データ
の通信を行う際に、該通信データの送信側の端末装置
は、乱数データを鍵として該通信データを暗号化すると
共に該乱数データを該通信データの受信側との共通の暗
号鍵により暗号化して、その暗号化された乱数データと
前記暗号化された通信データとを該通信データの受信側
の端末装置に送信し、該通信データの受信側の端末装置
は、前記共通の暗号鍵により前記暗号化された乱数デー
タを復号し、その復号した乱数データを鍵として前記暗
号化された通信データを復号する共通鍵通信システムで
あって、前記センターは、各エンティティに共通の重み
関数付き積分変換アルゴリズムを含むセンターアルゴリ
ズムを秘密に保管しており、各エンティティに固有で且
つ公開性の識別子を前記センターアルゴリズムにより変
換して各エンティティに固有の個人鍵を生成し、その個
人鍵と前記重み関数付き積分変換アルゴリズムとを各エ
ンティティの端末装置にあらかじめ配付しておき、前記
各エンティティの端末装置は、前記通信データの通信を
行う際に、通信相手側のエンティティの識別子に自己に
配布された前記重み関数付き積分変換アルゴリズムと前
記個人鍵とを作用させることにより該エンティティ同士
に共通の暗号鍵を生成することを特徴とする。A common key communication system according to the present invention is provided.
In order to achieve the above object, a first aspect of the communication system performs communication data communication between entity terminal devices in a network including terminal devices of a plurality of entities and a center. Terminal equipment
Encrypts the communication data using the random number data as a key, encrypts the random number data with a common encryption key with the communication data receiving side, and encrypts the encrypted random number data with the encrypted data. of reception side and a communication data the communication data
To the terminal device , and the terminal device on the receiving side of the communication data
, Said the common encryption key to decrypt the encrypted random-number data, a common key communication system for decrypting the encrypted communication data to the random number data the decoded as a key, the center is the The center algorithm including the integral transform algorithm with the weight function common to the entities is kept secret and is unique to each entity and
One of the openness of the identifier change by the Center algorithm
To generate a private key unique to each entity,
Each painting and human key and integral transformation algorithm with the weight function
Distributed to the terminal device of the
Each entity of the terminal device, when communicating the communication data, the self to the identifier of the communication partner entity
The entities each other by Rukoto reacted with distributed the weighting function with the integral transformation algorithm was with said private key
And generating a common encryption key .
【0012】かかる本発明の第1の態様によれば、前記
通信データの送信側で乱数データを鍵として該通信デー
タを暗号化すると共に該乱数データを前記共通の暗号鍵
により暗号化して、その暗号化された乱数データを前記
暗号化された通信データと共に該通信データの受信側に
送信するので、前記暗号鍵を解読しようとするときの該
暗号鍵の情報は、乱数データにより暗号化された通信デ
ータではなく、暗号鍵により暗号化された乱数データに
含まれることとなる。そして、該乱数データ自体は、特
徴的な情報が乏しいため、暗号化された乱数データから
暗号鍵を解読することは極めて困難なものとなる。ま
た、通信データは、乱数データにより暗号化されるた
め、通信データの安全性も十分に確保される。そして、
通信データの受信側では、送信側と共通の暗号鍵を使用
することで、前記乱数データを復号することができ、さ
らにその復号した乱数データを鍵として最終的に所望の
通信データを復号することができ、支障なく暗号通信が
行われることとなる。According to the first aspect of the present invention, the communication data is encrypted on the transmitting side by using the random number data as a key, and the random number data is encrypted with the common encryption key. Since the encrypted random number data is transmitted to the receiving side of the communication data together with the encrypted communication data, information of the encryption key when trying to decrypt the encryption key is encrypted by the random number data. It is included in the random number data encrypted by the encryption key instead of the communication data. Since the random number data itself lacks characteristic information, it is extremely difficult to decrypt the encryption key from the encrypted random number data. Further, since the communication data is encrypted with the random number data, the security of the communication data is sufficiently ensured. And
On the receiving side of the communication data, the random number data can be decrypted by using a common encryption key with the transmitting side, and finally the desired communication data can be decrypted using the decrypted random number data as a key. And encrypted communication can be performed without any trouble.
【0013】従って、本発明によれば、共通の暗号鍵を
使用してエンティティ間で暗号通信を行うシステムにお
ける暗号鍵の種々の攻撃に対する安全性を高めることが
できる。Therefore, according to the present invention, it is possible to enhance the security against various attacks of the encryption key in a system for performing cryptographic communication between entities using a common encryption key.
【0014】この場合、本発明の第1の態様では、前記
共通の暗号鍵は、前記各エンティティの端末装置が、前
記センターが各エンティティにあらかじめ配付した前記
重み関数付き積分変換アルゴリズムと前記個人鍵とを通
信相手側の識別子を作用させることで生成される。前記
個人鍵は、前記センターが、前記重み関数付き積分変換
アルゴリズムを含むセンターアルゴリズムにより各エン
ティティに固有の識別子を変換して生成したものであ
る。[0014] In this case, in the first aspect of the present invention, the common encryption key is a terminal device of each of the entities, wherein the center has the integral conversion algorithm with the weight function previously distributed to each entity and the private key. preparative Ru generated by the action of the communication partner identifier. The private key is generated by the center by converting an identifier unique to each entity by a center algorithm including the integral conversion algorithm with the weight function.
【0015】すなわち、前記識別子は、各エンティティ
の氏名、住所等の他、ネットワーク上のメールアドレ
ス、ドメイン名、あるいはそれらを組み合わせたもの
等、各エンティティに対して固定的に用いられ、且つ少
なくとも通信相手に対して公開性のあるものであればよ
い。そして、この場合、各エンティティの識別子として
例えば氏名を用いると、一般に該識別子の分散性が悪い
(識別子の値の分布の偏りを生じやすい)。このため、
該識別子を前述した対称性を有するようなアルゴリズム
だけで変換して各エンティティの個人鍵を生成した場合
には、生成される個人鍵にも類似のものが多数現れやす
く、所謂、差分攻撃によって、他人の個人鍵や上記アル
ゴリズムが解読される虞れがある。That is, the identifier is fixedly used for each entity such as a mail address on the network, a domain name, or a combination thereof, in addition to the name and address of each entity, and at least communicates with each other. Anything that is open to the other party may be used. In this case, if a name is used as an identifier of each entity, for example, the dispersibility of the identifier is generally poor (the distribution of identifier values tends to be biased). For this reason,
If the identifier is converted only by the algorithm having the above-mentioned symmetry to generate a private key of each entity, a large number of similar private keys are likely to appear in the generated private key. There is a possibility that a private key of another person or the above algorithm may be decrypted.
【0016】ところが、本発明では、各エンティティの
個人鍵を、各エンティティの識別子に積分変換アルゴリ
ズム(詳しくは重み関数付き積分変換アルゴリズムであ
るが、重み関数の意義については後述する)を含むセン
ターアルゴリズムを施して生成するので、識別子に積分
変換アルゴリムが作用してなるデータの分散性が高ま
り、ひいては前記個人鍵の分散性が高まる。これによ
り、該個人鍵や前記センターアルゴリムの差分攻撃等に
よる解読が困難なものとなり、暗号通信システム全体の
安全性を高めることができる。そして、この場合、前記
個人鍵には、積分変換アルゴリズムに基づく成分が含ま
れているので、通信相手側のエンティティの識別子に、
前記個人鍵だけでなく、該個人鍵と共に各エンティティ
にあらかじめ配付される前記積分変換アルゴリムをも作
用させることで、前記センターアルゴリズムの積分変換
アルゴリズムを除くアルゴリズム部分(この部分は前述
の対称性を有するものとする)によって、エンティティ
同士の暗号鍵を生成することができる。However, in the present invention, a center algorithm including an integral conversion algorithm (specifically, an integral conversion algorithm with a weighting function, but the significance of the weighting function will be described later) using the private key of each entity as an identifier of each entity. , The dispersibility of the data obtained by the integration conversion algorithm acting on the identifier is enhanced, and the dispersibility of the private key is enhanced. This makes it difficult to decipher the private key or the center algorithm by a differential attack or the like, and can increase the security of the entire cryptographic communication system. In this case, since the private key includes a component based on the integral conversion algorithm, the identifier of the entity on the communication partner side includes:
By acting not only the private key but also the integral transformation algorithm distributed in advance to each entity together with the private key, an algorithm part other than the integral transformation algorithm of the center algorithm (this part has the aforementioned symmetry) It is possible to generate an encryption key between the entities.
【0017】このように前記センターアルゴリズムに積
分変換アルゴリズムを含めた本発明の第1の態様では、
前記積分変換アルゴリズムとしては、フーリエ変換(高
速フーリエ変換を含む)、ラプラス変換、ミラー変換、
ヒルベルト変換等が挙げられ、これらのいずれの積分変
換を用いることも可能であるが、これらの積分変換は解
析学的な無限区間上で定義されたものである。これに対
して、本発明において積分変換アルゴリズムを施す識別
子は、有限区間上で表されるもの(例えば有限環上の剰
余類)であるため、コンピュータ等を用いて識別子のデ
ータを積分変換したとき、変換結果の異常分散(エイシ
アリング)が生じやすい。As described above, in the first aspect of the present invention in which the center algorithm includes the integral conversion algorithm,
The integral transform algorithm includes Fourier transform (including fast Fourier transform), Laplace transform, Miller transform,
Hilbert transform and the like can be mentioned, and any of these integral transforms can be used. However, these integral transforms are defined on an analytical infinite interval. On the other hand, since the identifier to be subjected to the integral conversion algorithm in the present invention is represented on a finite interval (for example, a coset on a finite ring), when the identifier data is subjected to integral conversion using a computer or the like, In addition, abnormal dispersion (asialing) of the conversion result is likely to occur.
【0018】このため、本発明の第1の態様では、識別
子に作用させる積分変換アルゴリズムとして重み関数付
きの積分変換アルゴリズムを用いており、このように、
識別子に積分変換を施すに際して、重み関数を付加する
ことで、上記の異常分散を防止することができる。さら
に、該重み関数は、異常分散を防止できるものであれば
任意に設定することができるので、この重み関数を付加
した積分変換アルゴリズムを含むセンターアルゴリズム
により識別子を変換して成る前記個人鍵には、該重み関
数に基づく未知の成分が付加されることとなる。その結
果、該個人鍵やセンターアルゴリズムの解読がより一層
困難となって、本発明を適用した暗号通信システムの安
全性をさらに高めることができることとなる。For this reason, in the first aspect of the present invention, an integral conversion algorithm with a weight function is used as an integral conversion algorithm applied to an identifier.
The above-mentioned abnormal dispersion can be prevented by adding a weight function when performing the integral conversion on the identifier. Further, since the weight function can be arbitrarily set as long as it can prevent abnormal dispersion, the personal key obtained by converting an identifier by a center algorithm including an integral conversion algorithm to which the weight function is added is included in the personal key. , An unknown component based on the weight function is added. As a result, the decryption of the private key and the center algorithm becomes more difficult, and the security of the cryptographic communication system to which the present invention is applied can be further improved.
【0019】かかる本発明の第1の態様では、エンティ
ティ同士の通信の際に用いる前記乱数データは一回性の
乱数データであることが好ましい。すなわち、該一回性
の乱数データは、再現性がなく、もしくは再現性に極め
て乏しい乱数データを意味し、さらに詳しくは乱数デー
タを構成する各ビット数値の出現頻度がいずれの数値で
も同等で、また乱数データの相関がないものであり、こ
のような乱数データは、例えば人間がある語句もしくは
文章をコンピュータに入力する際のタイミングに基づい
て生成することが可能である。そして、このような偶然
的な乱数データを鍵として通信データを暗号化し、ま
た、該乱数データを暗号鍵により暗号化することで、該
暗号鍵や通信データの解読がより一層困難なものとな
る。In the first aspect of the present invention, it is preferable that the random number data used for communication between the entities is one-time random number data. That is, the one-time random number data means random number data having no reproducibility or extremely poor reproducibility, and more specifically, the appearance frequency of each bit number constituting the random number data is the same for any number, Further, there is no correlation between random number data, and such random number data can be generated based on, for example, the timing when a human inputs a certain phrase or sentence to a computer. Then, by encrypting communication data using such random number data as a key and encrypting the random number data with an encryption key, decryption of the encryption key and the communication data becomes more difficult. .
【0020】この場合、前記一回性の乱数データは、前
記通信データの送信側のエンティティの端末装置におけ
る所定の処理に基づき生成し、より具体的には、前記所
定の処理は前記各エンティティの端末装置における人間
による入力操作であり、その入力操作の時間的タイミン
グに基づき前記一回性の乱数データを決定する。In this case, the one-time random number data is transmitted to the terminal device of the transmitting entity of the communication data.
That generated on the basis of predetermined processing, and more specifically, the predetermined processing is an input operation by a human in the terminal apparatus of each entity, the one-time random number data based on the temporal timing of the input operation To determine.
【0021】このように、各エンティティの端末装置に
おける人間による入力操作(例えばある文章や語句を入
力する操作)の時間的タイミングに基づき乱数データを
生成することで、その乱数データは、再現性がなく、も
しくは再現性に極めて乏しいものとなり、前記一回性の
個別乱数データを的確に生成することができる。Thus, the terminal device of each entity
Definitive human by the input operation (e.g., operation of inputting a certain sentence or phrase) by generating a random number data based on the temporal timing of the random number data is not reproducible, or becomes extremely poor reproducibility, the One-time individual random number data can be generated accurately.
【0022】また、本発明の第1の態様において、前記
のように積分変換アルゴリズムに付加する重み関数は、
基本的には識別子のデータの区間の端側で、値が「0」
に近づくように設定するのであるが、この場合、本発明
では、さらに、該重み関数は前記センターにおいて生成
された乱数データにより予想のつかないパターンに決定
し、より好ましくは、該乱数データとして一回性の乱数
データを用いる。ここで、乱数データによる重み関数の
決定は、前記乱数データによって、識別子のデータの区
間における重み関数の値の変化度合い(区間の端側で
「0」に近づく形態)を決定することで行われる。In the first aspect of the present invention, the weight function added to the integral conversion algorithm as described above is:
Basically, the value is “0” at the end of the identifier data section.
In this case, in the present invention, the weighting function is further determined to be an unpredictable pattern based on the random number data generated in the center, and more preferably, the weighting function is set to one as the random number data. Circular random data is used. Here, the determination of the weight function based on the random number data is performed by determining the degree of change in the value of the weight function in the section of the identifier data (a form approaching “0” at the end of the section) based on the random number data. .
【0023】このように重み関数を乱数データによって
予想のつかないパターンに決定しておくことで、攻撃者
にとっては、該重み関数を予測しづらくなり、本発明を
適用した暗号通信システムの安全性を高めることができ
る。特に、一回性の乱数データにより重み関数を決定し
たときには、該乱数データの再現性が排除されるので、
さらにシステムの安全性が高まる。By determining the weight function in an unpredictable pattern based on the random number data, it becomes difficult for an attacker to predict the weight function, and the security of the cryptographic communication system to which the present invention is applied. Can be increased. In particular, when the weighting function is determined by one-time random number data, the reproducibility of the random number data is excluded.
Further, the security of the system is increased.
【0024】前述の如く、前記積分変換アルゴリズム
は、各種のものを適用できるが、特に、本発明では該積
分変換アルゴリズムとしてフーリエ変換アルゴリズムを
用いることが好ましい。すなわち、該フーリエ変換は、
コンピュータを用いて迅速且つ容易に行うことができる
積分変換であり、また、一般に変換結果の分散化が生じ
やすい。従って、このようなフーリエ変換アルゴリズム
を積分変換アルゴリズムとして用いることで、識別子か
ら前記個人鍵を迅速且つ容易に生成することができるよ
うになると同時に、個人鍵の分散性が効果的に高まっ
て、暗号通信システムの安全性を顕著に高めることがで
きる。As mentioned above, various types of integral conversion algorithms can be applied. In particular, in the present invention, it is preferable to use a Fourier transform algorithm as the integral conversion algorithm. That is, the Fourier transform is
It is an integral transformation that can be performed quickly and easily using a computer, and generally, the transformation result is likely to be dispersed. Therefore, by using such a Fourier transform algorithm as an integral transform algorithm, the private key can be quickly and easily generated from an identifier, and at the same time, the dispersibility of the private key is effectively increased, and The security of the communication system can be significantly improved.
【0025】また、本発明の第1の態様では、さらに好
ましくは、前記センターは、前記各エンティティの識別
子を前記センターアルゴリズムにより変換したものに、
さらに各エンティティに固有の一回性の個別乱数データ
によりランダマイズ変換を行って前記個人鍵を生成する
と共に、該個人鍵に含まれる前記ランダマイズ変換の成
分を打ち消すためのアルゴリズムと前記重み関数付き積
分変換アルゴリズムとからなる識別子変換アルゴリズム
を前記個人鍵と共にあらかじめ各エンティティの端末装
置に配付しておき、前記各エンティティの端末装置は、
通信相手側のエンティティの識別子に自己に配布された
前記識別子変換アルゴリズムと前記個人鍵とを作用させ
ることにより前記共通の暗号鍵を生成する。In the first aspect of the present invention, more preferably, the center converts the identifier of each of the entities by the center algorithm,
Furthermore, an algorithm for performing the randomizing transformation with the unique random data having a single characteristic unique to each entity to generate the private key, and canceling out the randomizing transformation component contained in the private key, and the integral transformation with the weight function An identifier conversion algorithm comprising an algorithm and a terminal key of each entity in advance together with the private key.
Leave distributed to location, the terminal device of each entity,
Activating the identifier conversion algorithm distributed to itself on the identifier of the communication partner entity and the private key.
Thus, the common encryption key is generated.
【0026】ここで、前記ランダマイズ変換は、前記識
別子を前記センターアルゴリズムにより変換したものを
表すデータ列の各ビットの値を前記個別乱数データによ
り変更し、あるいは、該データ列を配置変換し、もしく
は、それらを組み合わせて処理することで行われるもの
である。Here, in the randomizing conversion, the value of each bit of a data string representing the identifier converted by the center algorithm is changed by the individual random number data, or the data string is rearranged and converted. , And a combination thereof.
【0027】これによれば、前記個人鍵には、前記セン
ターアルゴリズムに加えて、前記ランダマイズ変換によ
る成分が含まれることとなる。そして、このとき、該ラ
ンダマイズ変換は、その変換を各エンティティに固有で
且つ各エンティティには不知の一回性の個別乱数データ
(再現性がなく、もしくは再現性に極めて乏しい乱数デ
ータ)により行うため、各エンティティの個人鍵毎に、
各別の偶然的な成分が含まれることとなる。その結果、
暗号通信システムの種々の攻撃に対する安全性をより一
層強固なものとすることができる。According to this, in addition to the center algorithm, the private key includes a component obtained by the randomization transformation. Then, at this time, the randomizing conversion is performed by one-time individual random data (random data having no reproducibility or extremely poor reproducibility) unique to each entity and unknown to each entity. , For each private key of each entity,
Each different incidental component will be included. as a result,
Security against various attacks of the cryptographic communication system can be further strengthened.
【0028】尚、この場合、通信に際して、相手側のエ
ンティティの識別子に作用させる個人鍵には、各エンテ
ィティ毎に各別の前記ランダマイズ変換による成分が含
まれている。このため、それを打ち消すためのアルゴリ
ズムと前記重み関数付き積分変換アルゴリズムとからな
る識別子変換アルゴリズムを前記個人鍵と共に各エンテ
ィティに配付しておき、通信に際しては、各エンティテ
ィの端末装置により、相手側のエンティティの識別子に
該識別子変換アルゴリズム及び個人鍵を作用させること
で、通信を行うエンティティ同士で共通の暗号鍵を生成
することができる。In this case, at the time of communication, the private key that acts on the identifier of the entity on the other end includes a component obtained by the randomization transformation for each entity. For this reason, an identifier conversion algorithm consisting of an algorithm for canceling this and the above-mentioned integral conversion algorithm with a weight function is distributed to each entity together with the private key, and each entity is used for communication.
By applying the identifier conversion algorithm and the private key to the identifier of the other party, the common terminal can be generated by the communicating terminals.
【0029】このようにランダマイズ変換を行う場合、
該ランダマイズ変換は、例えば前記各エンティティの識
別子を前記センターアルゴリズムにより変換したものを
表すデータ列を前記一回性の個別乱数データにより配置
変換することにより行うことができる。When the randomizing conversion is performed as described above,
The randomization conversion can be performed by, for example, performing a layout conversion of a data string representing a result of conversion of the identifier of each entity by the center algorithm using the one-time individual random number data.
【0030】さらに好ましくは、前記各エンティティの
識別子を前記センターアルゴリズムにより変換したもの
を表すデータ列は複数の不要ビットを含み、前記ランダ
マイズ変換は、該不要ビットの値を前記一回性の個別乱
数データによりランダム化し、さらに該不要ビットを含
む前記データ列の全体を前記一回性の個別乱数データに
より配置変換することにより行う。[0030] More preferably, the data sequence representing the identifier of each of the entities converted by the center algorithm includes a plurality of unnecessary bits, and the randomizing transforms the value of the unnecessary bits to the one-time individual random number. Randomizing the data, and further converting the entire data string including the unnecessary bits into the single random data.
This is performed by changing the arrangement.
【0031】このように各エンティティの識別子を前記
センターアルゴリズムにより変換したものを表すデータ
列の不要ビットの値を前記一回性の個別乱数データによ
りランダム化し、さらに該不要ビットを含む前記データ
列の全体を前記一回性の個別乱数データにより配置変換
することで、攻撃者(暗号通信システムの解読者)にと
っては、獲得したデータのどこに不要ビットに対応する
部分があり、また、どこに必要なデータがあるかが判ら
なくなり、暗号通信システムの安全性が高まる。As described above, the value of the unnecessary bit of the data string representing the identifier of each entity converted by the center algorithm is randomized by the one-time individual random number data, and the value of the data string containing the unnecessary bit is further randomized. By rearranging and converting the entire data with the single random data , the attacker (decryptor of the cryptographic communication system) finds where in the acquired data there is a portion corresponding to the unnecessary bits, and where in the acquired data, The security of the cryptographic communication system is enhanced.
【0032】また、前記ランダマイズ変換を行うための
前記一回性の個別乱数データは、前記各エンティティの
端末装置における所定の処理に基づき生成し、より具体
的には、前記所定の処理は前記各エンティティの端末装
置における人間による入力操作であり、その入力操作の
時間的タイミングに基づき前記一回性の個別乱数データ
を生成する。Further, the one-time individual random number data for performing the randomizing transformation is obtained by
It is generated based on a predetermined process in the terminal device , and more specifically, the predetermined process is performed by the terminal device of each entity.
This is an input operation by a human at the device, and the one-time individual random number data is generated based on the temporal timing of the input operation.
【0033】このように、各エンティティの端末装置に
おける人間による入力操作(例えばある文章や語句を入
力する操作)の時間的タイミングに基づき乱数データを
生成することで、その乱数データは、再現性がなく、も
しくは再現性に極めて乏しいものとなり、前記一回性の
個別乱数データを的確に生成することができる。As described above, the terminal device of each entity
Definitive human by the input operation (e.g., operation of inputting a certain sentence or phrase) by generating a random number data based on the temporal timing of the random number data is not reproducible, or becomes extremely poor reproducibility, the One-time individual random number data can be generated accurately.
【0034】次に、本発明の第2の態様は、複数のエン
ティティの端末装置とセンターとを含むネットワークに
おいて、エンティティの端末装置間で通信データの通信
を行う際に、該通信データの送信側の端末装置は、乱数
データを鍵として該通信データを暗号化すると共に該乱
数データを該通信データの受信側との共通の暗号鍵によ
り暗号化して、その暗号化された乱数データと前記暗号
化された通信データとを該通信データの受信側の端末装
置に送信し、該通信データの受信側の端末装置は、前記
共通の暗号鍵により前記暗号化された乱数データを復号
し、その復号した乱数データを鍵として前記暗号化され
た通信データを復号する共通鍵通信システムであって、
前記センターは、各エンティティに共通のセンターアル
ゴリズムを秘密に保管しており、各エンティティに固有
で且つ公開性の識別子を前記センターアルゴリズムによ
り変換して生成したものに、さらに各エンティティに固
有の一回性の個別乱数データによりランダマイズ変換を
行って各エンティティに固有の個人鍵を生成し、その個
人鍵と該個人鍵に含まれる前記ランダマイズ変換の成分
を打ち消すための識別子変換アルゴリズムとを各エンテ
ィティの端末装置にあらかじめ配付しておき、前記各エ
ンティティの端末装置は、前記通信データの通信を行う
際に、通信相手側のエンティティの識別子に自己に配布
された前記識別子変換アルゴリズムと前記個人鍵とを作
用させることにより該エンティティ同士に共通の暗号鍵
を生成することを特徴とする。Next, according to a second aspect of the present invention, when communication data is communicated between terminal devices of entities in a network including terminal devices of a plurality of entities and a center, the transmitting side of the communication data The terminal device encrypts the communication data using the random number data as a key, encrypts the random number data with a common encryption key with a receiving side of the communication data, and encrypts the encrypted random number data with the encrypted data. receiving side terminal device of the communication data and communication data
And the terminal device on the receiving side of the communication data decrypts the encrypted random number data with the common encryption key.
And, a common key communication system for decrypting the encrypted communication data to the random number data the decoded as a key,
The center is a common center address for each entity.
Keeps the algorithm secret and unique to each entity
The in and openness identifier those produced by converting by said center algorithm, the further randomized converted by specific one-time individual random number data to each entity
To generate a private key unique to each entity,
Each entity includes a human key and an identifier conversion algorithm for canceling the randomization conversion component contained in the private key.
Distributed in advance to the terminal equipment of the
Terminal device distributes itself to the identifier of the entity of the communication partner when performing the communication of the communication data.
Common encryption key between the entities by Rukoto reacted with said private key and the identifier transformation algorithm which is
And generating a.
【0035】かかる本発明の第2の態様によれば、前記
共通の暗号鍵を生成するための前記各エンティティの個
人鍵は、前記センターにおいて、各エンティティの識別
子を前記センターアルゴリズム(これは前述の対称性を
有する部分を含むものとする)により変換したものに、
各エンティティに固有で且つ各エンティティには不知の
一回性の個別乱数データ(再現性がなく、もしくは再現
性に極めて乏しい乱数データ)に基づくランダマイズ変
換を施して生成されるので、各エンティティの個人鍵毎
に、各別の偶然的な成分が含まれることとなる。その結
果、該個人鍵や前記センターアルゴリズムの解読が困難
なものとなり、暗号通信システム全体の種々の攻撃に対
する安全性を高めることができる。そして、この場合
は、前述の本発明の第1の態様に関して説明した場合と
同様に、各エンティティの個人鍵には、各エンティティ
毎に各別の前記ランダマイズ変換による成分が含まれて
いるため、前記センターは、それを打ち消すためのアル
ゴリズムを含む前記識別子変換アルゴリズムを前記個人
鍵と共に各エンティティに配付しておき、前記各エンテ
ィティの端末装置により、通信に際して、相手側のエン
ティティの識別子に、前記識別子変換アルゴリズム及び
個人鍵を作用させることで、エンティティ同士で共通の
暗号鍵を生成することができる。また、エンティティ同
士の通信に際しては、前述の本発明の第1の態様と全く
同様に、前記各エンティティの端末装置により、通信デ
ータを乱数データを鍵として暗号化すると共に該乱数デ
ータを前記共通の暗号鍵で暗号化し、それらの暗号化し
たものをエンティティ同士で授受することで、暗号通信
を行うことができる。[0035] According to the second aspect of the present invention, the private key of each entity for generating the common encryption key includes, at the center, the identifier of each entity at the center algorithm (this is the above-mentioned center algorithm). Symmetrical part).
Each entity is generated by performing a randomizing transformation based on individual random data (unreproducible or extremely poorly reproducible) that is unique to each entity and is unknown once. Each key will contain a separate, accidental component. As a result, it becomes difficult to decipher the private key and the center algorithm, and the security of the entire cryptographic communication system against various attacks can be improved. In this case, similarly to the case described in the first aspect of the present invention, since the private key of each entity includes a component by the randomization transformation for each entity, the center leave distributed to each entity the identifier transformation algorithm including an algorithm for canceling it with the private key, wherein each enteritidis
The communication device can generate a common encryption key between entities by applying the identifier conversion algorithm and the private key to the identifier of the entity on the other side during communication. When communicating between entities, the terminal device of each of the entities encrypts communication data using random number data as a key and encrypts the random number data into the common data, in exactly the same manner as in the first aspect of the present invention. Encrypted communication can be performed by encrypting with an encryption key and exchanging the encrypted data between entities.
【0036】かかる本発明の第2の態様では、本発明の
第1の態様と同様に、エンティティ同士の通信の際に用
いる前記乱数データは一回性の乱数データであることが
好ましく、このような一回性の乱数データを用いること
で、暗号鍵や通信データの解読がより一層困難なものと
なる。In the second aspect of the present invention, as in the first aspect of the present invention, it is preferable that the random number data used for communication between the entities is one-time random number data. The use of such random data makes decryption of the encryption key and communication data more difficult.
【0037】そして、この場合、前記一回性の乱数デー
タは、前記通信データの送信側のエンティティの端末装
置における所定の処理に基づき生成し、より具体的に
は、前記所定の処理は前記各エンティティの端末装置に
おける人間による入力操作であり、その入力操作の時間
的タイミングに基づき前記一回性の乱数データを決定す
る。これにより前記一回性の個別乱数データを的確に生
成することができる。In this case, the one-time random number data is stored in a terminal device of an entity on the transmitting side of the communication data.
Generated based on a predetermined process in the location, and more specifically, the predetermined processing to the terminal apparatus of each entity
The one-time random number data is determined based on the temporal timing of the input operation. Thus it is possible to accurately produce separate random number data of the one-time.
【0038】また、本発明の第2の態様では、前述の第
1の態様の場合と同様に、前記ランダマイズ変換は、前
記各エンティティの識別子を前記センターアルゴリムに
より変換したものを表すデータ列を、前記一回性の個別
乱数データにより配置変換することにより行うことがで
きる。そして、より好ましくは、前記各エンティティの
識別子を前記センターアルゴリズムにより変換したもの
を表すデータ列は複数の不要ビットを含み、前記ランダ
マイズ変換は、該不要ビットの値を前記一回性の個別乱
数データによりランダム化し、さらに該不要ビットを含
む前記データ列の全体を前記一回性の個別乱数データに
より配置変換することにより行う。これにより、本発明
を適用した暗号通信システムの安全性をより高めること
ができる。In the second aspect of the present invention, as in the case of the first aspect, the randomizing conversion is performed by converting a data string representing an identifier of each entity converted by the center algorithm. , By using the one-time individual random number data. And, more preferably, a data string representing a result of conversion of the identifier of each entity by the center algorithm includes a plurality of unnecessary bits, and the randomizing conversion is performed by changing the value of the unnecessary bits to the one-time individual random number data. And randomize the entirety of the data string including the unnecessary bits into the one-time individual random number data.
This is performed by changing the arrangement. Thereby, the security of the cryptographic communication system to which the present invention is applied can be further improved.
【0039】また、前記一回性の乱数データは、前記各
エンティティの端末装置における所定の処理に基づき生
成し、より具体的には、前記所定の処理は前記各エンテ
ィティの端末装置における人間による入力操作であり、
その入力操作の時間的タイミングに基づき前記一回性の
乱数データを決定する。これにより、前記一回性の個別
乱数データを的確に生成することができる。The one-time random number data is generated based on a predetermined process in the terminal device of each of the entities. More specifically, the predetermined process is performed by a human input in the terminal device of each of the entities. Operation
The one-time random number data is determined based on the temporal timing of the input operation. Thereby, the one-time individual random number data can be accurately generated.
【0040】[0040]
【発明の実施の形態】本発明の一実施形態を図1乃至図
8を参照して説明する。まず、図1及び図2を参照して
本実施形態の共通鍵通信システムを適用した暗号通信シ
ステムの概要を説明する。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS One embodiment of the present invention will be described with reference to FIGS. First, an outline of a cryptographic communication system to which the common key communication system of the present embodiment is applied will be described with reference to FIGS.
【0041】図1を参照して、本実施形態では暗号通信
システムの基本的な構築主体であるセンター1と、その
暗号通信システムに加入して相互に暗号通信を行う複数
のエンティティ2とがインターネット、パソコン通信網
等のネットワーク3を介して相互に通信可能とされてい
る。これらのセンター1及び各エンティティ2は、図示
を省略するが、実際の通信やデータ処理を行うためのパ
ソコン等のコンピュータマシンや、該コンピュータマシ
ンの使用者を包含している。Referring to FIG. 1, in the present embodiment, a center 1 which is a basic construction body of a cryptographic communication system and a plurality of entities 2 which join the cryptographic communication system and mutually perform cryptographic communication are provided by the Internet. Can communicate with each other via a network 3 such as a personal computer communication network. Although not shown, the center 1 and each entity 2 include a computer machine such as a personal computer for performing actual communication and data processing, and a user of the computer machine.
【0042】このようなネットワーク3上で構築された
本システムでは、図2に示すように、センター1に加入
した各エンティティ2(図2では各エンティティ2を参
照符号i,j,…により示している)は、それぞれに対
応した固有の識別子yi ,yj ,…(詳細は後述する)
を有する。この場合、i≠jならば、yi ≠yj であ
る。そして、各エンティティ2(i,j,…)には、そ
れぞれの識別子yi ,yj ,…(以下、必要に応じて識
別子yn と総称する)に基づきセンター1により生成さ
れた各エンティティ2に固有の個人鍵Xi ,Xj ,…
(詳細は後述する。以下、必要に応じて個人鍵Xn と総
称する)があらかじめセンター1から与えられる。さら
に、任意のエンティティi,j同士で暗号通信を行う際
には、その通信データの暗号化(送信側)及び復号化
(受信側)を行うための共通の暗号鍵Kijがそれぞれの
エンティティi,j毎に各別に各エンティティi,jの
個人鍵Xi ,Xj を用いて生成され、その共通暗号鍵K
ijを用いてエンティティi,j間での暗号通信が行われ
る。In this system constructed on such a network 3, as shown in FIG. 2, each entity 2 that has joined the center 1 (in FIG. 2, each entity 2 is indicated by reference numerals i, j,...). ) Is a unique identifier yi, yj,... Corresponding to each (details will be described later).
Having. In this case, if i ≠ j, yi ≠ yj. Each entity 2 (i, j,...) Has a unique identifier generated by the center 1 based on the respective identifiers yi, yj,. Private keys Xi, Xj, ...
(Details will be described later. Hereinafter, collectively referred to as a personal key Xn as necessary). Further, when cryptographic communication is performed between arbitrary entities i and j, a common cryptographic key Kij for encrypting (transmitting side) and decrypting (receiving side) the communication data is stored in each entity i, j. For each j, a private encryption key K is generated using the private keys Xi and Xj of the entities i and j, respectively.
Using ij, cryptographic communication is performed between the entities i and j.
【0043】ここで、本実施形態のシステムをさらに詳
説する前に、前記識別子yn について説明しておく。本
実施形態では、各エンティティ2の識別子yn は、各エ
ンティティ2の氏名、住所、メールアドレス、ドメイン
名、あるいはこれらを組み合わせたもの等、各エンティ
ティ2に固有のものであり、しかも、公開性のあるもの
を使用する。尚、センター1や各エンティティ2のコン
ピュータマシンにおける識別子yn の実際の取り扱い上
では、各識別子yn は、それを例えば有限環上の剰余類
でコード化してなるベクトルデータとして扱われる。Before describing the system of this embodiment in more detail, the identifier yn will be described. In the present embodiment, the identifier yn of each entity 2 is unique to each entity 2, such as the name, address, mail address, domain name, or a combination thereof, of each entity 2. Use something. Incidentally, in the actual handling of the identifier yn in the computer machine of the center 1 and each entity 2, each identifier yn is treated as vector data obtained by encoding the identifier yn with, for example, a coset on a finite ring.
【0044】上記のような暗号通信を行うための本実施
形態のシステムを、以下に図3乃至図8を参照して詳説
する。The system of the present embodiment for performing the above-described cryptographic communication will be described in detail below with reference to FIGS.
【0045】図3を参照して、本実施形態のシステムで
は、センター1による前記個人鍵Xn 等の生成及び配付
等の事前準備処理を経た後、個々のエンティティi,j
間での暗号通信が行われる。Referring to FIG. 3, in the system according to the present embodiment, the individual entities i, j are processed after the center 1 has undergone advance preparation processing such as generation and distribution of the private key Xn and the like.
Communication between the devices is performed.
【0046】前記センター1による事前準備処理では、
センター1はその設立時、あるいはシステムの更新時
に、まず、各エンティティ2の前記個人鍵Xn を生成す
るための基本となるセンターアルゴリズムを生成する
(手順1)。In the preparatory processing by the center 1,
When the center 1 is established or when the system is updated, the center 1 first generates a basic center algorithm for generating the private key Xn of each entity 2 (procedure 1).
【0047】このセンターアルゴリズムは、本実施形態
ではセンター行列と、重み関数と、積分変換アルゴリズ
ムとにより構成されている。In this embodiment, the center algorithm comprises a center matrix, a weight function, and an integral conversion algorithm.
【0048】ここで、前記積分変換アルゴリズムは、各
エンティティ2の識別子yn のデータを積分変換するた
めのアルゴリズムであり、本実施形態では、積分変換ア
ルゴリズムとしてフーリエ変換(詳しくは高速フーリエ
変換)を使用する。この種のフーリエ変換としては、複
数種のものが知られており、そのうちの一種類をセンタ
ー1で選択して、本実施形態で使用するフーリエ変換ア
ルゴリズムを生成する。尚、該フーリエ変換アルゴリズ
ムは、実際上は、識別子yn のデータに作用させる行列
として表現される。Here, the integral conversion algorithm is an algorithm for performing an integral conversion on the data of the identifier yn of each entity 2. In the present embodiment, a Fourier transform (more specifically, a fast Fourier transform) is used as the integral transform algorithm. I do. As this type of Fourier transform, a plurality of types are known, and one of them is selected by the center 1 to generate a Fourier transform algorithm used in the present embodiment. Note that the Fourier transform algorithm is actually expressed as a matrix acting on the data of the identifier yn.
【0049】また、重み関数は、有限区間のデータであ
る識別子yn をフーリエ変換する際の異常分散(エイシ
アリング)を防止するためのものであり、識別子yn の
データの区間の端点側で値が「0」に近づくような関数
である。さらに、センター行列は、対称行列であり、よ
り詳しくは非特異な対称行列である。The weighting function is for preventing anomalous dispersion (asialing) when performing the Fourier transform on the identifier yn, which is data of a finite section, and the value of the weight function at the end point of the section of the data of the identifier yn. This is a function that approaches “0”. Further, the center matrix is a symmetric matrix, more specifically, a nonsingular symmetric matrix.
【0050】この場合、前記重み関数及びセンター行列
は、一回性の乱数データを用いて生成する。すなわち、
図4を参照して、重み関数及びセンター行列を生成する
際には、センター1はまず、センター1のコンピュータ
マシンにおけるオペレータの人為的操作に基づき乱数デ
ータを生成する(手順1−1)。具体的には、例えばオ
ペレータがセンター1のコンピュータマシンに対して適
当な語句や文章等を入力し、この際の入力タイミング
(例えば各単語の入力時刻や各単語の入力の時間間隔)
をコンピュータマシンで逐次計測する。そして、その計
測した入力タイミングに基づき乱数データを時系列で生
成する。このようにして生成される乱数データは、あい
まいさを有する人為的な入力操作のタイミングに基づい
て生成されるため、事実上、再現性の無い偶然的なもの
となり、これにより一回性の乱数データが生成される。In this case, the weight function and the center matrix are generated using one-time random number data. That is,
Referring to FIG. 4, when generating the weight function and the center matrix, the center 1 first generates random number data based on an artificial operation of an operator in the computer machine of the center 1 (procedure 1-1). Specifically, for example, the operator inputs appropriate words and phrases, sentences, and the like to the computer machine of the center 1, and the input timing at this time (for example, the input time of each word and the time interval of input of each word)
Is sequentially measured by a computer machine. Then, random number data is generated in time series based on the measured input timing. Since the random number data generated in this way is generated based on the timing of an artificial input operation having an ambiguity, it is practically unreproducible and accidental, and thus a one-time random number is generated. Data is generated.
【0051】そして、このように一回性の乱数データを
生成した後、センター1は、その生成した一回性の乱数
データに基づき、前記重み関数とセンター行列とを決定
する(手順1−2)。この場合、重み関数の決定は、上
記の一回性乱数データによって、識別子yn のデータの
区間における重み関数の値の変化度合い(区間の端側で
「0」に近づく形態)を決定することで行われ、これに
より該重み関数が予想のつかないパターンに決定され
る。尚、該重み関数は、実際上は、対角行列として表現
される。また、センター行列の決定は、その対称性及び
非特異性を確保しつつ該行列の成分の値を前記一回性の
乱数データによって決定することで行われる。After generating the one-time random number data, the center 1 determines the weight function and the center matrix based on the generated one-time random number data (step 1-2). ). In this case, the weight function is determined by determining the degree of change of the value of the weight function in the section of the data of the identifier yn (a form approaching “0” at the end of the section) based on the one-time random number data. Is performed, whereby the weight function is determined to be an unpredictable pattern. Note that the weight function is actually expressed as a diagonal matrix. The determination of the center matrix is performed by determining the values of the components of the matrix using the one-time random number data while ensuring the symmetry and non-singularity.
【0052】以上のように生成されたセンター行列、重
み関数及び積分変換アルゴリズムから成るセンターアル
ゴリズムは、センター1において秘密裏に保管され、特
に、センター行列及び重み関数は、センター1の特定者
以外の第三者(各エンティティ2等を含む)が参照する
ことができないように厳重に保管される。尚、これらの
センターアルゴリズムは各エンティティ2に対して共通
のものである。The center algorithm composed of the center matrix, the weight function, and the integral transform algorithm generated as described above is stored secretly in the center 1. In particular, the center matrix and the weight function are stored in a center other than the specific person of the center 1. It is stored strictly so that a third party (including each entity 2 etc.) cannot refer to it. Note that these center algorithms are common to each entity 2.
【0053】図3に戻って、次に、センター1は、各エ
ンティティ2(i,j……)がシステムに加入したと
き、前述の如く生成されて保管されたセンターアルゴリ
ズムや各エンティティ2の識別子yn 等を用いて、各エ
ンティティ2に固有の個人鍵Xn と、これと合わせて後
述の如く共通暗号鍵Kijを生成するための識別子変換ア
ルゴリズムとを生成して各エンティティ2に配付する
(手順2)。Returning to FIG. 3, next, when each entity 2 (i, j...) Joins the system, the center 1 determines the center algorithm and the identifier of each entity 2 generated and stored as described above. Using yn and the like, a private key Xn unique to each entity 2 and an identifier conversion algorithm for generating a common encryption key Kij as described later are generated and distributed to each entity 2 (procedure 2). ).
【0054】さらに詳細には、図5を参照して、この手
順2では、センター1は、エンティティ2の識別子yn
のデータ(ベクトルデータ)に前記フーリエ変換アルゴ
リズム及び重み関数の行列を作用させることで、該識別
子yn に重み付き高速フーリエ変換を施す(手順2−
1)。さらに、この手順2−1により得られたベクトル
データに前記センター行列を乗算する(手順2−2)。
この場合、前記識別子yn のデータに冗長性をもたせて
おくことで、手順2−2により得られるベクトルデータ
には、識別子yn のデータとして意味のあるビット列に
前記重み関数、積分変換アルゴリズム及びセンタ行列を
作用させてなる複数の有用ビットと、それ以外の複数の
不要ビットとが現れる。More specifically, referring to FIG. 5, in this procedure 2, the center 1 determines the identifier yn of the entity 2
The weighted fast Fourier transform is performed on the identifier yn by applying the Fourier transform algorithm and the matrix of the weight function to the data (vector data) (step 2-
1). Further, the vector data obtained by the procedure 2-1 is multiplied by the center matrix (procedure 2-2).
In this case, by adding redundancy to the data of the identifier yn, the weight data, the integral conversion algorithm, and the center matrix are added to the vector data obtained in the step 2-2 by the bit string meaningful as the data of the identifier yn. Appear and a plurality of other unnecessary bits appear.
【0055】一方、センター1は、エンティティ2との
通信(例えばエンティティ2の加入手続き等の際の通
信)によって、該エンティティ2に固有で、しかもエン
ティティ2には判らないような一回性の個別乱数データ
を生成する(手順2−3)。具体的には、前述の如く重
み関数等を決定する際に一回性の乱数データを生成した
場合と同様に、エンティティ2のコンピュータマシン上
で、その使用者にある語句もしくは文章を入力させ、そ
れをセンター1側で逐次受信することで、該エンティテ
ィ2の人為的な入力操作のタイミングをセンター1のコ
ンピュータマシンにより計測する。そして、その計測し
た入力操作のタイミングに基づいて前記個別乱数データ
を生成する。このようにして個別乱数データを生成する
ことで、その個別乱数データは、重み関数等の生成時の
乱数データと同様に、再現性のない偶然的なものとなる
と共に、エンティティ2に固有のものとなり、これによ
り一回性の個別乱数データが得られる。尚、エンティテ
ィ2は、どのような入力操作のタイミングでどのような
乱数データが生成されるかは判らず、また、その人為的
な入力操作のタイミングを正確にコントロールすること
はできないので、前記個別乱数データをエンティティ2
が知ることはできない。On the other hand, the center 1 communicates with the entity 2 (for example, communication at the time of the joining procedure of the entity 2), so that the center 1 has a one-time individual Generate random number data (procedure 2-3). Specifically, as in the case of generating the random number data of one time when determining the weighting function and the like as described above, the user is allowed to input a certain phrase or sentence on the computer machine of the entity 2, The computer 1 of the center 1 measures the timing of the artificial input operation of the entity 2 by successively receiving it on the center 1 side. Then, the individual random number data is generated based on the measured timing of the input operation. By generating the individual random number data in this manner, the individual random number data becomes accidental with no reproducibility, similar to the random number data at the time of generation of the weight function, and is unique to the entity 2. Thus, one-time individual random number data is obtained. Note that the entity 2 does not know what kind of input operation timing and what kind of random number data is generated, and it is not possible to accurately control the artificial input operation timing. Random number data to entity 2
Can not know.
【0056】次いで、センター1は、前記手順2−2で
得られたベクトルデータのうちの前記不要ビットの各ビ
ット値を手順2−3で得られた一回性の個別乱数データ
によってランダム化する(手順2−4)。さらに、その
ランダム化した不要ビットと前記有用ビットとを合わせ
たベクトルデータを上記一回性の個別乱数データによっ
て、ランダムに配置変換し(ベクトルデータの成分の配
列を変更する。手順2−5)、これにより手順2−2で
得られたベクトルデータ(識別子yn をセンターアルゴ
リズムにより変換したもの)をランダマイズ変換する。
そして、このランダマイズ変換により得られたベクトル
データをエンティティ2の個人鍵Xn として生成する。
尚、上記ランダマイズ変換は、実際上は行列(対称行列
とは限らない)で表され、より詳しくは該行列の転置行
列と逆行列とが等しくなるような行列で表される。Next, the center 1 randomizes each bit value of the unnecessary bits in the vector data obtained in the step 2-2 using the one-time individual random number data obtained in the step 2-3. (Procedure 2-4). Furthermore, the vector data obtained by combining the randomized unnecessary bits and the useful bits is randomly rearranged and converted by the one-time individual random number data (the arrangement of the components of the vector data is changed. Procedure 2-5). Thus, the vector data (identifier yn converted by the center algorithm) obtained in step 2-2 is subjected to randomization conversion.
Then, the vector data obtained by the randomizing transformation is generated as the private key Xn of the entity 2.
Note that the randomizing transformation is actually represented by a matrix (not necessarily a symmetric matrix), and more specifically, a matrix such that the transposed matrix and the inverse matrix of the matrix are equal.
【0057】また、センター1は、前記一回性の個別乱
数データと前記フーリエ変換アルゴリズム及び重み関数
とから、前記識別子変換アルゴリズムを生成する(手順
2−6)。この識別子変換アルゴリズムは、前記個人鍵
Xn に反映されている前記ランダマイズ変換の成分を打
ち消すためのアルゴリズム(これはランダマイズ変換を
表す行列の逆行列により表される)と、前記フーリエ変
換アルゴリズム及び重み関数とを合成(それぞれを表す
行列同士を乗算)したものである。The center 1 generates the identifier conversion algorithm from the one-time individual random number data, the Fourier transform algorithm, and the weight function (step 2-6). The identifier conversion algorithm includes an algorithm for canceling the components of the randomization transformation reflected in the private key Xn (this is represented by an inverse matrix of a matrix representing the randomization transformation), the Fourier transformation algorithm, and a weighting function. Are synthesized (multiplied by matrices representing each of them).
【0058】このようにしてセンター1によって生成さ
れた各エンティティ2に対応する個人鍵Xn と識別子変
換アルゴリムとが各エンティティ2に通信等により事前
に配付される(図3の手順2を参照)。以上説明した内
容がセンター1における事前準備処理の詳細である。
尚、センタ1は前述のように各エンティティ2の個人鍵
Xn や識別子変換アルゴリズムを生成した後には、その
エンティティ2に対応する前記一回性の個別乱数データ
や前記ランダマイズ変換を表す行列は保管せずに消去す
る。また、自身の個人鍵Xn 及び識別子変換アルゴリム
を受け取った各エンティティ2は、それらを自身のコン
ピュータマシンの適宜の記憶装置に秘密裏に保管する。The private key Xn and the identifier conversion algorithm corresponding to each entity 2 generated by the center 1 in this way are distributed to each entity 2 in advance by communication or the like (see procedure 2 in FIG. 3). The contents described above are details of the advance preparation process in the center 1.
After generating the private key Xn and the identifier conversion algorithm of each entity 2 as described above, the center 1 stores the one-time individual random number data corresponding to the entity 2 and the matrix representing the randomization conversion. Without deleting. In addition, each entity 2 receiving its own private key Xn and the identifier conversion algorithm stores them secretly in an appropriate storage device of its own computer machine.
【0059】図3に戻って、前述のような事前準備処理
が行われた後、任意のエンティティ2間で、次のように
暗号通信が行われる。尚、ここでは、各エンティティ2
のうち、エンティティi,j(i≠j)間で、エンティ
ティiを送信側、エンティティjを受信側として暗号通
信を行うものとする。Referring back to FIG. 3, after the above-described preparatory processing is performed, cryptographic communication is performed between arbitrary entities 2 as follows. Here, each entity 2
Among them, it is assumed that encrypted communication is performed between the entities i and j (i ≠ j), with the entity i as the transmitting side and the entity j as the receiving side.
【0060】この暗号通信では、送信側のエンティティ
iは、まず、自身が保持する前記個人鍵Xi 及び識別子
変換アルゴリズムと、受信側のエンティティjの識別子
yjとからエンティティjとの共通暗号鍵Kijを生成す
る(手順3)。In this cipher communication, the transmitting entity i first obtains a common encryption key Kij with the entity j from the private key Xi and the identifier conversion algorithm held by the transmitting entity i and the identifier yj of the receiving entity j. Generate (Procedure 3).
【0061】さらに詳細には、図6を参照して、まず、
受信側のエンティティjの識別子yj に、送信側エンテ
ィティiのコンピュータマシン上で該エンティティiの
識別子変換アルゴリズムを作用させる(識別子yj のベ
クトルデータに識別子変換アルゴリズムの行列を乗算す
る。手順3−1)。次いで、この手順3−1により得ら
れるベクトルデータと、送信側エンティティiの個人鍵
Xi (ベクトルデータ)との内積を演算することで、エ
ンティティjとの共通暗号鍵Kijを生成する(手順3−
2)。More specifically, referring to FIG.
The identifier yj of the receiving entity j is applied to the identifier conversion algorithm of the transmitting entity i on the computer machine of the entity i (the vector data of the identifier yj is multiplied by the matrix of the identifier conversion algorithm. Procedure 3-1). . Next, a common encryption key Kij with the entity j is generated by calculating an inner product of the vector data obtained by the procedure 3-1 and the private key Xi (vector data) of the transmitting entity i (procedure 3).
2).
【0062】同様にして、受信側のエンティティjは、
図7に示すように自身のコンピュータマシン上で自身の
識別子変換アルゴリズムを送信側のエンティティiの識
別子yi に作用させ(手順3−1)、さらにその結果に
得られるベクトルデータとエンティティjの個人鍵Xj
との内積を演算する(手順3−2)ことで、エンティテ
ィiとの共通暗号鍵Kjiを生成する。Similarly, the receiving entity j is
As shown in FIG. 7, its own identifier conversion algorithm is applied to the identifier yi of the transmitting entity i on its own computer machine (step 3-1), and the resulting vector data and the private key of the entity j are obtained. Xj
(Step 3-2) to generate a common encryption key Kji with the entity i.
【0063】このとき、送信側エンティティiで独自に
生成される共通暗号鍵Kijと受信側エンティティjで独
自に生成される共通暗号鍵Kjiとは同一となる。At this time, the common encryption key Kij uniquely generated by the transmitting entity i is the same as the common encryption key Kji uniquely generated by the receiving entity j.
【0064】すなわち、送信側及び受信側の各エンティ
ティi,jが、それぞれ保持している個人鍵Xi ,Xj
は、それぞれ、各エンティティi,jの識別子yi ,y
j に、前述の重み関数付きのフーリエ変換アルゴリズ
ム、センター行列及びランダマイズ変換を作用させてな
るベクトルデータであり、また、各エンティティi,j
がそれぞれ共通暗号鍵Kij,Kjiを生成するに際して、
相手側のエンティティj,iの識別子yj ,yi に作用
させる前記識別子変換アルゴリズムは、重み関数付きの
フーリエ変換アルゴリズムと、各個人鍵Xi ,Xj に反
映されている各エンティティi,j毎のランダマイズ変
換の成分を打ち消すアルゴリズムとを合成したものであ
る。That is, the private keys Xi and Xj held by the transmitting and receiving entities i and j, respectively.
Are the identifiers yi, y of the entities i, j, respectively.
j is vector data obtained by applying the above-described Fourier transform algorithm with a weight function, a center matrix, and a randomizing transform, and each entity i, j
Generates common encryption keys Kij and Kji, respectively.
The identifier conversion algorithm applied to the identifiers yj, yi of the entities j, i on the other side is a Fourier transform algorithm with a weighting function, and a randomization transform for each entity i, j reflected in each private key Xi, Xj. And an algorithm that cancels out the component.
【0065】このため、前記手順3−2で行う内積演算
では、各エンティティi,j毎のランダマイズ変換の影
響が排除され、該内積演算の結果として得られる各共通
暗号鍵Kij,Kjiは、各エンティティi,jの識別子y
i ,yj に重み関数付きのフーリエ変換アルゴリズムを
施したものに、さらにセンター行列を作用させたもの
(ベクトルデータ)と、通信相手側のエンティティj,
iの識別子yj ,yi に重み関数付きフーリエ変換アル
ゴリズムを施したもの(ベクトルデータ)との内積を演
算してなる結果に等しい。すなわち、識別子yi ,yj
に重み関数付きのフーリエ変換アルゴリズムを施してな
るベクトルデータをそれぞれyi',yj'(但しyi',y
j'は縦ベクトルとする)とおき、またセンター行列をC
とすると、Kij=(yj')T ・C・yi'、Kji=(y
i')T ・C・yj'である(但し、式中の添え字Tは転置
を意味する)。For this reason, in the inner product operation performed in the procedure 3-2, the influence of the randomizing transformation for each entity i, j is eliminated, and the common encryption keys Kij, Kji obtained as a result of the inner product operation are Identifier y of entity i, j
i and yj, which have been subjected to a Fourier transform algorithm with a weighting function, and further subjected to a center matrix (vector data);
This is equivalent to the result obtained by calculating the inner product of the identifiers yj and yi of i to which the Fourier transform algorithm with weight function has been applied (vector data). That is, the identifiers yi, yj
Are subjected to a Fourier transform algorithm with a weighting function to yi ', yj' (where yi ', y
j 'is a vertical vector) and the center matrix is C
When, Kij = (yj ') T · C · yi', Kji = (y
i ') T・ C ・ yj' (however, the subscript T in the formula means transposition).
【0066】そして、前述したようにセンター行列Cは
対称行列であるから、明らかにKij=Kjiとなる。従っ
て、各エンティティi,jでそれぞれ別個に生成される
共通暗号鍵Kij,Kjiは一致し、これにより両エンティ
ティi,jが共通の暗号鍵を共有することができること
となる。Since the center matrix C is a symmetric matrix as described above, Kij = Kji. Therefore, the common encryption keys Kij and Kji generated separately by the respective entities i and j are the same, so that the entities i and j can share a common encryption key.
【0067】一方、図3の手順3において前述の如く受
信側エンティティjとの共通暗号鍵Kijを生成した送信
側エンティティiは、その共通暗号鍵Kijや受信側エン
ティティjに送信しようとする平文(文章、プログラム
等)等から暗号通信電文を生成する(手順4)。この場
合、該暗号通信電文の生成に際しては、共通暗号鍵Kij
の他、一回性の乱数データも使用する。On the other hand, the transmitting-side entity i, which has generated the common encryption key Kij with the receiving-side entity j in the procedure 3 of FIG. An encrypted communication message is generated from a document, a program, etc. (procedure 4). In this case, when generating the encrypted communication message, the common encryption key Kij
In addition, one-time random data is used.
【0068】さらに詳細には、図6を参照して、暗号通
信電文を生成するに際しては、前述したセンター1にお
ける事前準備処理の場合と同様にして、送信側エンティ
ティiは自身のコンピュータマシンにおいて語句や文章
等の入力操作の時間的タイミングに基づき一回性の乱数
データ(以下、暗号通信用乱数データという)を生成し
ておき(手順4−1)、この一回性の暗号通信用乱数デ
ータを、前記共通暗号鍵Kijを本来の鍵として暗号化す
る(手順4−2)。この場合、この暗号化は、例えば3
段構成のDES(Data Encryption Standard)により行
われる。More specifically, referring to FIG. 6, when generating the encrypted communication message, the transmitting entity i uses its own computer machine to execute the word and phrase processing in the same manner as in the preparatory processing in the center 1 described above. One-time random number data (hereinafter referred to as “encryption communication random number data”) is generated based on the temporal timing of an input operation of text and text (step 4-1), and the one-time encryption communication random number data is generated. Is encrypted using the common encryption key Kij as an original key (procedure 4-2). In this case, the encryption is, for example, 3
This is performed according to the DES (Data Encryption Standard) having a stage configuration.
【0069】また、手順4−1で生成した一回性の暗号
通信用乱数データ(暗号化前のもの)を鍵として平文を
暗号化する(手順4−3)。この暗号化は、例えば手順
4−2と同様に3段構成のDESにより行う。The plaintext is encrypted using the one-time random number data for encryption communication (before encryption) generated in step 4-1 as a key (step 4-3). This encryption is performed by, for example, a three-stage DES, as in the procedure 4-2.
【0070】そして、手順4−2により得られた暗号化
乱数データと手順4−3により得られた暗号文とを合わ
せる(1セットにする)ことで、受信側エンティティj
に送信すべき暗号通信電文が生成される。このようにし
て生成された暗号通信電文はエンティティiのコンピュ
ータマシンからエンティティjのコンピュータマシンに
送信される。Then, by combining the encrypted random number data obtained in step 4-2 with the ciphertext obtained in step 4-3 (to form one set), the receiving entity j
Is generated. The encrypted communication message generated in this manner is transmitted from the computer machine of the entity i to the computer machine of the entity j.
【0071】尚、前記暗号通信用乱数データは、暗号通
信を行う都度、生成して更新することが好ましいが、暗
号通信を数回行う毎に、該暗号通信用乱数データを更新
する(該数回分の暗号通信では同じ暗号通信用乱数デー
タを使用する)ようにしてもよい。It is preferable that the cryptographic communication random number data is generated and updated every time cryptographic communication is performed. However, the cryptographic communication random number data is updated every time cryptographic communication is performed several times. The same cryptographic communication random number data may be used in the batch cryptographic communication).
【0072】一方、上記暗号通信電文を受信した受信側
エンティティjは、前述の如く生成したエンティティi
との共通暗号鍵Kji(=Kij)を用いて暗号通信電文を
復号し、最終的に前記平文を得る(手順5)。On the other hand, the receiving entity j that has received the encrypted communication message is the entity i generated as described above.
The encrypted communication message is decrypted by using the common encryption key Kji (= Kij) with the above, and finally the plaintext is obtained (procedure 5).
【0073】すなわち、図7を参照して、まず、エンテ
ィティiとの共通暗号鍵Kji(=Kij)を本来の鍵とし
て使用することで、エンティティiから受信した暗号通
信電文のうちの暗号化乱数データを暗号通信用乱数デー
タに復号する(手順5−1)。次いで、その復号化され
た暗号通信用乱数データを鍵として使用することで、暗
号通信電文のうちの暗号文を平文に復号する(手順5−
2)。これにより、最終的に受信側エンティティjはエ
ンティティiからの所望の平文の内容を知ることとな
り、エンティティi,j間での暗号通信が完結する。That is, referring to FIG. 7, first, by using a common encryption key Kji (= Kij) with entity i as an original key, an encrypted random number in an encrypted communication message received from entity i is obtained. The data is decrypted into random number data for encrypted communication (procedure 5-1). Next, by using the decrypted random number data for encrypted communication as a key, the encrypted text of the encrypted communication message is decrypted into plain text (procedure 5-
2). Thereby, the receiving entity j finally knows the contents of the desired plaintext from the entity i, and the cryptographic communication between the entities i and j is completed.
【0074】前述のような暗号通信のための処理を行う
各エンティティ2のコンピュータマシンは、それを構成
的に示すと例えば図8のブロック図に示すように構成さ
れている。The computer machine of each entity 2 that performs the above-described processing for cryptographic communication is configured as shown in the block diagram of FIG. 8, for example.
【0075】すなわち、各エンティティ2のコンピュー
タマシンは、キーボード4と、図示しないCPU、RA
M、ROM等により構成された本体部5と、前記個人鍵
Xn及び識別子変換アルゴリズム、文章、プログラム等
の平文、並びに暗号通信電文等を記憶保持するハードデ
ィスク等により構成されたデータベース6とを具備す
る。そして、本体部5には、その機能的構成として、共
通暗号鍵を生成する共通鍵生成部7と、通信データの暗
号化・復号化処理を行う暗号復号処理部8と、暗号通信
用乱数データを生成する乱数生成部9と、暗号通信に際
して共通鍵生成部7により生成された共通暗号鍵や乱数
生成部9により生成された暗号通信用乱数データ等のデ
ータを格納するデータ格納メモリ10とが備えられてい
る。That is, the computer machine of each entity 2 includes a keyboard 4, a CPU (not shown) and a RA (not shown).
M and a main unit 5 composed of a ROM and the like, and a database 6 composed of a hard disk or the like for storing the personal key Xn and an identifier conversion algorithm, a plain text such as a text and a program, and a cryptographic communication telegram. . The main unit 5 includes, as its functional components, a common key generation unit 7 that generates a common encryption key, an encryption / decryption processing unit 8 that performs encryption / decryption processing of communication data, and random number data for encryption communication. And a data storage memory 10 for storing data such as a common encryption key generated by the common key generation unit 7 during encryption communication and random number data for encryption communication generated by the random number generation unit 9. Provided.
【0076】このような構成を具備する各エンティティ
2のコンピュータマシンは、次のような作動によって、
前述のような暗号通信のための処理が行われる。The computer machine of each entity 2 having such a configuration operates as follows.
The process for the encrypted communication as described above is performed.
【0077】すなわち、送信側及び受信側のいずれのコ
ンピュータマシンにおいても、共通暗号鍵を生成する際
には(前記手順3)、まず、使用する前記個人鍵Xn 及
び識別子変換アルゴリズムがキーボード4により本体部
5に指定され、その指定された個人鍵Xn 及び識別子変
換アルゴリズムが前記データベース6から本体部5の共
通鍵生成部7に取り込まれる。さらに、キーボード4に
より、通信相手側の識別子yn が本体部5に入力され
る。そして、該本体部5の共通鍵生成部7は、入力され
た識別子yn のデータに前述の如く識別子変換アルゴリ
ズム及び個人鍵Xn を作用させることで共通暗号鍵を生
成し(前記手順3−1,3−2)、その生成された共通
暗号鍵がデータ格納メモリ10に記憶される。That is, when generating a common encryption key (procedure 3) in each of the transmitting and receiving computer machines, first, the personal key Xn and the identifier conversion algorithm to be used are transmitted from the keyboard 4 to the main body. The specified private key Xn and the identifier conversion algorithm are fetched from the database 6 into the common key generation unit 7 of the main unit 5. Further, the identifier yn of the communication partner is input to the main unit 5 by the keyboard 4. Then, the common key generation unit 7 of the main unit 5 generates a common encryption key by applying the identifier conversion algorithm and the private key Xn to the input data of the identifier yn as described above (step 3-1). 3-2), the generated common encryption key is stored in the data storage memory 10.
【0078】また、送信側のコンピュータマシンでは、
キーボード4により、前記暗号通信用乱数データを生成
するためのデータ(語句や文章等の入力操作データ)が
本体部5に入力される。そして、該本体部5の乱数生成
部9はその入力されたデータに基づき、前述の如く一回
性の暗号通信用乱数データを生成し(前記手順4−
1)、その生成された暗号通信用乱数データがデータ格
納メモリ10に記憶される。On the transmitting computer machine,
Data (input operation data such as words and sentences) for generating the random number data for encryption communication is input to the main body unit 5 by the keyboard 4. Then, the random number generation unit 9 of the main body unit 5 generates the one-time random number data for encryption communication as described above based on the input data (see the above-described procedure 4-
1) The generated random number data for encrypted communication is stored in the data storage memory 10.
【0079】さらに、送信側のコンピュータマシンで
は、データベース6内の送信すべき平文がキーボード4
から本体部5に指定され、このとき、指定された平文が
データベース6から暗号復号処理部8に取り込まれる。
そして、該暗号復号処理部8は、データ格納メモリ10
に記憶された暗号通信用乱数データを、同じくデータ格
納メモリ10に記憶された共通暗号鍵を使用して暗号化
する(前記手順4−2)と共に、その暗号化乱数データ
を鍵として前記平文を暗号化する(前記手順4−3)。
このようにして暗号復号処理部8により暗号化された暗
号通信用乱数データ及び平文は、それらを一括して成る
暗号通信電文としてデータベース6に保持された後、別
途、通信相手側のコンピュータマシンに送信される。Further, in the transmitting computer machine, the plain text to be transmitted in the database 6 is
, And the designated plaintext is fetched from the database 6 into the encryption / decryption processing unit 8.
Then, the encryption / decryption processing unit 8 includes the data storage memory 10
Is encrypted using the common encryption key also stored in the data storage memory 10 (the above-described procedure 4-2), and the plaintext is encrypted using the encrypted random number data as a key. Encrypt (the above procedure 4-3).
The encrypted communication random number data and the plaintext encrypted by the encryption / decryption processing unit 8 in this way are stored in the database 6 as an encrypted communication message composed of them, and then separately sent to the computer machine of the communication partner. Sent.
【0080】一方、上記暗号通信電文を受信した受信側
のコンピュータマシンでは、該暗号通信電文がデータベ
ース6に保持され、それが暗号復号処理部8に取り込ま
れる。そして、暗号復号処理部8は、データ格納メモリ
10に記憶されている共通暗号鍵を用いて暗号通信電文
内の暗号化乱数データを暗号通信用乱数データに復号し
(前記手順5−1)、さらにその復号化した暗号通信用
乱数データを鍵として、暗号通信電文内の暗号化平文を
元の平文に復号する(前記手順5−2)。このようにし
て暗号復号処理部8により暗号化された平文はデータベ
ース6に保持される。On the other hand, in the receiving computer machine which has received the above-mentioned encrypted communication message, the encrypted communication message is stored in the database 6 and is taken into the encryption / decryption processing section 8. Then, the encryption / decryption processing unit 8 uses the common encryption key stored in the data storage memory 10 to decode the encrypted random number data in the encrypted communication message into random number data for encrypted communication (the above-described procedure 5-1), Further, using the decrypted random number data for encrypted communication as a key, the encrypted plaintext in the encrypted communication message is decrypted to the original plaintext (the above-described procedure 5-2). The plaintext encrypted by the encryption / decryption processing unit 8 in this manner is held in the database 6.
【0081】以上説明したように構築されている本実施
形態のシステムでは、センター1で各エンティティ2の
個人鍵Xn を生成する際(事前準備処理)には、各エン
ティティ2の名前等の識別子yn に積分変換としてのフ
ーリエ変換のアルゴリズムを作用させるため、識別子y
n 自体に類似のものが多くあっても、それをフーリエ変
換してなるデータの分散性が良くなり、ひいてはそのデ
ータにセンター行列等を施して成る個人鍵Xn の分散性
も高めることができる。その結果、所謂、差分攻撃等に
よるセンター1のセンター行列等のセンターアルゴリズ
ムの解読を困難なものとすることができる。In the system of this embodiment constructed as described above, when the center 1 generates the private key Xn of each entity 2 (preparation processing), the identifier yn such as the name of each entity 2 is used. To apply the algorithm of the Fourier transform as an integral transform to
Even if n itself has many similar ones, the dispersibility of data obtained by performing a Fourier transform on the data is improved, and the dispersibility of the private key Xn obtained by applying a center matrix or the like to the data can be improved. As a result, it is possible to make it difficult to decode a center algorithm such as a center matrix of the center 1 by a so-called differential attack.
【0082】この場合、上記の積分変換としては、フー
リエ変換の他、ラプラス変換、ミラー変換、ヒルベルト
変換等を使用することも可能であるが、本実施形態では
フーリエ変換(くわしくは高速フーリエ変換)を使用し
ているため、上記のような分散性の向上を顕著に奏する
ことができると同時に、識別子yn にフーリエ変換を施
す演算処理をコンピュータマシンを用いて高速で行うこ
とができる。In this case, in addition to Fourier transform, Laplace transform, Miller transform, Hilbert transform and the like can be used as the above-mentioned integral transform. In the present embodiment, Fourier transform (more specifically, fast Fourier transform) is used. Is used, it is possible to remarkably improve the dispersibility as described above, and at the same time, it is possible to perform the arithmetic processing for performing the Fourier transform on the identifier yn at a high speed by using a computer machine.
【0083】また、個人鍵Xn を生成する際には、セン
ターアルゴリズムとして重み関数を付加するため、有限
区間上の識別子yn のデータをフーリエ変換してなるデ
ータの異常分散を防止することができると同時に、セン
ターアルゴリズムを解読しようとする攻撃者にとって
は、センター行列やフーリエ変換アルゴリズム等の他、
重み関数という未知のアルゴリズム要素が増えるため、
センターアルゴリズムの解読をさらに困難なものとする
ことができる。特に、該重み関数が、一回性の乱数デー
タに基づいて予想のつかない形状に生成されているた
め、上記の解読の困難性をより確実に確保することがで
きる。Also, when generating the private key Xn, a weight function is added as a center algorithm, so that it is possible to prevent abnormal dispersion of data obtained by Fourier transforming data of the identifier yn on a finite section. At the same time, for an attacker trying to decipher the center algorithm, in addition to the center matrix and Fourier transform algorithm,
Because the number of unknown algorithm elements called weight functions increases,
Decoding the center algorithm can be made more difficult. In particular, since the weight function is generated in an unpredictable shape based on the one-time random number data, it is possible to more reliably secure the above-described difficulty in decoding.
【0084】さらに、個人鍵Xn を生成する際には、セ
ンターアルゴリズムの他、各エンティティ2に固有の一
回性の個別乱数データに基づくランダマイズ変換をも付
加するため、各エンティティ2の個人鍵Xn には、各エ
ンティティ2毎に各別で、しかも相互に相関性のないラ
ンダマイズ変換に基づく成分が含まれることとなる。こ
のため、例えば複数のエンティティ2が結託して、各々
が保持する個人鍵Xnからセンターアルゴリズム等を解
読しようとしても、その解読を行うことは極めて困難な
ものとなる。この場合、特に、前記ランダマイズ変換で
は、識別子ynにフーリエ変換、重み関数及びセンター
行列を作用させてなるデータのうちの、不要ビットの値
を一回性の個別乱数データによりランダム化した上で、
該不要ビットと有用ビットとを合わせて配置変換を行う
ので、このランダマイズ変換により得られる個人鍵Xn
のデータのうちのどの部分に不要ビットに対応するもの
が含まれているのかが判らず、上記の解読がより一層困
難なものとなる。また、その解読者にとっては、本実施
形態のシステムを完全に破るためには、個人鍵Xn等の
データから、センター行列、重み関数、フーリエ変換
(積分変換)、及びランダマイズ変換の4種類ものアル
ゴリズムを解読しなければならないこととなり、このよ
うな解読は事実上、不可能なものとなる。Further, in generating the private key Xn, in addition to the center algorithm, a randomizing transformation based on single random data unique to each entity 2 is added, so that the private key Xn of each entity 2 is added. Contains components based on a randomizing transform that are individual for each entity 2 and that are not correlated with each other. For this reason, for example, even if a plurality of entities 2 collude and attempt to decrypt the center algorithm or the like from the private key Xn held by each, it is extremely difficult to decrypt the center algorithm. In this case, in particular, in the randomizing transformation, of the data obtained by applying the Fourier transformation, the weighting function and the center matrix to the identifier yn, the value of the unnecessary bit is randomized by one-time individual random number data.
Since the arrangement conversion is performed by combining the unnecessary bits and the useful bits, the private key Xn obtained by the randomization conversion is obtained.
It is not known which part of the data contains the data corresponding to the unnecessary bit, and the above-mentioned decoding becomes more difficult. For the reader, in order to completely break the system of the present embodiment, as many as four types of algorithms of a center matrix, a weight function, a Fourier transform (integral transform), and a randomize transform are used from data such as the private key Xn. Must be decrypted, and such decryption is virtually impossible.
【0085】尚、本実施形態のシステムでは、暗号通信
の際に共通暗号鍵を生成するためには、個人鍵Xn に反
映されている前記ランダマイズ変換による成分を打ち消
すためのアルゴリズムを含む前記識別子変換アルゴリズ
ムを個人鍵Xn と共に各エンティティ2に配付しておく
必要がある。しかるに、該識別子変換アルゴリズムは、
ランダマイズ変換による成分を打ち消すためのアルゴリ
ズムとフーリエ変換アルゴリムと重み関数とを合成した
ものであるため、該識別子変換アルゴリズムからセンタ
ー1のセンターアルゴリズムを構成するランダマイズ変
換のアルゴリズムや重み関数、フーリエ変換アルゴリズ
ムを個々に解読することも極めて困難である。In the system of this embodiment, in order to generate a common encryption key at the time of cryptographic communication, the identifier conversion including an algorithm for canceling the randomized conversion component reflected in the private key Xn is performed. The algorithm needs to be distributed to each entity 2 together with the private key Xn. However, the identifier conversion algorithm is
Since the algorithm for canceling the component by the randomization transformation, the Fourier transformation algorithm, and the weighting function are combined, the randomization transformation algorithm, the weighting function, and the Fourier transformation algorithm which constitute the center algorithm of the center 1 from the identifier transformation algorithm are used. It is also very difficult to decipher individually.
【0086】従って、本実施形態のシステムによれば、
そのシステムの安全上、最も重要なセンター1のセンタ
ーアルゴリズムを各エンティティ2の個人鍵Xn 等から
解読することは事実上、不可能である。Therefore, according to the system of the present embodiment,
In terms of security of the system, it is practically impossible to decipher the center algorithm of the most important center 1 from the private key Xn of each entity 2.
【0087】また、任意のエンティティi,j間で暗号
通信を行う際には、平文そのものを共通暗号鍵Kijを用
いて暗号化するのではなく、該平文は偏った特徴性をも
たない一回性の暗号通信用乱数データを鍵として暗号化
すると共に、その暗号化平文を復号するための鍵として
の暗号通信用乱数データを共通暗号鍵Kijを用いて暗号
化するようにしたため、暗号化された通信データを第三
者が傍受しても、その通信データから共通暗号鍵Kijを
解読することは困難である。そして、該共通暗号鍵Kij
を解読することが困難であるため、該共通暗号鍵Kijに
含まれる各エンティティ2の個人鍵Xn の情報、さらに
は該個人鍵Xn に含まれるセンターアルゴリズムの情報
を第三者が取得することも困難である。また、前記平文
にあっては、暗号通信用乱数データを鍵として暗号化さ
れるので、該平文の機密性も確保される。When performing encrypted communication between arbitrary entities i and j, instead of encrypting the plaintext itself using the common encryption key Kij, the plaintext does not have a biased characteristic. Since the random number data for reciprocal encryption communication is encrypted as a key, and the random number data for encryption communication as a key for decrypting the encrypted plaintext is encrypted using the common encryption key Kij, the encryption is performed. Even if a third party intercepts the communication data, it is difficult to decrypt the common encryption key Kij from the communication data. Then, the common encryption key Kij
Since it is difficult to decrypt the private key Xn, information on the private key Xn of each entity 2 included in the common encryption key Kij and information on the center algorithm included in the private key Xn may be obtained by a third party. Have difficulty. Further, since the plaintext is encrypted using the random number data for encrypted communication as a key, the confidentiality of the plaintext is also ensured.
【0088】従って、本実施形態によれば、種々の攻撃
に対して安全性の高い暗号通信システムを提供できる。
そして、任意のエンティティi,j間での暗号通信に際
しては、各エンティティi,jは自己の個人鍵Xi ,X
j 及び識別子変換アルゴリズムを、相手側の識別子yj
,yi に作用させるだけで、センター1の関与やエン
ティティi,j同士での事前連絡等を伴うことなく共通
暗号鍵Kijを生成して共有することができるので、安全
性が高いだけでなく、簡易で汎用性の高い暗号通信シス
テムを提供できる。尚、上記のように共通暗号鍵Kijを
生成する上で、識別子yn が重要な役割を演じる点は、
A.Shamirによる論文「Identity-Based Cryptosystems a
nd Signature Schemes/Advances in Cryptology:Proce
eding of CRYPTO '84 /Springer LNCS 196,1985,pp.47
-53 」に見られる考え方と同様である。Therefore, according to the present embodiment, a cryptographic communication system with high security against various attacks can be provided.
At the time of cryptographic communication between any of the entities i and j, each of the entities i and j has its own private key Xi, X
j and the identifier conversion algorithm,
, Yi, the common encryption key Kij can be generated and shared without involvement of the center 1 or prior notification between the entities i, j, etc., so that not only security is high, but also A simple and highly versatile cryptographic communication system can be provided. Note that the identifier yn plays an important role in generating the common encryption key Kij as described above.
A. Shamir's paper `` Identity-Based Cryptosystems a
nd Signature Schemes / Advances in Cryptology: Proce
eding of CRYPTO '84 / Springer LNCS 196,1985, pp.47
-53 ".
【0089】次に、本実施形態のシステムのより理論的
な有効性について説明する。Next, a more theoretical effectiveness of the system of this embodiment will be described.
【0090】本システムでは、各エンティティ2の個人
鍵を演算し、さらに共通暗号鍵を算出する演算は線形変
換に基づいて行われ、この線形変換について以下説明す
る。In the present system, the calculation of the private key of each entity 2 and the calculation of the common encryption key are performed based on a linear transformation, and the linear transformation will be described below.
【0091】まず、Xifをf人のエンティティ2間で共
通暗号鍵を生成する際に必要なエンティティiの個人鍵
とする。このとき、上記の線形変換を構築するための一
般的な考え方は、f入力対称変換g(f個の変数の関数
で、対称性を有するもの)を任意に選択し、エンティテ
ィiの個人鍵Xifを、エンティティiの識別子yi に対
してXif(ξ1,……,ξf-1 )=g(yi,ξ1,……,ξ
f-1 )を満たすようなf−1入力変換として決定するこ
とである。ここで、添え字付きのξは任意の識別子を示
す変数である。この場合、上記線形変換は、f入力対称
変換gの核が多重線形写像(f重線形写像)に従うよう
に見いだすことができ、この線形変換は、基本的には有
限体上の線形空間で定義され、環上の剰余類に一般化さ
れる。First, let Xif be a private key of entity i necessary for generating a common encryption key between f entities 2. At this time, the general idea for constructing the above linear transformation is to arbitrarily select an f-input symmetric transformation g (a function of f variables having symmetry) and obtain a private key Xif of the entity i. Xif (ξ 1 ,..., Ξ f -1 ) = g (yi, ξ 1 ,..., に 対 し て) for the identifier yi of the entity i.
f-1 ) is determined as an f-1 input conversion that satisfies f-1 ). Here, ξ with a subscript is a variable indicating an arbitrary identifier. In this case, the linear transformation can be found such that the kernel of the f-input symmetric transformation g follows a multiple linear mapping (f-fold linear mapping), which is basically defined in a linear space over a finite field. And generalized to the coset on the ring.
【0092】本システムはf=2とした場合のものであ
り、上記の線形変換は次のように定義される。The present system is for the case where f = 2, and the above-mentioned linear transformation is defined as follows.
【0093】ここで、以下の説明において、センター1
に属するエンティティの集合をE、識別子の集合をI、
共通暗号鍵の集合をKとする(図1参照)。また、Qを
単位元をもつ可換環、JをQ上の位数mの剰余類、Kを
Q上の位数hの剰余類とし、J,Kの元はそれぞれm−
縦ベクトル、h−縦ベクトルとする。尚、Qが体である
ならば、J,Kはそれぞれ次元m,hの線形空間とな
る。また、位数mは識別子の総数に等しい。Here, in the following description, the center 1
Is a set of entities belonging to E, a set of identifiers is I,
Let K be a set of common encryption keys (see FIG. 1). Further, Q is a commutative ring having a unit element, J is a coset of order m on Q, K is a coset of order h on Q, and the elements of J and K are m−
A vertical vector, h-vertical vector. If Q is a body, J and K are linear spaces of dimensions m and h, respectively. The order m is equal to the total number of identifiers.
【0094】また、RをIからJへの写像を構成する線
形変換とし、以下、アイデンティティ変換と称する。こ
のアイデンティティ変換は、前述の実施形態のシステム
に対応させると、基本的には識別子のデータに重み関数
付きのフーリエ変換(積分変換)を施す変換に相当し、
さらには、後述の如く前記ランダマイズ変換をも含む変
換に拡張されるものである。Further, R is a linear transformation constituting a mapping from I to J, and is hereinafter referred to as identity transformation. This identity transformation basically corresponds to a transformation for performing a Fourier transformation (integration transformation) with a weighting function on the data of the identifier when corresponding to the system of the above-described embodiment.
Further, as will be described later, the conversion is extended to a conversion including the randomizing conversion.
【0095】以上のことを前提として、まず、J2 (J
の二つの元の組を要素とする集合)から共通暗号鍵の集
合Kへの対称Q階多重線形写像(2入力対称変換)g:
J2→Kが任意に選択されて決定される。このgは任意
の二つの識別子をそれぞれアイデンティティ変換したも
のからそれらの識別子に対応した共通暗号鍵を生成する
ための変換に相当する。Assuming the above, first, J 2 (J
Symmetric Q-order multiple linear mapping (a two-input symmetric transformation) from a set of two elements of
J 2 → K is arbitrarily selected and determined. This g corresponds to a conversion for generating a common encryption key corresponding to these two identifiers from those obtained by performing identity conversion of two arbitrary identifiers.
【0096】また、ある与えられた識別子yi (∈I)
に対して、Q上のh行m列の行列xi がxi ・η=g
(R(yi ),η)を満たすように決定される。ここ
で、ηはQ上の任意のm−縦ベクトルで、Jの元である
(以下、同様)。Further, a given identifier yi (∈I)
, The matrix xi of h rows and m columns on Q becomes xi · η = g
(R (yi), η). Here, η is an arbitrary m-longitudinal vector on Q and is an element of J (the same applies hereinafter).
【0097】さらに、ある与えられたyi (∈I)に対
して、Xi(ξ)=xi ・R(ξ)(但し、ξはIの任
意の元。以下、同様)となるように1入力変換Xi
(ξ)を構成する。Further, for a given yi (∈I), one input is made so that Xi (ξ) = xi · R (ξ) (where ξ is an arbitrary element of I; the same applies hereinafter). Conversion Xi
Constitution of (ξ).
【0098】このXi(ξ)が、エンティティiに対す
る個人鍵であり、該個人鍵Xi(ξ)は、1入力変換V
i を前記行列xi を用いてVi (η)=xi ・ηと定義
したとき、次式によって表される。This Xi (ξ) is a private key for the entity i, and the private key Xi (ξ) is a one-input conversion V
When i is defined as Vi (η) = xi · η using the matrix xi, it is expressed by the following equation.
【0099】Xi(ξ)=Vi (R(ξ)) 尚、センターが複数存在するとき、Vi (η)=xi ・
ηにおける「xi 」の部分は、各センター毎に上記のよ
うに決定される行列xi の総和に置き換えられる。Xi (ξ) = Vi (R (ξ)) When there are a plurality of centers, Vi (η) = xi ·
The "xi" part in η is replaced by the sum of the matrices xi determined as described above for each center.
【0100】このように個人鍵Xi を定義したとき、前
述したことから容易に判るように、任意のエンティティ
a,b∈Eに対して、Xa (yb )=Xb (ya )とな
る。すなわち、エンティティa,bがそれぞれの個人鍵
Xa ,Xb に相手側の識別子yb ,ya を入力すれば、
共通の暗号鍵Xa (yb )=Xb (ya )が得られる。When the private key Xi is defined in this manner, Xa (yb) = Xb (ya) for an arbitrary entity a, b∈E, as can be easily understood from the above description. That is, if the entities a and b input the identifiers yb and ya of the other party to the respective private keys Xa and Xb,
A common encryption key Xa (yb) = Xb (ya) is obtained.
【0101】尚、前記多重線形写像gの代わりに、多変
数多項式を選択したとしても、本システムの線形変換の
適用範囲に含まれる。この理由は、任意の多項式が未知
数の集合の適当な変換によって線形多項式に書き換えら
れるという事と、そのような変換は前記アイデンティテ
ィ変換Rの中に吸収することができるという事とによ
る。更に、いくつかの変換は、線形変換と、指数関数の
ような演算との合成と見なすことができる。Even if a multivariable polynomial is selected instead of the multiple linear mapping g, it is included in the applicable range of the linear transformation of the present system. The reason for this is that any polynomial can be rewritten into a linear polynomial by a suitable transformation of the set of unknowns, and that such a transformation can be absorbed into the identity transformation R. Furthermore, some transforms can be viewed as a combination of a linear transform and an operation such as an exponential function.
【0102】次に、本システムの線形変換の実行性能と
アイデンティティ変換Rの役割とについて述べる。Next, the performance of the linear conversion of the present system and the role of the identity conversion R will be described.
【0103】任意の変換Aに対して、Cd(A)、Ce
(A)をそれぞれ変換Aの記述の複雑さ、及び変換Aの
評価の複雑さとする。このとき、前述の変換Xi ,R,
Viに対して、次の関係式が成り立つ。For any transformation A, Cd (A), Ce
Let (A) be the complexity of the description of the transformation A and the complexity of the evaluation of the transformation A, respectively. At this time, the conversions Xi, R,
The following relational expression holds for Vi.
【0104】Cd(Xi )=Cd(R)+Cd(Vi ) Ce(Xi )≦Ce(R)+Ce(Vi ) この場合、個人鍵を示す変換Xi の入力(識別子)がw
[bit ]で記述されるとすると、変換Vi の記述の複雑
さCd(Vi )については Cd(Vi )=h・m・w[bit ] が成り立つ。また、変換Vi の記述の複雑さCe(Vi
)については Ce(Vi )=O(h・m)[Q−演算] が成り立つ。ここで、O(h・m)[Q−演算]は可換
環Q上でのh・mのオーダーを意味し、この値は、概ね
O(w2 )[bit 変換]、すなわち、w2 のオーダーに
よって評価できる。そして、小さい可換環Q(例えばガ
ロア体GF[2])を選んだとき、Ce(Vi )は低い
ものとなる。Cd (Xi) = Cd (R) + Cd (Vi) Ce (Xi) ≦ Ce (R) + Ce (Vi) In this case, the input (identifier) of the conversion Xi indicating the private key is w.
If it is described in [bit], Cd (Vi) = hmw [bit] holds for the complexity Cd (Vi) of the description of the conversion Vi. In addition, the complexity Ce (Vi
), Ce (Vi) = O (hm) [Q-operation] holds. Here, O (hm) [Q-operation] means the order of hm on the commutative ring Q, and this value is approximately O (w 2 ) [bit conversion], that is, w 2 Can be evaluated by order. Then, when a small commutative ring Q (for example, Galois field GF [2]) is selected, Ce (Vi) becomes low.
【0105】従って、変換Xi の記述の複雑さCd(X
i )及び評価の複雑さCe(Xi )は、アイデンティテ
ィ変換Rの記述の複雑さCd(R)及び評価の複雑さC
e(R)に負うところが大きい。Therefore, the complexity Cd (X
i) and the evaluation complexity Ce (Xi) are the description complexity Cd (R) of the identity transformation R and the evaluation complexity C
e (R) is greatly affected.
【0106】ここで、システムを破ろうとする一つもし
くは複数のエンティティjが、それぞれの個人鍵Xj を
利用する場合について考察する。Here, consider a case where one or a plurality of entities j trying to break the system use respective private keys Xj.
【0107】明らかに、本システムを完璧に破ること
は、前述の多重線形写像g:J2 →Kを決定することで
ある。この場合、システムを完全に破るためには、セン
ターが協力するか、あるいは、多重線形写像gの位数と
同じ数(これは概ね、識別子の総数m(=Jの位数)に
等しい)のエンティティの協力が必要であり、実際上
は、不可能である。Obviously, a perfect defeat of this system is to determine the aforementioned multiple linear mapping g: J 2 → K. In this case, in order to completely break the system, the centers either cooperate or have the same number as the order of the multiple linear mapping g (which is roughly equal to the total number m of identifiers (= order of J)). It requires the cooperation of the entities and is practically impossible.
【0108】さらに、一部のエンティティjによる、他
のエンティティiの個人鍵Xi の決定の可能性について
考察する。この問題については、以下に述べるようにア
イデンティティ変換Rが重要な役割を担う。[0108] Further, consider the possibility that some entity j can determine the private key Xi of another entity i. In this problem, the identity conversion R plays an important role as described below.
【0109】まず、「エンティティ全体の集合Eの部分
集合Bの全てのエンティティjが協力して、それらのエ
ンティティj∈Bがそれぞれの個人鍵Xj の全体{Xj
|j∈B}を使ったとしても、集合E−B内の任意のエ
ンティティiの個人鍵Xi を決定するために有用などの
ような情報も得ることができない」ということは、「E
−B内の各エンティティiにとって、アイデンティティ
変換R(yi )が、B内のエンティティjのそれぞれの
アイデンティティ変換R(yj )の全体{R(yj )|
j∈B}から線形独立である」ということと同値である
ことが容易に導かれる。従って、本システムの線形変換
の情報理論的安全性は、集合{R(yi)|i∈E}の
任意の部分集合Uが線形独立であることに帰着させられ
る。よって、線形変換と線形代数学的な順列組み合わせ
との間には強い関係があり、線形変換の安全性を評価す
る上では、特に、m行n列(ここでn=#E=エンティ
ティEの総数である)のパリティチェック行列H=(R
(y1 ),……,R(yn))によって定義される線形
符号LR ={z∈Qn |H・z=0}、すなわち、パリ
ティチェック行列Hとの積が零ベクトルとなるような可
換環Q上のn−縦ベクトルで表される符号語zの集合を
考察することが重要である。所謂、ハミング(Hamming
)重率sの符号語z(∈LR )が存在するということ
と、s−1個のエンティティjの協力によって、特定の
エンティティiの個人鍵Xi を導くことができるという
ことと同値であることは容易に導かれる。First, "all the entities j of the subset B of the set E of the whole entity cooperate, and these entities j∈B become the whole {Xj
Even if | j {B} is used, information such as useful for determining the private key Xi of any entity i in the set EB cannot be obtained. "
For each entity i in B, the identity transformation R (yi) is the sum of the respective identity transformations R (yj) of entity j in B, {R (yj) |
is linearly independent of j {B} ". Therefore, the information-theoretic security of the linear transformation of the present system is reduced to the fact that any subset U of the set {R (yi) | i {E} is linearly independent. Therefore, there is a strong relationship between the linear transformation and the linear algebraic permutation combination. In evaluating the security of the linear transformation, in particular, m rows and n columns (where n = # E = entity of entity E) Parity check matrix H = (R
(Y1), ......, R ( yn)) linear code LR that is defined by = {z∈Q n | H · z = 0}, i.e., variable, such as the product of the parity check matrix H becomes zero vector It is important to consider the set of codewords z represented by n-vertical vectors on the permutation Q. The so-called Hamming
) The existence of a code word z (∈LR) having a weight s, and the fact that the private key Xi of a specific entity i can be derived by the cooperation of s-1 entities j. Is easily guided.
【0110】一方、以下のようにアイデンティティ変換
Rを個別化する(アイデンティティ変換Rを各エンティ
ティに固有のものとする)ことによって、多数のエンテ
ィティが結託しても、システムを破ることは難しくな
る。すなわち、仮にシステムを破ろうとする各エンティ
ティj(j∈B)のアイデンティティ変換R(yj )の
集合{R(yj )|j∈B}に対し、他のエンティティ
iのアイデンティティ変換R(yi )が線形従属で、R
(yi )=ΣCj ・R(yj )(但し、Cj は適当な係
数)であるならば、前述した個人鍵の定義から明らかな
ように、エンティティiの個人鍵Xi 及びエンティティ
j(j∈B)の個人鍵Xj について、Xi=ΣCj ・Xj
が成り立つ。このため、システムを破ろうとする各エ
ンティティjの集合Bは容易に他のエンティティiの個
人鍵Xi を知ることができることとなる。ところが、ア
イデンティティ変換Rを個別化した場合には、該変換R
は各エンティティに固有のものであるので、与えられた
エンティティjの集合Bに対して、他の個人鍵Xi を解
読し得るような識別子yi を有するエンティティiを見
いだすことは容易なことではない。換言すれば、集合B
のエンティティjは、それらが所持する個人鍵Xj 等の
情報からどのエンティティiの個人鍵Xi を解読し得る
のかを知ることができない。また、逆に、与えられた識
別子yi を有するエンティティiに対し、その個人鍵X
i を解読し得るような識別子yj を含む集合Bを見いだ
すことも容易ではない。換言すれば、解読しようとする
個人鍵Xi を有するエンティティiを特定しても、その
個人鍵Xi を解読するためにどのエンティティ同士が結
託すればよいのかを知ることができない。このように、
アイデンティティ変換Rを個別化することは、システム
の複雑さ理論的な安全性を高める上で本質的に重要なこ
とである。On the other hand, by individualizing the identity conversion R as follows (the identity conversion R is unique to each entity), it becomes difficult to break the system even if a large number of entities collude. That is, for the set {R (yj) | j {B} of the identity transformation R (yj) of each entity j (j∈B) that is going to break the system, the identity transformation R (yi) of the other entity i is Linearly dependent, R
If (yi) = ΣCj · R (yj) (where Cj is an appropriate coefficient), as is clear from the definition of the private key described above, the private key Xi and the entity j (j∈B) of the entity i Xi = ΣCj · Xj for the private key Xj of
Holds. Therefore, the set B of each entity j trying to break the system can easily know the private key Xi of another entity i. However, when the identity conversion R is individualized, the conversion R
Is unique to each entity, it is not easy to find, for a given set B of entities j, an entity i having an identifier yi that can decrypt another private key Xi. In other words, set B
Cannot know which entity i's private key Xi can be decrypted from information such as the private key Xj possessed by them. Conversely, for the entity i having the given identifier yi, the private key X
It is also not easy to find the set B containing the identifier yj that can decode i. In other words, even if the entity i having the private key Xi to be decrypted is specified, it is not possible to know which entity should collude to decrypt the private key Xi. in this way,
Individualizing the identity transformation R is of essential importance in increasing the theoretical security of the system.
【0111】このようにアイデンティティ変換Rを個別
化する場合、種々の線形変換を選択することが可能であ
るが、それらは、基本的には二つの範疇に大別される。When individualizing the identity conversion R in this way, various linear conversions can be selected, but they are basically classified into two categories.
【0112】その一つは、対応する線形符号LR がよく
知られた代数学的または代数幾何学的な符号になるよう
なアイデンティティ変換Rを用いる場合であり、他の一
つは、アイデンティティ変換Rをエンティティ毎に個別
にランダム化する場合である。One is the use of an identity transform R such that the corresponding linear code LR is a well-known algebraic or algebraic geometric code, and the other is the identity transform R Is randomized individually for each entity.
【0113】この場合、前者の手法では、安全性のため
に識別子の総数mを大きなものとすると、必要なデータ
量が大規模なものとなる傾向がある。例えば、原始要素
がαでQ=GF(q):ガロア体とし、また、h=1、
βをαのξ乗(logβ=ξ・logα)とし、さらに
R(ξ)=[1,β,β2 ,…,βm-1 ]T とし、Iが
{0,1,2,…,n−1}と符号化されたとする。こ
のアイデンティティ変換Rは一方向性を有さないので、
厳密な線形変換ではないが、前述のR.Blomの論文「An O
ptimal Class of Symmetric Key Generation Systems」
中に提案された線形変換に相当し、線形符号LR は所
謂、リード−ソロモン(Reed-Solomon)符号に相当す
る。そして、この手法では、ネットワーク内のエンティ
ティの総数nはガロア体Q=GF(q)におけるqより
も小さいことが必要であり、例えばn=1012の場合
に、この手法を適用すると、最小のQはGF(240)と
なって、極めて大規模なデータ量が必要となる。In this case, in the former method, if the total number m of identifiers is increased for security, the required data amount tends to be large. For example, a primitive element is α and Q = GF (q): a Galois field, and h = 1,
Let β be the power of α (log β = ξ · log α), further, let R (ξ) = [1, β, β 2 ,..., β m-1 ] T, and I be {0, 1, 2,. Suppose that it was encoded as n-1}. Since this identity conversion R has no one-way property,
Although not a strict linear transformation, R. Blom's paper, An O
ptimal Class of Symmetric Key Generation Systems ''
The linear code LR corresponds to a so-called Reed-Solomon code. In this method, the total number n of entities in the network needs to be smaller than q in the Galois field Q = GF (q). For example, when n = 10 12 , the minimum Q becomes GF (2 40 ), which requires an extremely large data amount.
【0114】これに対して、アイデンティティ変換Rを
エンティティ毎に個別にランダム化する後者の手法は、
前述の実施形態で、前記ランダマイズ変換によって実現
化した手法であり、この手法によれば、識別子の総数m
(本システムではこれはエンティティの総数nに等し
い)が大きくとも、高速な処理が可能で且つ小規模なデ
ータ量で済む多数のアイデンティティ変換Rが存在す
る。On the other hand, the latter method of randomizing the identity conversion R individually for each entity is as follows:
This is a technique realized by the randomizing transformation in the above-described embodiment. According to this technique, the total number m of identifiers is m.
Even if the value (which is equal to the total number n of the entities in the present system) is large, there are a large number of identity conversions R that can perform high-speed processing and require a small amount of data.
【0115】他方、周知の漸近的バルシャモフ・ギルバ
ート(Varshamov-Gilbert )の限界式を導くのと同様の
手法によって、該限界式に対応する次の関係式が得られ
る。On the other hand, the following relational expression corresponding to the known asymptotic Varshamov-Gilbert's limit equation is obtained by the same method as that for deriving the known limit equation.
【0116】m/n+r≦Φ(b/n) 但し、r=m・logq (q−1) ここで、Φは Φ(u)=u・logq (q−1)−u・logq u−
(1−u)logq (1−u) によって定義される関数である。また、上記の不等式中
のbはシステムを破ろうとするエンティティjの総数
(=#B)である。M / n + r ≦ Φ (b / n) where r = m · log q (q−1) where Φ is Φ (u) = u · log q (q−1) −u · log q u-
(1-u) log q is a function defined by (1-u). Also, b in the above inequality is the total number (= # B) of entities j trying to break the system.
【0117】上記の不等式は、システムを破るために必
要なエンティティjの総数bの限界を規定するものであ
り、この不等式が成立しないエンティティ数bではシス
テムを破ることができないことを意味する。The above inequality defines the limit of the total number b of entities j required to break the system, and means that the system cannot be broken with the number of entities b for which this inequality does not hold.
【0118】そして、この不等式に基づいて、任意のm
及びbに対して、高々b個のエンティティjが共謀して
も、他のエンティティiの個人鍵Xi を解読することが
できないようなアイデンティティ変換Rが存在すること
が導かれる。また、アイデンティ変換Rの個別のランダ
ム化は、多くの場合、上記のような条件を満たしつつ良
好な線形独立な構造をもたらすことも判る。Then, based on this inequality, any m
For b and b, it is derived that there is an identity conversion R such that even if at most b entities j collude, the private key Xi of another entity i cannot be decrypted. It can also be seen that individual randomization of the identity transform R often results in a good linearly independent structure while satisfying the above conditions.
【0119】従って、本システムは、アイデンティティ
変換Rの個別的なランダム化によって、安全性の高いシ
ステムを提供することができるものである。言い換えれ
ば、本システムは、アイデンティティ変換Rの個別的な
ランダム化によって、該変換Rの記述の複雑さCd
(R)及び評価の複雑さCe(R)を高め、ひいては、
個人鍵Xi の記述の複雑さCd(Xi )及び評価の複雑
さCe(Xi )を高めてシステムの安全性を確保したも
のである。Accordingly, the present system can provide a highly secure system by individually randomizing the identity conversion R. In other words, the system uses the individual randomization of the identity transformation R to increase the complexity Cd of the description of the transformation R
(R) and the complexity of the evaluation Ce (R),
The security of the system is ensured by increasing the description complexity Cd (Xi) and the evaluation complexity Ce (Xi) of the private key Xi.
【0120】実際、例えばQ=GF[2]、m=819
2、h=64とした場合、Cd(Xi )=64[Kby
te]となる。この場合、160bitの共通暗号鍵に
よって、最大で10120個のエンティティまでを含む
システム上の任意の二つのエンティティ間で暗号通信を
行うことができる。そして、例えばクロック200MH
zで32bitのCPUと640Kbyteのメモリを
使用した場合、20ms以内に各個人鍵を算出すること
ができる。さらに、このシステムは8192個のエンテ
ィティが結託しなければシステムを完全に破ることはで
きず、また、各エンティティ毎の個別のランダム化によ
って、256個以上のエンティティが結託しなければ、
他のエンティティの個人鍵に対するいかなる情報も得る
ことができない。In practice, for example, Q = GF [2], m = 819
2, when h = 64, Cd (Xi) = 64 [Kby
te]. In this case, the encryption communication can be performed between any two entities on the system including up to 10120 entities by using the 160-bit common encryption key. Then, for example, the clock 200MH
When a 32-bit CPU and a 640 Kbyte memory are used in z, each personal key can be calculated within 20 ms. Furthermore, the system cannot completely break the system unless 8192 entities collude, and due to the individual randomization of each entity, if more than 256 entities collude,
No information about the private key of another entity can be obtained.
【0121】尚、前述の実施形態では、センターアルゴ
リズムとして、重み関数及びフーリエ変換アルゴリズム
の他、センター行列を設定したが、重み関数自体をセン
ター行列として用いることも可能である。In the above embodiment, a center matrix is set as the center algorithm in addition to the weight function and the Fourier transform algorithm. However, the weight function itself can be used as the center matrix.
【0122】また、前記実施形態では、積分変換として
フーリエ変換を用いたが、ラプラス変換、ミラー変換、
ヒルベルト変換等、他の形式の積分変換を用いてもよ
い。In the above embodiment, the Fourier transform was used as the integral transform.
Other forms of integral transform, such as Hilbert transform, may be used.
【図1】本発明の共通鍵通信システムの一実施形態を適
用した暗号通信システムの全体構成を示す図。FIG. 1 is a diagram showing an overall configuration of a cryptographic communication system to which an embodiment of a common key communication system according to the present invention is applied.
【図2】図1のシステムの基本構造を概念的に説明する
ための図。FIG. 2 is a diagram for conceptually explaining the basic structure of the system in FIG. 1;
【図3】図1のシステムにおける処理手順の概要を説明
するためのフロー図。FIG. 3 is a flowchart for explaining an outline of a processing procedure in the system of FIG. 1;
【図4】図3の手順1における処理の詳細を示すフロー
図。FIG. 4 is a flowchart showing details of a process in procedure 1 of FIG. 3;
【図5】図3の手順2における処理の詳細を示すフロー
図。FIG. 5 is a flowchart showing details of a process in procedure 2 of FIG. 3;
【図6】図3の手順3及び手順4における処理の詳細を
示すフロー図。FIG. 6 is a flowchart showing details of processing in procedures 3 and 4 of FIG. 3;
【図7】図3の手順3及び手順5における処理の詳細を
示すフロー図。FIG. 7 is a flowchart showing details of processing in procedures 3 and 5 of FIG. 3;
【図8】図6及び図7の処理を行うためのコンピュータ
マシンの構成を示すブロック図。FIG. 8 is a block diagram showing a configuration of a computer machine for performing the processes of FIGS. 6 and 7.
1…センター、2(i,j等)…エンティティ、3…ネ
ットワーク、Xi,Xj等…個人鍵、Kij…共通暗号鍵、
yi,yj 等…識別子。1 center, 2 (i, j, etc.) entity, 3 network, Xi, Xj, etc. private key, Kij common encryption key,
yi, yj, etc. Identifiers.
フロントページの続き (56)参考文献 特開 平7−311673(JP,A) 特開 平7−175411(JP,A) 特開 昭63−314585(JP,A) 松本勉「暗号鍵を通信なしで共有する 方法:KEY PREDISTRIBU TION SYSTEM」電子情報通信 学会論文誌,Vol.J71−A,No. 11,(1988),p.2046−2053 宮渕新二「KPSでプライバシーは守 れるか?」エレクトロニクス,1995年9 月号(第496号),p.51−53 今井秀樹「符号理論」第5版,電子情 報通信学会,(1994).p.158−161 三谷政昭,辻井重男編「ディジタル信 号処理シリーズ第3巻ディジタルフィル タデザイン」昭晃堂,(1987),p.75 −78 James L.Massey an d Shirlei Serconek “A Fourier Transfo rm Approach to the Linear Complexity of Nonlinearly Fi ltered Sequences," Advances in Crypto loy:Proceedings of CRYPTO’94,Springee r−Verlag,(1994),p.332 −340 (58)調査した分野(Int.Cl.6,DB名) H04K 1/00 - 3/00 H04L 9/00 - 9/38 G09C 1/00 - 5/00 Continuation of front page (56) References JP-A-7-311673 (JP, A) JP-A-7-175411 (JP, A) JP-A-63-314585 (JP, A) Tsutomu Matsumoto "No communication of encryption key Method of sharing with: KEY PREDISTRIBUTION SYSTEM ”, IEICE Transactions, Vol. J71-A, No. 11, (1988), p. 2046-2053 Shinji Miyabuchi, "Can KPS Protect Privacy?" Electronics, September 1995 (No. 496), p. 51-53 Hideki Imai, "Coding Theory," 5th Edition, The Institute of Electronics, Information and Communication Engineers, (1994). p. 158-161 Masaaki Mitani, Shigeo Tsujii, Digital Signal Processing Series, Volume 3, Digital Filter Design, Shokodo, (1987), p. 75-78 James L. Massey and Shirley Serconek, “A Fourier Transform Approach to the Linear Complexity of Nonlinearly Filtered SealedPetrosedPeaces,“ Advance CryptoSequences, ” 332 −340 (58) Field surveyed (Int.Cl. 6 , DB name) H04K 1/00-3/00 H04L 9/00-9/38 G09C 1/00-5/00
Claims (20)
とを含むネットワークにおいて、エンティティの端末装
置間で通信データの通信を行う際に、 該通信データの送信側の端末装置は、乱数データを鍵と
して該通信データを暗号化すると共に該乱数データを該
通信データの受信側との共通の暗号鍵により暗号化し
て、その暗号化された乱数データと前記暗号化された通
信データとを該通信データの受信側の端末装置に送信
し、 該通信データの受信側の端末装置は、前記共通の暗号鍵
により前記暗号化された乱数データを復号し、その復号
した乱数データを鍵として前記暗号化された通信データ
を復号する共通鍵通信システムであって、前記センターは、 各エンティティに共通の重み関数付き
積分変換アルゴリズムを含むセンターアルゴリズムを秘
密に保管しており、各エンティティに固有で且つ公開性
の識別子を前記センターアルゴリズムにより変換して各
エンティティに固有の個人鍵を生成し、その個人鍵と前
記重み関数付き積分変換アルゴリズムとを各エンティテ
ィの端末装置にあらかじめ配付しておき、 前記各エンティティの端末装置は、 前記通信データの通
信を行う際に、通信相手側のエンティティの識別子に自
己に配布された前記重み関数付き積分変換アルゴリズム
と前記個人鍵とを作用させることにより該エンティティ
同士に共通の暗号鍵を生成することを特徴とする共通鍵
通信システム。 A terminal and a center of a plurality of entities
In a network including bets, entity terminal device
When communicating communication data between location, transmitting terminal device of the communication data, the random number data with encrypting the communication data random number data as a key common with the receiving side of the communication data Encrypted with an encryption key, and transmits the encrypted random number data and the encrypted communication data to a terminal device on the receiving side of the communication data, wherein the terminal device on the receiving side of the communication data is the common terminal device. encryption key by decoding the encrypted random number data, a common key communication system for decrypting the encrypted communication data and the decoded random number data as a key, the center is common to each entity secret the center algorithm including the integral transformation algorithm with a weighting function
The center algorithm is used to generate a private key unique to each entity by converting an identifier unique to each entity and open to the public by the center algorithm.
Each and serial weighting function with integral transformation algorithm Entite
The communication device, the terminal device of each entity automatically transmits the identifier of the entity on the communication partner side when performing the communication of the communication data.
The entity by Rukoto to act himself the weighting function with the integral transformation algorithm is distributed between the said private key
A common key communication system for generating a common encryption key for each other .
ることを特徴とする請求項1記載の共通鍵通信システ
ム。2. The common key communication system according to claim 1, wherein said random number data is one-time random number data.
M
側のエンティティの端末装置における所定の処理に基づ
き生成することを特徴とする請求項1又は2記載の共通
鍵通信システム。3. The common key communication system according to claim 1, wherein the random number data is generated based on a predetermined process in a terminal device of an entity on a transmitting side of the communication data.
末装置における人間による入力操作であり、その入力操
作の時間的タイミングに基づき前記一回性の乱数データ
を決定することを特徴とする請求項3記載の共通鍵通信
システム。4. The method according to claim 1, wherein the predetermined processing is performed at an end of each of the entities.
4. The common key communication according to claim 3, wherein the one-time random number data is determined based on a temporal timing of the input operation by a human in the terminal device.
System .
された乱数データにより予想のつかないパターンに決定
されていることを特徴とする請求項1記載の共通鍵通信
システム。5. The common key communication according to claim 1, wherein said weight function is determined to be an unpredictable pattern by random number data generated at said center.
System .
ータは一回性の乱数データであることを特徴とする請求
項5記載の共通鍵通信システム。6. The common key communication system according to claim 5, wherein said random number data for generating said weight function is one-time random number data.
アルゴリズムであることを特徴とする請求項1記載の共
通鍵通信システム。7. The common key communication system according to claim 1, wherein said integral transform algorithm is a Fourier transform algorithm.
別子を前記センターアルゴリズムにより変換したもの
に、さらに各エンティティに固有の一回性の個別乱数デ
ータによりランダマイズ変換を行って前記個人鍵を生成
すると共に、該個人鍵に含まれる前記ランダマイズ変換
の成分を打ち消すためのアルゴリズムと前記重み関数付
き積分変換アルゴリズムとからなる識別子変換アルゴリ
ズムを前記個人鍵と共にあらかじめ各エンティティの端
末装置に配付しておき、前記各エンティティの端末装置は、 通信相手側のエンテ
ィティの識別子に自己に配布された前記識別子変換アル
ゴリズムと前記個人鍵とを作用させることにより前記共
通の暗号鍵を生成することを特徴とする請求項1記載の
共通鍵通信システム。8. The center generates the personal key by performing randomization conversion on the identifier of each of the entities by the center algorithm and using one-time individual random number data unique to each entity. An identifier conversion algorithm including an algorithm for canceling the randomization conversion component included in the private key and the integral conversion algorithm with the weighting function is stored in advance at the end of each entity together with the private key.
Leave distributed to end devices, wherein each entity of the terminal device, the co-by Rukoto reacted with the identifier transformation algorithm which is distributed to the self to the identifier of the communication partner entity and said private key
The common key communication system according to claim 1, wherein a common encryption key is generated.
は、前記各エンティティの識別子を前記センターアルゴ
リズムにより変換したものを表すデータ列を、前記一回
性の個別乱数データにより配置変換することにより行う
ことを特徴とする請求項8記載の共通鍵通信システム。Wherein said randomized conversion by the center, characterized in that by said data string representing what the identifier of each entity were transformed by the center algorithm, arranged converted by separate random number data of the one-time The common key communication system according to claim 8, wherein
ターアルゴリズムにより変換したものを表すデータ列は
複数の不要ビットを含み、前記センターによる前記ラン
ダマイズ変換は、該不要ビットの値を前記一回性の個別
乱数データによりランダム化し、さらに該不要ビットを
含む前記データ列の全体を前記一回性の個別乱数データ
により配置変換することにより行うことを特徴とする請
求項9記載の共通鍵通信システム。10. A data string representing a result of conversion of the identifier of each entity by the center algorithm includes a plurality of unnecessary bits, and the randomization conversion by the center converts the value of the unnecessary bits into an individual Randomizing with random number data, and further processing the entirety of the data string including the unnecessary bits with the one-time individual random number data
Common key communication system according to claim 9, wherein the performing by arranging converted by.
エンティティの端末装置における所定の処理に基づき生
成することを特徴とする請求項8記載の共通鍵通信シス
テム。11. The common key communication system according to claim 8, wherein said one-time individual random number data is generated based on predetermined processing in a terminal device of each of said entities.
Tem .
端末装置における人間による入力操作であり、その入力
操作の時間的タイミングに基づき前記一回性の個別乱数
データを生成することを特徴とする請求項11記載の共
通鍵通信システム。12. The method according to claim 1, wherein the predetermined processing is performed by each of the entities.
The common key communication system according to claim 11, wherein the one-time individual random number data is generated based on a temporal operation of the input operation by a human in the terminal device .
ーとを含むネットワークにおいて、エンティティの端末
装置間で通信データの通信を行う際に、 該通信データの送信側の端末装置は、乱数データを鍵と
して該通信データを暗号化すると共に該乱数データを該
通信データの受信側との共通の暗号鍵により暗号化し
て、その暗号化された乱数データと前記暗号化された通
信データとを該通信データの受信側の端末装置に送信
し、 該通信データの受信側の端末装置は、前記共通の暗号鍵
により前記暗号化された乱数データを復号し、その復号
した乱数データを鍵として前記暗号化された通信データ
を復号する共通鍵通信システムであって、前記センターは 、各エンティティに共通のセンターアル
ゴリズムを秘密に保管しており、各エンティティに固有
で且つ公開性の識別子を前記センターアルゴリズムによ
り変換して生成したものに、さらに各エンティティに固
有の一回性の個別乱数データによりランダマイズ変換を
行って各エンティティに固有の個人鍵を生成し、その個
人鍵と該個人鍵に含まれる前記ランダマイズ変換の成分
を打ち消すための識別子変換アルゴリズムとを各エンテ
ィティの端末装置にあらかじめ配 付しておき、 前記各エンティティの端末装置は、 前記通信データの通
信を行う際に、通信相手側のエンティティの識別子に自
己に配布された前記識別子変換アルゴリズムと前記個人
鍵とを作用させることにより該エンティティ同士に共通
の暗号鍵を生成することを特徴とする共通鍵通信システ
ム。13. A terminal and a center for a plurality of entities.
In a network comprising a chromatography, entity of the terminal
When communicating communication data between devices, transmitting terminal device of the communication data, the random number data with encrypting the communication data random number data as a key common with the receiving side of the communication data and encrypted by the encryption key, the encrypted random number data and the said encrypted communication data transmitted to the receiving terminal device of the communication data, the receiving terminal device of the communication data, the common encryption key by decoding the encrypted random number data, a common key communication system for decrypting the encrypted communication data and the decoded random number data as a key, the center is common to each entity Center Al
Keeps the algorithm secret and unique to each entity
The in and openness identifier those produced by converting by said center algorithm, the further randomized converted by specific one-time individual random number data to each entity
To generate a private key unique to each entity,
Each entity includes a human key and an identifier conversion algorithm for canceling the randomization conversion component contained in the private key.
Advance distribution subjected to terminal devices Iti, each entity of the terminal device, when communicating the communication data, the self to the identifier of the communication partner entity
Common to each other the entity by Rukoto reacted with himself the identifier transformation algorithm which are distributed and said private key
Key communication system characterized by generating a plurality of encryption keys
M
あることを特徴とする請求項13記載の共通鍵通信シス
テム。14. The common key communication system according to claim 13, wherein said random number data is one-time random number data.
Tem .
信側のエンティティの端末装置における所定の処理に基
づき生成することを特徴とする請求項13又は14記載
の共通鍵通信システム。15. The common key communication system according to claim 13, wherein the random number data is generated based on a predetermined process in a terminal device of an entity on a transmitting side of the communication data.
端末装置における人間による入力操作であり、その入力
操作の時間的タイミングに基づき前記一回性の乱数デー
タを決定することを特徴とする請求項15記載の共通鍵
通信システム。16. The method according to claim 16, wherein the predetermined processing is performed for each of the entities.
16. The common key communication system according to claim 15, wherein the one-time random number data is determined based on a temporal input of a human input operation on the terminal device .
換は、前記各エンティティの識別子を前記センターアル
ゴリズムにより変換したものを表すデータ列を、前記一
回性の個別乱数データにより配置変換することにより行
うことを特徴とする請求項13記載の共通鍵通信システ
ム。17. The randomized conversion by the center, characterized in that by said data string representing what the identifier of each entity were transformed by the center algorithm, arranged converted by separate random number data of the one-time 14. The common key communication system according to claim 13,
M
ターアルゴリズムにより変換したものを表すデータ列は
複数の不要ビットを含み、前記センターによる前記ラン
ダマイズ変換は、該不要ビットの値を前記一回性の個別
乱数データによりランダム化し、さらに該不要ビットを
含む前記データ列の全体を前記一回性の個別乱数データ
により配置変換することにより行うことを特徴とする請
求項17記載の共通鍵通信システム。18. A data string representing a result obtained by converting the identifier of each of the entities by the center algorithm includes a plurality of unnecessary bits, and the randomization conversion by the center performs the one-time individual Randomizing with random number data, and further processing the entirety of the data string including the unnecessary bits with the one-time individual random number data
Common key communication system according to claim 17, wherein the performing by arranging converted by.
エンティティの端末装置における所定の処理に基づき生
成することを特徴とする請求項13記載の共通鍵通信シ
ステム。Individual random data 19. The one-time, the common key communication according to claim 13, wherein the generating on the basis of a predetermined processing in each entity of the terminal device Shi
Stem .
端末装置における人間による入力操作であり、その入力
操作の時間的タイミングに基づき前記一回性の個別乱数
データを生成することを特徴とする請求項19記載の共
通鍵通信システム。20. The method according to claim 19, wherein the predetermined processing is performed for each of the entities.
20. The common key communication system according to claim 19, wherein the one-time individual random number data is generated based on an input operation by a human in the terminal device , and based on a temporal timing of the input operation.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9023746A JP2886517B2 (en) | 1996-02-21 | 1997-02-06 | Common key communication system |
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8-70832 | 1996-02-21 | ||
JP7083296 | 1996-02-21 | ||
JP7083596 | 1996-02-21 | ||
JP8-70835 | 1996-02-21 | ||
JP8-210376 | 1996-07-08 | ||
JP21037696 | 1996-07-08 | ||
JP9023746A JP2886517B2 (en) | 1996-02-21 | 1997-02-06 | Common key communication system |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1079729A JPH1079729A (en) | 1998-03-24 |
JP2886517B2 true JP2886517B2 (en) | 1999-04-26 |
Family
ID=27458035
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9023746A Expired - Lifetime JP2886517B2 (en) | 1996-02-21 | 1997-02-06 | Common key communication system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2886517B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009013820A1 (en) * | 2007-07-25 | 2009-01-29 | Fujitsu Limited | Shared key encryption communication system, transmitter apparatus, receiver apparatus, shared key encryption communication method, and shared key encryption communication program |
CN102356597B (en) * | 2009-03-19 | 2015-05-27 | 皇家飞利浦电子股份有限公司 | A method for secure communication in a network, a communication device, a network and a computer program therefor |
JP5448863B2 (en) * | 2010-01-15 | 2014-03-19 | 日本電信電話株式会社 | KEY GENERATION DEVICE, KEY GENERATION METHOD, PROGRAM, AND RECORDING MEDIUM |
JP2020113835A (en) * | 2019-01-09 | 2020-07-27 | コニカミノルタ株式会社 | Encryption device, decryption device, key generation device, information processing device, and program |
-
1997
- 1997-02-06 JP JP9023746A patent/JP2886517B2/en not_active Expired - Lifetime
Non-Patent Citations (5)
Title |
---|
James L.Massey and Shirlei Serconek"A Fourier Transform Approach to the Linear Complexity of Nonlinearly Filtered Sequences,"Advances in Cryptoloy:Proceedings of CRYPTO’94,Springeer−Verlag,(1994),p.332−340 |
三谷政昭,辻井重男編「ディジタル信号処理シリーズ第3巻ディジタルフィルタデザイン」昭晃堂,(1987),p.75−78 |
今井秀樹「符号理論」第5版,電子情報通信学会,(1994).p.158−161 |
宮渕新二「KPSでプライバシーは守れるか?」エレクトロニクス,1995年9月号(第496号),p.51−53 |
松本勉「暗号鍵を通信なしで共有する方法:KEY PREDISTRIBUTION SYSTEM」電子情報通信学会論文誌,Vol.J71−A,No.11,(1988),p.2046−2053 |
Also Published As
Publication number | Publication date |
---|---|
JPH1079729A (en) | 1998-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5987129A (en) | Method of sharing cryptokey | |
Mushtaq et al. | A survey on the cryptographic encryption algorithms | |
CN111510281B (en) | Homomorphic encryption method and device | |
CN107294697B (en) | Symmetrical full homomorphic cryptography method based on plaintext similar matrix | |
US20200401726A1 (en) | System and method for private integration of datasets | |
Agrawal et al. | Elliptic curve cryptography with hill cipher generation for secure text cryptosystem | |
CN114175569A (en) | System and method for adding and comparing integers encrypted with quasigroup operations in AES counter mode encryption | |
Sekar et al. | Comparative study of encryption algorithm over big data in cloud systems | |
US7280663B1 (en) | Encryption system based on crossed inverse quasigroups | |
JP2886517B2 (en) | Common key communication system | |
CN115642999A (en) | Method and system for efficient retrieval of private information | |
JP2886516B2 (en) | Encryption key sharing system | |
JP4563037B2 (en) | ENCRYPTION APPARATUS, DECRYPTION APPARATUS, ENCRYPTION SYSTEM HAVING THEM, ENCRYPTION METHOD, AND DECRYPTION METHOD | |
CN108768923A (en) | A kind of real-time encrypted method of chat of the Encryption Algorithm based on Quantum Reversible Logic circuit | |
Backes et al. | Fully secure inner-product proxy re-encryption with constant size ciphertext | |
Yang et al. | Identity‐Based Unidirectional Collusion‐Resistant Proxy Re‐Encryption from U‐LWE | |
CN112422278A (en) | Byte-oriented random multi-table replacement encryption and decryption method | |
Moldovyan et al. | Randomized pseudo-probabilistic encryption algorithms | |
Thwe et al. | Prevention of Man-In-The-Middle Attack in Diffie-Hellman Key Exchange Algorithm using Proposed Hash Function | |
Hraiz et al. | Symmetric encryption algorithm using graph representation | |
Bhat et al. | A secure two-party PIR for privacy applications | |
US11502818B2 (en) | System to secure encoding and mapping on elliptic curve cryptography (ECC) | |
Oguntunde et al. | A comparative study of some traditional and modern cryptographic techniques | |
Asoro et al. | Development of A Honeyed Advanced Encryption Standard Algorithm (HAESA) | |
Yakupoglu et al. | Towards Efficient FHE Based cPIR Schemes and Their Parameter Selection |