JPH1079729A - Common key communication method - Google Patents

Common key communication method

Info

Publication number
JPH1079729A
JPH1079729A JP9023746A JP2374697A JPH1079729A JP H1079729 A JPH1079729 A JP H1079729A JP 9023746 A JP9023746 A JP 9023746A JP 2374697 A JP2374697 A JP 2374697A JP H1079729 A JPH1079729 A JP H1079729A
Authority
JP
Japan
Prior art keywords
entity
key
random number
data
algorithm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP9023746A
Other languages
Japanese (ja)
Other versions
JP2886517B2 (en
Inventor
Yoshimi Baba
芳美 馬場
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CARD KOOLE SERVICE KK
Original Assignee
CARD KOOLE SERVICE KK
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CARD KOOLE SERVICE KK filed Critical CARD KOOLE SERVICE KK
Priority to JP9023746A priority Critical patent/JP2886517B2/en
Publication of JPH1079729A publication Critical patent/JPH1079729A/en
Application granted granted Critical
Publication of JP2886517B2 publication Critical patent/JP2886517B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide the common key communication method in which security against various attacks to a ciphering key is enhanced in the system conducting ciphering communication between entities by using the common ciphering key. SOLUTION: In the case of conducting ciphering communication between entities i,j, by using a common ciphering key, both entities i,j, generate the common ciphering key by operating an identifier transformation algorithm and a secret personal key distributed from a center in advance on identifiers of communication partnesrs (procedure 3). Furthermore, a transmitter side generates transitory ciphering communication random number data, the random number data are ciphered by using a common ciphering key and uses the random data as a key to cipher a plain sentence and a ciphering communication text by matching the keys is generated (procedure 4). A receiver side decodes the ciphered random number data of a ciphering communication text by a common ciphering key and the decoded random number data are used for a key to decode the plain text.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、ネットワーク上の
エンティティ間で互いの共通の暗号鍵を使用して暗号通
信を行う共通鍵通信方法に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to a common key communication method 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 intended to provide a communication method.

【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. It is an object of the present invention to provide a common key communication method that can enhance security against various attacks including a secret algorithm of a center.

【0011】[0011]

【課題を解決するための手段】本発明の共通鍵通信方法
はかかる目的を達成するために、複数のエンティティを
含むネットワークにおいて、通信を行うエンティティ間
で通信データの暗号・復号化を行うための共通の暗号鍵
を使用して前記通信データの授受を行う共通鍵通信方法
であって、前記通信データの送信側で乱数データを鍵と
して該通信データを暗号化すると共に該乱数データを前
記共通の暗号鍵により暗号化して、その暗号化された乱
数データを前記暗号化された通信データと共に該通信デ
ータの受信側に送信し、該通信データの受信側では、前
記共通の暗号鍵により前記暗号化された乱数データを復
号すると共にその復号した乱数データを鍵として前記暗
号化された通信データを復号することを特徴とする。
In order to achieve the above object, a common key communication method according to the present invention is a method for encrypting / decrypting communication data between communicating entities in a network including a plurality of entities. A common key communication method for transmitting and receiving the communication data using a common encryption key, wherein the communication data is encrypted by using random number data as a key on the transmission side of the communication data, and the random number data is transmitted to the common data. Encrypted with an encryption key, and transmits the encrypted random number data together with the encrypted communication data to a receiving side of the communication data. On the receiving side of the communication data, the encrypted data is encrypted by the common encryption key. And decrypting the encrypted communication data using the decrypted random number data as a key.

【0012】かかる本発明によれば、前記通信データの
送信側で乱数データを鍵として該通信データを暗号化す
ると共に該乱数データを前記共通の暗号鍵により暗号化
して、その暗号化された乱数データを前記暗号化された
通信データと共に該通信データの受信側に送信するの
で、前記暗号鍵を解読しよとするときの該暗号鍵の情報
は、乱数データにより暗号化された通信データではな
く、暗号鍵により暗号化された乱数データに含まれるこ
ととなる。そして、該乱数データ自体は、特徴的な情報
が乏しいため、暗号化された乱数データから暗号鍵を解
読することは極めて困難なものとなる。また、通信デー
タは、乱数データにより暗号化されるため、通信データ
の安全性も十分に確保される。そして、通信データの受
信側では、送信側と共通の暗号鍵を使用することで、前
記乱数データを復号することができ、さらにその復号し
た乱数データを鍵として最終的に所望の通信データを復
号することができ、支障なく暗号通信が行われることと
なる。
According to 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 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 not communication data encrypted by random number data, , Are included in the random number data encrypted by the encryption key. 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. Then, the communication data receiving side can decrypt the random number data by using a common encryption key with the transmitting side, and finally decrypts the desired communication data using the decrypted random number data as a key. The encryption 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】かかる本発明では、前記乱数データは一回
性の乱数データであることが好ましい。すなわち、該一
回性の乱数データは、再現性がなく、もしくは再現性に
極めて乏しい乱数データを意味し、さらに詳しくは乱数
データを構成する各ビット数値の出現頻度がいずれの数
値でも同等で、また乱数データの相関がないものであ
り、このような乱数データは、例えば人間がある語句も
しくは文章をコンピュータに入力する際のタイミングに
基づいて生成することが可能である。そして、このよう
な偶然的な乱数データを鍵として通信データを暗号化
し、また、該乱数データを暗号鍵により暗号化すること
で、該暗号鍵や通信データの解読がより一層困難なもの
となる。
In the present invention, the random number data is preferably 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. .

【0015】この場合、前記一回性の乱数データは、前
記通信データの送信側のエンティティの所定の処理に基
づき生成し、より具体的には、前記所定の処理は前記各
エンティティの人間による入力操作であり、その入力操
作の時間的タイミングに基づき前記一回性の乱数データ
を決定する。
[0015] In this case, the one-time random number data is generated based on a predetermined process of an entity on the transmitting side of the communication data, and more specifically, the predetermined process is performed by a human input of each entity. The one-time random number data is determined based on the temporal timing of the input operation.

【0016】このように、各エンティティの人間による
入力操作(例えばある文章や語句を入力する操作)の時
間的タイミングに基づき乱数データを生成することで、
その乱数データは、再現性がなく、もしくは再現性に極
めて乏しいものとなり、前記一回性の個別乱数データを
的確に生成することができる。
As described above, by generating random number data based on the temporal timing of a human input operation (for example, an operation of inputting a certain sentence or phrase) of each entity,
The random number data has no reproducibility or is extremely poor in reproducibility, and the one-time individual random number data can be generated accurately.

【0017】また、本発明では、前記各エンティティに
は、あらかじめ前記ネットワークに設けられたセンター
が各エンティティに固有の識別子を、各エンティティに
共通で且つ該センターのみが保持するセンターアルゴリ
ズムにより変換して生成された各エンティティに固有の
個人鍵が配付されており、前記共通の暗号鍵は、前記通
信データの通信を行う際に、通信相手側のエンティティ
に固有の識別子に、各エンティティが保持する自己の前
記個人鍵を作用させて生成する。
Further, in the present invention, each of the entities converts a unique identifier of each entity into a center provided in advance in the network by a center algorithm which is common to each entity and held only by the center. A personal key unique to each generated entity is distributed, and the common encryption key is used as an identifier unique to the entity on the communication partner side when performing the communication of the communication data. Is generated by operating the private key.

【0018】このように各エンティティに固有の識別子
を、各エンティティに共通で且つ該センターのみが保持
するセンターアルゴリズムにより変換して生成された各
エンティティに固有の個人鍵を各エンティティに前記セ
ンターから配付しておき、通信に際して、通信相手側の
エンティティの識別子を自己の個人鍵に作用させるだけ
で、エンティティ同士の共通の暗号鍵を生成するシステ
ムでは、前述の如く、暗号鍵や通信データの解読が困難
なものとなることから、前記個人鍵やセンターアルゴリ
ズムの解読も困難なものとなる。このため、暗号通信シ
ステムの全体的な安全性も確保することができる。
In this way, a private key unique to each entity generated by converting an identifier unique to each entity by a center algorithm common to each entity and held only by the center is distributed to each entity from the center. In addition, in communication, a system that generates a common encryption key between entities only by applying the identifier of the entity of the communication partner to its own private key at the time of communication, as described above, decrypts the encryption key and communication data. Since it becomes difficult, it becomes difficult to decrypt the private key and the center algorithm. Therefore, the overall security of the cryptographic communication system can be ensured.

【0019】尚、前記識別子は、各エンティティの氏
名、住所等の他、ネットワーク上のメールアドレス、ド
メイン名、あるいはそれらを組み合わせたもの等、各エ
ンティティに対して固定的に用いられ、且つ少なくとも
通信相手に対して公開性のあるものであればよい。
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, address, etc. of each entity. Anything that is open to the other party may be used.

【0020】この場合、各エンティティの識別子として
例えば氏名を用いると、一般に該識別子の分散性が悪く
(識別子の値の分布の偏りを生じやすい)、ひいては、
該識別子を前記センターアルゴリズムにより変換して生
成される前記個人鍵にも類似のものが多数現れやすい。
このため、所謂、差分攻撃によって、他人の個人鍵や前
記センターアルゴリズムが解読される虞れがある。
In this case, if, for example, a name is used as an identifier of each entity, the dispersibility of the identifier is generally poor (the distribution of identifier values tends to be biased).
Many similar keys are likely to appear in the personal key generated by converting the identifier by the center algorithm.
For this reason, there is a possibility that the private key of another person or the center algorithm may be decrypted by a so-called differential attack.

【0021】そこで、本発明では、前記センターアルゴ
リズムは、前記各エンティティの識別子を積分変換する
積分変換アルゴリズムを含むと共に、各エンティティに
は、前記個人鍵と前記積分変換アルゴリズムとが前記セ
ンターからあらかじめ配付されており、前記共通の暗号
鍵は、通信相手側のエンティティの識別子に、各エンテ
ィティが保持する自己の前記積分変換アルゴリム及び個
人鍵を作用させて生成する。このように各エンティティ
の個人鍵を、各エンティティの識別子に前記積分変換ア
ルゴリズムを含むセンターアルゴリズムを施して生成す
ることで、識別子に前記積分変換アルゴリムが作用して
なるデータの分散性が高まり、ひいては前記個人鍵の分
散性が高まる。これにより、該個人鍵や前記センターア
ルゴリムの差分攻撃等による解読が困難なものとなり、
暗号通信システム全体の安全性を高めることができる。
そして、この場合、前記個人鍵には、前記積分変換アル
ゴリズムに基づく成分が含まれているので、通信相手側
のエンティティの識別子に、前記個人鍵だけでなく、該
個人鍵と共に各エンティティにあらかじめ配付される前
記積分変換アルゴリムをも作用させることで、前記セン
ターアルゴリズムの積分変換アルゴリズムを除くアルゴ
リズム部分(この部分は前述の対称性を有するものとす
る)によって、エンティティ同士の暗号鍵を生成するこ
とができる。
Therefore, in the present invention, the center algorithm includes an integral conversion algorithm for performing integral conversion of the identifier of each entity, and each entity is provided with the private key and the integral conversion algorithm in advance from the center. The common encryption key is generated by applying the integral conversion algorithm and the private key of the entity held by each entity to the identifier of the entity on the communication partner side. In this way, by generating the private key of each entity by applying the center algorithm including the integral transformation algorithm to the identifier of each entity, the dispersibility of data obtained by the integral transformation algorithm acting on the identifier is increased, and as a result, The dispersibility of the private key is increased. This makes it difficult to decipher the personal key or the center algorithm by a differential attack or the like,
The security of the entire cryptographic communication system can be improved.
In this case, since the private key includes a component based on the integral conversion algorithm, the private key is distributed to each entity together with the private key in addition to the private key in the identifier of the communication partner entity. Also, by causing the integral transformation algorithm to operate, an encryption key between the entities can be generated by an algorithm part other than the integral transformation algorithm of the center algorithm (this part has the above-mentioned symmetry). it can.

【0022】このように前記センターアルゴリズムに積
分変換アルゴリズムを含めた本発明では、前記積分変換
アルゴリズムとしては、フーリエ変換(高速フーリエ変
換を含む)、ラプラス変換、ミラー変換、ヒルベルト変
換等が挙げられ、これらのいずれの積分変換を用いるこ
とも可能であるが、これらの積分変換は解析学的な無限
区間上で定義されたものである。これに対して、本発明
において積分変換アルゴリズムを施す識別子は、有限区
間上で表されるもの(例えば有限環上の剰余類)である
ため、コンピュータ等を用いて識別子のデータを積分変
換したとき、変換結果の異常分散(エイシアリング)が
生じやすい。
As described above, in the present invention in which the center algorithm includes an integral transform algorithm, the integral transform algorithm includes Fourier transform (including fast Fourier transform), Laplace transform, Miller transform, Hilbert transform, and the like. Although any of these integral transforms can be used, these integral transforms are defined on an analytically 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.

【0023】そこで、本発明では、好ましくは前記積分
変換アルゴリズムは重み関数付きの積分変換アルゴリズ
ムを用いる。このように、識別子に積分変換を施すに際
して、重み関数を付加することで、上記の異常分散を防
止することができる。さらに、該重み関数は、異常分散
を防止できるものであれば任意に設定することができる
ので、この重み関数を付加した積分変換アルゴリズムを
含むセンターアルゴリズムにより識別子を変換して成る
前記個人鍵には、該重み関数に基づく未知の成分が付加
されることとなる。その結果、該個人鍵や秘密アルゴリ
ズムの解読がより一層困難となって、本発明を適用した
暗号通信システムの安全性をさらに高めることができる
こととなる。
Therefore, in the present invention, preferably, the integral conversion algorithm uses an integral conversion algorithm with a weight function. As described above, when performing the integral conversion on the identifier, by adding the weight function, it is possible to prevent the abnormal dispersion described above. 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 secret algorithm becomes more difficult, and the security of the cryptographic communication system to which the present invention is applied can be further improved.

【0024】このように重み関数を付加する場合、該重
み関数は、基本的には識別子のデータの区間の端側で、
値が「0」に近づくように設定するのであるが、この場
合、本発明の第1の態様では、さらに、該重み関数は前
記センターにおいて生成された乱数データにより予想の
つかないパターンに決定し、より好ましくは、該乱数デ
ータとして一回性の乱数データを用いる。ここで、乱数
データによる重み関数の決定は、前記乱数データによっ
て、識別子のデータの区間における重み関数の値の変化
度合い(区間の端側で「0」に近づく形態)を決定する
ことで行われる。
When a weight function is added in this manner, the weight function is basically provided at the end of the data section of the identifier.
The value is set so as to approach “0”. In this case, in the first aspect of the present invention, the weight function is further determined to be an unpredictable pattern by the random number data generated in the center. More preferably, one-time random number data is used as the random number data. 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. .

【0025】このように重み関数を乱数データによって
予想のつかないパターンに決定しておくことで、攻撃者
にとっては、該重み関数を予測しづらくなり、本発明を
適用した暗号通信システムの安全性を高めることができ
る。特に、一回性の乱数データにより重み関数を決定し
たときには、該乱数データの再現性が排除されるので、
さらにシステムの安全性が高まる。
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.

【0026】前述の如く、前記積分変換アルゴリズム
は、各種のものを適用できるが、特に、本発明では該積
分変換アルゴリズムとしてフーリエ変換アルゴリズムを
用いることが好ましい。すなわち、該フーリエ変換は、
コンピュータを用いて迅速且つ容易に行うことができる
積分変換であり、また、一般に変換結果の分散化が生じ
やすい。従って、このようなフーリエ変換アルゴリズム
を積分変換アルゴリズムとして用いることで、識別子か
ら前記個人鍵を迅速且つ容易に生成することができるよ
うになると同時に、個人鍵の分散性が効果的に高まっ
て、暗号通信システムの安全性を顕著に高めることがで
きる。
As described 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.

【0027】また、前述の如く、前記センターアルゴリ
ズムに積分変換アルゴリズムを含めた本発明では、さら
に好ましくは、前記センターは、前記各エンティティの
識別子を前記センターアルゴリズムにより変換したもの
に、さらに各エンティティに固有の一回性の個別乱数デ
ータによりランダマイズ変換を施して前記個人鍵を生成
すると共に、該個人鍵に含まれる前記ランダマイズ変換
の成分を打ち消すためのアルゴリズムと前記積分変換ア
ルゴリズムとからなる識別子変換アルゴリズムを前記個
人鍵と共に各エンティティに配付しておき、前記共通の
暗号鍵は、通信相手側のエンティティの識別子に、各エ
ンティティが保持する自己の前記識別子変換アルゴリズ
ム及び個人鍵を作用させて生成する。
Further, as described above, in the present invention in which the center algorithm includes an integral conversion algorithm, more preferably, the center converts the identifier of each entity by the center algorithm, and further converts each identifier into each entity. An identifier conversion algorithm including an algorithm for canceling a component of the randomization transformation included in the private key and a randomizing transformation by using a unique one-time individual random number data and the integral transformation algorithm; Is distributed to each entity together with the private key, and the common encryption key is generated by applying the identifier conversion algorithm and the private key of the entity held by each entity to the identifier of the communication partner entity.

【0028】ここで、前記ランダマイズ変換は、前記識
別子を前記センターアルゴリズムにより変換したものを
表すデータ列の各ビットの値を前記個別乱数データによ
り変更し、あるいは、該データ列を配置変換し、もしく
は、それらを組み合わせて処理することで行われるもの
である。
Here, the randomization conversion is performed by changing the value of each bit of a data string representing the identifier converted by the center algorithm using the individual random number data, or by arranging and converting the data string, or , And a combination thereof.

【0029】これによれば、前記個人鍵には、前記セン
ターアルゴリズムに加えて、前記ランダマイズ変換によ
る成分が含まれることとなる。そして、このとき、該ラ
ンダマイズ変換は、その変換を各エンティティに固有で
且つ各エンティティには不知の一回性の個別乱数データ
(再現性がなく、もしくは再現性に極めて乏しい乱数デ
ータ)により行うため、各エンティティの個人鍵毎に、
各別の偶然的な成分が含まれることとなる。その結果、
暗号通信システムの種々の攻撃に対する安全性をより一
層強固なものとすることができる。
According to this, in addition to the center algorithm, the private key includes a component by the randomizing 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.

【0030】尚、この場合、通信に際して、相手側のエ
ンティティの識別子に作用させる個人鍵には、各エンテ
ィティ毎に各別の前記ランダマイズ変換による成分が含
まれている。このため、それを打ち消すためのアルゴリ
ズムと前記積分変換アルゴリズムとからなる識別子変換
アルゴリズムを前記個人鍵と共に各エンティティに配付
しておき、通信に際しては、相手側のエンティティの識
別子に該識別子変換アルゴリズム及び個人鍵を作用させ
ることで、通信を行うエンティティ同士で共通の暗号鍵
を生成することができる。
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 random transformation for each entity. For this reason, an identifier conversion algorithm including an algorithm for canceling this and the integral conversion algorithm is distributed to each entity together with the private key, and upon communication, the identifier conversion algorithm and the private By using the key, a common encryption key can be generated between the communicating entities.

【0031】このようにランダマイズ変換を行う場合、
該ランダマイズ変換は、例えば前記各エンティティの識
別子を前記センターアルゴリズムにより変換したものを
表すデータ列を前記一回性の個別乱数データにより配置
変換することにより行うことができる。
When performing the randomization conversion 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.

【0032】さらに好ましくは、前記各エンティティの
識別子を前記センターアルゴリズムにより変換したもの
を表すデータ列は複数の不要ビットを含み、前記ランダ
マイズ変換は、該不要ビットの値を前記一回性の個別乱
数データによりランダム化し、さらに該不要ビットを含
む前記データ列の全体を配置変換することにより行う。
[0032] 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 converting the value of the unnecessary bits to the one-time individual random number. This is performed by randomizing the data, and further rearranging the entire data string including the unnecessary bits.

【0033】このように各エンティティの識別子を前記
センターアルゴリズムにより変換したものを表すデータ
列の不要ビットの値を前記一回性の個別乱数データによ
りランダム化し、さらに該不要ビットを含む前記データ
列の全体を配置変換することで、攻撃者(暗号通信シス
テムの解読者)にとっては、獲得したデータのどこに不
要ビットに対応する部分があり、また、どこに必要なデ
ータがあるかが判らなくなり、暗号通信システムの安全
性が高まる。
As described above, the value of the unnecessary bit of the data sequence 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 sequence including the unnecessary bit is further randomized. By rearranging the entire data, the attacker (the reader of the cryptographic communication system) cannot determine where in the acquired data the unnecessary bits are located and where the required data is located. Increases system security.

【0034】また、前記ランダマイズ変換を行うための
前記一回性の個別乱数データは、前記各エンティティの
所定の処理に基づき生成し、より具体的には、前記所定
の処理は前記各エンティティの人間による入力操作であ
り、その入力操作の時間的タイミングに基づき前記一回
性の個別乱数データを生成する。
The one-time individual random number data for performing the randomizing transformation is generated based on a predetermined process of each entity. More specifically, the predetermined process is performed by a human being of each entity. , And the one-time individual random number data is generated based on the temporal timing of the input operation.

【0035】このように、各エンティティの人間による
入力操作(例えばある文章や語句を入力する操作)の時
間的タイミングに基づき乱数データを生成することで、
その乱数データは、再現性がなく、もしくは再現性に極
めて乏しいものとなり、前記一回性の個別乱数データを
的確に生成することができる。
As described above, by generating random number data based on the temporal timing of an input operation by a human of each entity (for example, an operation of inputting a certain sentence or phrase),
The random number data has no reproducibility or is extremely poor in reproducibility, and the one-time individual random number data can be generated accurately.

【0036】また、本発明では、前述のように積分変換
アルゴリズムを用いる場合の他の態様として、前記各エ
ンティティには、あらかじめ前記ネットワークに設けら
れたセンターが各エンティティに固有の識別子を各エン
ティティに共通で且つ該センターのみが保持するセンタ
ーアルゴリズムにより変換したものに、各エンティティ
に固有の一回性の個別乱数データによりランダマイズ変
換を施して生成された各エンティティに固有の個人鍵
と、該個人鍵に含まれる前記ランダマイズ変換の成分を
打ち消すアルゴリズムを含む識別子変換アルゴリズムと
が前記センターからあらかじめ配付されており、前記共
通の暗号鍵は、通信相手側のエンティティの識別子に、
各エンティティが保持する自己の前記識別子変換アルゴ
リズム及び個人鍵を作用させて生成する。
According to the present invention, as another mode in which the integral conversion algorithm is used as described above, a center provided in advance in the network has an identifier unique to each entity in each entity. A private key unique to each entity, generated by subjecting a common algorithm converted by a center algorithm held only by the center to randomizing transformation using unique random data unique to each entity, and a private key unique to each entity; An identifier conversion algorithm including an algorithm for canceling the component of the randomization conversion included in is distributed in advance from the center, and the common encryption key is an identifier of a communication partner entity,
It is generated by acting on its own identifier conversion algorithm and private key held by each entity.

【0037】かかる本発明によれば、前記各エンティテ
ィの個人鍵は、前記センターにおいて、各エンティティ
の識別子を前記センターアルゴリズム(これは前述の対
称性を有する部分を含むものとする)により変換したも
のに、各エンティティに固有で且つ各エンティティには
不知の一回性の個別乱数データ(再現性がなく、もしく
は再現性に極めて乏しい乱数データ)に基づくランダマ
イズ変換を施して生成されるので、各エンティティの個
人鍵毎に、各別の偶然的な成分が含まれることとなる。
その結果、該個人鍵や前記センターアルゴリズムの解読
が困難なものとなり、暗号通信システム全体の種々の攻
撃に対する安全性を高めることができる。そして、この
場合は、前述で説明した場合と同様に、各エンティティ
の個人鍵には、各エンティティ毎に各別の前記ランダマ
イズ変換による成分が含まれているため、それを打ち消
すためのアルゴリズムを含む前記識別子変換アルゴリズ
ムを前記個人鍵と共に各エンティティに配付しておき、
通信に際して、相手側のエンティティの識別子に、前記
識別子変換アルゴリズム及び個人鍵を作用させること
で、エンティティ同士で共通の暗号鍵を生成することが
できる。
According to the present invention, the private key of each entity is obtained by converting the identifier of each entity in the center by the center algorithm (which includes the above-mentioned symmetric 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 above, since the private key of each entity includes a component by the randomization transformation for each entity, an algorithm for canceling the component is included. The identifier conversion algorithm is distributed to each entity together with the private key,
At the time of communication, by applying the identifier conversion algorithm and the private key to the identifier of the entity on the other end, a common encryption key can be generated between the entities.

【0038】かかる本発明では、前述の場合と同様に、
前記ランダマイズ変換は、前記各エンティティの識別子
を前記センターアルゴリムにより変換したものを表すデ
ータ列を前記一回性の個別乱数データにより配置変換す
ることにより行うことができる。そして、より好ましく
は、前記各エンティティの識別子を前記センターアルゴ
リズムにより変換したものを表すデータ列は複数の不要
ビットを含み、前記ランダマイズ変換は、該不要ビット
の値を前記一回性の個別乱数データによりランダム化
し、さらに該不要ビットを含む前記データ列の全体を配
置変換することにより行う。これにより、本発明を適用
した暗号通信システムの安全性をより高めることができ
る。
In the present invention, similar to the above case,
The randomizing transformation can be performed by rearranging and converting a data string representing an identifier of each entity converted by the center algorithm 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 by rearranging the entire data sequence including the unnecessary bits. Thereby, the security of the cryptographic communication system to which the present invention is applied can be further improved.

【0039】また、前記一回性の個別乱数データは、前
記各エンティティの所定の処理に基づき生成し、より具
体的には、前記所定の処理は前記各エンティティの人間
による入力操作であり、その入力操作の時間的タイミン
グに基づき前記一回性の個別乱数データを生成する。こ
れにより、前記一回性の個別乱数データを的確に生成す
ることができる。
The one-time individual random number data is generated based on a predetermined process of each of the entities. More specifically, the predetermined process is a human input operation of each of the entities. The one-time individual random number data is generated 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 method 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,...). ) Are the unique identifiers yi, yj,...
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 performing encryption (transmission side) and decryption (reception side) of the communication data includes the respective entities i and 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 in 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:
2→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 entities 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 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 (identification conversion R is unique to each entity) as described below, 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.

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

【図1】本発明の共通鍵通信方法の一実施形態を適用し
た暗号通信システムの全体構成を示す図。
FIG. 1 is a diagram showing an entire configuration of a cryptographic communication system to which an embodiment of a common key communication method 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.

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

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.

Claims (20)

【特許請求の範囲】[Claims] 【請求項1】複数のエンティティを含むネットワークに
おいて、通信を行うエンティティ間で通信データの暗号
・復号化を行うための共通の暗号鍵を使用して前記通信
データの授受を行う共通鍵通信方法であって、 前記通信データの送信側で乱数データを鍵として該通信
データを暗号化すると共に該乱数データを前記共通の暗
号鍵により暗号化して、その暗号化された乱数データを
前記暗号化された通信データと共に該通信データの受信
側に送信し、 該通信データの受信側では、前記共通の暗号鍵により前
記暗号化された乱数データを復号すると共にその復号し
た乱数データを鍵として前記暗号化された通信データを
復号することを特徴とする共通鍵通信方法。
In a network including a plurality of entities, a common key communication method for exchanging communication data using a common encryption key for encrypting and decrypting communication data between entities performing communication. The communication data transmission side encrypts the communication data using the random number data as a key, encrypts the random number data with the common encryption key, and encrypts the encrypted random number data. The communication data is transmitted to the receiving side of the communication data, and the receiving side of the communication data decrypts the encrypted random number data with the common encryption key and performs the encryption using the decrypted random number data as a key. A shared key communication method, characterized in that the communication data is decrypted.
【請求項2】前記乱数データは一回性の乱数データであ
ることを特徴とする請求項1記載の共通鍵通信方法。
2. The common key communication method according to claim 1, wherein said random number data is one-time random number data.
【請求項3】前記乱数データは、前記通信データの送信
側のエンティティの所定の処理に基づき生成することを
特徴とする請求項1又は2記載の共通鍵通信方法。
3. The common key communication method according to claim 1, wherein the random number data is generated based on a predetermined process of an entity on a transmitting side of the communication data.
【請求項4】前記所定の処理は前記各エンティティの人
間による入力操作であり、その入力操作の時間的タイミ
ングに基づき前記一回性の乱数データを決定することを
特徴とする請求項3記載の共通鍵通信方法。
4. The method according to claim 3, wherein the predetermined processing is an input operation by a human of each of the entities, and the one-time random number data is determined based on a temporal timing of the input operation. Common key communication method.
【請求項5】前記各エンティティには、あらかじめ前記
ネットワークに設けられたセンターが各エンティティに
固有の識別子を、各エンティティに共通で且つ該センタ
ーのみが保持するセンターアルゴリズムにより変換して
生成された各エンティティに固有の個人鍵が配付されて
おり、 前記共通の暗号鍵は、前記通信データの通信を行う際
に、通信相手側のエンティティに固有の識別子に、各エ
ンティティが保持する自己の前記個人鍵を作用させて生
成することを特徴とする請求項1乃至4のいずれかに記
載の共通鍵通信方法。
5. Each of the entities generated by a center provided in advance in the network by converting a unique identifier of each entity by a center algorithm common to each entity and held only by the center. A personal key unique to the entity is distributed, and the common encryption key is, when performing communication of the communication data, an identifier unique to the entity on the communication partner side, and the personal key of its own held by each entity. The common key communication method according to any one of claims 1 to 4, wherein the common key communication method is generated by operating.
【請求項6】前記センターアルゴリズムは、前記各エン
ティティの識別子を積分変換する積分変換アルゴリズム
を含むと共に、各エンティティには、前記個人鍵と前記
積分変換アルゴリズムとが前記センターからあらかじめ
配付されており、 前記共通の暗号鍵は、通信相手側のエンティティの識別
子に、各エンティティが保持する自己の前記積分変換ア
ルゴリム及び個人鍵を作用させて生成することを特徴と
する請求項5記載の共通鍵通信方法。
6. The center algorithm includes an integral conversion algorithm for performing integral conversion of the identifier of each entity, and each entity is provided with the private key and the integral conversion algorithm in advance from the center. 6. The common key communication method according to claim 5, wherein the common encryption key is generated by causing the integral conversion algorithm and the private key of the entity held by each entity to act on the identifier of the entity on the communication partner side. .
【請求項7】前記積分変換アルゴリズムは重み関数付き
の積分変換アルゴリズムであることを特徴とする請求項
6記載の共通鍵通信方法。
7. The method according to claim 6, wherein said integral conversion algorithm is an integral conversion algorithm with a weight function.
【請求項8】前記重み関数は前記センターにおいて生成
された乱数データにより予想のつかないパターンに決定
されていることを特徴とする請求項7記載の共通鍵通信
方法。
8. The common key communication method according to claim 7, wherein said weight function is determined as an unpredictable pattern by random number data generated at said center.
【請求項9】前記乱数データは一回性の乱数データであ
ることを特徴とする請求項8記載の共通鍵通信方法。
9. The method according to claim 8, wherein said random number data is one-time random number data.
【請求項10】前記積分変換アルゴリズムはフーリエ変
換アルゴリズムであることを特徴とする請求項6乃至9
のいずれかに記載の共通鍵通信方法。
10. The method according to claim 6, wherein said integral transform algorithm is a Fourier transform algorithm.
The common key communication method according to any one of the above.
【請求項11】前記センターは、前記各エンティティの
識別子を前記センターアルゴリズムにより変換したもの
に、さらに各エンティティに固有の一回性の個別乱数デ
ータによりランダマイズ変換を施して前記個人鍵を生成
すると共に、該個人鍵に含まれる前記ランダマイズ変換
の成分を打ち消すためのアルゴリズムと前記積分変換ア
ルゴリズムとからなる識別子変換アルゴリズムを前記個
人鍵と共に各エンティティに配付しておき、 前記共通の暗号鍵は、通信相手側のエンティティの識別
子に、各エンティティが保持する自己の前記識別子変換
アルゴリズム及び個人鍵を作用させて生成することを特
徴とする請求項6乃至10のいずれかに記載の共通鍵通
信方法。
11. The center generates a personal key by subjecting an identifier of each entity to conversion by the center algorithm, and further performing randomization conversion using unique random data unique to each entity once. An identifier conversion algorithm comprising an algorithm for canceling the randomization conversion component contained in the private key and the integral conversion algorithm is distributed to each entity together with the private key, and the common encryption key is 11. The common key communication method according to claim 6, wherein the identifier is generated by applying the identifier conversion algorithm and the private key of the entity held by each entity to the identifier of the entity on the side.
【請求項12】前記ランダマイズ変換は、前記各エンテ
ィティの識別子を前記センターアルゴリズムにより変換
したものを表すデータ列を前記一回性の個別乱数データ
により配置変換することにより行うことを特徴とする請
求項11記載の共通鍵通信方法。
12. The randomizing transformation according to claim 1, wherein the randomization transformation is performed by rearranging and converting a data sequence representing the identifier of each entity converted by the center algorithm using the one-time individual random number data. 12. The common key communication method according to item 11.
【請求項13】前記各エンティティの識別子を前記セン
ターアルゴリズムにより変換したものを表すデータ列は
複数の不要ビットを含み、前記ランダマイズ変換は、該
不要ビットの値を前記一回性の個別乱数データによりラ
ンダム化し、さらに該不要ビットを含む前記データ列の
全体を配置変換することにより行うことを特徴とする請
求項12記載の共通鍵通信方法。
13. A data string representing a result obtained by converting the identifier of each entity by the center algorithm includes a plurality of unnecessary bits. In the randomizing conversion, the value of the unnecessary bits is converted by the one-time individual random number data. 13. The common key communication method according to claim 12, wherein the method is performed by randomizing and further performing layout conversion of the entire data string including the unnecessary bit.
【請求項14】前記一回性の個別乱数データは、前記各
エンティティの所定の処理に基づき生成することを特徴
とする請求項11乃至13のいずれかに記載の共通鍵通
信方法。
14. The common key communication method according to claim 11, wherein said one-time individual random number data is generated based on predetermined processing of each of said entities.
【請求項15】前記所定の処理は前記各エンティティの
人間による入力操作であり、その入力操作の時間的タイ
ミングに基づき前記一回性の個別乱数データを生成する
ことを特徴とする請求項14記載の暗号鍵共有方法。
15. The method according to claim 14, wherein the predetermined processing is an input operation by a human of each of the entities, and the one-time individual random number data is generated based on a temporal timing of the input operation. Encryption key sharing method.
【請求項16】前記各エンティティには、あらかじめ前
記ネットワークに設けられたセンターが各エンティティ
に固有の識別子を各エンティティに共通で且つ該センタ
ーのみが保持するセンターアルゴリズムにより変換した
ものに、各エンティティに固有の一回性の個別乱数デー
タによりランダマイズ変換を施して生成された各エンテ
ィティに固有の個人鍵と、該個人鍵に含まれる前記ラン
ダマイズ変換の成分を打ち消すアルゴリズムを含む識別
子変換アルゴリズムとが前記センターからあらかじめ配
付されており、 前記共通の暗号鍵は、通信相手側のエンティティの識別
子に、各エンティティが保持する自己の前記識別子変換
アルゴリズム及び個人鍵を作用させて生成することを特
徴とする請求項15記載の共通鍵通信方法。
16. Each of the entities includes a center provided in advance in the network, which converts an identifier unique to each entity by a center algorithm which is common to each entity and held only by the center. The private key unique to each entity generated by performing randomization conversion using unique one-time individual random number data, and an identifier conversion algorithm including an algorithm for canceling the randomization conversion component included in the private key are the center. The common encryption key is generated by applying the identifier conversion algorithm and the private key of the entity held by each entity to the identifier of the entity on the communication partner side. 15. The common key communication method according to item 15.
【請求項17】前記ランダマイズ変換は、前記各エンテ
ィティの識別子を前記センターアルゴリズムにより変換
したものを表すデータ列を前記一回性の個別乱数データ
により配置変換することにより行うことを特徴とする請
求項16記載の共通鍵通信方法。
17. The randomizing conversion according to claim 1, wherein the randomization conversion is performed by rearranging and converting 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. 16. The common key communication method according to item 16.
【請求項18】前記各エンティティの識別子を前記セン
ターアルゴリズムにより変換したものを表すデータ列は
複数の不要ビットを含み、前記ランダマイズ変換は、該
不要ビットの値を前記一回性の個別乱数データによりラ
ンダム化し、さらに該不要ビットを含む前記データ列の
全体を配置変換することにより行うことを特徴とする請
求項17記載の共通鍵通信方法。
18. A data string representing a result obtained by converting the identifier of each entity by the center algorithm includes a plurality of unnecessary bits. In the randomizing conversion, the value of the unnecessary bits is calculated by the one-time individual random number data. 18. The common key communication method according to claim 17, wherein the method is performed by randomizing and further performing a layout conversion of the entire data string including the unnecessary bit.
【請求項19】前記一回性の個別乱数データは、前記各
エンティティの所定の処理に基づき生成することを特徴
とする請求項16乃至18のいずれかに記載の共通鍵通
信方法。
19. The common key communication method according to claim 16, wherein said one-time individual random number data is generated based on predetermined processing of each of said entities.
【請求項20】前記所定の処理は前記各エンティティの
人間による入力操作であり、その入力操作の時間的タイ
ミングに基づき前記一回性の個別乱数データを生成する
ことを特徴とする請求項19記載の共通鍵通信方法。
20. The method according to claim 19, wherein the predetermined processing is an input operation by a human of each of the entities, and the one-time individual random number data is generated based on a temporal timing of the input operation. Common key communication method.
JP9023746A 1996-02-21 1997-02-06 Common key communication system Expired - Lifetime JP2886517B2 (en)

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-210376 1996-02-21
JP7083296 1996-02-21
JP8-70835 1996-02-21
JP7083596 1996-02-21
JP8-70832 1996-02-21
JP21037696 1996-07-08
JP9023746A JP2886517B2 (en) 1996-02-21 1997-02-06 Common key communication system

Publications (2)

Publication Number Publication Date
JPH1079729A true JPH1079729A (en) 1998-03-24
JP2886517B2 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)

Cited By (4)

* Cited by examiner, † Cited by third party
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
JP2011145512A (en) * 2010-01-15 2011-07-28 Nippon Telegr & Teleph Corp <Ntt> Key generating device, key generating method, program, and recording medium
JP2012521136A (en) * 2009-03-19 2012-09-10 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Method for secure communication in network, communication device, network, and computer program
JP2020113835A (en) * 2019-01-09 2020-07-27 コニカミノルタ株式会社 Encryption device, decryption device, key generation device, information processing device, and program

Cited By (4)

* Cited by examiner, † Cited by third party
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
JP2012521136A (en) * 2009-03-19 2012-09-10 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Method for secure communication in network, communication device, network, and computer program
JP2011145512A (en) * 2010-01-15 2011-07-28 Nippon Telegr & Teleph Corp <Ntt> Key generating device, key generating 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

Also Published As

Publication number Publication date
JP2886517B2 (en) 1999-04-26

Similar Documents

Publication Publication Date Title
US5987128A (en) Method of effecting communications using common cryptokey
Mushtaq et al. A survey on the cryptographic encryption algorithms
Qin et al. Attribute-based encryption with efficient verifiable outsourced decryption
CN111510281B (en) Homomorphic encryption method and device
CN101202623B (en) Method of generating message authentication code, authentication/encryption and authentication/decryption methods
Li et al. Efficient multi-key FHE with short extended ciphertexts and directed decryption protocol
Koko et al. Comparison of Various Encryption Algorithms and Techniques for improving secured data Communication
Zhao et al. Are you the one to share? Secret transfer with access structure
WO2014030706A1 (en) Encrypted database system, client device and server, method and program for adding encrypted data
Sekar et al. Comparative study of encryption algorithm over big data in cloud systems
Aloufi et al. Computing blindfolded on data homomorphically encrypted under multiple keys: An extended survey
US11271743B2 (en) Plaintext equivalence proof techniques in communication systems
Bavdekar et al. Post quantum cryptography: Techniques, challenges, standardization, and directions for future research
Venukumar et al. A survey of applications of threshold cryptography—proposed and practiced
Joseph et al. A Novel Algorithm for secured data sharing in cloud using GWOA-DNA cryptography
JP2886517B2 (en) Common key communication system
Nissar et al. Implementation of security enhancement in AES by inducting dynamicity in AES s-box
Zhan et al. Improved proxy re-encryption with delegatable verifiability
JP2886516B2 (en) Encryption key sharing system
JP2004246350A (en) Enciphering device, deciphering device, enciphering system equipped with the same, enciphering method, and deciphering method
Bhat et al. A secure two-party PIR for privacy applications
Blaise et al. An Understanding and Perspectives of End-To-End Encryption
CN114500006B (en) Query request processing method and device
Tueno et al. Secure computation of the kth-ranked element in a star network
Oguntunde et al. A comparative study of some traditional and modern cryptographic techniques