JPH08251156A - Method and system for ciphering electronic mail - Google Patents

Method and system for ciphering electronic mail

Info

Publication number
JPH08251156A
JPH08251156A JP7052252A JP5225295A JPH08251156A JP H08251156 A JPH08251156 A JP H08251156A JP 7052252 A JP7052252 A JP 7052252A JP 5225295 A JP5225295 A JP 5225295A JP H08251156 A JPH08251156 A JP H08251156A
Authority
JP
Japan
Prior art keywords
key
sender
mod
exp
master
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.)
Pending
Application number
JP7052252A
Other languages
Japanese (ja)
Inventor
Genji Nishioka
玄次 西岡
Satoshi Miyazaki
聡 宮崎
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP7052252A priority Critical patent/JPH08251156A/en
Publication of JPH08251156A publication Critical patent/JPH08251156A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE: To provide an electronic mail ciphering method which can be used with a normal mail together without specifying the mail system and the kind of device, reduces calculation processing and the burden of memory for attaining a security function for persons both transmitting electronic mail and receiving it, and is provided with high safety against tapping and aunauthorized persons who set up to be authorized without any need to worry about the coincidence of users' keys. CONSTITUTION: Each user of a communication network prepares key information of each and opens only an open key. Next, the transmitter A and the receiver B of the electronic mail share master keys KA, B and KB, A from his own secret key and the open key of the opposite side and the transmitter ciphers the body sentences P of the mail by a data ciphering key (k) through the use of the secret key cipher. Then the data ciphering key is ciphered by the master key. Then, they are sent to the receiver and the receiver deciphers the data ciphering key (k) through the use of the master key KB, A and deciphers the mail body sentence P from the data ciphering key (k) in addition.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、通信ネットワークを介
して文書を送受信する電子メール通信システムにおい
て、ネットワーク上での盗聴や不正者によるなりすまし
に対して安全性を向上させた電子メール暗号化方法に関
する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an electronic mail communication method for transmitting and receiving a document via a communication network, and an electronic mail encryption method with improved security against eavesdropping on the network and spoofing by an unauthorized person. Regarding

【0002】[0002]

【従来の技術】Internetにおける電子メールのセキュリ
ティを強化することを目的として、文献「Linn,J., et
al.,“Privacy Enhancement for Internet Electronic
Mail:Part I,II,III,IV”,RFC-1421-1424,1993」に
記載のPEM(Privacy Enhanced Mail)が提案されて
いる。以下、PEMの電子メール暗号化技法について簡
単に説明する。
2. Description of the Related Art For the purpose of enhancing the security of electronic mail on the Internet, the document "Linn, J., et.
al., “Privacy Enhancement for Internet Electronic
Mail: Part I, II, III, IV ", RFC-1421-1424, 1993", PEM (Privacy Enhanced Mail) has been proposed. The PEM email encryption technique is briefly described below.

【0003】PEMでは、鍵管理に公開鍵暗号RSA
(参考文献「R.L.Rivest,A.Shamir,L.Adleman,“A Meth
od for Obtaining Digital Signatures and Public Key
Cryptosystems”,Communications of the ACM,Vol.21,1
978」)を利用し、データの暗号化に米国暗号標準である
秘密鍵暗号DES(参考文献「Data EncryptionStandar
d,FIPS-PUB-46,1977」)を用いている。
In PEM, public key encryption RSA is used for key management.
(Reference "RL Rivest, A. Shamir, L. Adleman," A Meth
od for Obtaining Digital Signatures and Public Key
Cryptosystems ”, Communications of the ACM, Vol.21,1
978 ”) and uses a secret key encryption DES (reference“ Data Encryption Standar ”, which is an American encryption standard for data encryption).
d, FIPS-PUB-46, 1977 ”).

【0004】送信者Aは受信者Bにネットワークを介し
て電子メールを送る。
The sender A sends an electronic mail to the recipient B via the network.

【0005】Step 1.Aはデータ暗号化鍵Kをランダ
ムに作り、鍵Kを用いてメール本文PをDESにより暗
号化する。すなわち、メール本文Pの暗号文C1を、
Step 1. A randomly creates a data encryption key K and uses the key K to encrypt the mail text P by DES. That is, the ciphertext C 1 of the mail body P is

【0006】[0006]

【数63】C1=E(K;P), とする。[Equation 63] Let C 1 = E (K; P).

【0007】Step 2.AはBの公開鍵(eB,nB)を
用いて鍵KをRSAにより暗号化する。 すなわ
ち、鍵Kの暗号文C2を、
Step 2. A uses the public key (e B , n B ) of B to encrypt the key K by RSA. That is, the ciphertext C 2 of the key K is

【0008】[0008]

【数64】C2=exp(K:eB)(mod nB), とする。ただし、exp(a:x)はaをx乗した値を表わ
す。
Let C 2 = exp (K: e B ) (mod n B ). However, exp (a: x) represents a value of a raised to the power x.

【0009】Step 3.Aはメール本文Pを公開情報で
あるハッシュ関数fを用いて圧縮し、Aの秘密鍵dA
公開鍵nAを用いてf(P)にRSA署名を行なう。すな
わち、f(P)に対する署名文sgnA(P)を、
Step 3. A uses the hash function f, which is public information, to compress the mail body P, and uses the private key d A and public key n A of A to perform an RSA signature on f (P). That is, the signature sentence sgn A (P) for f (P) is

【0010】[0010]

【数65】sgnA(P)=exp(f(P):dA)(mod nA), とする。[Expression 65] sgn A (P) = exp (f (P): d A ) (mod n A ).

【0011】Step 4.AはC1,C2,sgnA(P)をBに
送る。
Step 4. A sends C 1 , C 2 , and sgn A (P) to B.

【0012】Step 5.Bは自分の秘密鍵dBを用いて、
2から、
Step 5. B uses his private key d B ,
From C 2 ,

【0013】[0013]

【数66】K=exp(C2:dB)(mod nB), により、データ暗号化鍵Kを復号化する。The data encryption key K is decrypted by K = exp (C 2 : d B ) (mod n B ).

【0014】Step 6.Bは鍵Kを用いて、Step 6. B uses the key K,

【0015】[0015]

【数67】P=D(K;C1), により、メール本文Pを復号化する。The mail body P is decrypted by P = D (K; C 1 ).

【0016】Step 7.Bはメール本文PがAから送ら
れてきたことを確めるため、ハッシュ関数fとAの公開
鍵(eA,nA)を用いて、
Step 7. B uses the hash function f and A's public key (e A , n A ) to confirm that the mail text P is sent from A ,

【0017】[0017]

【数68】f(P)=exp(sgnA(P):eA)(mod nA), を確認する。[Number 68] f (P) = exp (sgn A (P): e A) (mod n A), to make sure.

【0018】PEMには次の問題点が考えられる。The PEM may have the following problems.

【0019】(1)安全性の立場から、データ暗号化鍵
は頻繁に変更することが望ましい。PEMの場合、電子
メール通信をする機会が多い相手であっても、データ暗
号化鍵を変更する度に相手の公開鍵を用いてRSA暗号
により新しいデータ暗号化鍵を暗号化して送らなければ
ならない。特に、一度に多数の相手にメールを送信した
い場合、RSA暗号は暗号化のための計算量が比較的大
きいため、データ暗号化鍵の暗号化のための計算処理負
担が大きい。
(1) From the viewpoint of security, it is desirable to change the data encryption key frequently. In the case of PEM, even if the partner has a lot of chances to perform e-mail communication, a new data encryption key must be encrypted by RSA encryption using the public key of the partner every time the data encryption key is changed and sent. . In particular, when it is desired to send mail to a large number of parties at the same time, the RSA encryption has a relatively large amount of calculation for encryption, and therefore the calculation processing load for encryption of the data encryption key is large.

【0020】(2)RSA暗号を用いた鍵配送では、鍵
の復号化は受信者の秘密鍵のみで行なわれるため認証機
能はない。そのため、PEMでは、RSAを用いたディ
ジタル署名を付加することで認証機能を実現している。
しかし、ディジタル署名は作成と検証のための計算処理
負担が大きく、さらに、メール暗号文に付加するヘッダ
情報が大きくなる欠点を持つ。
(2) In the key distribution using the RSA encryption, the key is decrypted only by the recipient's private key, and therefore there is no authentication function. Therefore, in PEM, an authentication function is realized by adding a digital signature using RSA.
However, the digital signature has a drawback that the burden of calculation processing for creation and verification is large and that the header information added to the mail ciphertext becomes large.

【0021】(3)PEMにおいては、ネットワークの
各利用者の鍵は利用者自身が作成するため、偶然にも異
なる利用者の鍵が一致してしまう可能性がある。たとえ
ば、利用者Aと利用者Bの鍵が一致していることに、A
がBの公開鍵から気が付くと、AはBになりすました
り、Bと他の利用者の電子メール通信を盗聴することが
できる。
(3) In PEM, since the keys of the users of the network are created by the users themselves, there is a possibility that the keys of different users will coincide with each other. For example, if the keys of user A and user B match, A
When A notices from B's public key, A can impersonate B or eavesdrop the e-mail communication between B and other users.

【0022】[0022]

【発明が解決しようとする課題】本発明の目的は、通信
ネットワーク上でメールの送受信を行なう電子メール通
信システムにおいて、メールシステムや機種に特定しな
いで通常のメールと併用できる特徴を有し、かつ、電子
メールの送信者および受信者双方におけるセキュリティ
機能実現のための計算処理およびメモリ負担が少なく、
かつ、利用者の鍵の一致の心配がない盗聴や不正者のな
りすましに対して安全性の高い電子メール暗号化方法を
提案することにある。
SUMMARY OF THE INVENTION An object of the present invention is to provide an electronic mail communication system for sending and receiving mails on a communication network, which has a feature that it can be used together with ordinary mails without specifying a mail system or a model, and , E-mail sender and receiver both have less computational processing and memory burden to implement security functions,
Another object of the present invention is to propose an electronic mail encryption method that is highly secure against eavesdropping and impersonation by an unauthorized person without worrying about the user's key agreement.

【0023】[0023]

【課題を解決するための手段】本発明は、通信ネットワ
ーク上でデータの送受信を行なう電子メール通信システ
ムにおいて、高効率・高安全な電子メール暗号化方法を
提案するものである。
DISCLOSURE OF THE INVENTION The present invention proposes a highly efficient and highly secure e-mail encryption method in an e-mail communication system for transmitting and receiving data on a communication network.

【0024】具体的実現方法の1つとしては、送信者A
が受信者Bに対して送信するメール文を暗号化する電子
メール暗号化方法であって、 準備処理 センタは、素数pと合成数n=p1・p2と整数aを公開
し、nの素因数分解と正数αを秘密とする。
As one of the concrete implementation methods, the sender A
Is an electronic mail encryption method for encrypting a mail text to be transmitted to the recipient B, in which the preparation processing center publishes a prime number p, a composite number n = p 1 · p 2 and an integer a, and Keep the prime factorization and the positive number α secret.

【0025】送信者Aは、0<xA<p−1なる整数xA
をランダムに選び、
The sender A has an integer x A such that 0 <x A <p-1.
At random,

【0026】[0026]

【数69】yA=exp(a:xA)(mod p), を計算し、受信者Bは、0<xB<p−1なる整数xB
ランダムに選び、
Y A = exp (a: x A ) (mod p), the receiver B randomly selects an integer x B such that 0 <x B <p−1,

【0027】[0027]

【数70】yB=exp(a:xB)(mod p), を計算する。ただし、exp(a:x)はaをx乗した値を
表わす。
[Mathematical formula-see original document] y B = exp (a: x B ) (mod p), is calculated. However, exp (a: x) represents a value of a raised to the power x.

【0028】センタへの登録処理 送信者Aおよび受信者Bは、自分のID情報をセンタに
登録し、センタは送信者AのID情報IAから、送信者
Aに固有の鍵(sA,vA)を正数eを用いて、
Registration Process to Center The sender A and the receiver B register their ID information in the center, and the center uses the sender A's ID information I A to identify a key (s A , peculiar to the sender A) . v A ) using a positive number e,

【0029】[0029]

【数71】sA=exp(IA:e)(mod l.c.d(p1−1,p2
−1)), vA=exp(α:sA)(mod n), にて計算し、同様に受信者BのID情報IBから、受信
者Bに固有の鍵(sB,vB)を、
Equation 71] s A = exp (I A: e) (mod lcd (p 1 -1, p 2
-1)), v A = exp (α: s A) (mod n), calculated in, the ID information I B of the receiver B as well, the key unique to the recipient B (s B, v B ),

【0030】[0030]

【数72】sB=exp(IB:e)(mod l.c.d(p1−1,p2
−1)), vB=exp(α:sB)(mod n), にて計算し、各々を送信者Aおよび受信者Bに安全に配
布する。ただし、l.c.d(x,y)は整数x,yの
最小公倍数を表わす。
Equation 72] s B = exp (I B: e) (mod lcd (p 1 -1, p 2
−1)), v B = exp (α: s B ) (mod n), and each is safely distributed to sender A and receiver B. However, l. c. d (x, y) represents the least common multiple of integers x and y.

【0031】このとき、ID情報が異なれば対応する秘
密鍵も異なる。
At this time, if the ID information is different, the corresponding secret key is also different.

【0032】送信者Aは(y,vA)を送信者Aの公
開鍵として登録し、受信者Bは(yB,vB)を受信者B
の公開鍵として登録する。
The sender A registers (y A , v A ) as the public key of the sender A, and the receiver B registers (y B , v B ) as the receiver B.
Register as the public key of.

【0033】マスタ鍵共有処理 送信者Aは、受信者Bとの間で共通に保有する関数gを
用いて、自分の秘密鍵である(xA,sA)と受信者Bの
公開鍵である(yB,vB)から、マスタ鍵KA, Bを、
Master Key Sharing Process The sender A uses his own secret key (x A , s A ) and the public key of the receiver B by using the function g that is commonly held with the receiver B. From a certain (y B , v B ) the master key K A, B

【0034】[0034]

【数73】KA,B=g(exp(yB:xA)(mod p),exp(vB
A)(mod n)), にて作成し、受信者Bは、自分の秘密鍵である(xB
B)と送信者Aの公開鍵である(yA,vA)を用いて
マスタ鍵KB,Aを、
(73) K A, B = g (exp (y B : x A ) (mod p), exp (v B :
s A ) (mod n)), and the recipient B has his or her private key (x B ,
s B ) and the sender A's public key (y A , v A ) to generate a master key K B, A ,

【0035】[0035]

【数74】KB,A=g(exp(yA:xB)(mod p),exp
(vA:sB)(mod n)), にて作成する。
(74) K B, A = g (exp (y A : x B ) (mod p), exp
(v A : s B ) (mod n)),

【0036】このとき、KA,B=KB,Aが成立する。At this time, K A, B = K B, A holds.

【0037】特に、送信者Aは電子メールを送信する機
会が多い受信者に対しては、それらの受信者と送信者A
間の各マスタ鍵からなる集合SA、または、送信者Aの
秘密鍵(xA,sA)と鍵生成関数θから、
In particular, the sender A and the sender A send the recipients who often send e-mail.
From the set S A consisting of each master key in between, or the secret key (x A , s A ) of the sender A and the key generation function θ,

【0038】[0038]

【数75】K(A)=θ(xA,sA), にて作成した鍵K(A)を用いてマスタ鍵の集合SAを暗
号化した
[Number 75] K (A) = θ (x A, s A), by encrypting the set S A of the master key using the key K (A), which was created by

【0039】[0039]

【数76】C(A)=EA(K(A);SA), を記憶し、以後の電子メール通信において、データ暗号
化鍵更新のためなどでマスタ鍵が必要な場合、マスタ鍵
が記憶されているものについては、新たに相手の公開鍵
と自分の秘密鍵からマスタ鍵を作成することなく、記憶
されているマスタ鍵を使う。ただし、EA(k;M)はA
が所持する秘密鍵暗号アルゴリズムにより平文Mを鍵k
にて暗号化した結果を表わす。
[Equation 76] C (A) = E A (K (A); S A ), is stored, and when the master key is needed for updating the data encryption key in the subsequent e-mail communication, the master key For those that are stored, the stored master key is used without creating a new master key from the other party's public key and own private key. However, E A (k; M) is A
The plaintext M as a key k by the private key cryptographic algorithm possessed by
Represents the result of encryption.

【0040】メール本文の暗復号化処理 送信者Aは、データ暗号化鍵kをランダムに選び、受信
者Bとの間で共通に保有する秘密鍵暗号系アルゴリズム
を用いて、メール本文Pをデータ暗号化鍵kにて暗号化
した暗号文E(k;P)と、データ暗号化鍵kをマスタ
鍵KA,Bにて暗号化した暗号文E(KA,B;k)をメール
受信者Bに送信する。
Encryption / decryption processing of mail text Sender A randomly selects a data encryption key k and uses a secret key cryptosystem algorithm that is commonly held with receiver B to send mail text P as a data Receives by mail the ciphertext E (k; P) encrypted with the encryption key k and the ciphertext E (K A, B ; k) obtained by encrypting the data encryption key k with the master key K A, B. Person B.

【0041】受信者Bは、マスタ鍵KB,Aを用いてE(K
A,B;k)からデータ暗号化鍵kを復号化し、さらにデ
ータ暗号化鍵kを用いてE(k;P)からメール本文P
を復号化する。
Recipient B uses master key K B, A to obtain E (K
A, B ; k) decrypts the data encryption key k, and further, using the data encryption key k, E (k; P) to the mail text P
To decrypt.

【0042】[0042]

【作用】本発明における電子メール暗号化方法では、電
子メールの送信者および受信者はそれぞれ自分の秘密鍵
と相手の公開鍵からマスタ鍵の共有を行ない、秘密鍵暗
号を用いてメール本文の暗号化およびデータ暗号化鍵の
配送を行なうことにより、セキュリティ機能実現のため
の送受信者双方の計算処理負担を削減し、かつ、ディジ
タル署名などの付加情報を付けることなく送信者の認証
を実現した。特に、頻繁にメール通信を行なう相手につ
いては鍵情報としてマスタ鍵のみを記憶しておけば、受
信者の公開鍵の必要もなく、かつ、データ暗号化鍵の更
新の度にマスタ鍵の生成を行なう必要もなく、高速な暗
号化処理が可能となった。
In the method of encrypting an electronic mail according to the present invention, the sender and the recipient of the electronic mail share the master key from their own private key and the public key of the other party, and use the private key encryption to encrypt the mail text. By implementing encryption and data encryption key delivery, the computational load on both senders and receivers for realizing security functions was reduced, and sender authentication was realized without adding additional information such as digital signatures. In particular, if only the master key is stored as the key information for the partner who frequently performs mail communication, the public key of the receiver is not required and the master key is generated each time the data encryption key is updated. There is no need to do it, and high-speed encryption processing is possible.

【0043】また、ID情報は利用者(電子メールの送
信者および受信者)毎に異なることを利用して、センタ
と利用者が協力して利用者の鍵生成を行なうことで、利
用者の鍵が一致することがなく、盗聴や不正者のなりす
ましに対して高い安全性を実現した。
Further, since the ID information is different for each user (sender and receiver of the electronic mail), the center and the user cooperate to generate the key of the user. Since the keys do not match, high security against eavesdropping and impersonation by fraudsters is realized.

【0044】[0044]

【実施例】以下、図面を用いて、本発明の実施例につい
て詳しく説明する。
Embodiments of the present invention will be described in detail below with reference to the drawings.

【0045】図1は、本発明の実施例のシステム構成を
示す図である。同図のシステムは、複数の利用者側装置
100とセンタ側装置200とから構成されている。利用者側
装置100は互いに通信回線300を介して接続されている。
FIG. 1 is a diagram showing a system configuration of an embodiment of the present invention. The system shown in FIG.
It is composed of 100 and a center-side device 200. The user side devices 100 are connected to each other via a communication line 300.

【0046】図2は、本発明における電子メール暗号化
方法の概念図を示す。
FIG. 2 is a conceptual diagram of the electronic mail encryption method according to the present invention.

【0047】図3は、実施例1から9における利用者側
装置100の内部構成を示す。利用者側装置100は、乱数発
生器101、べき乗算器102、鍵生成器103、演算器104、暗
復号化装置105、ハッシュ計算器106、メモリ107、通信
装置108を備えている。
FIG. 3 shows the internal structure of the user-side device 100 in the first to ninth embodiments. The user-side device 100 includes a random number generator 101, a power multiplier 102, a key generator 103, a calculator 104, an encryption / decryption device 105, a hash calculator 106, a memory 107, and a communication device 108.

【0048】図4は、センタ側装置200の内部構成を示
す。センタ側装置200は、素数発生器201、原始根生成器
202、秘密鍵作成装置203、演算器204を備えている。
FIG. 4 shows the internal structure of the center-side device 200. The center device 200 is a prime number generator 201 and a primitive root generator.
202, a private key generation device 203, and a computing unit 204.

【0049】図5は、カード400の内部構成を示す。カ
ード400は、乱数発生器401、べき乗算器402、鍵生成器4
03、演算器404、暗復号化装置405、ハッシュ計算器40
6、メモリ407、出力装置408を備えている。
FIG. 5 shows the internal structure of the card 400. The card 400 includes a random number generator 401, a power multiplier 402, and a key generator 4
03, arithmetic unit 404, encryption / decryption device 405, hash calculator 40
6, a memory 407 and an output device 408 are provided.

【0050】図6は、実施例10における利用者側装置
500の内部構成を示す。利用者側装置500は、カード読取
装置501、通信装置502を備えている。
FIG. 6 is a user side apparatus in the tenth embodiment.
The internal structure of 500 is shown. The user device 500 includes a card reading device 501 and a communication device 502.

【0051】ネットワークの利用者は通信回線に接続さ
れた自分の利用者側装置100(カード400と利用者側装置
500)を用いて他の利用者側装置100(カード400と利用
者側装置500)を使用する別の利用者に対して電子メー
ル通信を行なうケースを考える。
The user of the network is the user device 100 (card 400 and user device) connected to the communication line.
Consider a case where another user who uses another user side device 100 (card 400 and user side device 500) is used to perform e-mail communication using another device (500).

【0052】このとき、電子メールの暗号化方法につい
て以下の実施例において詳しく説明する。
At this time, an electronic mail encryption method will be described in detail in the following embodiment.

【0053】Zは整数環を表わし、Z/(n)は整数nを
法とする剰余環を表わす。特に、nが素数のとき、Z/
(n)は剰余体になる。x∈Zに対して、xは対応する
剰余環におけるxを代表元とする剰余類を表わす。ま
た、exp(a:x)はaをx乗した値を表わす。
Z represents an integer ring, and Z / (n) represents a remainder ring modulo the integer n. Especially when n is a prime number, Z /
(n) becomes a remainder. For xεZ, x represents a coset whose representative element is x in the corresponding coset. Also, exp (a: x) represents a value of a raised to the power x.

【0054】ネットワークの利用者のID情報はすべて
tビット以下で表わされる場合、利用者のID情報はZ
/(exp(2:t)−1)の元と考えることができる。この
とき、利用者のID情報の集合Λを、Λ=Z/(exp(2:
t)−1)と定義する。
When all network user ID information is represented by t bits or less, the user ID information is Z.
It can be considered as an element of / (exp (2: t) -1). At this time, a set Λ of user ID information is Λ = Z / (exp (2:
t) -1).

【0055】(実施例1) 準備 ネットワークの各利用者λはそれぞれ自身の利用者側装
置100内の乱数発生器101およびべき乗算器102を用いて
次の情報を作成し、公開鍵のみを公開・登録する。
(Example 1) Preparation Each user λ of the network creates the following information by using the random number generator 101 and the power multiplier 102 in the user side device 100 of his / her own, and discloses only the public key. ·to register.

【0056】秘密鍵:Private key:

【0057】[0057]

【数77】 ・xλj∈Z s.t 0<xλj<p−1 for j=1,…,n. 公開鍵:[Number 77] · x λj ∈Z st 0 <x λj <p-1 for j = 1, ..., n. Public key:

【0058】[0058]

【数78】 ・yλj=exp(a:xλj)(mod p)for j=1,…,n. ただし、pは素数、aは0<a<pでZ/(p)の原始根
となる整数、nはセキュリティパラメータを表わし、予
め与えられているものとする。
Y y λj = exp (a: x λj ) (mod p) for j = 1, ..., n. Here, p is a prime number, a is 0 <a <p, and is an integer that is a primitive root of Z / (p), and n is a security parameter, which is given in advance.

【0059】さらに、ネットワークに接続された利用者
側装置100内には同一の秘密鍵暗号系アルゴリズムを内
蔵した暗復号化装置104があり、この秘密鍵暗号系アル
ゴリズムを用いて平文Mを鍵Kで暗号化した結果および
復号化した結果をそれぞれE(K;M),D(K;M)で
表わす。
Further, in the user side device 100 connected to the network, there is an encryption / decryption device 104 having the same secret key cryptosystem algorithm built therein, and the plaintext M is converted into the key K using this secret key cryptosystem algorithm. The encrypted result and the decrypted result are represented by E (K; M) and D (K; M), respectively.

【0060】マスタ鍵の共有 ネットワークの利用者であるA,Bについて、AはBに
対して電子メールを送りたい。この目的の下で、A,B
は次の手順を実行する。
Master Key Sharing Regarding A and B who are users of the network, A wants to send an electronic mail to B. Under this purpose, A, B
Perform the following steps:

【0061】AはAの利用者側装置100A内のべき乗算器
102Aおよび演算器104Aを用いて自分の秘密鍵xAjとBの
公開鍵yBj(j=1,…,n)からマスタ鍵KA,Bを、
A is a power multiplier in the user side device 100A of A
102A and the arithmetic unit 104A are used to obtain the master key K A, B from the private key x Aj of the user and the public key y Bj (j = 1, ..., N) of B ,

【0062】[0062]

【数79】KA,B=Π{exp(yBj:xAj)(mod p)|j=
1,…,n}, にて計算する。ただし、記号100A等については、数字の
後のアルファベットにより利用者の識別を行なう。
K A, B = Π {exp (y Bj : x Aj ) (mod p) | j =
1, ..., N} are calculated. However, for the symbol 100A, etc., the user is identified by the alphabet after the number.

【0063】同様にして、BはBの利用者側装置100B内
のべき乗算器102Bおよび演算器104Bを用いて自分の秘密
鍵xBjとAの公開鍵yAj(j=1,…,n)からマスタ
鍵K B,Aを、
Similarly, B is in B's user side device 100B.
Use your power multiplier 102B and calculator 104B to keep your secret
Key xBjAnd A's public key yAj(J = 1, ..., n) to master
Key K B, ATo

【0064】[0064]

【数80】KB,A=Π{exp(yAj:xBj)(mod p)|j=
1,…,n}, にて作成する。このとき、明らかに、
(80) K B, A = Π {exp (y Aj : x Bj ) (mod p) | j =
1, ..., N} are created. At this time, obviously,

【0065】[0065]

【数81】KA,B=KB,A, が成立する。[Formula 81] K A, B = K B, A holds.

【0066】さらに、Aは電子メールを送信する機会が
多い利用者に対しては、それらの利用者とA間の各マス
タ鍵の集合SA、または、Aの秘密情報xAj(j=1,
…,n)から利用者側装置100A内の鍵生成器103Aにより
鍵K(A)を作成し、暗復号化装置105Aを用いて鍵K
(A)によりSAを暗号化した
Further, for users who frequently send e-mails, A is a set S A of each master key between those users and A , or secret information x Aj (j = 1 of A). ,
, N), the key generator 103A in the user-side device 100A creates a key K (A), and the encryption / decryption device 105A is used to generate the key K (A).
Encrypted S A by (A)

【0067】[0067]

【数82】C(A)=E(K(A);SA), を、メモリ107Aに記憶する。以後の電子メール通信にお
いて、データ暗号化鍵更新のためなどでマスタ鍵が必要
な場合、マスタ鍵が記憶されているものについては、新
たに自分の秘密鍵と相手の公開鍵からマスタ鍵を作成す
ることなく、メモリ107Aに記憶されているマスタ鍵を使
う。
[Equation 82] C (A) = E (K (A); S A ) is stored in the memory 107A. In subsequent e-mail communications, if a master key is required for updating the data encryption key, etc., if the master key is stored, create a new master key from your private key and the public key of the other party. Without using the master key stored in the memory 107A.

【0068】メール本文の暗号化 Aは、利用者側装置100A内の乱数発生器101Aを用いて乱
数rを選び、rを入力として鍵生成器103Aからデータ暗
号化鍵kを作成する。メール本文Pを暗復号化装置105A
を用いてデータ暗号化鍵kにより暗号化した暗号文C1
を、
For encryption A of the mail text, a random number r is selected using the random number generator 101A in the user side device 100A, and the data encryption key k is created from the key generator 103A by using r as an input. Email text P encryption / decryption device 105A
Ciphertext C 1 encrypted with the data encryption key k using
To

【0069】[0069]

【数83】C1=E(k;P), にて作成する。さらに、暗復号化装置105Aを用いてデー
タ暗号化鍵kをマスタ鍵KA,Bで暗号化した暗号文C
2を、
[Equation 83] C 1 = E (k; P), is created. Further, a ciphertext C obtained by encrypting the data encryption key k with the master keys K A and B using the encryption / decryption device 105A.
2

【0070】[0070]

【数84】C2=E(KA,B;k), にて作成する。[Equation 84] C 2 = E (K A, B ; k), is created.

【0071】Aは、通信装置108Aを用いてC1とC2をB
に送る。
A uses the communication device 108A to connect C 1 and C 2 to B
Send to

【0072】メール本文の復号化 Bは送られてきたC1とC2に対して、Bの利用者側装置
100B内の暗復号化装置105Bを用いて、まず、マスタ鍵K
B,Aより、
Decryption of mail body B is a device on the user side of B for C 1 and C 2 sent.
Using the encryption / decryption device 105B in 100B, first, the master key K
From B and A ,

【0073】[0073]

【数85】k=D(KB,A;C2), にてデータ暗号化鍵kを復号化し、次にデータ暗号化鍵
kを用いて、
[Equation 85] The data encryption key k is decrypted by k = D (KB , A ; C 2 ), and then the data encryption key k is used to obtain

【0074】[0074]

【数86】P=D(k;C1), にて、メール本文Pを復号化する。The mail body P is decrypted with P = D (k; C 1 ),

【0075】(実施例2)実施例2では、センタの存在
を仮定して利用者の鍵情報が偶然にも一致することのな
い高い安全性をもつ電子メール暗号化方法について述べ
る。
(Embodiment 2) Embodiment 2 describes an electronic mail encryption method having a high level of security in which the key information of the user does not accidentally match assuming the existence of a center.

【0076】準備 センタはセンタ側装置200内の素数発生器201、原始根生
成器202および演算器204を用いて次の情報を作成する。
Preparation The center creates the following information using the prime number generator 201, the primitive root generator 202 and the arithmetic unit 204 in the center side device 200.

【0077】公開情報: ・p1;素数, ・p2=2q12+1;素数, ・a1∈Z s.t 0<a1<p1、かつ、a1はZ/(p1)で
原始根, ・a2∈Z s.t 0<a2<p2、かつ、a1はZ/(p1)で
原始根, 秘密情報: ・q1,q2∈Z;素数. ネットワークの各利用者λは利用者側装置100内の乱数
発生器101およびべき乗算器102を用いて次の鍵を作成す
る。
Public information: p 1 ; prime number, p 2 = 2q 1 q 2 +1; prime number, a 1 εZ st 0 <a 1 <p 1 , and a 1 is Z / (p 1 ). Primitive root, ・ a 2 ∈Z st 0 <a 2 <p 2 , and a 1 is Z / (p 1 ) and primitive root, secret information: ・ q 1 , q 2 ∈Z; prime number. Each user λ of the network uses the random number generator 101 and the power multiplier 102 in the user side device 100 to create the next key.

【0078】秘密鍵:Private key:

【0079】[0079]

【数87】・xλ∈Z s.t 0<xλ<p1−1. 公開鍵:X λ εZ st 0 <x λ <p 1 −1. Public key:

【0080】[0080]

【数88】・yλ=exp(a1:xλ)(mod p1). センタへの登録 ネットワークの利用者λはセンタに自分のID情報Iλ
を登録する。
Y λ = exp (a 1 : x λ ) (mod p 1 ). Registration to the center The network user λ has the ID information I λ at the center.
To register.

【0081】センタは、センタ側装置200内の秘密鍵作
成装置203を用いて、
The center uses the secret key generating device 203 in the center side device 200 to

【0082】[0082]

【数89】ed≡1(mod l.c.d(q1−1,q2−1)), なるe,d∈Zを作成し、利用者λのID情報Iλに対
して、
[Formula 89] ed ≡ 1 (mod lcd (q 1 -1, q 2 -1)), e, d ∈ Z is created, and for the ID information I λ of the user λ,

【0083】[0083]

【数90】sλ=exp(Iλ:e)(mod p2−1), を計算して、sλを利用者λに安全に配布する。[Mathematical formula-see original document] s λ = exp (I λ : e) (mod p 2 −1), is calculated, and s λ is safely distributed to the user λ.

【0084】このとき、At this time,

【0085】[0085]

【数91】 sλ≠sμ if Iλ≠Iμ∈Λ=Z/(p2−1), が成立することに注意する。Note that s λ ≠ s μ if I λ ≠ I μ εΛ = Z / (p 2 −1), holds.

【0086】マスタ鍵の共有 ネットワークの利用者λは、ベクトル(yλ,vλ)を
λの公開鍵として登録を行なう。ただし、
A master key sharing network user λ registers a vector (y λ , v λ ) as a public key of λ. However,

【0087】[0087]

【数92】vλ=exp(a2:sλ)(mod p2). さらに、ネットワークに接続された利用者側装置100内
には同一の秘密鍵暗号系アルゴリズムを内蔵した暗復号
化装置105があり、この秘密鍵暗号系アルゴリズムを用
いて平文Mを鍵Kで暗号化した結果および復号化した結
果をそれぞれE(K;M),D(K;M)で表わす。
[Expression 92] v λ = exp (a 2 : s λ ) (mod p 2 ). Further, in the user side device 100 connected to the network, there is an encryption / decryption device 105 having the same secret key cryptosystem algorithm built therein, and the plaintext M is encrypted with the key K using this secret key cryptosystem algorithm. The result and the decoded result are represented by E (K; M) and D (K; M), respectively.

【0088】ネットワークの利用者A,Bについて、A
はBに対して電子メールを送りたい。この目的の下で、
A,Bは次の手順を実行する AはAの利用者側装置100A内のべき乗算器102Aと演算器
104Aとハッシュ計算器106Aを用いて、Aの秘密鍵
(xA,sA)とBの公開鍵(yB,vB)からマスタ鍵K
A,Bを、
Regarding network users A and B, A
Wants to send an email to B. Under this purpose,
A and B execute the following procedure: A is a power multiplier 102A and an arithmetic unit in the user side device 100A of A.
Using 104A and the hash calculator 106A, from A's private key (x A , s A ) and B's public key (y B , v B ) to the master key K
A, B

【0089】[0089]

【数93】KA,B=g(φ(exp(yB:xA)(mod p1),exp
(vB:sA)(mod p2))), にて作成する。同様に、BはBの利用者側装置100B内の
べき乗算器102Bと演算器104Bとハッシュ計算器106Bを用
いて、Bの秘密鍵(xB,sB)とAの公開鍵(yA
A)からマスタ鍵KB,Aを、
(93) K A, B = g (φ (exp (y B : x A ) (mod p 1 ), exp
(v B : s A ) (mod p 2 ))) ,. Similarly, B uses B's private key (x B , s B ) and A's public key (y A by using the power multiplier 102B, the calculator 104B, and the hash calculator 106B in the user device 100B of B.
v A ) to the master key K B, A ,

【0090】[0090]

【数94】KB,A=g(φ(exp(yA:xB)(mod p1),exp
(vA:sB)(mod p2))), にて計算する。ただし、gはハッシュ計算器内で用いら
れるハッシュ関数を表わし、φは,
(94) K B, A = g (φ (exp (y A : x B ) (mod p 1 ), exp
(v A : s B ) (mod p 2 ))), However, g represents the hash function used in the hash calculator, and φ is

【0091】[0091]

【数95】 φ:Z/(p1)×Z/(p2) → Z/(n) ((x,x) → x), なる同型写像を表わす(n=p12)。ここで、xはそ
れぞれの剰余環におけるxを代表元とする剰余類を表わ
す。
[Expression 95] φ: Z / (p 1 ) × Z / (p 2 ) → Z / (n) ((x, x) → x), which represents an isomorphic map (n = p 1 p 2 ). Here, x represents a residue class whose representative element is x in each residue ring.

【0092】このとき、明らかに、KA,B=KB,A,が成
立する。
At this time, it is clear that K A, B = K B, A.

【0093】さらに、Aは電子メールを送信する機会が
多い利用者については、それらの利用者とAとの間の各
マスタ鍵の集合SA、または、Aの秘密情報xAから利用
者側装置100A内の鍵生成器103Aにより鍵K(A)を作成
し、暗復号化装置105Aを用いて鍵K(A)によりSAを暗
号化したC(A)=E(K(A);SA),を、メモリ107A
に記憶する。以後の電子メール通信において、データ暗
号化鍵更新のためなどでマスタ鍵が必要な場合、マスタ
鍵が記憶されているものについては、新たに自分の秘密
鍵と相手の公開鍵からマスタ鍵を作成することなく、メ
モリ107Aに記憶されているマスタ鍵を使う。
Furthermore, for users who frequently send e-mail, A refers to the set of master keys S A between those users and A , or the secret information x A of A from the user side. The key generator 103A in the device 100A creates the key K (A), and the encryption / decryption device 105A encrypts S A with the key K (A) C (A) = E (K (A); S A ), the memory 107A
To memorize. In subsequent e-mail communications, if a master key is required for updating the data encryption key, etc., if the master key is stored, create a new master key from your private key and the public key of the other party. Without using the master key stored in the memory 107A.

【0094】メール本文の暗号化 Aは、利用者側装置100A内の乱数発生器101Aを用いて乱
数rを選び、rを入力として鍵生成器103Aからデータ暗
号化鍵kを作成する。メール本文Pを暗復号化装置105A
を用いてデータ暗号化鍵kにより暗号化した暗号文C1
を、C1=E(k;P),にて作成する。さらに、暗復号
化装置105Aを用いてデータ暗号化鍵kをマスタ鍵KA,B
で暗号化した暗号文C2を、C2=E(KA,B;k),にて
作成する。
Encryption of the mail text A selects a random number r using the random number generator 101A in the user-side device 100A, and inputs the r to create a data encryption key k from the key generator 103A. Email text P encryption / decryption device 105A
Ciphertext C 1 encrypted with the data encryption key k using
With C 1 = E (k; P). Furthermore, the data encryption key k is transferred to the master key K A, B using the encryption / decryption device 105A.
A ciphertext C 2 encrypted by is created by C 2 = E (KA , B ; k).

【0095】Aは、通信装置108Aを用いてC1とC2をB
に送る。
A uses the communication device 108A to connect C 1 and C 2 to B
Send to

【0096】メール本文の復号化 Bは送られてきたC1とC2に対して、Bの利用者側装置
100B内の暗復号化装置105Bを用いて、まず、マスタ鍵K
B,Aより、k=D(KB,A;C2),にてデータ暗号化鍵k
を復号化し、次にデータ暗号化鍵kを用いて、P=D
(k;C1),にて、メール本文Pを復号化する。
Decryption of mail text B is a device on the user side of B for C 1 and C 2 sent.
Using the encryption / decryption device 105B in 100B, first, the master key K
From B and A , the data encryption key k is k = D (KB , A ; C 2 ).
, And then using the data encryption key k, P = D
At (k; C 1 ), the mail text P is decrypted.

【0097】(実施例3)実施例3は、実施例2におい
てセンタが作成する利用者λのための情報(sλ
λ)を実施例2とは異なる別の関数により作成する一
例を与える。
(Third Embodiment) In the third embodiment, the information (s λ , for the user λ created by the center in the second embodiment is
An example of creating v λ ) by another function different from that of the second embodiment will be given.

【0098】準備 センタはセンタ側装置200内の素数発生器201、原始根生
成器202および演算器204を用いて次の情報を作成する。
ただし、関数fは秘密鍵作成装置203内に格納されてい
るものとする。
Preparation The center creates the following information using the prime number generator 201, the primitive root generator 202 and the arithmetic unit 204 in the center side device 200.
However, it is assumed that the function f is stored in the secret key generation device 203.

【0099】公開情報: ・p1;素数, ・p2=2q12+1;素数, ・a1∈Z s.t 0<a1<p1、かつ、a1はZ/(p1)で
原始根, ・a2∈Z s.t 0<a2<p2、かつ、a1はZ/(p1)で
原始根, 秘密情報: ・q1,q2∈Z;素数. ネットワークの各利用者λは利用者側装置100内の乱数
発生器101およびべき乗算器102を用いて次の鍵を作成す
る。
Public information :-p 1 ; prime number-p 2 = 2q 1 q 2 +1; prime number-a 1 εZ st 0 <a 1 <p 1 and a 1 is Z / (p 1 ). Primitive root, ・ a 2 ∈Z st 0 <a 2 <p 2 , and a 1 is Z / (p 1 ) and primitive root, secret information: ・ q 1 , q 2 ∈Z; prime number. Each user λ of the network uses the random number generator 101 and the power multiplier 102 in the user side device 100 to create the next key.

【0100】秘密鍵:Private key:

【0101】[0101]

【数96】・xλ∈Z s.t 0<xλ<p1−1. 公開鍵:X λ ∈ Z st 0 <x λ <p 1 −1. Public key:

【0102】[0102]

【数97】・yλ=exp(a1:xλ)(mod p1). センタへの登録 ネットワークの利用者λはセンタに自分のID情報Iλ
を登録する。
Y λ = exp (a 1 : x λ ) (mod p 1 ). Registration to the center The network user λ has the ID information I λ at the center.
To register.

【0103】センタはセンタ側装置200内の秘密鍵作成
装置203を用いて、利用者λのID情報Iλに対して、 (1)Iλ+iλ(mod p2−1)は平方剰余, (2)Iλ+iλ(mod p2−1)≠Iμ+iμ(mod
2−1) if λ≠μ, となるように正整数iλを選び、
The center uses the secret key generating device 203 in the center-side device 200, and (1) I λ + i λ (mod p 2 -1) is the quadratic remainder for the ID information I λ of the user λ. (2) I λ + i λ (mod p 2 −1) ≠ I μ + i μ (mod
p 2 −1) if positive λ i λ such that if λ ≠ μ,

【0104】[0104]

【数98】 sλ=exp(Iλ+iλ):1/2)(mod p2−1) を計算して、sλを利用者λに安全に配布する。S λ = exp (I λ + i λ ): 1/2) (mod p 2 −1) is calculated and s λ is safely distributed to the user λ.

【0105】このとき、明らかに、sλ≠sμ if λ
≠μ,が成立する。
At this time, obviously, s λ ≠ s μ if λ
≠ μ holds.

【0106】マスタ鍵の共有 ネットワークの利用者λは、ベクトル(yλ,vλ)を
λの公開鍵として登録を行なう。ただし、vλ=exp(a
2:sλ)(mod p2).さらに、ネットワークに接続さ
れた利用者側装置100内には同一の秘密鍵暗号系アルゴ
リズムを内蔵した暗復号化装置105があり、この秘密鍵
暗号系アルゴリズムを用いて平文Mを鍵Kで暗号化した
結果および復号化した結果をそれぞれE(K;M),D
(K;M)で表わす。
Master Key Sharing The network user λ registers the vector (y λ , v λ ) as the public key of λ. However, v λ = exp (a
2 : s λ ) (mod p 2 ). Further, in the user side device 100 connected to the network, there is an encryption / decryption device 105 having the same secret key cryptosystem algorithm built therein, and the plaintext M is encrypted with the key K using this secret key cryptosystem algorithm. The result of decoding and the result of decoding are E (K; M) and D, respectively.
It is represented by (K; M).

【0107】ネットワークの利用者A,Bについて、A
はBに対して電子メールを送りたい。この目的の下で、
A,Bは次の手順を実行する AはAの利用者側装置100A内のべき乗算器102Aと演算器
104Aとハッシュ計算器106Aを用いて、Aの秘密鍵
(xA,sA)とBの公開鍵(yB,vB)からマスタ鍵K
A,Bを、
Regarding network users A and B, A
Wants to send an email to B. Under this purpose,
A and B execute the following procedure: A is a power multiplier 102A and an arithmetic unit in the user side device 100A of A.
Using 104A and the hash calculator 106A, from A's private key (x A , s A ) and B's public key (y B , v B ) to the master key K
A, B

【0108】[0108]

【数99】KA,B=g(φ(exp(yB:xA)(mod p1),exp
(vB:sA)(mod p2))), にて作成する。同様に、BはBの利用者側装置100B内の
べき乗算器102Bと演算器104Bとハッシュ計算器106Bを用
いて、Bの秘密鍵(xB,sB)とAの公開鍵(yA
A)からマスタ鍵KB,Aを、
(99) K A, B = g (φ (exp (y B : x A ) (mod p 1 ), exp
(v B : s A ) (mod p 2 ))) ,. Similarly, B uses B's private key (x B , s B ) and A's public key (y A by using the power multiplier 102B, the calculator 104B, and the hash calculator 106B in the user device 100B of B.
v A ) to the master key K B, A ,

【0109】[0109]

【数100】KB,A=g(φ(exp(yA:xB)(mod p1),ex
p(vA:sB)(mod p2))), にて計算する。ただし、gはハッシュ計算器内で用いら
れるハッシュ関数を表わし、φは,
[Equation 100] K B, A = g (φ (exp (y A : x B ) (mod p 1 ), ex
p (v A : s B ) (mod p 2 ))), However, g represents the hash function used in the hash calculator, and φ is

【0110】[0110]

【数101】 φ:Z/(p1)×Z/(p2) → Z/(n) ((x,x) → x), なる同型写像を表わす(n=p12)。ここで、xはそ
れぞれの剰余環におけるxを代表元とする剰余類を表わ
す。
[Expression 101] φ: Z / (p 1 ) × Z / (p 2 ) → Z / (n) ((x, x) → x), which represents an isomorphism (n = p 1 p 2 ). Here, x represents a residue class whose representative element is x in each residue ring.

【0111】このとき、明らかに、KA,B=KB,A,が成
立する。
At this time, it is clear that K A, B = K B, A.

【0112】さらに、Aは電子メールを送信する機会が
多い利用者については、それらの利用者とAとの間の各
マスタ鍵の集合SA、または、Aの秘密情報xAから利用
者側装置100A内の鍵生成器103Aにより鍵K(A)を作成
し、暗復号化装置105Aを用いて鍵K(A)によりSAを暗
号化したC(A)=E(K(A);SA),を、メモリ107A
に記憶する。以後の電子メール通信において、データ暗
号化鍵更新のためなどでマスタ鍵が必要な場合、マスタ
鍵が記憶されているものについては、新たに自分の秘密
鍵と相手の公開鍵からマスタ鍵を作成することなく、メ
モリ107Aに記憶されているマスタ鍵を使う。
Furthermore, for users who frequently send e-mail, A refers to the set of master keys S A between those users and A , or the secret information x A of A from the user side. The key generator 103A in the device 100A creates the key K (A), and the encryption / decryption device 105A encrypts S A with the key K (A) C (A) = E (K (A); S A ), the memory 107A
To memorize. In subsequent e-mail communications, if a master key is required for updating the data encryption key, etc., if the master key is stored, create a new master key from your private key and the public key of the other party. Without using the master key stored in the memory 107A.

【0113】メール本文の暗号化 Aは、利用者側装置100A内の乱数発生器101Aを用いて乱
数rを選び、rを入力として鍵生成器103Aからデータ暗
号化鍵kを作成する。メール本文Pを暗復号化装置105A
を用いてデータ暗号化鍵kにより暗号化した暗号文C1
を、C1=E(k;P),にて作成する。さらに、暗復号
化装置105Aを用いてデータ暗号化鍵kをマスタ鍵KA,B
で暗号化した暗号文C2を、C2=E(KA,B;k),にて
作成する。
Encryption of the mail text A uses the random number generator 101A in the user side device 100A to select a random number r, and inputs the r to create a data encryption key k from the key generator 103A. Email text P encryption / decryption device 105A
Ciphertext C 1 encrypted with the data encryption key k using
With C 1 = E (k; P). Furthermore, the data encryption key k is transferred to the master key K A, B using the encryption / decryption device 105A.
A ciphertext C 2 encrypted by is created by C 2 = E (KA , B ; k).

【0114】Aは、通信装置108Aを用いてC1とC2をB
に送る。
A uses the communication device 108A to connect C 1 and C 2 to B
Send to

【0115】メール本文の復号化 Bは送られてきたC1とC2に対して、Bの利用者側装置
100B内の暗復号化装置105Bを用いて、まず、マスタ鍵K
B,Aより、k=D(KB,A;C2),にてデータ暗号化鍵k
を復号化し、次にデータ暗号化鍵kを用いて、P=D
(k;C1),にて、メール本文Pを復号化する。
Decryption of mail text B is a device on the user side of B for C 1 and C 2 sent.
Using the encryption / decryption device 105B in 100B, first, the master key K
From B and A , the data encryption key k is k = D (KB , A ; C 2 ).
, And then using the data encryption key k, P = D
At (k; C 1 ), the mail text P is decrypted.

【0116】(実施例4)実施例4は、実施例2,3に
おいてセンタが作成する利用者λのための情報(sλ
λ)を実施例2,3とは異なる別の関数により作成す
る一例を与える。
(Fourth Embodiment) In the fourth embodiment, the information (s λ ,
An example of creating v λ ) by another function different from those in the second and third embodiments will be given.

【0117】準備 センタはセンタ側装置200内の素数発生器201、原始根生
成器202および演算器204を用いて次の情報を作成する。
Preparation The center creates the following information using the prime number generator 201, the primitive root generator 202 and the arithmetic unit 204 in the center side device 200.

【0118】公開情報: ・p1;素数, ・p2;素数, ・a1∈Z s.t 0<a1<p1、かつ、a1はZ/(p1)で
原始根, ・a2∈Z s.t 0<a2<p2、かつ、a1はZ/(p1)で
原始根, 秘密情報: ・Z/(p2−1)の元を出力する秘密鍵暗号アルゴリズ
ムおよび鍵r∈Z. センタの秘密情報である秘密鍵暗号アルゴリズムによ
り、平文Mを鍵kで暗号化および復号化した結果をそれ
ぞれE0(k;M),D0(k;M)で表わす。
Public information: p 1 ; prime number, p 2 ; prime number, a 1 εZ st 0 <a 1 <p 1 , and a 1 is a primitive root of Z / (p 1 ), a 2 ΕZ st 0 <a 2 <p 2 and a 1 is a primitive root with Z / (p 1 ), secret information: secret key cryptographic algorithm and key r that outputs the element of Z / (p 2 −1) ΕZ. Results of encrypting and decrypting the plaintext M with the key k by the secret key encryption algorithm which is the secret information of the center are represented by E 0 (k; M) and D 0 (k; M), respectively.

【0119】ネットワークの各利用者λは利用者側装置
100内の乱数発生器101およびべき乗算器102を用いて次
の鍵を作成する。
Each user λ of the network is a user-side device
A random number generator 101 and a power multiplier 102 in 100 are used to generate the next key.

【0120】秘密鍵:Private key:

【0121】[0121]

【数102】・xλ∈Z s.t 0<xλ<p1−1. 公開鍵:[Number 102] · x λ ∈Z st 0 <x λ <p 1 -1. Public key:

【0122】[0122]

【数103】・yλ=exp(a1:xλ)(mod p1). センタへの登録 ネットワークの利用者λはセンタに自分のID情報Iλ
を登録する。
Y λ = exp (a 1 : x λ ) (mod p 1 ). Registration to the center The network user λ has the ID information I λ at the center.
To register.

【0123】センタは、センタ側装置200内の秘密鍵作
成装置203を用いて、利用者λのID情報Iλに対し
て、
The center uses the secret key generating device 203 in the center-side device 200 for the ID information I λ of the user λ,

【0124】[0124]

【数104】sλ=E0(r;Iλ)∈Z/(p2−1), を計算して、sλを利用者λに安全に配布する。S λ = E 0 (r; I λ ) εZ / (p 2 −1), is calculated, and s λ is safely distributed to the user λ.

【0125】このとき、At this time,

【0126】[0126]

【数105】 sλ≠sμ if Iλ≠Iμ∈Λ=Z/(p2−1), が成立することに注意する。Note that s λ ≠ s μ if I λ ≠ I μ εΛ = Z / (p 2 −1), holds.

【0127】マスタ鍵の共有 ネットワークの利用者λは、ベクトル(yλ,vλ)を
λの公開鍵として登録を行なう。ただし、vλ=exp(a
2:sλ)(mod p2).さらに、ネットワークに接続さ
れた利用者側装置100内には同一の秘密鍵暗号系アルゴ
リズムを内蔵した暗復号化装置105があり、この秘密鍵
暗号系アルゴリズムを用いて平文Mを鍵Kで暗号化した
結果および復号化した結果をそれぞれE(K;M),D
(K;M)で表わす。
Master Key Sharing A network user λ registers a vector (y λ , v λ ) as a public key of λ. However, v λ = exp (a
2 : s λ ) (mod p 2 ). Further, in the user side device 100 connected to the network, there is an encryption / decryption device 105 having the same secret key cryptosystem algorithm built therein, and the plaintext M is encrypted with the key K using this secret key cryptosystem algorithm. The result of decoding and the result of decoding are E (K; M) and D, respectively.
It is represented by (K; M).

【0128】ネットワークの利用者A,Bについて、A
はBに対して電子メールを送りたい。この目的の下で、
A,Bは次の手順を実行する AはAの利用者側装置100A内のべき乗算器102Aと演算器
104Aとハッシュ計算器106Aを用いて、Aの秘密鍵
(xA,sA)とBの公開鍵(yB,vB)からマスタ鍵K
A,Bを、
Regarding network users A and B, A
Wants to send an email to B. Under this purpose,
A and B execute the following procedure: A is a power multiplier 102A and an arithmetic unit in the user side device 100A of A.
Using 104A and the hash calculator 106A, from A's private key (x A , s A ) and B's public key (y B , v B ) to the master key K
A, B

【0129】[0129]

【数106】KA,B=g(φ(exp(yB:xA)(mod p1),ex
p(vB:sA)(mod p2))) ,にて作成する。同様に、BはBの利用者側装置100B内
のべき乗算器102Bと演算器104Bとハッシュ計算器106Bを
用いて、Bの秘密鍵(xB,sB)とAの公開鍵(yA
A)からマスタ鍵KB,Aを、
K A, B = g (φ (exp (y B : x A ) (mod p 1 ), ex
p (v B : s A ) (mod p 2 ))). Similarly, B uses B's private key (x B , s B ) and A's public key (y A by using the power multiplier 102B, the calculator 104B, and the hash calculator 106B in the user device 100B of B.
v A ) to the master key K B, A ,

【0130】[0130]

【数107】KB,A=g(φ(exp(yA:xB)(mod p1),ex
p(vA:sB)(mod p2))), にて計算する。ただし、gはハッシュ計算器内で用いら
れるハッシュ関数を表わし、φは,
K B, A = g (φ (exp (y A : x B ) (mod p 1 ), ex
p (v A : s B ) (mod p 2 ))), However, g represents the hash function used in the hash calculator, and φ is

【0131】[0131]

【数108】 φ:Z/(p1)×Z/(p2) → Z/(n) ((x,x) → x), なる同型写像を表わす(n=p12)。ここで、xはそ
れぞれの剰余環におけるxを代表元とする剰余類を表わ
す。
Φ: Z / (p 1 ) × Z / (p 2 ) → Z / (n) ((x, x) → x), which represents the isomorphic mapping (n = p 1 p 2 ). Here, x represents a residue class whose representative element is x in each residue ring.

【0132】このとき、明らかに、KA,B=KB,A,が成
立する。
At this time, it is clear that K A, B = K B, A.

【0133】さらに、Aは電子メールを送信する機会が
多い利用者については、それらの利用者とAとの間の各
マスタ鍵の集合SA、または、Aの秘密情報xAから利用
者側装置100A内の鍵生成器103Aにより鍵K(A)を作成
し、暗復号化装置105Aを用いて鍵K(A)によりSAを暗
号化したC(A)=E(K(A);SA),を、メモリ107A
に記憶する。以後の電子メール通信において、データ暗
号化鍵更新のためなどでマスタ鍵が必要な場合、マスタ
鍵が記憶されているものについては、新たに自分の秘密
鍵と相手の公開鍵からマスタ鍵を作成することなく、メ
モリ107Aに記憶されているマスタ鍵を使う。
Furthermore, for users who frequently send e-mail, A refers to the set S A of each master key between those users and A , or the secret information x A of A from the user side. The key generator 103A in the device 100A creates the key K (A), and the encryption / decryption device 105A encrypts S A with the key K (A) C (A) = E (K (A); S A ), the memory 107A
To memorize. In subsequent e-mail communications, if a master key is required for updating the data encryption key, etc., if the master key is stored, create a new master key from your private key and the public key of the other party. Without using the master key stored in the memory 107A.

【0134】メール本文の暗号化 Aは、利用者側装置100A内の乱数発生器101Aを用いて乱
数rを選び、rを入力として鍵生成器103Aからデータ暗
号化鍵kを作成する。メール本文Pを暗復号化装置105A
を用いてデータ暗号化鍵kにより暗号化した暗号文C1
を、C1=E(k;P),にて作成する。さらに、暗復号
化装置105Aを用いてデータ暗号化鍵kをマスタ鍵KA,B
で暗号化した暗号文C2を、C2=E(KA,B;k),にて
作成する。
Encryption of the mail text A selects a random number r using the random number generator 101A in the user side device 100A, and inputs the r to create a data encryption key k from the key generator 103A. Email text P encryption / decryption device 105A
Ciphertext C 1 encrypted with the data encryption key k using
With C 1 = E (k; P). Furthermore, the data encryption key k is transferred to the master key K A, B using the encryption / decryption device 105A.
A ciphertext C 2 encrypted by is created by C 2 = E (KA , B ; k).

【0135】Aは、通信装置108Aを用いてC1とC2をB
に送る。
A uses the communication device 108A to connect C 1 and C 2 to B
Send to

【0136】メール本文の復号化 Bは送られてきたC1とC2に対して、Bの利用者側装置
100B内の暗復号化装置105Bを用いて、まず、マスタ鍵K
B,Aより、k=D(KB,A;C2),にてデータ暗号化鍵k
を復号化し、次にデータ暗号化鍵kを用いて、P=D
(k;C1),にて、メール本文Pを復号化する。
Decryption of mail text B is a device on the user side of B for C 1 and C 2 sent.
Using the encryption / decryption device 105B in 100B, first, the master key K
From B and A , the data encryption key k is k = D (KB , A ; C 2 ).
, And then using the data encryption key k, P = D
At (k; C 1 ), the mail text P is decrypted.

【0137】(実施例5)実施例5は実施例2の拡張版
であり、αの値を秘密にすることで安全性をさらに向上
させている。
(Embodiment 5) Embodiment 5 is an expanded version of Embodiment 2, in which the value of α is kept secret to further improve security.

【0138】準備 センタはセンタ側装置200内の素数発生器201、原始根生
成器202および演算器204を用いて次の情報を作成する。
Preparation The center creates the following information using the prime number generator 201, the primitive root generator 202 and the arithmetic unit 204 in the center side device 200.

【0139】公開情報: ・p;素数, ・n=q・q', ・a∈Z s.t 0<a<p、かつ、aはZ/(p)で原始
根, 秘密情報: ・q,q'∈Z;素数 s.t q−1=2ξ1ξ2,q'−1
=2η1η21,ξ2,η1,η2;素数), ・α∈Z s.t αはZ/(q),Z/(q')で原始根. ネットワークの各利用者λは利用者側装置100内の乱数
発生器101およびべき乗算器102を用いて次の鍵を作成す
る。
Public information :-p; prime number, -n = q-q ',-a? Zst 0 <a <p, and a is a primitive root in Z / (p), secret information: -q, q '∈ Z; prime number st q-1 = 2ξ 1 ξ 2 , q'-1
= 2η 1 η 21 , ξ 2 , η 1 , η 2 ; prime number), α ∈ Z st α is a primitive root with Z / (q) and Z / (q '). Each user λ of the network uses the random number generator 101 and the power multiplier 102 in the user side device 100 to create the next key.

【0140】秘密鍵:Private key:

【0141】[0141]

【数109】・xλ∈Z s.t 0<xλ<p−1. 公開鍵:[Number 109] · x λ ∈Z st 0 <x λ <p-1. Public key:

【0142】[0142]

【数110】・yλ=exp(a:xλ)(mod p). センタへの登録 ネットワークの利用者λはセンタに自分のID情報Iλ
を登録する。
Y λ = exp (a: x λ ) (mod p). Registration to the center The network user λ has the ID information I λ at the center.
To register.

【0143】センタはセンタ側装置200内の秘密鍵作成
装置203を用いて、ed≡1(mod M),なるe,dを
作成し、利用者λのID情報Iλに対して、sλ=exp
(Iλ:e)(mod N),
The center uses the secret key creating device 203 in the center-side device 200 to create e and d such that ed≡1 (mod M), and s λ for the ID information I λ of the user λ. = Exp
(I λ : e) (mod N),

【0144】[0144]

【数111】vλ=exp(α:sλ)(mod n), を計算して、(sλ,vλ)を利用者λに安全に配布す
る。ただし、M=l.c.d(ξ1−1,ξ2−1,η1−1,
η2−1),N=l.c.d(q−1,q'−1)。
Calculate v λ = exp (α: s λ ) (mod n), and securely distribute (s λ , v λ ) to the user λ. However, M = lcd (ξ 1 -1, ξ 2 -1, η 1 -1,
η 2 −1), N = lcd (q−1, q′−1).

【0145】このとき、At this time,

【0146】[0146]

【数112】sλ≠sμ and vλ≠vμ if Iλ≠Iμ
∈Λ=Z/(N), が成立することに注意する。
S λ ≠ s μ and v λ ≠ v μ if I λ ≠ I μ
Note that εΛ = Z / (N), holds.

【0147】マスタ鍵の共有 ネットワークの利用者λは、ベクトル(yλ,vλ)を
λの公開鍵として登録を行なう。
Master Key Sharing A network user λ registers a vector (y λ , v λ ) as a public key of λ.

【0148】さらに、ネットワークに接続された利用者
側装置100内には同一の秘密鍵暗号系アルゴリズムを内
蔵した暗復号化装置105があり、この秘密鍵暗号系アル
ゴリズムを用いて平文Mを鍵Kで暗号化した結果および
復号化した結果をそれぞれE(K;M),D(K;M)で
表わす。
Further, in the user side device 100 connected to the network, there is the encryption / decryption device 105 having the same secret key cryptosystem algorithm built therein, and the plaintext M is converted into the key K using this secret key cryptosystem algorithm. The encrypted result and the decrypted result are represented by E (K; M) and D (K; M), respectively.

【0149】ネットワークの利用者A,Bについて、A
はBに対して電子メールを送りたい。この目的の下で、
A,Bは次の手順を実行する AはAの利用者側装置100A内のべき乗算器102Aと演算器
104Aとハッシュ計算器106Aを用いて、Aの秘密鍵
(xA,sA)とBの公開鍵(yB,vB)からマスタ鍵K
A,Bを、
Regarding network users A and B, A
Wants to send an email to B. Under this purpose,
A and B execute the following procedure: A is a power multiplier 102A and an arithmetic unit in the user side device 100A of A.
Using 104A and the hash calculator 106A, from A's private key (x A , s A ) and B's public key (y B , v B ) to the master key K
A, B

【0150】[0150]

【数113】KA,B=g(φ(exp(yB:xA)(mod p),exp
(vB:sA)(mod n))), にて作成する。同様に、BはBの利用者側装置100B内の
べき乗算器102Bと演算器104Bとハッシュ計算器106Bを用
いて、自分の秘密鍵(xB,sB)とAの公開鍵(yA
A)からマスタ鍵KB,Aを、
[Equation 113] K A, B = g (φ (exp (y B : x A ) (mod p), exp
(v B : s A ) (mod n))) ,. Similarly, B uses his / her own private key (x B , s B ) and A's public key (y A by using the power multiplier 102B, the arithmetic unit 104B and the hash calculator 106B in the user side device 100B of B.
v A ) to the master key K B, A ,

【0151】[0151]

【数114】KB,A=g(φ(exp(yA:xB)(mod p),exp
(vA:sB)(mod n))), にて計算する。ただし、gはハッシュ計算器内で用いら
れるハッシュ関数を表わし、φは,
[Equation 114] K B, A = g (φ (exp (y A : x B ) (mod p), exp
(v A : s B ) (mod n))), However, g represents the hash function used in the hash calculator, and φ is

【0152】[0152]

【数115】 φ:Z/(p)×Z/(n) → Z/(m) ((x,x) → x), なる同型写像を表わす(m=pn)。ここで、xはそれ
ぞれの剰余環におけるxを代表元とする剰余類を表わ
す。
Φ: Z / (p) × Z / (n) → Z / (m) ((x, x) → x), which represents an isomorphic mapping (m = pn). Here, x represents a residue class whose representative element is x in each residue ring.

【0153】このとき、明らかに、KA,B=KB,A,が成
立する。
At this time, it is clear that K A, B = K B, A.

【0154】さらに、Aは電子メールを送信する機会が
多い利用者については、それらの利用者とAとの間の各
マスタ鍵の集合SA、または、Aの秘密情報xAから利用
者側装置100A内の鍵生成器103Aにより鍵K(A)を作成
し、暗復号化装置105Aを用いて鍵K(A)によりSAを暗
号化したC(A)=E(K(A);SA),を、メモリ107A
に記憶する。以後の電子メール通信において、データ暗
号化鍵更新のためなどでマスタ鍵が必要な場合、マスタ
鍵が記憶されているものについては、新たに自分の秘密
鍵と相手の公開鍵からマスタ鍵を作成することなく、メ
モリ107Aに記憶されているマスタ鍵を使う。
Furthermore, for users who frequently send e-mail, A refers to the set S A of each master key between those users and A or the secret information x A of A from the user side. The key generator 103A in the device 100A creates the key K (A), and the encryption / decryption device 105A encrypts S A with the key K (A) C (A) = E (K (A); S A ), the memory 107A
To memorize. In subsequent e-mail communications, if a master key is required for updating the data encryption key, etc., if the master key is stored, create a new master key from your private key and the public key of the other party. Without using the master key stored in the memory 107A.

【0155】メール本文の暗号化 Aは、利用者側装置100A内の乱数発生器101Aを用いて乱
数rを選び、rを入力として鍵生成器103Aからデータ暗
号化鍵kを作成する。メール本文Pを暗復号化装置105A
を用いてデータ暗号化鍵kにより暗号化した暗号文C1
を、C1=E(k;P),にて作成する。さらに、暗復号
化装置105Aを用いてデータ暗号化鍵kをマスタ鍵KA,B
で暗号化した暗号文C2を、C2=E(KA,B;k),にて
作成する。さらに、暗復号化装置105Aを用いてデータ暗
号化鍵kをマスタ鍵KA,Bで暗号化した暗号文C2を、C
2=E(KA,B;k),にて作成する。
Encryption of mail text A uses the random number generator 101A in the user side device 100A to select a random number r, and inputs the r to create a data encryption key k from the key generator 103A. Email text P encryption / decryption device 105A
Ciphertext C 1 encrypted with the data encryption key k using
With C 1 = E (k; P). Furthermore, the data encryption key k is transferred to the master key K A, B using the encryption / decryption device 105A.
A ciphertext C 2 encrypted by is created by C 2 = E (KA , B ; k). Furthermore, the ciphertext C 2 obtained by encrypting the data encryption key k with the master keys K A and B using the encryption / decryption device 105A is
2 = E (K A, B ; k).

【0156】Aは、通信装置108Aを用いてC1とC2をB
に送る。
A uses the communication device 108A to connect C 1 and C 2 to B
Send to

【0157】メール本文の復号化 Bは送られてきたC1とC2に対して、Bの利用者側装置
100B内の暗復号化装置105Bを用いて、まず、マスタ鍵K
B,Aより、k=D(KB,A;C2),にてデータ暗号化鍵k
を復号化し、次にデータ暗号化鍵kを用いて、P=D
(k;C1),にて、メール本文Pを復号化する。
Decryption of mail body B is a device on the user side of B for C 1 and C 2 sent.
Using the encryption / decryption device 105B in 100B, first, the master key K
From B and A , the data encryption key k is k = D (KB , A ; C 2 ).
, And then using the data encryption key k, P = D
At (k; C 1 ), the mail text P is decrypted.

【0158】(実施例6)実施例6は実施例3の拡張版
であり、αの値を秘密にすることにより安全性をさらに
向上させている。
(Embodiment 6) Embodiment 6 is an expanded version of Embodiment 3 in which the value of α is kept secret to further improve security.

【0159】準備 センタはセンタ側装置200内の素数発生器201、原始根生
成器202および演算器204を用いて次の情報を作成する。
ただし、関数fは秘密鍵作成装置203内に格納されてい
るものとする。
Preparation The center creates the following information using the prime number generator 201, the primitive root generator 202 and the arithmetic unit 204 in the center side device 200.
However, it is assumed that the function f is stored in the secret key generation device 203.

【0160】公開情報: ・p;素数, ・n=q・q', ・a∈Z s.t 0<a<p、かつ、aはZ/(p)で原始
根, 秘密情報: ・q,q'∈Z;素数 s.t q−1=2ξ1ξ2,q'−1
=2η1η21,ξ2,η1,η2;素数), ・α∈Z s.t αはZ/(q),Z/(q')で原始根. ・f;擬似ランダム関数. ネットワークの各利用者λは利用者側装置100内の乱数
発生器101およびべき乗算器102を用いて次の鍵を作成す
る。
Public information :-p; prime number, -n = q-q ',-a? Zst 0 <a <p, and a is a primitive root in Z / (p), secret information: -q, q '∈ Z; prime number st q-1 = 2ξ 1 ξ 2 , q'-1
= 2η 1 η 21 , ξ 2 , η 1 , η 2 ; prime number), α ∈ Z st α is a primitive root with Z / (q) and Z / (q '). F: pseudo-random function. Each user λ of the network uses the random number generator 101 and the power multiplier 102 in the user side device 100 to create the next key.

【0161】秘密鍵:Private key:

【0162】[0162]

【数116】・xλ∈Z s.t 0<xλ<p−1. 公開鍵:[Number 116] · x λ ∈Z st 0 <x λ <p-1. Public key:

【0163】[0163]

【数117】・yλ=exp(a:xλ)(mod p). センタへの登録 ネットワークの利用者λはセンタに自分のID情報Iλ
を登録する。
Y λ = exp (a: x λ ) (mod p). Registration to the center The network user λ has the ID information I λ at the center.
To register.

【0164】センタはセンタ側装置200内の秘密鍵作成
装置203を用いて、利用者λのID情報Iλに対して、 (1)Iλ+iλ(mod N)は平方剰余、 (2)Iλ+iλ(mod N)≠Iμ+iμ(mod N)
if λ≠μ、 となるように正整数iλを選び、
The center uses the secret key generating device 203 in the center side device 200, and (1) I λ + i λ (mod N) is the quadratic remainder, and (2) is the ID information I λ of the user λ. I λ + i λ (mod N) ≠ I μ + i μ (mod N)
choose a positive integer i λ so that if λ ≠ μ,

【0165】[0165]

【数118】sλ=exp(Iλ+iλ:1/2)(mod N), vλ=exp(α:sλ)(mod n), を計算して、(sλ,vλ)を利用者λに安全に配布す
る。
S λ = exp (I λ + i λ : 1/2) (mod N), v λ = exp (α: s λ ) (mod n), is calculated, and (s λ , v λ ) Is safely distributed to user λ.

【0166】このとき、明らかに、sλ≠sμ,vλ
μ if λ≠μ,が成立する。
At this time, obviously, s λ ≠ s μ , v λ
v μ if λ ≠ μ holds.

【0167】マスタ鍵の共有 ネットワークの利用者λは、ベクトル(yλ,vλ)を
λの公開鍵として登録を行なう。
Master Key Sharing A network user λ registers a vector (y λ , v λ ) as a public key of λ.

【0168】さらに、ネットワークに接続された利用者
側装置100内には同一の秘密鍵暗号系アルゴリズムを内
蔵した暗復号化装置105があり、この秘密鍵暗号系アル
ゴリズムを用いて平文Mを鍵Kで暗号化した結果および
復号化した結果をそれぞれE(K;M),D(K;M)で
表わす。
Further, in the user side device 100 connected to the network, there is the encryption / decryption device 105 having the same secret key cryptosystem algorithm built therein, and the plaintext M is converted into the key K using the secret key cryptosystem algorithm. The encrypted result and the decrypted result are represented by E (K; M) and D (K; M), respectively.

【0169】ネットワークの利用者A,Bについて、A
はBに対して電子メールを送りたい。この目的の下で、
A,Bは次の手順を実行する AはAの利用者側装置100A内のべき乗算器102Aと演算器
104Aとハッシュ計算器106Aを用いて、Aの秘密鍵
(xA,sA)とBの公開鍵(yB,vB)からマスタ鍵K
A,Bを、
Regarding network users A and B, A
Wants to send an email to B. Under this purpose,
A and B execute the following procedure: A is a power multiplier 102A and an arithmetic unit in the user side device 100A of A.
Using 104A and the hash calculator 106A, from A's private key (x A , s A ) and B's public key (y B , v B ) to the master key K
A, B

【0170】[0170]

【数119】KA,B=g(φ(exp(yB:xA)(mod p),exp
(vB:sA)(mod n))), にて作成する。同様に、BはBの利用者側装置100B内の
べき乗算器102Bと演算器104Bとハッシュ計算器106Bを用
いて、自分の秘密鍵(xB,sB)とAの公開鍵(yA
A)からマスタ鍵KB,Aを、
K A, B = g (φ (exp (y B : x A ) (mod p), exp
(v B : s A ) (mod n))) ,. Similarly, B uses his / her own private key (x B , s B ) and A's public key (y A by using the power multiplier 102B, the arithmetic unit 104B and the hash calculator 106B in the user side device 100B of B.
v A ) to the master key K B, A ,

【0171】[0171]

【数120】KB,A=g(φ(exp(yA:xB)(mod p),exp
(vA:sB)(mod n))), にて計算する。ただし、gはハッシュ計算器内で用いら
れるハッシュ関数を表わし、φは,
[Equation 120] K B, A = g (φ (exp (y A : x B ) (mod p), exp
(v A : s B ) (mod n))), However, g represents the hash function used in the hash calculator, and φ is

【0172】[0172]

【数121】 φ:Z/(p)×Z/(n) → Z/(m) ((x,x) → x), なる同型写像を表わす(m=pn)。ここで、xはそれ
ぞれの剰余環におけるxを代表元とする剰余類を表わ
す。
Φ: Z / (p) × Z / (n) → Z / (m) ((x, x) → x), which represents an isomorphic mapping (m = pn). Here, x represents a residue class whose representative element is x in each residue ring.

【0173】このとき、明らかに、KA,B=KB,A,が成
立する。
At this time, it is clear that K A, B = K B, A.

【0174】さらに、Aは電子メールを送信する機会が
多い利用者については、それらの利用者とAとの間の各
マスタ鍵の集合SA、または、Aの秘密情報xAから利用
者側装置100A内の鍵生成器103Aにより鍵K(A)を作成
し、暗復号化装置105Aを用いて鍵K(A)によりSAを暗
号化したC(A)=E(K(A);SA),を、メモリ107A
に記憶する。以後の電子メール通信において、データ暗
号化鍵更新のためなどでマスタ鍵が必要な場合、マスタ
鍵が記憶されているものについては、新たに自分の秘密
鍵と相手の公開鍵からマスタ鍵を作成することなく、メ
モリ107Aに記憶されているマスタ鍵を使う。
Furthermore, for users who frequently send e-mail, A refers to the set S A of each master key between those users and A , or the secret information x A of A from the user side. The key generator 103A in the device 100A creates the key K (A), and the encryption / decryption device 105A encrypts S A with the key K (A) C (A) = E (K (A); S A ), the memory 107A
To memorize. In subsequent e-mail communications, if a master key is required for updating the data encryption key, etc., if the master key is stored, create a new master key from your private key and the public key of the other party. Without using the master key stored in the memory 107A.

【0175】メール本文の暗号化 Aは、利用者側装置100A内の乱数発生器101Aを用いて乱
数rを選び、rを入力として鍵生成器103Aからデータ暗
号化鍵kを作成する。メール本文Pを暗復号化装置105A
を用いてデータ暗号化鍵kにより暗号化した暗号文C1
を、C1=E(k;P),にて作成する。さらに、暗復
号化装置105Aを用いてデータ暗号化鍵kをマスタ鍵K
A,Bで暗号化した暗号文C2を、C2=E(KA,B;k),に
て作成する。さらに、暗復号化装置105Aを用いてデータ
暗号化鍵kをマスタ鍵KA,Bで暗号化した暗号文C2を、
2=E(KA,B;k),にて作成する。
Encryption of mail text A uses the random number generator 101A in the user side device 100A to select a random number r, and inputs the r to create a data encryption key k from the key generator 103A. Email text P encryption / decryption device 105A
Ciphertext C 1 encrypted with the data encryption key k using
With C 1 = E (k; P). Furthermore, the data encryption key k is transferred to the master key K using the encryption / decryption device 105A.
A ciphertext C 2 encrypted with A and B is created with C 2 = E (K A, B ; k). Furthermore, a ciphertext C 2 obtained by encrypting the data encryption key k with the master keys K A and B using the encryption / decryption device 105A,
Create with C 2 = E (K A, B ; k).

【0176】Aは、通信装置108Aを用いてC1とC2をB
に送る。
A uses the communication device 108A to connect C 1 and C 2 to B
Send to

【0177】メール本文の復号化 Bは送られてきたC1とC2に対して、Bの利用者側装置
100B内の暗復号化装置105Bを用いて、まず、マスタ鍵K
B,Aより、k=D(KB,A;C2),にてデータ暗号化鍵k
を復号化し、次にデータ暗号化鍵kを用いて、P=D
(k;C1),にて、メール本文Pを復号化する。
Decryption of mail text B is a device on the user side of B for C 1 and C 2 sent.
Using the encryption / decryption device 105B in 100B, first, the master key K
From B and A , the data encryption key k is k = D (KB , A ; C 2 ).
, And then using the data encryption key k, P = D
At (k; C 1 ), the mail text P is decrypted.

【0178】(実施例7)実施例7は実施例4の拡張版
であり、αの値を秘密にすることにより安全性をさらに
向上させている。
(Embodiment 7) Embodiment 7 is an expanded version of Embodiment 4, in which the value of α is kept secret to further improve security.

【0179】準備 センタはセンタ側装置200内の素数発生器201、原始根生
成器202および演算器204を用いて次の情報を作成する。
Preparation The center creates the following information using the prime number generator 201, the primitive root generator 202 and the arithmetic unit 204 in the center side device 200.

【0180】公開情報: ・p;素数, ・n=q・q'(q,q';素数), ・a∈Z s.t 0<a<p、かつ、aはZ/(p)で原始
根, 秘密情報: ・Z/(N)の元を出力する秘密鍵暗号アルゴリズムおよ
び鍵r, ・α∈Z s.t αはZ/(q),Z/(q')で原始根. ここで、N=l.c.d(q−1,q'−1)とする。また、
センタの秘密情報である秘密鍵暗号アルゴリズムによ
り、平文Mを鍵kで暗号化および復号化した結果をそれ
ぞれE0(k;M),D0(k;M)で表わす。
Public information :-p; prime number-n = q-q '(q, q'; prime number) -a? Zst 0 <a <p, and a is Z / (p) and a primitive root , Confidential information: ・ Secret key encryption algorithm and key r that outputs the element of Z / (N) ・ α ∈ Z st α is a primitive root with Z / (q) and Z / (q '). Here, N = lcd (q-1, q'-1). Also,
Results of encrypting and decrypting the plaintext M with the key k by the secret key encryption algorithm which is the secret information of the center are represented by E 0 (k; M) and D 0 (k; M), respectively.

【0181】ネットワークの各利用者λは利用者側装置
100内の乱数発生器101およびべき乗算器102を用いて次
の鍵を作成する。
Each user λ of the network is a user-side device
A random number generator 101 and a power multiplier 102 in 100 are used to generate the next key.

【0182】秘密鍵:Private key:

【0183】[0183]

【数122】・xλ∈Z s.t 0<xλ<p−1. 公開鍵:[Number 122] · x λ ∈Z st 0 <x λ <p-1. Public key:

【0184】[0184]

【数123】・yλ=exp(a:xλ)(mod p). センタへの登録 ネットワークの利用者λはセンタに自分のID情報Iλ
を登録する。
Y λ = exp (a: x λ ) (mod p). Registration to the center The network user λ has the ID information I λ at the center.
To register.

【0185】センタはセンタ側装置200内の秘密鍵作成
装置203を用いて、利用者λのID情報Iλに対して、
The center uses the secret key generating device 203 in the center-side device 200 to obtain the ID information I λ of the user λ,

【0186】[0186]

【数124】sλ=E0(r;Iλ)∈Z/(N), vλ=exp(α:sλ)(mod N), を計算して、(sλ,vλ)を利用者λに安全に配布す
る。
S λ = E 0 (r; I λ ) εZ / (N), v λ = exp (α: s λ ) (mod N), is calculated to obtain (s λ , v λ ). Distribute safely to user λ.

【0187】このとき、sλ≠sμ and vλ≠vμ i
f Iλ≠Iμ∈Λ=Z/(N),が成立することに注意す
る。
At this time, s λ ≠ s μ and v λ ≠ v μ i
Note that f I λ ≠ I μ εΛ = Z / (N), holds.

【0188】マスタ鍵の共有 ネットワークの利用者λは、ベクトル(yλ,vλ)を
λの公開鍵として登録を行なう。
Master Key Sharing A network user λ registers a vector (y λ , v λ ) as a public key of λ.

【0189】さらに、ネットワークに接続された利用者
側装置100内には同一の秘密鍵暗号系アルゴリズムを内
蔵した暗復号化装置105があり、この秘密鍵暗号系アル
ゴリズムを用いて平文Mを鍵Kで暗号化した結果および
復号化した結果をそれぞれE(K;M),D(K;M)で
表わす。
Further, in the user side device 100 connected to the network, there is the encryption / decryption device 105 having the same secret key cryptosystem algorithm built therein, and the plaintext M is converted into the key K using this secret key cryptosystem algorithm. The encrypted result and the decrypted result are represented by E (K; M) and D (K; M), respectively.

【0190】ネットワークの利用者A,Bについて、A
はBに対して電子メールを送りたい。この目的の下で、
A,Bは次の手順を実行する AはAの利用者側装置100A内のべき乗算器102Aと演算器
104Aとハッシュ計算器106Aを用いて、Aの秘密鍵
(xA,sA)とBの公開鍵(yB,vB)からマスタ鍵K
A,Bを、
Regarding network users A and B, A
Wants to send an email to B. Under this purpose,
A and B execute the following procedure: A is a power multiplier 102A and an arithmetic unit in the user side device 100A of A.
Using 104A and the hash calculator 106A, from A's private key (x A , s A ) and B's public key (y B , v B ) to the master key K
A, B

【0191】[0191]

【数125】KA,B=g(φ(exp(yB:xA)(mod p),exp
(vB:sA)(mod n))), にて作成する。同様に、BはBの利用者側装置100B内の
べき乗算器102Bと演算器104Bとハッシュ計算器106Bを用
いて、自分の秘密鍵(xB,sB)とAの公開鍵(yA
A)からマスタ鍵KB,Aを、
[Equation 125] K A, B = g (φ (exp (y B : x A ) (mod p), exp
(v B : s A ) (mod n))) ,. Similarly, B uses his / her own private key (x B , s B ) and A's public key (y A by using the power multiplier 102B, the arithmetic unit 104B and the hash calculator 106B in the user side device 100B of B.
v A ) to the master key K B, A ,

【0192】[0192]

【数126】KB,A=g(φ(exp(yA:xB)(mod p),exp
(vA:sB)(mod n))), にて計算する。ただし、gはハッシュ計算器内で用いら
れるハッシュ関数を表わし、φは,
K B, A = g (φ (exp (y A : x B ) (mod p), exp
(v A : s B ) (mod n))), However, g represents the hash function used in the hash calculator, and φ is

【0193】[0193]

【数127】 φ:Z/(p)×Z/(n) → Z/(m) ((x,x) → x), なる同型写像を表わす(m=pn)。ここで、xはそれ
ぞれの剰余環におけるxを代表元とする剰余類を表わ
す。
Φ: Z / (p) × Z / (n) → Z / (m) ((x, x) → x), which represents an isomorphic mapping (m = pn). Here, x represents a residue class whose representative element is x in each residue ring.

【0194】このとき、明らかに、KA,B=KB,A,が成
立する。
At this time, it is clear that K A, B = K B, A.

【0195】さらに、Aは電子メールを送信する機会が
多い利用者については、それらの利用者とAとの間の各
マスタ鍵の集合SA、または、Aの秘密情報xAから利用
者側装置100A内の鍵生成器103Aにより鍵K(A)を作成
し、暗復号化装置105Aを用いて鍵K(A)によりSAを暗
号化したC(A)=E(K(A);SA),を、メモリ107A
に記憶する。以後の電子メール通信において、データ暗
号化鍵更新のためなどでマスタ鍵が必要な場合、マスタ
鍵が記憶されているものについては、新たに自分の秘密
鍵と相手の公開鍵からマスタ鍵を作成することなく、メ
モリ107Aに記憶されているマスタ鍵を使う。
Furthermore, for users who frequently send e-mail, A refers to the set S A of each master key between those users and A , or the secret information x A of A from the user side. The key generator 103A in the device 100A creates the key K (A), and the encryption / decryption device 105A encrypts S A with the key K (A) C (A) = E (K (A); S A ), the memory 107A
To memorize. In subsequent e-mail communications, if a master key is required for updating the data encryption key, etc., if the master key is stored, create a new master key from your private key and the public key of the other party. Without using the master key stored in the memory 107A.

【0196】メール本文の暗号化 Aは、利用者側装置100A内の乱数発生器101Aを用いて乱
数rを選び、rを入力として鍵生成器103Aからデータ暗
号化鍵kを作成する。メール本文Pを暗復号化装置105A
を用いてデータ暗号化鍵kにより暗号化した暗号文C1
を、C1=E(k;P),にて作成する。さらに、暗復
号化装置105Aを用いてデータ暗号化鍵kをマスタ鍵K
A,Bで暗号化した暗号文C2を、C2=E(KA,B;k),に
て作成する。
Encryption of mail text A uses the random number generator 101A in the user side device 100A to select a random number r, and inputs the r to create a data encryption key k from the key generator 103A. Email text P encryption / decryption device 105A
Ciphertext C 1 encrypted with the data encryption key k using
With C 1 = E (k; P). Furthermore, the data encryption key k is transferred to the master key K using the encryption / decryption device 105A.
A ciphertext C 2 encrypted with A and B is created with C 2 = E (K A, B ; k).

【0197】Aは、通信装置108Aを用いてC1とC2をB
に送る。
A uses the communication device 108A to connect C 1 and C 2 to B
Send to

【0198】メール本文の復号化 Bは送られてきたC1とC2に対して、Bの利用者側装置
100B内の暗復号化装置105Bを用いて、まず、マスタ鍵K
B,Aより、k=D(KB,A;C2),にてデータ暗号化鍵k
を復号化し、次にデータ暗号化鍵kを用いて、P=D
(k;C1),にて、メール本文Pを復号化する。
Decryption of mail text B is a device on the user side of B for C 1 and C 2 sent.
Using the encryption / decryption device 105B in 100B, first, the master key K
From B and A , the data encryption key k is k = D (KB , A ; C 2 ).
, And then using the data encryption key k, P = D
At (k; C 1 ), the mail text P is decrypted.

【0199】(実施例8)実施例1から実施例7におい
て、以下のようにメール本文の暗号化およびメール本文
の復号化を行なう。
(Embodiment 8) In Embodiments 1 to 7, the mail text is encrypted and the mail text is decrypted as follows.

【0200】・メール本文の暗号化 Aは、利用者側装置100A内の乱数発生器101Aを用いて乱
数rを選び、rを入力として鍵生成器103Aからデータ暗
号化鍵kを作成する。メール本文Pを暗復号化装置105A
を用いてデータ暗号化鍵kにより暗号化した暗号文C1
を、C1=E(k;P),にて作成する。さらに、演算
器を用いてデータ暗号化鍵kとマスタ鍵KA,Bの排他的
論理和を、C2=k*KA,B,にて作成する。
Encryption of mail text A uses the random number generator 101A in the user side device 100A to select a random number r, and inputs the r to create a data encryption key k from the key generator 103A. Email text P encryption / decryption device 105A
Ciphertext C 1 encrypted with the data encryption key k using
With C 1 = E (k; P). Further, an exclusive OR of the data encryption key k and the master key K A, B is created by using an arithmetic unit with C 2 = k * K A, B.

【0201】Aは通信装置108Aを用いてC1とC2をBに
送る。
A uses the communication device 108A to send C 1 and C 2 to B.

【0202】・メール本文の復号化 Bは送られてきたC1とC2に対して、まず、演算器104B
を用いてマスタ鍵KB, AとC2の排他的論理和を計算する
ことによりデータ暗号化鍵kを復号化する。すなわち、
k=C2*KA,B.次に、暗復号化装置105Bを用いてデー
タ暗号化鍵kから、P=D(k;C1),にてメール本文
Pを復号化する。
・ Decryption of mail body B: For C 1 and C 2 sent, first, the arithmetic unit 104B
Is used to decrypt the data encryption key k by calculating the exclusive OR of the master keys K B, A and C 2 . That is,
k = C 2 * K A, B. Next, the encryption / decryption device 105B is used to decrypt the mail text P from the data encryption key k with P = D (k; C 1 ).

【0203】(実施例9)実施例2から実施例8のマス
タ鍵共有において、AはAの利用者側装置100A内のべき
乗算器102Aと演算器104Aとハッシュ計算器106Aを用い
て、Aの秘密鍵(xA,sA)とBの公開鍵(yB,vB
からマスタ鍵KA,Bを、
(Embodiment 9) In the master key agreement of Embodiments 2 to 8, A is A using the power multiplier 102A, the arithmetic unit 104A and the hash calculator 106A in the user side device 100A of A. Private key (x A , s A ) and B's public key (y B , v B )
To the master key K A, B ,

【0204】[0204]

【数128】KA,B=g((exp(yB:xA)(mod p))*(ex
p(vB:sA)(mod n))), にて作成する。同様に、BはBの利用者側装置100B内の
べき乗算器102Bと演算器104Bとハッシュ計算器106Bを用
いて、自分の秘密鍵(xB,sB)とAの公開鍵(yA
A)からマスタ鍵KB,Aを、
K A, B = g ((exp (y B : x A ) (mod p)) * (ex
p (v B : s A ) (mod n))), Similarly, B uses his / her own private key (x B , s B ) and A's public key (y A by using the power multiplier 102B, the arithmetic unit 104B and the hash calculator 106B in the user side device 100B of B.
v A ) to the master key K B, A ,

【0205】[0205]

【数129】KB,A=g((exp(yA:xB)(mod p))*(ex
p(vA:sB)(mod n))), にて計算する。ただし、gはハッシュ計算器内で用いら
れるハッシュ関数を表わし、x*yはxとyの排他的論
理和を表わす。
K B, A = g ((exp (y A : x B ) (mod p)) * (ex
p (v A : s B ) (mod n))), However, g represents a hash function used in the hash calculator, and x * y represents an exclusive OR of x and y.

【0206】(実施例10)ネットワークの各利用者は
カード400を所持し、電子メール通信時にはカード400を
利用者側装置500内のカード読取装置501に差し込み、実
施例1から実施例9において、利用者側装置100内の乱
数発生器101、べき乗算器102、鍵生成器103、演算器10
4、暗復号化装置105、ハッシュ計算器106、メモリ107を
用いて行なう処理をそれぞれカード400内の乱数発生器4
01、べき乗算器402、鍵生成器403、演算器404、暗復号
化装置405、ハッシュ計算器406、メモリ407を用いて行
ない、受信者への送信文はカード400内の出力装置408を
用いて、利用者側装置500内のカード読取装置501に出力
され、さらに、利用者側装置500内の通信装置502を用い
て通信回線300を介して送信する。
(Embodiment 10) Each user of the network possesses the card 400, and inserts the card 400 into the card reader 501 in the user-side device 500 at the time of electronic mail communication. Random number generator 101, exponentiator 102, key generator 103, calculator 10 in the user-side device 100
4. The random number generator 4 in the card 400 performs the processes using the encryption / decryption device 105, the hash calculator 106, and the memory 107.
01, exponentiator 402, key generator 403, arithmetic unit 404, encryption / decryption device 405, hash calculator 406, memory 407, the transmission to the recipient using the output device 408 in the card 400 Then, it is output to the card reading device 501 in the user side device 500, and is further transmitted via the communication line 300 using the communication device 502 in the user side device 500.

【0207】[0207]

【発明の効果】本発明における電子メール暗号化方法に
よれば、メールシステムや機種に特定しないで通常のメ
ールと併用できる特徴を有するため、通信ネットワーク
の形態に依らず適用が可能である。また、電子メールの
送信者および受信者はそれぞれ自分の秘密鍵と相手の公
開鍵からマスタ鍵の共有を行ない、秘密鍵暗号を用いて
メール本文の暗号化およびデータ暗号化鍵配送を行なっ
ているため、送受信者双方の計算処理負担が少なく高速
な暗号化処理が可能となった。また、ディジタル署名な
どの付加情報を付けることなく送信者の認証が可能とな
るため、メール暗号文のヘッダ情報が少なく、電子メー
ルのセキュリティ機能実現のための処理時間が大幅に削
減された。さらに、ID情報は利用者毎に異なることを
利用して、センタと利用者が協力して利用者の鍵生成を
行なうことにより、利用者の鍵の一致の心配がなく、盗
聴や不正者のなりすまし対して高い安全性を実現した。
According to the electronic mail encryption method of the present invention, the electronic mail encryption method has a feature that it can be used in combination with ordinary mail without specifying the mail system or model, and therefore can be applied regardless of the form of the communication network. In addition, the sender and the recipient of the electronic mail share the master key from their own private key and the public key of the other party, and use the private key encryption to encrypt the mail text and deliver the data encryption key. Therefore, both the sender and the receiver can perform high-speed encryption processing with less calculation processing load. In addition, since the sender can be authenticated without adding additional information such as a digital signature, the header information of the mail ciphertext is small, and the processing time for realizing the e-mail security function is greatly reduced. Furthermore, since the center and the user cooperate to generate the key of the user by utilizing the fact that the ID information is different for each user, there is no fear of the user's key matching, and there is no fear of eavesdropping or unauthorized persons. Achieved high security against impersonation.

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

【図1】本発明の実施例におけるシステム構成を示すブ
ロック図。
FIG. 1 is a block diagram showing a system configuration according to an embodiment of the present invention.

【図2】本発明の電子メール暗号化方法の概念を示す説
明図。
FIG. 2 is an explanatory diagram showing the concept of the electronic mail encryption method of the present invention.

【図3】実施例1から9のシステム構成内の利用者側装
置内部構成を示すブロック図。
FIG. 3 is a block diagram showing an internal configuration of a user-side device in the system configurations of Examples 1 to 9.

【図4】実施例1から9のシステム構成内のセンタ側装
置内部構成を示すブロック図。
FIG. 4 is a block diagram showing an internal configuration of a center-side device in the system configurations of Embodiments 1 to 9.

【図5】実施例10のシステム構成内のカード内部構成
を示すブロック図。
FIG. 5 is a block diagram showing an internal configuration of a card in the system configuration of the tenth embodiment.

【図6】実施例10のシステム構成内の利用者側装置内
部構成を示すブロック図。
FIG. 6 is a block diagram showing the internal configuration of a user-side device in the system configuration of Example 10.

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

100…利用者側装置、 101…利用者側装置100内の乱数発生器、 102…利用者側装置100内のべき乗算器、 103…利用者側装置100内の鍵生成器、 104…利用者側装置100内の演算器、 105…利用者側装置100内の暗復号化装置、 106…利用者側装置100内のハッシュ計算器、 107…利用者側装置100内のメモリ、 108…利用者側装置100内の通信装置、 200…センタ側装置。 100 ... User device, 101 ... Random number generator in user device 100, 102 ... Power multiplier in user device 100, 103 ... Key generator in user device 100, 104 ... User Operation unit in the side device 100, 105 ... Encryption / decryption device in the user side device 100, 106 ... Hash calculator in the user side device 100, 107 ... Memory in the user side device 100, 108 ... User Communication device in the side device 100, 200 ... Center side device.

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H04L 12/58 ─────────────────────────────────────────────────── ─── Continuation of the front page (51) Int.Cl. 6 Identification code Office reference number FI technical display location H04L 12/58

Claims (13)

【特許請求の範囲】[Claims] 【請求項1】通信ネットワーク上でメールの送受信を行
なう電子メール通信システムにおいて、送信者Aが受信
者Bに対して送信するメール文を暗号化する電子メール
暗号化方法であって、準備処理として、送信者Aは秘密
鍵xAおよび秘密鍵xAに対応する公開鍵vAを作成し、
受信者Bは秘密鍵xBおよび秘密鍵xBに対応する公開鍵
Bを作成し、それぞれ公開鍵のみを公開し、マスタ鍵
共有処理として、送信者Aは自分の秘密鍵xAと受信者
Bの公開鍵vBからマスタ鍵KA,Bを作成し、受信者Bは
自分の秘密鍵xBと受信者Bの公開鍵vAからマスタ鍵K
B,Aを作成し、このとき、KA,B=KB,Aが成立し、特
に、送信者Aは電子メールを送信する機会が多い受信者
に対しては、それらの受信者と送信者A間の各マスタ
鍵、または、各マスタ鍵を送信者Aの秘密鍵から作成し
た鍵を用いて暗号化した情報を記憶し、以後の電子メー
ル通信において、データ暗号化鍵更新のためなどでマス
タ鍵が必要な場合、マスタ鍵が記憶されているものにつ
いては、新たに相手の公開鍵と自分の秘密鍵からマスタ
鍵を作成することなく、記憶されているマスタ鍵を使う
こととし、メール本文の暗復号化処理として、送信者A
はデータ暗号化鍵kをランダムに選び、受信者Bとの間
で共通に保有する秘密鍵暗号系アルゴリズムを用いて、
メール本文Pをデータ暗号化鍵kにて暗号化した暗号文
1(k;P)と、データ暗号化鍵kをマスタ鍵KA,B
て暗号化した暗号文E2(KA,B;k)を受信者Bに送信
し、受信者Bは、マスタ鍵KB,Aを用いてE2(KA,B
k)からデータ暗号化鍵kを復号化し、さらにデータ暗
号化鍵kを用いてE1(k;P)からメール本文Pを復号
化することを特徴とする電子メール暗号化方法。
1. An electronic mail communication method for sending and receiving mails on a communication network, which is an electronic mail encryption method for encrypting a mail text sent from a sender A to a recipient B, which is a preparation process. , Sender A creates private key x A and public key v A corresponding to private key x A ,
Receiver B creates a public key v B corresponding to the private key x B and secret key x B, only expose the respective public keys, as the master key sharing process, the sender A is received with its own secret key x A The master key K A, B is created from the public key v B of the person B, and the recipient B uses the private key x B of the person B and the public key v A of the recipient B to obtain the master key K A.
B, A is created, and at this time, K A, B = K B, A holds. Especially, for the recipients who often send the e-mail, the sender A sends them together with those recipients. Storing information obtained by encrypting each master key between persons A or each master key with a key created from the secret key of the sender A, for updating the data encryption key in the subsequent e-mail communication, etc. If a master key is required in, if the master key is stored, the stored master key is used without creating a new master key from the other party's public key and own private key, As the encryption / decryption processing of the mail text, sender A
Randomly selects the data encryption key k and uses the secret key cryptosystem algorithm commonly held with the recipient B,
Ciphertext E 1 (k; P) obtained by encrypting the mail text P with the data encryption key k, and ciphertext E 2 (K A, B obtained by encrypting the data encryption key k with the master key K A, B B ; k) to the recipient B, who uses the master key K B, A to generate E 2 (K A, B ;
An electronic mail encryption method characterized by decrypting the data encryption key k from k), and further decrypting the mail text P from E 1 (k; P) using the data encryption key k.
【請求項2】通信ネットワーク上でメールの送受信を行
なう電子メール通信システムにおいて、送信者Aが受信
者Bに対して送信するメール文を暗号化する電子メール
暗号化方法であって、準備処理として、センタはセンタ
の秘密情報として1対1関数fを作成し、送信者Aは秘
密鍵xAおよび秘密鍵xAに対応する公開鍵yAを作成
し、受信者Bは秘密鍵xBおよび秘密鍵xBに対応する公
開鍵yBを作成し、センタへの登録処理として、送信者
Aおよび受信者Bは自分のID情報をセンタに登録し、
センタはセンタの秘密情報である関数fを用いて、送信
者AのID情報IAから送信者Aに固有の秘密鍵sAを、
A=f(IA),で作成し、同様に受信者BのID情報
Bから受信者Bに固有の秘密鍵sBを、sB=f(IB),
で作成し、センタは秘密鍵sAとsAに対応する公開鍵v
Aの組(sA,vA)を送信者Aに安全に配布し、同様に
秘密鍵sBとsBに対応する公開鍵vBの組(sB,vB
を受信者Bに安全に配布し、このとき、IA≠IBならば
A≠sBかつvA≠vB,が成立し、送信者Aは(yA
A)を、受信者Bは(yB,vB)をそれぞれ自分の公
開情報として登録し、マスタ鍵の共有処理として、送信
者Aは自分の秘密鍵(xA,sA)と受信者Bの公開鍵
(yB,vB)からマスタ鍵KA,Bを作成し、受信者Bは
自分の秘密鍵(xB,sB)と受信者Bの公開鍵(yA
A)からマスタ鍵KB,Aを作成し、このとき、KA,B
B,Aが成立し、特に、送信者Aは電子メールを送信す
る機会が多い受信者に対しては、それらの受信者と送信
者A間の各マスタ鍵、または、各マスタ鍵を送信者Aの
秘密鍵から作成した鍵を用いて暗号化した情報、を記憶
し、以後の電子メール通信において、データ暗号化鍵更
新のためなどでマスタ鍵が必要な場合、マスタ鍵が記憶
されているものについては、新たに相手の公開鍵と自分
の秘密鍵からマスタ鍵を作成することなく、記憶されて
いるマスタ鍵を使うこととし、メール本文の暗復号化処
理として、送信者Aはデータ暗号化鍵kをランダムに選
び、受信者Bとの間で共通に保有する秘密鍵暗号系アル
ゴリズムを用いて、メール本文Pをデータ暗号化鍵kに
て暗号化した暗号文E1(k;P)と、データ暗号化鍵k
をマスタ鍵KA,Bにて暗号化した暗号文E2(KA,B;k)
を受信者Bに送信し、受信者Bは、マスタ鍵KB,Aを用
いてE2(KA, B;k)からデータ暗号化鍵kを復号化
し、さらにデータ暗号化鍵kを用いてE1(k;P)から
メール本文Pを復号化することを特徴とする電子メール
暗号化方法。
2. An electronic mail communication method for sending and receiving mail on a communication network, which is an electronic mail encryption method for encrypting a mail text sent from a sender A to a recipient B, which is a preparation process. , The center creates a one-to-one function f as the secret information of the center, the sender A creates the private key x A and the public key y A corresponding to the private key x A , and the receiver B creates the private key x B and A public key y B corresponding to the private key x B is created, and as registration processing to the center, sender A and recipient B register their ID information in the center,
The center uses the function f, which is the secret information of the center, to obtain the secret key s A unique to the sender A from the ID information I A of the sender A.
s A = f (I A ), and similarly, the secret key s B unique to the recipient B from the ID information I B of the recipient B is s B = f (I B ),
The private key s A and the public key v corresponding to s A
Set of A (s A, v A) safely distributed to the sender A, similar to the public key v B of the set corresponding to the secret key s B and s B (s B, v B )
Is safely distributed to the receiver B. At this time, if I A ≠ I B, then s A ≠ s B and v A ≠ v B , then the sender A (y A ,
v A a), the recipient B is registered as (y B, v B) your public information, respectively, as a shared processing of the master key, the sender A is receiving his private key (x A, s A) and The master key K A, B is created from the public key (y B , v B ) of the person B, and the receiver B own private key (x B , s B ) and the public key (y A , B of the receiver B ).
v A ) to create a master key K B, A , where K A, B =
K B, A is established, and in particular, the sender A sends each master key between the receiver and the sender A or each master key to the receiver who often has the opportunity to send an electronic mail. The information encrypted by using the key created from the private key of the person A is stored, and when the master key is necessary for updating the data encryption key in the subsequent e-mail communication, the master key is stored. If the master key is stored, the stored master key is used without creating a new master key from the other party's public key and its own private key. An encryption key k is randomly selected, and a ciphertext E 1 (k; which is obtained by encrypting the mail text P with the data encryption key k using a secret key cryptosystem algorithm commonly held with the recipient B. P) and the data encryption key k
Ciphertext E 2 (K A, B ; k) that is encrypted with master key K A, B
To the receiver B, and the receiver B uses the master key K B, A to decrypt the data encryption key k from E 2 (K A, B ; k) and further uses the data encryption key k. A method of encrypting an electronic mail, characterized by decrypting a mail text P from E 1 (k; P).
【請求項3】通信ネットワーク上でメールの送受信を行
なう電子メール通信システムにおいて、送信者Aが受信
者Bに対して送信するメール文を暗号化する電子メール
暗号化方法であって、準備処理として、送信者Aは、0
<xAj<p−1なる整数xAj(j=1,…,n)をランダ
ムに選び、公開情報である整数a、素数pを用いて、 【数1】 yAj=exp(a:xAj)(mod p) for j=1,…,n, …(数1) を計算し、yAj(j=1,…,n)を送信者Aの公開鍵
として登録し、 受信者Bは、0<xBj<p−1なる整数xBj(j=1,
…,n)をランダムに選び、 【数2】 yBj=exp(a:xBj)(mod p) for j=1,…,n, …(数2) を計算し、yBj(j=1,…,n)を受信者Bの公開鍵
として登録し(ただし、exp(a:x)はaをx乗した値
を表わす)、マスタ鍵共有処理として、 送信者Aは、自分の秘密鍵である整数xAjと受信者Bの
公開鍵であるyBj(j=1,…,n)を用いて、マスタ
鍵KA,Bを、 【数3】 KA,B=Π{exp(yBj:xAj)(mod p)|j=1,…,n}, にて作成し、 受信者Bは、自分の秘密鍵である整数xBjと送信者Aの
公開鍵であるyAj(j=1,…,n)を用いて、マスタ
鍵KB,Aを、 【数4】 KB,A=Π{exp(yAj:xBj)(mod p)|j=1,…,n}, にて作成し、 このとき、KA,B=KB,Aが成立し、特に、送信者Aは電
子メールを送信する機会が多い受信者に対しては、それ
らの受信者と送信者A間の各マスタ鍵からなる集合
A、または、送信者Aの秘密鍵である整数xAj(j=
1,…,n)と鍵生成関数θから、 【数5】K(A)=θ(xA1,…,xAn), にて作成した鍵K(A)を用いてマスタ鍵の集合SAを暗
号化した C(A)=EA(K(A);SA), を記憶し、以後の電子メール通信において、データ暗号
化鍵更新のためなどでマスタ鍵が必要な場合、マスタ鍵
が記憶されているものについては、新たに相手の公開鍵
と自分の秘密鍵からマスタ鍵を作成することなく、記憶
されているマスタ鍵を使うこととし(ただし、EA(k;
M)はAが所持する秘密鍵暗号アルゴリズムにより平文
Mを鍵kにて暗号化した結果を表わす)、 メール本文の暗復号化処理として、送信者Aは、データ
暗号化鍵kをランダムに選び、受信者Bとの間で共通に
保有する秘密鍵暗号系アルゴリズムを用いて、メール本
文Pをデータ暗号化鍵kにて暗号化した暗号文E(k;
P)と、データ暗号化鍵kをマスタ鍵KA,Bにて暗号化
した暗号文E(KA,B;k)をメール受信者Bに送信し、
受信者Bは、マスタ鍵KB,Aを用いてE(KA,B;k)か
らデータ暗号化鍵kを復号化し、さらにデータ暗号化鍵
kを用いてE(k;P)からメール本文Pを復号化する
ことを特徴とする電子メール暗号化方法。
3. An electronic mail communication method for sending and receiving mail on a communication network, which is an electronic mail encryption method for encrypting a mail text sent from a sender A to a recipient B, which is a preparation process. , Sender A is 0
<X Aj <p−1, an integer x Aj (j = 1, ..., N) is randomly selected, and an integer a and a prime number p, which are public information, are used to obtain y Aj = exp (a: x Aj ) (mod p) for j = 1, ..., N, ... ( Equation 1) is calculated, y Aj (j = 1, ..., n) is registered as the public key of the sender A, and the recipient B is , 0 <x Bj <p−1, an integer x Bj (j = 1,
, N) is randomly selected, and y Bj = exp (a: x Bj ) (mod p) for j = 1, ..., n, (Equation 2) is calculated, and y Bj (j = 1, ..., N) is registered as the public key of the receiver B (however, exp (a: x) represents a value of a raised to the power x), and the sender A shares its secret as master key sharing processing. Using the integer x Aj , which is the key, and y Bj (j = 1, ..., N), which is the public key of the recipient B, the master key K A, B is expressed as follows: K A, B = Π {exp (y Bj : x Aj ) (mod p) | j = 1, ..., N}, and the receiver B has an integer x Bj , which is his private key, and y, which is the public key of the sender A. Using Aj (j = 1, ..., N), the master key K B, A is expressed as follows: K B, A = Π {exp (y Aj : x Bj ) (mod p) | j = 1 , N}, and at this time, K A, B = K B, A holds, and in particular, sender A sends an e-mail. For recipients who often have a chance to do so, a set S A of each master key between those recipients and sender A , or an integer x Aj (j =
1, ..., N) and the key generation function θ, using the key K (A) created by the following equation, K (A) = θ (x A1 , ..., x An ), the master key set S encrypts the a C (a) = E a (K (a); S a), and stores, in an electronic mail communication thereafter, when the master key, etc. for the data encryption key update is required, the master For keys that have been stored, the stored master key is used without creating a new master key from the other party's public key and own private key (provided that E A (k;
(M) represents the result of encrypting the plaintext M with the key k by the secret key encryption algorithm possessed by A), and the sender A randomly selects the data encryption key k as the encryption / decryption process of the mail body. , The ciphertext E (k; which is obtained by encrypting the mail text P with the data encryption key k, using the secret key cryptosystem algorithm commonly held with the recipient B.
P) and a ciphertext E (K A, B ; k) obtained by encrypting the data encryption key k with the master key K A, B, to the mail recipient B,
Recipient B uses master key K B, A to decrypt data encryption key k from E (K A, B ; k), and uses data encryption key k to send email from E (k; P) An electronic mail encryption method characterized by decrypting a body P.
【請求項4】通信ネットワーク上でメールの送受信を行
なう電子メール通信システムにおいて、送信者Aが受信
者Bに対して送信するメール文を暗号化する電子メール
暗号化方法であって、 準備処理として、センタは、素数p1と、p2−1が二つ
の大きな素数を因数として持つ素数p2と、整数a1,a
2を公開し、p2−1の素因数分解を秘密とし、送信者A
は、0<xA<p1−1なる整数xAをランダムに選び、 【数6】yA=exp(a1:xA)(mod p1), を計算し、 受信者Bは、0<xB<p1−1なる整数xBをランダム
に選び、 【数7】yB=exp(a1:xB)(mod p1), を計算し(ただし、exp(a:x)はaをx乗した値を表
わす。)、 センタへの登録処理として、送信者Aおよび受信者B
は、自分のID情報をセンタに登録し、センタは送信者
AのID情報IAから、IA+iA(mod p2−1)が平方
剰余、かつ、IA≠IBならばIA+iA(mod p2−1)
≠IB+iB(modp2−1)となるように正整数iAを選
び、送信者Aに固有の秘密鍵sAを、 【数8】sA=exp(IA+iA:1/2)(mod p2−1), にて計算し、同様に受信者BのID情報IBから、送信
者Bに固有の秘密鍵sBを、 【数9】sB=exp(IB+iB:1/2)(mod p2−1), にて計算し、各々を送信者Aおよび受信者Bに安全に配
布し、このとき、ID情報が異なれば対応する秘密鍵も
異なり、送信者AはyAと、秘密鍵sAに対応する公開鍵 【数10】vA=exp(a2:sA)(mod p2), との組(yA,vA)を送信者Aの公開鍵として登録し、
受信者BはyBと、秘密鍵sBに対応する公開鍵 【数11】vB=exp(a2:sB)(mod p2), との組(yB,vB)を受信者Bの公開鍵として登録し、
マスタ鍵共有処理として、送信者Aは、受信者Bとの間
で共通に保有する関数gを用いて、自分の秘密鍵である
(xA,sA)と受信者Bの公開鍵である(yB,vB)か
ら、マスタ鍵KA, Bを、 【数12】KA,B=g(exp(yB:xA)(mod p1),exp
(vB:sA)(mod p2)), にて作成し、受信者Bは、自分の秘密鍵である(xB
B)と送信者Aの公開鍵である(yA,vA)を用い
て、マスタ鍵KB,Aを、 【数13】KB,A=g(exp(yA:xB)(mod p1),exp
(vA:sB)(mod p2)), にて作成し、 このとき、KA,B=KB,Aが成立し、特に、送信者Aは電
子メールを送信する機会が多い受信者に対しては、それ
らの受信者と送信者A間の各マスタ鍵からなる集合
A、または、送信者Aの秘密鍵(xA,sA)と鍵生成
関数θから、 【数14】K(A)=θ(xA,sA), にて作成した鍵K(A)を用いてマスタ鍵の集合SAを暗
号化した 【数15】C(A)=EA(K(A);SA), を記憶し、以後の電子メール通信において、データ暗号
化鍵更新のためなどでマスタ鍵が必要な場合、マスタ鍵
が記憶されているものについては、新たに相手の公開鍵
と自分の秘密鍵からマスタ鍵を作成することなく、記憶
されているマスタ鍵を使うこととし(ただし、EA(k;
M)はAが所持する秘密鍵暗号アルゴリズムにより平文
Mを鍵kにて暗号化した結果を表わす。)、 メール本文の暗復号化処理として、送信者Aは、データ
暗号化鍵kをランダムに選び、受信者Bとの間で共通に
保有する秘密鍵暗号系アルゴリズムを用いて、メール本
文Pをデータ暗号化鍵kにて暗号化した暗号文E(k;
P)と、データ暗号化鍵kをマスタ鍵KA,Bにて暗号化
した暗号文E(KA,B;k)をメール受信者Bに送信し、 受信者Bは、マスタ鍵KB,Aを用いてE(KA,B;k)か
らデータ暗号化鍵kを復号化し、さらにデータ暗号化鍵
kを用いてE(k;P)からメール本文Pを復号化する
ことを特徴とする電子メール暗号化方法。
4. An electronic mail communication method for sending and receiving mail on a communication network, which is an electronic mail encryption method for encrypting a mail text sent from a sender A to a recipient B, which is a preparation process. , The center is a prime number p 1 and a prime number p 2 in which p 2 −1 has two large prime numbers as factors, and integers a 1 , a
2 is disclosed, the prime factorization of p 2 −1 is kept secret, and the sender A
Randomly selects an integer x A such that 0 <x A <p 1 −1, and calculates y A = exp (a 1 : x A ) (mod p 1 ), and the receiver B An integer x B of 0 <x B <p 1 -1 is randomly selected, and y B = exp (a 1 : x B ) (mod p 1 ), is calculated (where exp (a: x ) Represents a value obtained by multiplying a by the power of x.) As a registration process to the center, sender A and receiver B
Registers its own ID information in the center, and the center calculates I A + i A (mod p 2 −1) is a quadratic remainder from the ID information I A of the sender A, and I A ≠ I B , I A + I A (mod p 2 -1)
A positive integer i A is selected so that ≠ I B + i B (modp 2 −1), and the secret key s A unique to the sender A is expressed as follows: s A = exp (I A + i A : 1 / 2) (mod p 2 -1) , was calculated at, from the ID information I B similarly recipient B, and unique secret key s B to the sender B, Equation 9] s B = exp (I B + I B : 1/2) (mod p 2 -1), and each is safely distributed to sender A and receiver B. At this time, if the ID information is different, the corresponding secret key is also different, the sender a and y a, the public key [number 10] corresponding to the secret key s a v a = exp (a 2: s a) (mod p 2), sending the pair (y a, v a) of the Registered as the public key of person A,
Receiver B y B and, public key [number 11] corresponding to the secret key s B v B = exp (a 2: s B) (mod p 2), the combination of the (y B, v B) receive a Registered as the public key of person B,
In the master key sharing process, the sender A uses his / her own function g to be shared with the receiver B, which is (x A , s A ), which is his private key, and the public key of the receiver B. From (y B , v B ), the master key K A, B is calculated as follows: K A, B = g (exp (y B : x A ) (mod p 1 ), exp
(v B : s A ) (mod p 2 )), the recipient B has his / her private key (x B ,
s B ) and the public key (y A , v A ) of sender A, the master key K B, A is expressed as follows: K B, A = g (exp (y A : x B ) (mod p 1 ), exp
(v A : s B ) (mod p 2 )), and at this time, K A, B = K B, A holds, and in particular, the sender A receives an e-mail with many opportunities to receive it. From the set S A of the master keys between the receiver and the sender A , or the secret key (x A , s A ) of the sender A and the key generation function θ, K (A) = θ (x A , s A ), the master key set S A is encrypted by using the key K (A) created by the following equation: C (A) = E A (K (A); S A ), is stored, and when the master key is required for the purpose of updating the data encryption key in the subsequent e-mail communication, if the master key is stored, the master key is newly stored. Instead of creating a master key from the public key and your own private key, use the stored master key (however, E A (k;
M) represents the result of encrypting the plaintext M with the key k by the secret key encryption algorithm possessed by A. ), The sender A randomly selects the data encryption key k as the encryption / decryption process for the mail text, and uses the secret key cryptosystem algorithm commonly held with the receiver B to send the mail text P. Ciphertext E (k; encrypted with the data encryption key k
P) and a ciphertext E (K A, B ; k) obtained by encrypting the data encryption key k with the master key K A, B , and the recipient B receives the master key K B. , A is used to decrypt the data encryption key k from E (K A, B ; k), and further the data encryption key k is used to decrypt the mail text P from E (k; P). And the email encryption method.
【請求項5】通信ネットワーク上でメールの送受信を行
なう電子メール通信システムにおいて、送信者Aが受信
者Bに対して送信するメール文を暗号化する電子メール
暗号化方法であって、 準備処理として、センタは、素数p1と、p2−1が二つ
の大きな素数を因数として持つ素数p2と、整数a1,a
2を公開し、p2−1の素因数分解を秘密とし、送信者A
は、0<xA<p1−1なる整数xAをランダムに選び、 【数16】yA=exp(a1:xA)(mod p1), を計算し、受信者Bは、0<xB<p1−1なる整数xB
をランダムに選び、 【数17】yB=exp(a1:xB)(mod p1), を計算し、センタへの登録処理として、送信者Aおよび
受信者Bは、自分のID情報をセンタに登録し、センタ
は送信者AのID情報IAから、送信者Aに固有の秘密
鍵sAを正数eを用いて、 【数18】sA=exp(IA:e)(mod p2−1), にて計算し、同様に受信者BのID情報IBから、送信
者Bに固有の秘密鍵sBを正数eを用いて、 【数19】sB=exp(IB:e)(mod p2−1), にて計算し、各々を送信者Aおよび受信者Bに安全に配
布し(ただし、exp(a:x)はaをx乗した値を表わ
す)、 このとき、ID情報が異なれば対応する秘密鍵も異な
り、送信者AはyAと、秘密鍵sAに対応する公開鍵 【数20】vA=exp(a2:sA)(mod p2), の組(yA,vA)を送信者Aの公開鍵として登録し、受
信者BはyBと、秘密鍵sBに対応する公開鍵 【数21】vB=exp(a2:sB)(mod p2), の組(yB,vB)を受信者Bの公開鍵として登録し、マ
スタ鍵の共有処理として、送信者Aは、受信者Bとの間
で共通に保有する関数gを用いて、自分の秘密鍵である
(xA,sA)と受信者Bの公開鍵である(yB,vB)か
ら、マスタ鍵KA, Bを、 【数22】KA,B=g(exp(yB:xA)(mod p1),exp
(vB:sA)(mod p2)), にて作成し、受信者Bは、自分の秘密鍵である(xB
B)と送信者Aの公開鍵である(yA,vA)を用い
て、マスタ鍵KB,Aを、 【数23】KB,A=g(exp(yA:xB)(mod p1),exp
(vA:sB)(mod p2)), にて作成し、このとき、KA,B=KB,Aが成立し、 特に、送信者Aは電子メールを送信する機会が多い受信
者に対しては、それらの受信者と送信者A間の各マスタ
鍵からなる集合SA、または、送信者Aの秘密鍵(xA
A)と鍵生成関数θから、 【数24】K(A)=θ(xA,sA), にて作成した鍵K(A)を用いてマスタ鍵の集合SAを暗
号化した 【数25】C(A)=EA(K(A);SA), を記憶し、以後の電子メール通信において、データ暗号
化鍵更新のためなどでマスタ鍵が必要な場合、マスタ鍵
が記憶されているものについては、新たに相手の公開鍵
と自分の秘密鍵からマスタ鍵を作成することなく、記憶
されているマスタ鍵を使うこととし(ただし、EA(k;
M)はAが所持する秘密鍵暗号アルゴリズムにより平文
Mを鍵kにて暗号化した結果を表わす)、 メール本文の暗復号化処理として、送信者Aは、データ
暗号化鍵kをランダムに選び、受信者Bとの間で共通に
保有する秘密鍵暗号系アルゴリズムを用いて、メール本
文Pをデータ暗号化鍵kにて暗号化した暗号文E(k;
P)と、データ暗号化鍵kをマスタ鍵KA,Bにて暗号化
した暗号文E(KA,B;k)をメール受信者Bに送信し、
受信者Bは、マスタ鍵KB,Aを用いてE(KA,B;k)か
らデータ暗号化鍵kを復号化し、さらにデータ暗号化鍵
kを用いてE(k;P)からメール本文Pを復号化する
ことを特徴とする電子メール暗号化方法。
5. An electronic mail communication method for transmitting and receiving mail on a communication network, which is an electronic mail encryption method for encrypting a mail text sent from a sender A to a recipient B, which is a preparation process. , The center is a prime number p 1 and a prime number p 2 in which p 2 −1 has two large prime numbers as factors, and integers a 1 , a
2 is disclosed, the prime factorization of p 2 −1 is kept secret, and the sender A
Randomly selects an integer x A such that 0 <x A <p 1 −1 and calculates y A = exp (a 1 : x A ) (mod p 1 ), and the receiver B An integer x B with 0 <x B <p 1 −1
Is randomly selected, and y B = exp (a 1 : x B ) (mod p 1 ), is calculated, and sender A and receiver B have their own ID information as registration processing to the center. Is registered in the center, and the center uses the secret information s A peculiar to the sender A from the ID information I A of the sender A using a positive number e as follows: s A = exp (I A : e) (Mod p 2 −1), and similarly, from the ID information I B of the receiver B, the secret key s B unique to the sender B is calculated using a positive number e as follows: s B = exp (I B: e) ( mod p 2 -1), was calculated at each was securely distribute the sender a and recipient B (however, exp (a: x) is raised to the power x of a value At this time, if the ID information is different, the corresponding secret key is also different, and the sender A has y A and the public key corresponding to the secret key s A is as follows: v A = exp (a 2 : s A ) (mod p 2), set (y a, v a Registered as a public key of the sender A, receiver B y B and, public key [number 21] corresponding to the secret key s B v B = exp (a 2: s B) (mod p 2), of The set (y B , v B ) is registered as the public key of the receiver B, and the sender A uses the function g that is commonly held with the receiver B as the master key sharing process. From the secret key (x A , s A ) and the public key of the recipient B (y B , v B ), the master key K A, B is calculated as follows: K A, B = g (exp ( y B : x A ) (mod p 1 ), exp
(v B : s A ) (mod p 2 )), and the recipient B has his / her private key (x B ,
s B ) and the public key (y A , v A ) of the sender A, the master key K B, A is expressed as follows: K B, A = g (exp (y A : x B ) (mod p 1 ), exp
(v A : s B ) (mod p 2 )), and at this time, K A, B = K B, A holds, and in particular, the sender A receives an e-mail with many opportunities to send. To the sender, a set S A of each master key between the receiver and the sender A , or a secret key (x A ,
s A ) and the key generation function θ, the set of master keys S A is encrypted using the key K (A) created by K (A) = θ (x A , s A ), [Equation 25] C (A) = E A (K (A); S A ), is stored, and when the master key is necessary for updating the data encryption key in the subsequent e-mail communication, the master key For those stored, the stored master key is used without creating a new master key from the other party's public key and own private key (provided that E A (k;
(M) represents the result of encrypting the plaintext M with the key k by the private key encryption algorithm possessed by A). , The ciphertext E (k; which is obtained by encrypting the mail text P with the data encryption key k, using the secret key cryptosystem algorithm commonly held with the recipient B.
P) and a ciphertext E (K A, B ; k) obtained by encrypting the data encryption key k with the master key K A, B, to the mail recipient B,
Recipient B uses master key K B, A to decrypt data encryption key k from E (K A, B ; k), and uses data encryption key k to send email from E (k; P) An electronic mail encryption method characterized by decrypting a body P.
【請求項6】通信ネットワーク上でメールの送受信を行
なう電子メール通信システムにおいて、送信者Aが受信
者Bに対して送信するメール文を暗号化する電子メール
暗号化方法であって、準備処理として、センタは、素数
pと合成数n=p1・p2と整数aを公開し、nの素因数
分解と正数αを秘密とし、送信者Aは、0<xA<p−
1なる整数xAをランダムに選び、 【数26】yA=exp(a:xA)(mod p), を計算し、受信者Bは、0<xB<p−1なる整数xB
ランダムに選び、 【数27】yB=exp(a:xB)(mod p), を計算し、センタへの登録処理として、送信者Aおよび
受信者Bは、自分のID情報をセンタに登録し、センタ
は送信者AのID情報IAから、IA+iA(mod l.c.d(p
1−1,p2−1))が平方剰余、かつ、IA≠IBならば
A+iA(mod l.c.d(p1−1,p2−1))≠IB+iB
(mod l.c.d(p1−1,p2−1))となるように正整数
Aを選び、送信者Aに固有の鍵(sA,vA)を、 【数28】sA=exp(IA+iA:1/2)(mod l.c.d(p1
1,p2−1)), vA=exp(α:sA)(mod n), にて計算し、同様に受信者BのID情報IBから、受信
者Bに固有の鍵(sB,vB)を、 【数29】sB=exp(IB+iB:1/2)(mod l.c.d(p1
1,p2−1)), vB=exp(α:sB)(mod n), にて計算し、各々を送信者Aおよび受信者Bに安全に配
布し(ただし、exp(a:x)はaをx乗した値を表わ
す)、 このとき、ID情報が異なれば対応する鍵も異なり、送
信者Aは(yA,vA)を送信者Aの公開鍵として登録し、
受信者Bは(yB,vB)を受信者Bの公開鍵として登録
し、マスタ鍵共有処理として、 送信者Aは、受信者Bとの間で共通に保有する関数gを
用いて、自分の秘密鍵である(xA,sA)と受信者Bの
公開鍵である(yB,vB)から、マスタ鍵KA, Bを、 【数30】KA,B=g(exp(yB:xA)(mod p),exp(vB
A)(mod n)), にて作成し、受信者Bは、自分の秘密鍵である(xB
B)と送信者Aの公開鍵である(yA,vA)を用いて
マスタ鍵KB,Aを、 【数31】KB,A=g(exp(yA:xB)(mod p),exp(vA
B)(mod n)), にて作成し、このとき、KA,B=KB,Aが成立し、特に、
送信者Aは電子メールを送信する機会が多い受信者に対
しては、それらの受信者と送信者A間の各マスタ鍵から
なる集合SA、または、送信者Aの秘密鍵(xA,sA
と鍵生成関数θから、 【数32】K(A)=θ(xA,sA), にて作成した鍵K(A)を用いてマスタ鍵の集合SAを暗
号化した 【数33】C(A)=EA(K(A);SA), を記憶し、以後の電子メール通信において、データ暗号
化鍵更新のためなどでマスタ鍵が必要な場合、マスタ鍵
が記憶されているものについては、新たに相手の公開鍵
と自分の秘密鍵からマスタ鍵を作成することなく、記憶
されているマスタ鍵を使うこととし(ただし、EA(k;
M)はAが所持する秘密鍵暗号アルゴリズムにより平文
Mを鍵kにて暗号化した結果を表わす)、 メール本文の暗復号化処理として、送信者Aは、データ
暗号化鍵kをランダムに選び、受信者Bとの間で共通に
保有する秘密鍵暗号系アルゴリズムを用いて、メール本
文Pをデータ暗号化鍵kにて暗号化した暗号文E(k;
P)と、データ暗号化鍵kをマスタ鍵KA,Bにて暗号化
した暗号文E(KA,B;k)をメール受信者Bに送信し、 受信者Bは、マスタ鍵KB,Aを用いてE(KA,B;k)か
らデータ暗号化鍵kを復号化し、さらにデータ暗号化鍵
kを用いてE(k;P)からメール本文Pを復号化する
ことを特徴とする電子メール暗号化方法。
6. An electronic mail communication method for transmitting and receiving mail on a communication network, which is an electronic mail encryption method for encrypting a mail text sent from a sender A to a recipient B, as preparatory processing. , The center discloses the prime number p, the composite number n = p 1 · p 2 and the integer a, keeps the prime factorization of n and the positive number α secret, and the sender A sets 0 <x A <p-
The integer x A of 1 is randomly selected, and y A = exp (a: x A ) (mod p), is calculated, and the receiver B receives the integer x B of 0 <x B <p−1. Is randomly selected, and y B = exp (a: x B ) (mod p), is calculated, and sender A and receiver B register their ID information as center registration processing. The ID information of the sender A , I A + i A (mod lcd (p
1 −1, p 2 −1)) is a quadratic residue, and I A ≠ I B , I A + i A (mod lcd (p 1 -1, p 2 −1)) ≠ I B + i B
A positive integer i A is selected so that (mod lcd (p 1 -1, p 2 -1)), and the key (s A , v A ) unique to the sender A is given by s A = exp (I A + i A: 1/2 ) (mod lcd (p 1 -
1, p 2 -1)), v A = exp (α: s A) (mod n), calculated in, the ID information I B similarly recipient B, the key unique to the recipient B (s B, v and B), [number 29] s B = exp (I B + i B: 1/2) (mod lcd (p 1 -
1, p 2 −1)), v B = exp (α: s B ) (mod n), and each is safely distributed to sender A and receiver B (however, exp (a: x) represents a value of a raised to the power of x). At this time, if the ID information is different, the corresponding key is also different, and the sender A registers (y A , v A ) as the public key of the sender A,
The receiver B registers (y B , v B ) as the public key of the receiver B, and as a master key sharing process, the sender A uses the function g held in common with the receiver B, From the private key (x A , s A ) and the public key (y B , v B ) of the receiver B, the master key K A, B is expressed as follows: K A, B = g ( exp (y B : x A ) (mod p), exp (v B :
s A ) (mod n)), and the recipient B has (x B ,
s B ) and the public key (y A , v A ) of the sender A , the master key K B, A is expressed as follows: K B, A = g (exp (y A : x B ) ( mod p), exp (v A :
s B ) (mod n)), and at this time, K A, B = K B, A holds, in particular,
For the recipients who often send e-mails, the sender A sets S A of the master keys between the recipients and the sender A , or the sender A's private key (x A , s A )
And the key generation function θ, the master key set S A is encrypted using the key K (A) created by K (A) = θ (x A , s A ). C (A) = E A (K (A); S A ), and the master key is stored when the master key is needed for updating the data encryption key in the subsequent electronic mail communication. The master key that has been stored is used without creating a new master key from the other party's public key and its own private key (provided that E A (k;
(M) represents the result of encrypting the plaintext M with the key k by the secret key encryption algorithm possessed by A), and the sender A randomly selects the data encryption key k as the encryption / decryption process of the mail body. , The ciphertext E (k; which is obtained by encrypting the mail text P with the data encryption key k, using the secret key cryptosystem algorithm commonly held with the recipient B.
P) and a ciphertext E (K A, B ; k) obtained by encrypting the data encryption key k with the master key K A, B , and the recipient B receives the master key K B. , A is used to decrypt the data encryption key k from E (K A, B ; k), and further the data encryption key k is used to decrypt the mail text P from E (k; P). And the email encryption method.
【請求項7】通信ネットワーク上でメールの送受信を行
なう電子メール通信システムにおいて、送信者Aが受信
者Bに対して送信するメール文を暗号化する電子メール
暗号化方法であって、 準備処理として、センタは、素数pと合成数n=p1・p
2と整数aを公開し、nの素因数分解と正数αを秘密と
し、送信者Aは、0<xA<p−1なる整数xAをランダ
ムに選び、 【数34】yA=exp(a:xA)(mod p), を計算し、受信者Bは、0<xB<p−1なる整数xB
ランダムに選び、 【数35】yB=exp(a:xB)(mod p), を計算し、センタへの登録処理として、送信者Aおよび
受信者Bは、自分のID情報をセンタに登録し、センタ
は送信者AのID情報IAから、送信者Aに固有の鍵
(sA,vA)を正数eを用いて、 【数36】sA=exp(IA:e)(mod l.c.d(p1−1,p2
−1)), vA=exp(α:sA)(mod n), にて計算し、同様に受信者BのID情報IBから、受信
者Bに固有の鍵(sB,vB)を、 【数37】sB=exp(IB:e)(mod l.c.d(p1−1,p2
−1)), vB=exp(α:sB)(mod n), にて計算し、各々を送信者Aおよび受信者Bに安全に配
布し(ただし、exp(a:x)はaをx乗した値を表わ
す)、このとき、ID情報が異なれば対応する秘密鍵も
異なり、送信者Aは(yA,vA)を送信者Aの公開鍵と
して登録し、受信者Bは(yB,vB)を受信者Bの公開
鍵として登録し、マスタ鍵共有処理として、送信者A
は、受信者Bとの間で共通に保有する関数gを用いて、
自分の秘密鍵である(xA,sA)と受信者Bの公開鍵で
ある(yB,vB)から、マスタ鍵KA, Bを、 【数38】KA,B=g(exp(yB:xA)(mod p),exp
(vB:sA)(mod n)), にて作成し、受信者Bは、自分の秘密鍵である(xB
B)と送信者Aの公開鍵である(yA,vA)を用いて
マスタ鍵KB,Aを、 【数39】KB,A=g(exp(yA:xB)(mod p),exp
(vA:sB)(mod n)), にて作成し、このとき、KA,B=KB,Aが成立し、特に、
送信者Aは電子メールを送信する機会が多い受信者に対
しては、それらの受信者と送信者A間の各マスタ鍵から
なる集合SA、または、送信者Aの秘密鍵(xA,sA
と鍵生成関数θから、 【数40】K(A)=θ(xA,sA), にて作成した鍵K(A)を用いてマスタ鍵の集合SAを暗
号化した 【数41】C(A)=EA(K(A);SA), を記憶し、以後の電子メール通信において、データ暗号
化鍵更新のためなどでマスタ鍵が必要な場合、マスタ鍵
が記憶されているものについては、新たに相手の公開鍵
と自分の秘密鍵からマスタ鍵を作成することなく、記憶
されているマスタ鍵を使うこととし(ただし、EA(k;
M)はAが所持する秘密鍵暗号アルゴリズムにより平文
Mを鍵kにて暗号化した結果を表わす)、 メール本文の暗復号化処理として、送信者Aは、データ
暗号化鍵kをランダムに選び、受信者Bとの間で共通に
保有する秘密鍵暗号系アルゴリズムを用いて、メール本
文Pをデータ暗号化鍵kにて暗号化した暗号文E(k;
P)と、データ暗号化鍵kをマスタ鍵KA,Bにて暗号化
した暗号文E(KA,B;k)をメール受信者Bに送信し、 受信者Bは、マスタ鍵KB,Aを用いてE(KA,B;k)か
らデータ暗号化鍵kを復号化し、さらにデータ暗号化鍵
kを用いてE(k;P)からメール本文Pを復号化する
ことを特徴とする電子メール暗号化方法。
7. An electronic mail communication method for sending and receiving mail on a communication network, which is an electronic mail encryption method for encrypting a mail text sent from a sender A to a recipient B, as a preparation process. , The center is the prime number p and the composite number n = p 1 · p
2 and the integer a are disclosed, the prime factorization of n and the positive number α are kept secret, and the sender A randomly selects an integer x A such that 0 <x A <p−1, and y A = exp (a: x A ) (mod p), the receiver B randomly selects an integer x B such that 0 <x B <p−1, and y B = exp (a: x B ) (Mod p), and the sender A and the recipient B register their ID information in the center as a registration process to the center, and the center uses the sender A's ID information I A as the sender. The key (s A , v A ) peculiar to A is expressed by using a positive number e as follows: s A = exp (I A : e) (mod lcd (p 1 -1, p 2
-1)), v A = exp (α: s A) (mod n), calculated in, the ID information I B of the receiver B as well, the key unique to the recipient B (s B, v B ), and Equation 37] s B = exp (I B: e) (mod lcd (p 1 -1, p 2
−1)), v B = exp (α: s B ) (mod n), and each is safely distributed to sender A and receiver B (where exp (a: x) is a Represents the value raised to the power of x). At this time, if the ID information is different, the corresponding secret key is also different, the sender A registers (y A , v A ) as the public key of the sender A, and the receiver B (Y B , v B ) is registered as the public key of the receiver B, and the master key sharing process is performed by the sender A.
Uses the function g that is commonly held with the recipient B,
From the private key (x A , s A ) and the public key (y B , v B ) of the receiver B, the master key K A, B is calculated as follows: K A, B = g ( exp (y B : x A ) (mod p), exp
(v B : s A ) (mod n)), the recipient B has his / her private key (x B ,
s B ) and the public key (y A , v A ) of the sender A , the master key K B, A is calculated as follows: K B, A = g (exp (y A : x B ) ( mod p), exp
(v A : s B ) (mod n)), where K A, B = K B, A holds, in particular,
For the recipients who often send e-mails, the sender A sets S A of the master keys between the recipients and the sender A , or the sender A's private key (x A , s A )
From the key generation function θ and the key generation function θ, the master key set S A is encrypted using the key K (A) created by K (A) = θ (x A , s A ). C (A) = E A (K (A); S A ), and the master key is stored when the master key is needed for updating the data encryption key in the subsequent electronic mail communication. The master key that has been stored is used without creating a new master key from the other party's public key and its own private key (provided that E A (k;
(M) represents the result of encrypting the plaintext M with the key k by the secret key encryption algorithm possessed by A), and the sender A randomly selects the data encryption key k as the encryption / decryption process of the mail body. , The ciphertext E (k; which is obtained by encrypting the mail text P with the data encryption key k, using the secret key cryptosystem algorithm commonly held with the recipient B.
P) and a ciphertext E (K A, B ; k) obtained by encrypting the data encryption key k with the master key K A, B , and the recipient B receives the master key K B. , A is used to decrypt the data encryption key k from E (K A, B ; k), and further the data encryption key k is used to decrypt the mail text P from E (k; P). And the email encryption method.
【請求項8】通信ネットワーク上でメールの送受信を行
なう電子メール通信システムにおいて、送信者Aが受信
者Bに対して送信するメール文を暗号化する電子メール
暗号化方法であって、 準備処理として、センタは、素数p1,p2と整数a1
2を公開し、剰余環Z/(p2−1)の元を出力する秘密
鍵暗号アルゴリズムおよび鍵rを秘密情報とし(センタ
の秘密情報である秘密鍵暗号アルゴリズムにより、平文
Mを鍵kで暗号化した結果をE0(k;M)で表わす)、
送信者Aは、0<xA<p1−1なる整数xAをランダム
に選び、 【数42】yA=exp(a1:xA)(mod p1), を計算し、受信者Bは、0<xB<p1−1なる整数xB
をランダムに選び、 【数43】yB=exp(a1:xB)(mod p1), を計算し(ただし、exp(a:x)はaをx乗した値を表
わす)、 センタへの登録処理として、送信者Aおよび受信者B
は、自分のID情報をセンタに登録し、センタは送信者
AのID情報IAから送信者Aに固有の秘密鍵sAを、 【数44】sA=E0(r;IA), にて計算し、同様に受信者BのID情報IBから、送信
者Bに固有の秘密鍵sBを、 【数45】sB=E0(r;IB), にて計算し、各々を送信者Aおよび受信者Bに安全に配
布し、このとき、ID情報が異なれば対応する秘密鍵も
異なり、送信者Aは、yAと、秘密鍵sAに対応する公開
鍵 【数46】vA=exp(a2:sA)(mod p2), の組(yA,vA)を送信者Aの公開鍵として登録し、受
信者Bは、yBと、秘密鍵sBに対応する公開鍵 【数47】vB=exp(a2:sB)(mod p2), の組(yB,vB)を受信者Bの公開鍵として登録し、マス
タ鍵の共有処理として、 送信者Aは、受信者Bとの間で共通に保有する関数gを
用いて、自分の秘密鍵である(xA,sA)と受信者Bの
公開鍵である(yB,vB)から、マスタ鍵KA, Bを、 【数48】KA,B=g(exp(yB:xA)(mod p1),exp
(vB:sA)(mod p2)), にて作成し、受信者Bは、自分の秘密鍵である(xB
B)と送信者Aの公開鍵である(yA,vA)を用い
て、マスタ鍵KB,Aを、 【数49】KB,A=g(exp(yA:xB)(mod p1),exp
(vA:sB)(mod p2)), にて作成し、このとき、KA,B=KB,Aが成立し、特に、
送信者Aは電子メールを送信する機会が多い受信者に対
しては、それらの受信者と送信者A間の各マスタ鍵から
なる集合SA、または、送信者Aの秘密鍵(xA,sA
と鍵生成関数θから、 【数50】K(A)=θ(xA,sA), にて作成した鍵K(A)を用いてマスタ鍵の集合SAを暗
号化した 【数51】C(A)=EA(K(A);SA), を記憶し、以後の電子メール通信において、データ暗号
化鍵更新のためなどでマスタ鍵が必要な場合、マスタ鍵
が記憶されているものについては、新たに相手の公開鍵
と自分の秘密鍵からマスタ鍵を作成することなく、記憶
されているマスタ鍵を使うこととし(ただし、EA(k;
M)はAが所持する秘密鍵暗号アルゴリズムにより平文
Mを鍵kにて暗号化した結果を表わす)、 メール本文の暗復号化処理として、送信者Aは、データ
暗号化鍵kをランダムに選び、受信者Bとの間で共通に
保有する秘密鍵暗号系アルゴリズムを用いて、メール本
文Pをデータ暗号化鍵kにて暗号化した暗号文E(k;
P)と、データ暗号化鍵kをマスタ鍵KA,Bにて暗号化
した暗号文E(KA,B;k)をメール受信者Bに送信し、 受信者Bは、マスタ鍵KB,Aを用いてE(KA,B;k)か
らデータ暗号化鍵kを復号化し、さらにデータ暗号化鍵
kを用いてE(k;P)からメール本文Pを復号化する
ことを特徴とする電子メール暗号化方法。
8. An electronic mail communication method for sending and receiving mail on a communication network, which is an electronic mail encryption method for encrypting a mail text sent by a sender A to a recipient B, as a preparation process. , The center is a prime number p 1 , p 2 and an integer a 1 ,
The secret key cryptographic algorithm that publishes a 2 and outputs the element of the remainder ring Z / (p 2 −1) and the key r as secret information (the plaintext M is converted into the key k by the secret key cryptographic algorithm that is the secret information of the center) The result encrypted with is represented by E 0 (k; M)),
The sender A randomly selects an integer x A such that 0 <x A <p 1 −1, calculates y A = exp (a 1 : x A ) (mod p 1 ), and B is an integer x B such that 0 <x B <p 1 −1
Is randomly selected, and y B = exp (a 1 : x B ) (mod p 1 ), is calculated (where exp (a: x) represents the value of a raised to the power x), and Sender A and receiver B are registered as
Registers its own ID information in the center, and the center obtains the secret key s A unique to the sender A from the ID information I A of the sender A by: s A = E 0 (r; I A ) , And similarly, from the ID information I B of the receiver B, the secret key s B unique to the sender B is calculated by s B = E 0 (r; I B ), , Each of them is safely distributed to the sender A and the recipient B. At this time, if the ID information is different, the corresponding secret key is also different, and the sender A has y A and the public key corresponding to the secret key s A. The pair (y A , v A ) of v A = exp (a 2 : s A ) (mod p 2 ), is registered as the public key of the sender A, and the receiver B secrets y B and secret. The public key corresponding to the key s B is expressed as follows: v B = exp (a 2 : s B ) (mod p 2 ), the set (y B , v B ) is registered as the public key of the receiver B, As a key sharing process, sender A and recipient B In using a function g held in common, from their a secret key is a public key of the (x A, s A) and the receiver B (y B, v B) , master key K A, the B, K A, B = g (exp (y B : x A ) (mod p 1 ), exp
(v B : s A ) (mod p 2 )), and the recipient B has his / her private key (x B ,
s B ) and the public key (y A , v A ) of the sender A, the master key K B, A is expressed as follows: K B, A = g (exp (y A : x B ) (mod p 1 ), exp
(v A : s B ) (mod p 2 )), and at this time, K A, B = K B, A holds, and in particular,
For the recipients who often send e-mails, the sender A sets S A of the master keys between the recipients and the sender A , or the sender A's private key (x A , s A )
From the key generation function θ and the key generation function θ, the master key set S A is encrypted using the key K (A) created by K (A) = θ (x A , s A ). C (A) = E A (K (A); S A ), and the master key is stored when the master key is needed for updating the data encryption key in the subsequent electronic mail communication. The master key that has been stored is used without creating a new master key from the other party's public key and its own private key (provided that E A (k;
(M) represents the result of encrypting the plaintext M with the key k by the secret key encryption algorithm possessed by A), and the sender A randomly selects the data encryption key k as the encryption / decryption process of the mail body. , The ciphertext E (k; which is obtained by encrypting the mail text P with the data encryption key k, using the secret key cryptosystem algorithm commonly held with the recipient B.
P) and a ciphertext E (K A, B ; k) obtained by encrypting the data encryption key k with the master key K A, B , and the recipient B receives the master key K B. , A is used to decrypt the data encryption key k from E (K A, B ; k), and further the data encryption key k is used to decrypt the mail text P from E (k; P). And the email encryption method.
【請求項9】通信ネットワーク上でメールの送受信を行
なう電子メール通信システムにおいて、送信者Aが受信
者Bに対して送信するメール文を暗号化する電子メール
暗号化方法であって、準備処理として、センタは、素数
pと合成数n=p1・p2と整数aを公開し、整数αおよ
び剰余環Z/(N)の元を出力する秘密鍵暗号アルゴリズ
ムおよび鍵rを秘密情報とし(ただし、N=l.c.d(p1
−1,p2−1)であり、センタの秘密情報である秘密
鍵暗号アルゴリズムにより平文Mを鍵kで暗号化した結
果をE0(k;M)で表わす)、 送信者Aは、0<xA<p−1なる整数xAをランダムに
選び、 【数52】yA=exp(a:xA)(mod p), を計算し、受信者Bは、0<xB<p1−1なる整数xB
をランダムに選び、 【数53】yB=exp(a:xB)(mod p), を計算し、センタへの登録処理として、送信者Aおよび
受信者Bは、自分のID情報をセンタに登録し、センタ
は送信者AのID情報IAから送信者Aに固有の鍵
(sA,vA)を、 【数54】sA=E0(r;IA), vA=exp(α:sA)(mod n), にて計算し、同様に受信者BのID情報IBから受信者
Bに固有の鍵(sB,vB)を、 【数55】sB=E0(r;IB), vB=exp(α:sB)(mod n), にて計算し、各々を送信者Aおよび受信者Bに安全に配
布し、このとき、ID情報が異なれば対応する鍵も異な
り、送信者Aは(yA,vA)を送信者Aの公開鍵として
登録し、受信者Bは(yB,vB)を受信者Bの公開鍵と
して登録し、マスタ鍵共有処理として、 送信者Aは、受信者Bとの間で共通に保有する関数gを
用いて、自分の秘密鍵である(xA,sA)と受信者Bの
公開鍵である(yB,vB)から、マスタ鍵KA,Bを、 【数56】KA,B=g(exp(yB:xA)(mod p),exp(vB
A)(mod n)), にて作成し、受信者Bは、自分の秘密鍵である(xB
B)と送信者Aの公開鍵である(yA,vA)を用いて
マスタ鍵KB,Aを、 【数57】KB,A=g(exp(yA:xB)(mod p),exp(vA
B)(mod n)), にて作成し、このとき、KA,B=KB,Aが成立し、特に、
送信者Aは電子メールを送信する機会が多い受信者に対
しては、それらの受信者と送信者A間の各マスタ鍵から
なる集合SA、または、送信者Aの秘密鍵(xA,sA
と鍵生成関数θから、 【数58】K(A)=θ(xA,sA), にて作成した鍵K(A)を用いてマスタ鍵の集合SAを暗
号化した 【数59】C(A)=EA(K(A);SA), を記憶し、以後の電子メール通信において、データ暗号
化鍵更新のためなどでマスタ鍵が必要な場合、マスタ鍵
が記憶されているものについては、新たに相手の公開鍵
と自分の秘密鍵からマスタ鍵を作成することなく、記憶
されているマスタ鍵を使うこととし(ただし、EA(k;
M)はAが所持する秘密鍵暗号アルゴリズムにより平文
Mを鍵kにて暗号化した結果を表わす)、 メール本文の暗復号化処理として、送信者Aは、データ
暗号化鍵kをランダムに選び、受信者Bとの間で共通に
保有する秘密鍵暗号系アルゴリズムを用いて、メール本
文Pをデータ暗号化鍵kにて暗号化した暗号文E(k;
P)と、データ暗号化鍵kをマスタ鍵KA,Bにて暗号化
した暗号文E(KA,B;k)をメール受信者Bに送信し、
受信者Bは、マスタ鍵KB,Aを用いてE(KA,B;k)か
らデータ暗号化鍵kを復号化し、さらにデータ暗号化鍵
kを用いてE(k;P)からメール本文Pを復号化する
ことを特徴とする電子メール暗号化方法。
9. An electronic mail communication method for sending and receiving mail on a communication network, which is an electronic mail encryption method for encrypting a mail text sent from a sender A to a recipient B, which is a preparation process. , The center discloses the prime number p, the composite number n = p 1 · p 2 and the integer a, and outputs the integer α and the element of the remainder ring Z / (N) and the secret key cryptographic algorithm and the key r as secret information ( However, N = lcd (p 1
-1, p 2 −1), and the result of encrypting the plaintext M with the key k by the secret key encryption algorithm which is the secret information of the center is represented by E 0 (k; M)), and the sender A <X A <p−1, an integer x A is randomly selected, and y A = exp (a: x A ) (mod p), is calculated, and the receiver B sets 0 <x B <p. 1 -1 integer x B
Is randomly selected, and y B = exp (a: x B ) (mod p), is calculated, and the sender A and the receiver B register their ID information as center registration processing. The center registers the key (s A , v A ) peculiar to the sender A from the ID information I A of the sender A by: s A = E 0 (r; I A ), v A = exp (α: s A ) (mod n), and the key (s B , v B ) unique to the recipient B is similarly calculated from the ID information I B of the recipient B by = E 0 (r; I B ), v B = exp (α: s B ) (mod n), and each is safely distributed to the sender A and the receiver B. At this time, ID information The sender A registers (y A , v A ) as the sender A's public key, and the recipient B registers (y B , v B ) as the recipient B's public key. Register and send as master key sharing process , Using function g held in common between the receiver B, and their is a private key is a public key of the (x A, s A) and the receiver B (y B, v B) , Using the master key K A, B , K A, B = g (exp (y B : x A ) (mod p), exp (v B :
s A ) (mod n)), and the recipient B has his or her private key (x B ,
s B ) and the public key (y A , v A ) of the sender A , the master key K B, A is calculated as follows: K B, A = g (exp (y A : x B ) ( mod p), exp (v A :
s B ) (mod n)), and at this time, K A, B = K B, A holds, in particular,
For the recipients who often send e-mails, the sender A sets S A of the master keys between the recipients and the sender A , or the sender A's private key (x A , s A )
From the key generation function θ and K (A) = θ (x A , s A ), the master key set S A is encrypted using the key K (A) created by C (A) = E A (K (A); S A ), and the master key is stored when the master key is needed for updating the data encryption key in the subsequent electronic mail communication. The master key that has been stored is used without creating a new master key from the other party's public key and its own private key (provided that E A (k;
(M) represents the result of encrypting the plaintext M with the key k by the secret key encryption algorithm possessed by A), and the sender A randomly selects the data encryption key k as the encryption / decryption process of the mail body. , The ciphertext E (k; which is obtained by encrypting the mail text P with the data encryption key k, using the secret key cryptosystem algorithm commonly held with the recipient B.
P) and a ciphertext E (K A, B ; k) obtained by encrypting the data encryption key k with the master key K A, B, to the mail recipient B,
Recipient B uses master key K B, A to decrypt data encryption key k from E (K A, B ; k), and uses data encryption key k to send email from E (k; P) An electronic mail encryption method characterized by decrypting a body P.
【請求項10】請求項4、5、6、7、8または9にお
いて、 マスタ鍵共有処理の中で、送信者Aと受信者Bとの間で
共通に保有する関数gとして、 【数60】g(x1,x2)=h(φ(x1,x2)), なる関数を用いて(ただし、hはハッシュ関数、φは、 【数61】φ:Z/(p)×Z/(n) → Z/(pn)
((x,x) → x), なる同型写像を表わし、Z/(m)は整数mを法とする剰
余環を表わし、xはそれぞれの剰余環においてxを代表
元とする剰余類を表わす。)、マスタ鍵を作成する電子
メール暗号化方法。
10. The function g commonly held between the sender A and the receiver B in the master key sharing process according to claim 4, 5, 6, 7, 8 or 9. G (x 1 , x 2 ) = h (φ (x 1 , x 2 )), where h is a hash function and φ is: φ: Z / (p) × Z / (n) → Z / (pn)
((X, x) → x), represents an isomorphism, Z / (m) represents a residue ring modulo the integer m, and x represents a residue class with x as the representative element in each residue ring. . ), An email encryption method that creates a master key.
【請求項11】請求項4、5、6、7、8または9にお
いて、マスタ鍵共有処理の中で、送信者Aと受信者Bと
の間で共通に保有する関数gとして、 【数62】g(x1,x2)=h(x1*x2), なる関数を用いて(ただし、hはハッシュ関数、x1
2はx1とx2の排他的論理和を表わす)、マスタ鍵を
作成する電子メール暗号化方法。
11. A function g commonly held between a sender A and a receiver B in the master key sharing process according to claim 4, 5, 6, 7, 8 or 9. G (x 1 , x 2 ) = h (x 1 * x 2 ), where h is a hash function and x 1 *
x 2 represents an exclusive OR of x 1 and x 2 ), an electronic mail encryption method for creating a master key.
【請求項12】請求項3、4、5、6、7、8、9また
は11において、 メール本文の暗復号化処理として、送信者Aは、データ
暗号化鍵kをランダムに選び、受信者Bとの間で共通に
保有する秘密鍵暗号系アルゴリズムを用いて、メール本
文Pをデータ暗号化鍵kにて暗号化した暗号文E(k;
P)と、データ暗号化鍵kとマスタ鍵KA,Bの排他的論
理和k*KA,Bを受信者Bに送信し、受信者Bは、マス
タ鍵KB,Aとk*KA,Bの排他的論理和を取ることによ
り、データ暗号化鍵kを復号化し、さらにデータ暗号化
鍵kを用いてE(k;P)からメール本文Pを復号化す
る電子メール暗号化システム。
12. The sender A according to claim 3, 4, 5, 6, 7, 8, 9 or 11, wherein the sender A randomly selects a data encryption key k as the encryption / decryption processing of the mail text. A ciphertext E (k; which is obtained by encrypting the mail text P with the data encryption key k using the secret key cryptosystem algorithm commonly held with B
P) and the exclusive OR k * K A, B of the data encryption key k and the master key K A, B to the receiver B, who receives the master key K B, A and k * K. An electronic mail encryption system that decrypts the data encryption key k by taking the exclusive OR of A and B , and further decrypts the mail text P from E (k; P) using the data encryption key k .
【請求項13】通信ネットワーク上でメールの送受信を
行なう電子メール通信システムにおいて、送信者Aが受
信者Bに対して送信するメール文を暗号化する電子メー
ル暗号化方法であって、送信者および受信者はそれぞれ
の秘密鍵を内蔵した演算機能付き記憶媒体を所持し、送
信者は通信ネットワークに接続された計算機1と送信者
の記憶媒体Aを用いて、請求項1から請求項12の電子
メール暗号化方法に従い、暗号化処理を記憶媒体A内で
行ない、送信文を計算機1に出力し、計算機1から通信
回線を介して受信者の使用する計算機2に送信し、受信
者は、送信者から送られてきた送信文を計算機2から受
信者の演算機能付き記憶媒体Bに出力し、記憶媒体B内
でデータ暗号化鍵およびメール本文を復号化することを
特徴とする電子メール暗号化方法。
13. An electronic mail communication method for sending and receiving mail on a communication network, which is an electronic mail encryption method for encrypting a mail text sent by a sender A to a recipient B, which comprises: The electronic device according to any one of claims 1 to 12, wherein the receiver has a storage medium with an arithmetic function having each secret key built therein, and the sender uses the computer 1 connected to the communication network and the storage medium A of the sender. According to the mail encryption method, the encryption process is performed in the storage medium A, the transmission text is output to the computer 1, and the transmission text is transmitted from the computer 1 to the computer 2 used by the recipient through the communication line. An electronic mail characterized in that a transmission text sent from a person is output from the computer 2 to the storage medium B with a calculation function of the receiver, and the data encryption key and the mail text are decrypted in the storage medium B. Le encryption method.
JP7052252A 1995-03-13 1995-03-13 Method and system for ciphering electronic mail Pending JPH08251156A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7052252A JPH08251156A (en) 1995-03-13 1995-03-13 Method and system for ciphering electronic mail

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7052252A JPH08251156A (en) 1995-03-13 1995-03-13 Method and system for ciphering electronic mail

Publications (1)

Publication Number Publication Date
JPH08251156A true JPH08251156A (en) 1996-09-27

Family

ID=12909552

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7052252A Pending JPH08251156A (en) 1995-03-13 1995-03-13 Method and system for ciphering electronic mail

Country Status (1)

Country Link
JP (1) JPH08251156A (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010076754A (en) * 2000-01-27 2001-08-16 장민근 Operation method of symmetric security mail using encryption technology on internet
JP2001518724A (en) * 1997-07-24 2001-10-16 ワールドトーク・コーポレイション Email firewall using encryption / decryption with stored keys
KR20020003914A (en) * 2000-06-26 2002-01-16 이상국 Apparatus and Method for securing a mail message in an electronic mail system
KR20030070213A (en) * 2002-02-21 2003-08-29 쓰리알소프트(주) Secure Webmail Sever System for providing function of isolating key management and encode/decode of mail and method thereof
KR100420735B1 (en) * 2001-08-01 2004-03-02 주식회사 마크애니 Mail transmitting/receiving system using watermarking and encoding technique, and method thereof
US7127741B2 (en) 1998-11-03 2006-10-24 Tumbleweed Communications Corp. Method and system for e-mail message transmission
US7162738B2 (en) 1998-11-03 2007-01-09 Tumbleweed Communications Corp. E-mail firewall with stored key encryption/decryption
US9338026B2 (en) 2003-09-22 2016-05-10 Axway Inc. Delay technique in e-mail filtering system
CN108989027A (en) * 2018-07-06 2018-12-11 苏州昶彭知识产权运营有限公司 Intellectual property consulting management system
CN111541603A (en) * 2020-04-20 2020-08-14 江苏大周基业智能科技有限公司 Independent intelligent safety mail terminal and encryption method

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001518724A (en) * 1997-07-24 2001-10-16 ワールドトーク・コーポレイション Email firewall using encryption / decryption with stored keys
US7380274B2 (en) 1997-07-24 2008-05-27 Tumbleweed Communications Corp. E-mail firewall
US7401356B2 (en) 1997-07-24 2008-07-15 Tumbleweed Communications Corp. Method and system for e-mail message transmission
USRE43302E1 (en) 1997-07-24 2012-04-03 Axway, Inc. E-mail firewall with stored key encryption/decryption
US8255683B2 (en) 1997-07-24 2012-08-28 Axway Inc. E-mail firewall with policy-based cryptosecurity
US7127741B2 (en) 1998-11-03 2006-10-24 Tumbleweed Communications Corp. Method and system for e-mail message transmission
US7162738B2 (en) 1998-11-03 2007-01-09 Tumbleweed Communications Corp. E-mail firewall with stored key encryption/decryption
KR20010076754A (en) * 2000-01-27 2001-08-16 장민근 Operation method of symmetric security mail using encryption technology on internet
KR20020003914A (en) * 2000-06-26 2002-01-16 이상국 Apparatus and Method for securing a mail message in an electronic mail system
US8407780B2 (en) 2001-06-22 2013-03-26 Axway Inc. Method and system for messaging security
US10116621B2 (en) 2001-06-22 2018-10-30 Axway Inc. Method and system for messaging security
KR100420735B1 (en) * 2001-08-01 2004-03-02 주식회사 마크애니 Mail transmitting/receiving system using watermarking and encoding technique, and method thereof
KR20030070213A (en) * 2002-02-21 2003-08-29 쓰리알소프트(주) Secure Webmail Sever System for providing function of isolating key management and encode/decode of mail and method thereof
US9338026B2 (en) 2003-09-22 2016-05-10 Axway Inc. Delay technique in e-mail filtering system
CN108989027A (en) * 2018-07-06 2018-12-11 苏州昶彭知识产权运营有限公司 Intellectual property consulting management system
CN111541603A (en) * 2020-04-20 2020-08-14 江苏大周基业智能科技有限公司 Independent intelligent safety mail terminal and encryption method
CN111541603B (en) * 2020-04-20 2022-04-12 江苏大周基业智能科技有限公司 Independent intelligent safety mail terminal and encryption method

Similar Documents

Publication Publication Date Title
US4956863A (en) Cryptographic method and apparatus for public key exchange with authentication
US6298153B1 (en) Digital signature method and information communication system and apparatus using such method
US5631961A (en) Device for and method of cryptography that allows third party access
US6697488B1 (en) Practical non-malleable public-key cryptosystem
JPH03128541A (en) System and method for cipher communication
CN110120939A (en) A kind of encryption method and system of the deniable authentication based on heterogeneous system
CN110113150A (en) The encryption method and system of deniable authentication based on no certificate environment
Garg et al. Comparison of asymmetric algorithms in cryptography
US7305093B2 (en) Method and apparatus for securely transferring data
JP2001211154A (en) Secret key generating method, ciphering method, and cipher communication method
JPH08251156A (en) Method and system for ciphering electronic mail
CN108055134B (en) Collaborative computing method and system for elliptic curve point multiplication and pairing operation
KR20030047148A (en) Method of messenger security based on client/server using RSA
Rivest et al. 9. A Method for Obtaining Digital Signatures and
JP3694242B2 (en) Signed cryptographic communication method and apparatus
JPH06112935A (en) Ciphering communication method
JP3862397B2 (en) Information communication system
CN107104802B (en) Attribute-based signcryption method capable of ensuring safety under standard model
JPH09149025A (en) Cipher communication method and cipher communication system
JPH1195660A (en) Anonymous communication method of electronic document, its program record medium, and device therefor
JP3587746B2 (en) Secret key generator, encryption device, encryption communication method, encryption communication system, and recording medium
Sahu et al. Encryption & Decryption of Text Data with RSA cryptography using MATLAB
WO1998047260A2 (en) Publicly verifiable key recovery
Saini Philosophy of Security by Cryptostakes Schemes
KR20010096036A (en) Method for constructing domain-verifiable signcryption