JP3321428B2 - Non-deposited key recovery method, device thereof, and program recording medium - Google Patents

Non-deposited key recovery method, device thereof, and program recording medium

Info

Publication number
JP3321428B2
JP3321428B2 JP04142299A JP4142299A JP3321428B2 JP 3321428 B2 JP3321428 B2 JP 3321428B2 JP 04142299 A JP04142299 A JP 04142299A JP 4142299 A JP4142299 A JP 4142299A JP 3321428 B2 JP3321428 B2 JP 3321428B2
Authority
JP
Japan
Prior art keywords
key
key recovery
mod
information
user terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP04142299A
Other languages
Japanese (ja)
Other versions
JP2000244476A (en
Inventor
宏幸 鬼頭
広樹 植田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP04142299A priority Critical patent/JP3321428B2/en
Publication of JP2000244476A publication Critical patent/JP2000244476A/en
Application granted granted Critical
Publication of JP3321428B2 publication Critical patent/JP3321428B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

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

【0001】[0001]

【発明の属する技術分野】この発明は、暗号システムに
おいて、復号鍵もしくは復号鍵を導出可能な情報を信頼
できる第三者機関に預けずに鍵回復を行なう非寄託型鍵
回復方法であって、特に暗号化/復号化を行なう利用者
が、復号鍵を導出可能な情報を鍵回復情報として、暗号
化時に暗号文Eに添付し、鍵回復機関が、鍵回復要求に
基づいて鍵回復手段により該鍵回復情報から復号鍵を回
復する非寄託型鍵回復方法に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a non-deposited key recovery method for recovering a key in a cryptographic system without depositing a decryption key or information from which a decryption key can be derived to a trusted third party. In particular, a user who performs encryption / decryption attaches information from which a decryption key can be derived to the ciphertext E at the time of encryption as key recovery information, and the key recovery organization uses the key recovery means based on the key recovery request. The present invention relates to a non-deposited key recovery method for recovering a decryption key from the key recovery information.

【0002】[0002]

【従来の技術】現在、暗号システムの暗号方式では共通
鍵暗号方式と公開鍵暗号方式がよく知られている。共通
鍵暗号方式では、暗号化する者と復号化する者が同じ鍵
を用いて暗号化・復号化する。この方式を用いて重要な
情報を保存するには、パスワード等から共通鍵を生成
し、これを暗号鍵として用いて情報を暗号化する。元の
情報を入手するには、暗号化に用いた同じ鍵を復号鍵と
して用いて復号化する。
2. Description of the Related Art Currently, a common key cryptosystem and a public key cryptosystem are well known as cryptosystems in a cryptosystem. In the common key cryptosystem, the encrypting person and the decrypting person encrypt and decrypt using the same key. To store important information using this method, a common key is generated from a password or the like, and the information is encrypted using this as a cryptographic key. To obtain the original information, decryption is performed using the same key used for encryption as a decryption key.

【0003】公開鍵暗号方式では、予め利用者は自身の
鍵として秘密鍵と公開鍵を保持する。公開鍵は広く公開
し、秘密鍵は利用者自身が秘密に保持し他人に漏れては
ならない。この方式を用いて重要な情報を暗号化し保存
するには、情報を、利用者自身の公開鍵を暗号鍵として
用いて暗号化して保存する。元の情報を入手するには、
自身の秘密鍵を復号鍵として用いて復号化する。
In the public key cryptosystem, a user holds a private key and a public key in advance as his / her own key. The public key is widely disclosed, and the private key is kept secret by the user himself and must not be leaked to others. To encrypt and store important information using this method, the information is encrypted and stored using the user's own public key as an encryption key. To get the original information,
Decrypt using its own private key as a decryption key.

【0004】しかし、不注意・事故などでこの復号鍵を
紛失・破損してしまった場合、暗号化した情報が復号化
できなくなるという問題点がある。企業においては取り
引き情報など機密情報を安全に保管するために暗号シス
テムを利用するが、復号鍵の紛失により機密情報の回復
が不能になることは企業活動に重大な障害を及ぼす。こ
のため、鍵の回復を可能とする方式として、鍵回復方式
が提案されている。鍵回復システムは大きく分類すると
鍵自身を鍵回復機関に寄託する寄託型と、寄託しない非
寄託型が提案されている。前者の方式として、Nortel E
ntrustが提案されており、後者の方式として、TIS Reco
verKey,IBM SecureWay が提案されている。
However, if the decryption key is lost or damaged due to carelessness or accident, there is a problem that the encrypted information cannot be decrypted. In a company, an encryption system is used to securely store confidential information such as transaction information. However, losing a decryption key makes recovery of confidential information impossible, which seriously impairs corporate activities. For this reason, a key recovery method has been proposed as a method that enables key recovery. Key recovery systems are roughly classified into a deposit type in which the key itself is deposited with a key recovery organization, and a non-deposit type in which the key is not deposited. As the former method, Nortel E
ntrust has been proposed, and as the latter method, TIS Reco
verKey and IBM SecureWay have been proposed.

【0005】非寄託型鍵回復方法では、復号鍵を導出可
能な情報を鍵回復情報に添付し、鍵回復機関がこの鍵回
復情報から復号鍵を取り出すことで、鍵の回復を行な
う。しかし、不注意・事故などでこの鍵回復情報が正し
く作成されないと、鍵の回復が不可能となる。また、利
用者の不正行為によって鍵回復情報を正しく作成しない
場合も考えられる。このことは復号鍵の紛失と同様に重
大な障害を及ぼす。このため、企業などでは、第三者が
鍵回復情報から正しく復号鍵を回復可能かの検証をする
ことが必要となり、非寄託型鍵回復方法では検証方法も
合せ持つのが一般的である。
In the non-deposited key recovery method, information from which a decryption key can be derived is attached to key recovery information, and a key recovery organization retrieves the decryption key from the key recovery information to recover the key. However, if the key recovery information is not created correctly due to carelessness or accident, key recovery becomes impossible. It is also conceivable that the key recovery information is not created correctly due to a user's misconduct. This can be as severe as losing a decryption key. For this reason, it is necessary for a company or the like to verify whether a third party can correctly recover the decryption key from the key recovery information, and the non-deposited key recovery method generally has a verification method.

【0006】[0006]

【発明が解決しようとする課題】TIS RecoverKeyでは、
暗号化時に、鍵回復情報を作成するのに必要な情報を、
復号化する者の公開鍵で暗号化し、検証用情報として暗
号文に添付する。復号化時には、検証用情報から鍵回復
情報を作成するのに必要な情報を取り出し鍵回復情報を
再構築し、暗号文に添付された鍵回復情報と比較し同一
のものであるかを検証する。しかし、この方法は復号化
する者しか鍵回復情報の検証ができず、第三者による検
証は不可能という問題がある。
[Problems to be solved by the invention] In TIS RecoverKey,
At the time of encryption, the information necessary to create key recovery information
Encrypt with the public key of the decryptor and attach it to the ciphertext as verification information. At the time of decryption, information necessary to create key recovery information is extracted from the verification information, the key recovery information is reconstructed, and compared with the key recovery information attached to the ciphertext to verify whether they are the same. . However, this method has a problem that only the decryption person can verify the key recovery information, and cannot be verified by a third party.

【0007】Eric R. Verheul らは、第三者による検証
を可能とするBinding ElGamal 方法を提案している(Bi
nding ElGamal: A Fraud-Detectable Alternative to K
ey-Escrow Proposals ,Eric R. Verheul ,Henk C.A.
van Tilborg ,EUROCRYPT'97,LNCS 1233 ,1997を参照
のこと)。しかし、この方法では暗号文に添付する情報
(鍵回復情報,検証情報)の合計サイズが大きいという
問題がある。
[0007] Eric R. Verheul et al. Have proposed a Binding ElGamal method that allows verification by a third party (Bi
nding ElGamal: A Fraud-Detectable Alternative to K
ey-Escrow Proposals, Eric R. Verheul, Henk CA
van Tilborg, EUROCRYPT'97, LNCS 1233, 1997). However, this method has a problem that the total size of information (key recovery information and verification information) attached to the ciphertext is large.

【0008】一方、NTTの阿部、神田らは鍵寄託型に
おいて鍵回復が可能であることを検証する実時間監視に
適した鍵供託方式を提案している(実時間監視に適した
鍵供託方式,阿部正幸,神田雅透,SCIS'98-5.2.
D,Jan ,1998を参照のこと、関連する特許は暗号同報
通信方法、その装置およびプログラム記憶媒体、特願平
10−012957,NTT整理番号NTTH0971
14)。しかし、この方式はそのままでは非寄託型に適
用することはできない。また、この方式では、ある暗号
文1とその添付情報1(鍵回復情報,検証用情報)とあ
る暗号文2とその添付情報2があり、暗号文1に添付情
報2を添付し、暗号文2に添付情報1を添付する、とい
うように添付情報を互いに入れ替えて保管した場合、鍵
の回復は正しく行なわれないにも関わらず、検証は無事
成功してしまうという問題が生じる。
On the other hand, NTT's Abe and Kanda et al. Have proposed a key escrow system suitable for real-time monitoring that verifies that key recovery is possible in a key escrow system (key escrow system suitable for real-time monitoring). , Masayuki Abe, Masatoshi Kanda, SCIS'98-5.2.
D, Jan, 1998, and related patents are ciphered broadcasting method, apparatus and program storage medium, Japanese Patent Application No. 10-012957, NTT serial number NTTH0971.
14). However, this method cannot be directly applied to the non-deposited type. Further, in this method, there are a ciphertext 1 and its attached information 1 (key recovery information, verification information), a ciphertext 2 and its attached information 2, and the attached information 2 is attached to the ciphertext 1, If the attached information is exchanged and stored, for example, the attached information 1 is attached to 2, there is a problem that the verification succeeds successfully even though the key is not correctly recovered.

【0009】この発明は、これらの問題を解決するため
に、鍵回復情報から正しく復号鍵を回復できるかを第三
者が検証可能であり、かつ暗号文に添付する添付情報の
合計サイズが小さく、かつ添付情報が対応する暗号文に
添付しているかを検証可能とする非寄託型鍵回復方法を
実現することを目的とする。
According to the present invention, in order to solve these problems, a third party can verify whether the decryption key can be correctly recovered from the key recovery information, and the total size of the attached information attached to the ciphertext is small. It is another object of the present invention to realize a non-deposited key recovery method that can verify whether attached information is attached to a corresponding cipher text.

【0010】[0010]

【課題を解決するための手段】大きな素数をpとし、q
はp−1を割り切る数とし、gをpが作る乗法群の位数
qの元とし、p,gおよびqは公開情報とする。また、
鍵回復機関装置は秘密鍵X、公開鍵Y=gX mod pを持
つとする。利用者がメッセージMを暗号化するには、ま
ず乱数tを生成し、gt mod pを計算し、結果をSとす
る。このSを暗号鍵として用い、メッセージMを暗号化
して暗号文Eを得る。暗号化手順はFEALやDESな
どの共通鍵暗号を用いても、ElGamal などの公開鍵暗号
を用いても良い。
Means for Solving the Problems Let p be a large prime number and q
Is a divisible number of p-1, g is an element of the order q of the multiplicative group created by p, and p, g, and q are public information. Also,
It is assumed that the key recovery authority device has a secret key X and a public key Y = g X mod p. To encrypt the message M, the user first generates a random number t, calculates g t mod p, and sets the result to S. Using this S as an encryption key, the message M is encrypted to obtain a ciphertext E. The encryption procedure may use common key encryption such as FEAL or DES, or may use public key encryption such as ElGamal.

【0011】次に以下のように鍵回復情報を作成する。
暗号化する利用者と復号化する利用者が共有する値xよ
りgx mod pを計算し、結果をYx とする。また、
x 、乱数tより(Yx t =(gx t mod pを計算
し、結果をGx とする。また、鍵回復機関装置の公開鍵
Y、乱数tより(Y)t =(gX t mod pを計算し、
結果をGr とする。このGx ,Gr ,Yx を鍵回復情報
とする。
Next, key recovery information is created as follows.
G x mod p is calculated from the value x shared by the encrypting user and the decrypting user, and the result is defined as Y x . Also,
(Y x ) t = (g x ) t mod p is calculated from Y x and the random number t, and the result is defined as G x . Further, (Y) t = (g X ) t mod p is calculated from the public key Y of the key recovery authority device and the random number t,
Let the result be Gr . The G x , G r , and Y x are used as key recovery information.

【0012】共有する値は、暗号化する者と復号化する
者が共有するパスフレーズでも良い。また、暗号化する
者と復号化する者がオンラインで対話可能な状況の場
合、その場で鍵合意プロトコルや公開鍵暗号方式などを
用いて値を共有しても良い。次に以下のように検証用情
報を作成する。まず乱数rを生成し、(Y)r
(Yx r を計算し、その結果をそれぞれA1,A2と
する。さらにA1,A2と暗号文Eを連結し一方向性関
数hを適用した結果をcとする。またr−ct modqを計
算し、結果をsとし、このc,sを検証用情報とする。
The value to be shared may be a passphrase shared by the encrypting person and the decrypting person. Further, in a situation where the encrypting person and the decrypting person can interact online, the values may be shared on the spot using a key agreement protocol, a public key encryption method, or the like. Next, verification information is created as follows. First, a random number r is generated, and (Y) r ,
(Y x ) r is calculated, and the results are A1 and A2, respectively. Further, a result obtained by connecting A1 and A2 to the ciphertext E and applying the one-way function h is defined as c. Further, r-ct modq is calculated, the result is set as s, and c and s are set as verification information.

【0013】c=h((Y)r ‖(Yx r ‖E) s=r−ct(mod q) 一方向性関数hは二つの入力A,Bに対して、AとBが
等しい場合には常にh(A)=h(B)となり、一方A
だけが与えられた場合にh(A)と等しいh(B)とな
るようなBを探すことは計算量的に困難であるような関
数である。このような性質を持つ関数の現実的な実装に
ついてはMD5やN−Hashなどの例があり、岡本龍
明,山本博資著,“現代暗号”(産業図書)に詳しく記
載されている。
C = h ((Y) r ‖ (Y x ) r ‖E) s = r−ct (mod q) A one-way function h is equal to A and B for two inputs A and B. H (A) = h (B), while A
Finding B such that h (B) equals h (A) when only given is a function that is computationally difficult. Examples of practical implementation of a function having such a property include MD5 and N-Hash, which are described in detail in Tatsuaki Okamoto and Hiroshi Yamamoto, “Modern Cryptography” (industrial book).

【0014】最後に暗号文に鍵回復情報と検証用情報を
添付する。鍵回復情報から正しく復号鍵を回復可能かの
検証するには、以下の計算を行なう。まず、(Y)
s (Gr c mod p,(Yx s (Gx c mod pを計
算し、これと暗号文Eを一方向性関数hに適用させてh
((Y)s (Gr c ‖(Yxs (Gx c ‖E)を
計算し、この値と検証用情報中のcと比較する。これ
は、 (Y)s (Gr c =(gX (r-ct)(gXtc =gXr=(gX r =(Y) r (Yx s (Gx c =(gx (r-ct)(gxtc =gxr=(gx r =(Yx r であり、cと同一ならば正しく復号鍵を回復可能である
と見なす。
Finally, key recovery information and verification information are attached to the ciphertext. The following calculation is performed to verify whether the decryption key can be correctly recovered from the key recovery information. First, (Y)
s (G r ) c mod p, (Y x ) s (G x ) c mod p is calculated, and this and the ciphertext E are applied to the one-way function h to obtain h.
((Y) s (G r ) c ‖ (Y x ) s (G x ) c ‖E) is calculated, and this value is compared with c in the verification information. This, (Y) s (G r ) c = (g X) (r-ct) (g Xt) c = g Xr = (g X) r = (Y) r (Y x) s (G x) c = (g x ) (r-ct) (g xt ) c = g xr = (g x ) r = (Y x ) r If it is the same as c, it is considered that the decryption key can be correctly recovered.

【0015】利用者が復号化するには、まず暗号化した
利用者と共有する値xと鍵回復情報のGx より、
(Gx 1/x mod pを計算し、結果をSとする。 (Gx 1/x =(gxt1/x =gt (mod p) このSを復号鍵として用い、暗号文Eを復号化してメッ
セージMを得る。なお復号化する前に鍵回復情報から正
しく復号鍵を回復可能かの検証を上述の手法により行な
っても良い。復号化する利用者は公開情報p,qより、
秘密鍵x、公開鍵Yx =gx mod pを保持しているか
ら、鍵回復情報にYx を含めなくても、上記検証におい
て、公開鍵Yx を用いて検証するようにしてもよい。
For the user to decrypt, first, from the value x shared with the encrypted user and G x of the key recovery information,
(G x ) 1 / x mod p is calculated, and the result is set as S. (G x ) 1 / x = (g xt ) 1 / x = g t (mod p) The message M is obtained by decrypting the ciphertext E using this S as a decryption key. Before decrypting, verification as to whether the decryption key can be correctly recovered from the key recovery information may be performed by the above-described method. The user to decrypt is based on the public information p and q.
Since the secret key x and the public key Y x = g x mod p are held, the verification may be performed using the public key Y x in the above verification without including Y x in the key recovery information. .

【0016】鍵回復機関装置が鍵を回復するには、鍵回
復機関自身の秘密鍵Xr と鍵回復情報のGr より、(G
r 1/X mod pを計算して復号鍵をSと得る。 (Gr 1/X =(gXt1/X =gt (mod p) なお鍵を回復する前に鍵回復情報から正しく復号鍵を回
復可能かの検証を上述の手法により行なっても良い。
[0016] key recovery engine system is to recover the key, from G r of the secret key X r and key recovery information of key recovery institutions themselves, (G
r ) Calculate 1 / X mod p to obtain a decryption key as S. ( Gr ) 1 / X = (g Xt ) 1 / X = g t (mod p) Even before the key is recovered, whether the decryption key can be correctly recovered from the key recovery information is verified by the above-described method. good.

【0017】[0017]

【発明の実施の形態】以下、この発明の実施形態を、図
面を用いて詳細に記述する。 実施例1 図1及び図2は実施例1を示したものである。ここで、
大きな素数をpとし、qはp−1を割り切る数とし、g
をpが作る乗法群の位数qの元とするとき、p,gおよ
びqは公開情報とする。また、鍵回復機関装置11は秘
密鍵X、公開鍵Y=gX mod pを持ち、利用者端末Bは
秘密鍵x、公開鍵gx mod pを持つとする。
Embodiments of the present invention will be described below in detail with reference to the drawings. First Embodiment FIGS. 1 and 2 show a first embodiment. here,
Let p be a large prime number, q be a number divisible by p-1, and g
Is the element of the order q of the multiplicative group created by p, p, g, and q are public information. Further, it is assumed that the key recovery authority device 11 has a secret key X and a public key Y = g x mod p, and the user terminal B has a secret key x and a public key g x mod p.

【0018】図1はこの実施例の全体構成を示す。利用
者端末Aは利用者端末Bに鍵回復情報と検証用情報を添
付した暗号文を送付する。 暗号化 利用者端末Aは以下の手順で暗号化を行なう。 1.乱数tを生成する 2.gt mod pを計算し、結果をSとする 3.Sを暗号鍵として用い、メッセージMを暗号化して
暗号文Eを得る 4.鍵回復情報を作成する (a)Yx を利用者端末Bの公開鍵gx とする (b)Yx と乱数tより(gx t mod pを計算し、結
果をGx とする (c)鍵回復機関装置11の公開鍵Y、乱数tより
(Y)t mod pを計算し、結果をGr とする (d)Gx ,Gr ,Yx を鍵回復情報とする 5.検証用情報を作成する (a)乱数rを生成する (b)(Y)r ,(Yx r を計算し、その結果をそれ
ぞれA1,A2とする (c)A1,A2と暗号文Eを連結し一方向性関数hを
適用した結果をcとする (d)r−ct modqを計算し、結果をsとする (e)c,sを検証用情報とする 6.最後に暗号文Eに鍵回復情報Gx ,Gr ,Yx と検
証用情報c,sを添付する(図2参照のこと) 検証 利用者端末Bは以下の手順で鍵回復情報から正しく復号
鍵を回復可能かの検証を行なう。 1.(Y)s (Gr c mod p,(Yx s (Gx c
mod pを計算し、これと暗号文Eを一方向性関数hに適
用させてh((Y)s (Gr c ‖(Yx s (Gx
c ‖E)を計算し、その結果をc′とする。 2.c′と検証用情報中のcと比較する。同一であれば
正しく鍵の回復ができることが分る 復号化 利用者端末Bは以下の手順で復号化を行なう。 1.利用者端末Aが正しく鍵回復情報を作成したかを検
証用情報により検証する。 2.利用者端末Bの秘密鍵xと鍵回復情報のGx より
(Gx 1/x mod pを計算し、結果をSとする 3.Sを復号鍵として用い、暗号文Eを復号化してメッ
セージMを得る 実施例2 実施例1が適用されるシステムにおいて鍵の回復を行な
う実施例2を示したものである。 鍵の回復 鍵回復機関装置11は以下の手順で復号化を行なう。 1.利用者端末Aが正しく鍵回復情報を作成したかを検
証用情報により検証する。 2.鍵回復機関装置11の秘密鍵Xと鍵回復情報のGr
より(Gr 1/X mod pを計算し、結果が復号鍵とな
る。
FIG. 1 shows the overall configuration of this embodiment. The user terminal A sends the user terminal B an encrypted text with the key recovery information and the verification information attached. Encryption The user terminal A performs encryption according to the following procedure. 1. 1. Generate a random number t g t mod p is calculated, and the result with S 3. 3. Using S as an encryption key, encrypt message M to obtain ciphertext E. Create key recovery information. (A) Use Y x as public key g x of user terminal B. (b) Calculate (g x ) t mod p from Y x and random number t, and set the result as G x ( c) Calculate (Y) t mod p from the public key Y of the key recovery authority device 11 and the random number t, and set the result to Gr . (d) Use G x , G r , and Y x as key recovery information. Create verification information (a) Generate random number r (b) Calculate (Y) r and (Y x ) r and use the results as A1 and A2, respectively (c) A1, A2 and ciphertext E 5. The result of applying the one-way function h is set to c. (D) r-ct modq is calculated, and the result is set to s. (E) c and s are used as verification information. Finally, the key recovery information G x , G r , Y x and the verification information c, s are attached to the cipher text E (see FIG. 2). The verification user terminal B correctly decrypts the key recovery information in the following procedure. Verify that the key can be recovered. 1. (Y) s (G r ) c mod p, (Y x ) s (G x ) c
mod p is calculated, and this and the ciphertext E are applied to the one-way function h to obtain h ((Y) s (G r ) c ‖ (Y x ) s (G x )
c ‖E) was calculated, and the result with c '. 2. c ′ is compared with c in the verification information. If they are the same, it can be understood that the key can be recovered correctly. Decryption The user terminal B performs decryption in the following procedure. 1. It verifies with the verification information whether the user terminal A has correctly created the key recovery information. 2. 2. Calculate (G x ) 1 / x mod p from secret key x of user terminal B and G x of the key recovery information, and set the result to S. Second Embodiment A second embodiment is shown in which a key is recovered in a system to which the first embodiment is applied, by using S as a decryption key and decrypting the ciphertext E to obtain a message M. Key Recovery The key recovery authority device 11 performs decryption in the following procedure. 1. It verifies with the verification information whether the user terminal A has correctly created the key recovery information. 2. Secret key X of key recovery authority device 11 and G r of key recovery information
Then, (G r ) 1 / X mod p is calculated, and the result is a decryption key.

【0019】図3に暗号化側の利用者端末Aの機能構成
例を示す。メモリ12には公開情報p,q,g、鍵回復
機関装置11の公開鍵Y、復号化側の利用者端末Bと共
有の秘密の情報xなどが格納されている。乱数生成部1
3から乱数t、rが生成され、暗号鍵生成部14で暗号
鍵S=gt mod pが生成される。この暗号鍵Sにより暗
号化部15でメッセージMが暗号化され、暗号文Eが生
成される。
FIG. 3 shows a functional configuration example of the user terminal A on the encryption side. The memory 12 stores the public information p, q, g, the public key Y of the key recovery authority device 11, the secret information x shared with the user terminal B on the decryption side, and the like. Random number generator 1
3 from the random number t, r is generated, the encryption key S = g t mod p is generated by the encryption key generating section 14. The message M is encrypted by the encryption unit 15 using the encryption key S, and a ciphertext E is generated.

【0020】鍵回復情報生成部16においてはYx 生成
部17でYx =gx mod pが生成され、Gx 生成部18
でGx =(Yx t mod pが生成され、Gr 生成部19
でG r =(Y)t mod pが生成される。ここでYx は利
用者端末Bの公開鍵であるから、Yx 生成部17を省略
し、メモリ12に保持したYx を利用してもよい。検証
用情報生成部21においては、A1生成部22でA1=
(Y)r mod pを生成し、A2生成部23でA2=(Y
x r mod pを生成し、一方向性関数部24でc=h
(A1‖A2‖E)を計算し、生成部25でs=r−ct
modqが計算され、検証用情報s,cが得られる。
In the key recovery information generating section 16, YxGenerate
Y at part 17x= Gxmod p is generated and GxGenerator 18
And Gx= (Yx)tmod p is generated and GrGenerator 19
And G r= (Y)tmod p is generated. Where YxIs profit
Since it is the public key of user terminal B, YxOmit generation unit 17
And Y stored in the memory 12xMay be used. Verification
In the use information generation unit 21, A1 =
(Y)rmod p is generated, and A2 = (Y
x)rmod p is generated, and the one-way function part 24 calculates c = h
(A1‖A2‖E) is calculated, and the generation unit 25 calculates s = r-ct.
 The modq is calculated, and the verification information s, c is obtained.

【0021】図4に復号化側の利用者端末Bの機能構成
例を示す。メモリ31に公開情報p、鍵回復機関装置1
1の公開鍵Y、利用者端末Bの秘密鍵(端末Aとの共有
情報)xが格納されてある。検証部32においては、べ
き乗演算部33で(Yx s mod pが計算され、べき乗
演算部34で(Gx c mod pが計算され、これらべき
乗演算の結果の積B1=(Yx s ・(Gx c mod p
が乗算部35で計算され、べき乗演算部36で(Gr
c mod pが計算され、べき乗演算部37で(Y)s mod
pが計算され、これらべき乗演算の結果の積B2=(G
r c ・(Y)s mod pが乗算部38で計算され、一方
向性関数演算部39でc′=h(B1‖B2‖E)が計
算され、その結果c′とcとが比較部41で比較され
る。
FIG. 4 shows a functional configuration example of the user terminal B on the decoding side. Public information p in the memory 31
1, a public key Y and a private key (shared information with the terminal A) x of the user terminal B are stored. In the verification unit 32, (Y x ) s mod p is calculated in the exponentiation operation unit 33, (G x ) c mod p is calculated in the exponentiation operation unit 34, and the product B1 = (Y x) of the results of these exponentiation operations ) S · (G x ) c mod p
Is calculated by the multiplication unit 35, and (G r ) is calculated by the exponentiation operation unit 36.
c mod p is calculated, and the exponentiation operation unit 37 calculates (Y) s mod
p is calculated, and the product B2 = (G
r ) c · (Y) s mod p is calculated by the multiplier 38, c ′ = h (B1‖B2‖E) is calculated by the one-way function calculator 39, and the result c ′ is compared with c. The comparison is performed by the unit 41.

【0022】比較部41でc=c′が検出されると、鍵
の回復が可能となり、べき乗演算部42でS=(Gx
1/x mod pが計算され、その復号鍵Sにより復号化部4
3で暗号文Eが復号化され、メッセージMが得られる。
先の説明から理解されるように、鍵回復情報から正しく
復号鍵を回復できることを、暗号文、鍵回復情報、検証
用情報と公開情報のみで検証することが可能であるた
め、復号化する利用者、鍵回復機関以外の第三者、つま
り復号化、鍵回復を行うのに必要な秘密情報x,Xを持
っていない利用者による検証が可能である。この第三者
の利用者端末における検証は復号化する利用者端末での
検証と同様に検証すればよく、この場合、暗号化する利
用者端末で鍵回復情報として復号化する利用者端末の公
開鍵Yx を含める場合と、含めない場合とがあり、後者
の場合は、第三の利用者装置は公開情報Yx を入手して
検証を行うことになる。
When c = c 'is detected by the comparing section 41, the key can be recovered, and the exponentiation section 42 calculates S = (G x ).
1 / x mod p is calculated, and the decryption unit 4
In step 3, the ciphertext E is decrypted, and the message M is obtained.
As can be understood from the above description, it is possible to verify that the decryption key can be correctly recovered from the key recovery information using only the ciphertext, the key recovery information, the verification information, and the public information. Verification by a third party other than the user and the key recovery organization, that is, a user who does not have the secret information x and X necessary for performing decryption and key recovery. The verification at the third-party user terminal may be performed in the same manner as the verification at the decrypting user terminal. In this case, the user terminal to be decrypted as key recovery information at the encrypting user terminal is disclosed. and to include a key Y x, may or may not include, in the latter case, the third user device will be verified to obtain public information Y x.

【0023】利用者端末A,Bの各機能はコンピュータ
によりプログラムを解読実行することにより作用させる
こともできる。
Each function of the user terminals A and B can be operated by decoding and executing a program by a computer.

【0024】[0024]

【発明の効果】以上説明したように、この発明では、鍵
回復情報から正しく復号鍵を回復できることを、暗号
文、鍵回復情報、検証用情報と公開情報のみで検証する
ことが可能なため、第三者による検証が可能となる。ま
た、鍵回復情報にはYx ,Gx ,Gr mod pが、検証用
情報には、s,cmod qが格納される。p,qの大きさ
は最近の暗号強度を考慮するとそれぞれ1024bi
t,160bitが一般的である。これに基づくとこの
発明では実施例1の場合、鍵回復情報と検証用情報のサ
イズの合計は3392bitとなる。一方、Binding El
Gamal 方法の場合、実施例1では合計が5100bit
となり、暗号文に添付する情報の合計サイズを小さくす
ることが可能となる。
As described above, according to the present invention, it is possible to verify that the decryption key can be correctly recovered from the key recovery information only by using the ciphertext, the key recovery information, the verification information, and the public information. Verification by a third party is possible. Further, Y x , G x , and G r mod p are stored in the key recovery information, and s and cm d q are stored in the verification information. The sizes of p and q are each 1024 bi considering the recent encryption strength.
t, 160 bits is common. Based on this, according to the present invention, in the case of the first embodiment, the total size of the key recovery information and the verification information is 3392 bits. On the other hand, Binding El
In the case of the Gamal method, the total is 5100 bits in the first embodiment.
Thus, the total size of the information attached to the cipher text can be reduced.

【0025】また、検証用情報に暗号文に関する情報を
加えることにより、添付情報が対応する暗号文に添付し
ているかの検証が可能となる。
Further, by adding information about the cipher text to the verification information, it is possible to verify whether the attached information is attached to the corresponding cipher text.

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

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

【図2】実施例1に用いる暗号文フォーマットを示す
図。
FIG. 2 is a diagram showing a ciphertext format used in the first embodiment.

【図3】暗号化側の利用者端末Aの機能構成例を示す
図。
FIG. 3 is a diagram showing a functional configuration example of a user terminal A on the encryption side.

【図4】復号化側の利用者端末Bの機能構成例を示す
図。
FIG. 4 is a diagram showing an example of a functional configuration of a user terminal B on the decoding side.

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 企業向け鍵回復システムにおける一提 案,電子情報通信学会技術研究報告, 1997年 9月12日,Vol.97,No. 252,p.55−62 (58)調査した分野(Int.Cl.7,DB名) H04L 9/08 G09C 1/00 630 JICSTファイル(JOIS)──────────────────────────────────────────────────続 き Continued on the front page (56) References A proposal for a key recovery system for enterprises, IEICE Technical Report, September 12, 1997, Vol. 97, No. 252, p. 55-62 (58) Field surveyed (Int. Cl. 7 , DB name) H04L 9/08 G09C 1/00 630 JICST file (JOIS)

Claims (20)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 暗号化/復号化手段を持つ利用者端末
が、復号鍵を導出可能な情報を鍵回復情報として、暗号
化時に暗号文Eに添付し、 鍵回復機関装置が、鍵回復要求に基づいて、鍵回復手段
により上記鍵回復情報から復号鍵を回復する非寄託型鍵
回復方法において、以下のことを特徴とする。 大きな素
数をpとし、qはp−1を割り切る数とし、gをpが作
る乗法群の位数qの元とし、p,gおよびqは公開情報
とし、 鍵回復機関装置は秘密鍵X、公開鍵Y=gX mod pを持
つこと。 利用者端末の暗号化手段は、暗号鍵作成過程と
暗号化過程と鍵回復情報作成過程を実行するものであ
、 暗号鍵作成過程は、乱数tを生成する過程と、gt mod
pを計算して暗号鍵Sを得る過程よりなり、 暗号化過程は、上記暗号鍵SでメッセージMを暗号化し
て暗号文Eを得る過程よりなり、 鍵回復情報作成過程は、 上記利用者端末と復号化する利用者端末が共有する値x
よりgx mod pを計算して値Yx を得る過程と、 Yx 、乱数tより(Yx t mod pを計算して値Gx
得る過程と、 鍵回復機関装置の公開鍵Y、乱数tより(Y)t mod p
を計算して値Gr を得る過程と、 上記値Gx 、上記値Gr よりなる鍵回復情報を作成する
過程とよりなること。
1. A user terminal having encryption / decryption means.
Uses the information from which the decryption key can be derived as key recovery information,
Attached to the ciphertext E at the time of decryption, and the key recovery institution device receives the key recovery request based on the key recovery request.
Undeposited key that recovers the decryption key from the key recovery information
The recovery method is characterized by the following. Big element
Let p be the number, q be a number divisible by p-1, and g be p
, And p, g and q are public information
And the key recovery authority device is a secret key X and a public key Y = gXhave mod p
One thing. The encryption means of the user terminal is based on the encryption key creation process
Encryption process and key recovery information creation processWhat to do
RThe encryption key generation process includes a process of generating a random number t and gtmod
calculating a p and obtaining an encryption key S. The encryption step encrypts the message M with the encryption key S
The key recovery information creation process comprises the steps of: obtaining a value x shared by the user terminal and the user terminal to be decrypted;
More gxCalculate mod p and calculate the value YxAnd the process of obtainingx, From the random number t (Yx)tCalculate mod p and calculate the value GxTo
The process of obtaining, from the public key Y of the key recovery authority device and the random number t (Y)tmod p
To calculate the value GrAnd the value Gx, The above value GrCreate key recovery information consisting of
Become with the process.
【請求項2】 請求項1記載の非寄託型鍵回復方法にお
いて下記のことを特徴とする。 利用者端末の復号化手段
は、復号鍵生成過程と復号化過程を実行するものであ
、 復号鍵生成過程は、その利用者端末と暗号化した利用者
端末が共有する値xと鍵回復情報中のGx より、
(Gx 1/x mod pを計算して復号鍵Sを得る過程から
なり、 復号化過程は、上記復号鍵Sで暗号文Eを復号化してメ
ッセージMを得る過程からなること。
2. The non-deposited key recovery method according to claim 1,
And the following features. User terminal decryption means
Defines the decryption key generation process and the decryption processWhat to do
RThe decryption key generation process depends on the user terminal and the encrypted user.
Value x shared by terminal and G in key recovery informationxThan,
(Gx)1 / xFrom the process of calculating mod p and obtaining the decryption key S
In the decryption process, the ciphertext E is decrypted with the decryption key S, and
The process of obtaining a message M.
【請求項3】 請求項1又は2記載の非寄託型鍵回復方
法において下記のことを特徴とする。 鍵回復機関装置の
鍵回復手段は、 その鍵回復機関装置自身の秘密鍵Xと鍵回復情報中のG
r より、(Gr 1/Xmod pを計算して復号鍵Sを得る
過程を実行するものであること。
3. The non-deposited key recovery method according to claim 1 or 2.
The method is characterized by the following. Key recovery authority equipment
The key recovery means includes a secret key X of the key recovery authority device itself and a G in the key recovery information.
rFrom (Gr)1 / XCalculate mod p to get decryption key S
The processTo dothing.
【請求項4】 請求項1乃至3の何れかに記載の非寄託
型鍵回復方法において以下のことを特徴とする。 利用者
端末の暗号化手段は、上記暗号鍵作成過程と上記暗号化
過程と上記鍵回復情報作成過程と検証用情報作成過程を
実行するものであり、 検証用情報作成過程は、乱数rを生成する過程と、 (Y)r mod p,(Yx r mod pを計算した結果と暗
号文Eを連結し一方向性関数hを適用した値c=h
((Y)r ‖(Yx r ‖E)と、 r−ct modqを計算した値sから検証用情報c,sを作
成する過程とよりなり、 検証用情報c,sを暗号文Eに添付する過程を有するこ
と。
4. The non-deposit according to any one of claims 1 to 3.
The following is a characteristic of the type key recovery method. user
The encryption means of the terminal includes the encryption key creation process and the encryption
Process, the key recovery information creation process, and the verification information creation process.
What to doThe verification information generation step includes a step of generating a random number r, and (Y)rmod p, (Yx)rThe result of calculating mod p
The value c = h obtained by connecting the sentence E and applying the one-way function h
((Y)r‖ (Yx)r(E) and the verification information c and s are created from the value s obtained by calculating the r-ct modq.
The verification information c and s are attached to the ciphertext E.
When.
【請求項5】 請求項4記載の非寄託型鍵回復方法にお
いて、以下のことを特徴とする。暗号化する利用者端末
は上記値Yx も上記鍵回復情報に含めること、 復号化する利用者端末の復号化手段は、上記復号鍵生成
過程と、上記復号化過程と、検証過程を実行するもので
あり、 上記検証過程は、(Y)s (Gr c mod p,(Yx
s (Gx c mod pを計算する過程と、 この計算結果と暗号文Eを一方向性関数hに適用してh
((Y)s (Gr c‖(Yx s (Gx c ‖E)を
計算した値c′を求める過程と、 値c′と上記cを比較する過程とよりな、 上記比較が一致すれば上記復号化過程を実行すること。
5. The non-deposited key recovery method according to claim 4, wherein: User terminal to encrypt also be included in the key recovery information the values Y x, decoding means of the user terminal for decoding performs the above decryption key generating process, and the decoding process, the verification process In things
Yes , the above verification process consists of (Y) s (G r ) c mod p, (Y x )
the process of calculating s (G x ) c mod p, and applying this calculation result and ciphertext E to the one-way function h
((Y) s (G r ) c ‖ (Y x) s (G x ) c ‖E) ' and process of obtaining the value c' value c calculated the Ri Na more and the process of comparing the c, If the comparisons match, perform the decoding process.
【請求項6】 請求項4記載の非寄託型鍵回復方法にお
いて、以下のことを特徴とする。復号化する利用者端末
は公開情報p,gより秘密鍵x、公開鍵Yx =gx mod
pを持つこと、 復号化する利用者端末の復号化手段は、上記復号鍵生成
過程と、上記復号化過程と、検証過程とを実行するもの
であり、 上記検証過程は(Y)s (Gr c mod p,(Yx s
(Gx c mod pを計算する過程と、 この計算結果と暗号文Eを一方向性関数hに適用してh
((Y)s (Gr c‖(Yx s (Gx c ‖E)を
計算した値c′を求める過程と、 値c′と上記cを比較する過程とよりな、 上記比較が一致すれば上記復号化過程を実行すること。
6. A non-deposited key recovery method according to claim 4, wherein: The user terminal to decrypt is based on the public information p and g, the secret key x and the public key Y x = g x mod
Having p, decoding means of the user terminal for decoding is intended to run and the decryption key generating process, and the decoding process, a verification process
And the verification process is (Y) s (G r ) c mod p, (Y x ) s
The process of calculating (G x ) c mod p, and applying this calculation result and ciphertext E to the one-way function h
((Y) s (G r ) c ‖ (Y x) s (G x ) c ‖E) ' and process of obtaining the value c' value c calculated the Ri Na more and the process of comparing the c, If the comparisons match, perform the decoding process.
【請求項7】 請求項4記載の非寄託型鍵回復方法にお
いて、以下のことを特徴とする。 上記値Yx も上記鍵回復情報に含めること、 鍵回復機関装置の鍵回復手段は検証過程を実行するもの
であり、 上記検証過程は(Y)s (Gr c mod p,(Yx s
(Gx c mod pを計算する過程と、 その計算結果と暗号文Eを一方向性関数hに適用してh
((Y)s (Gr c‖(Yx s (Gx c ‖E)を
計算した値c′を求める過程と、 値c′と上記cを比較する過程とよりな、 上記比較が一致すれば上記復号鍵Sを得る過程を実行す
ること。
7. A non-deposited key recovery method according to claim 4, wherein: Be included in the value Y x be the key recovery information, key recovery means of the key recovery authority apparatus that performs validation process
And the verification process is (Y) s (G r ) c mod p, (Y x ) s
The process of calculating (G x ) c mod p, and applying the calculation result and the ciphertext E to the one-way function h, h
((Y) s (G r ) c ‖ (Y x) s (G x ) c ‖E) ' and process of obtaining the value c' value c calculated the Ri Na more and the process of comparing the c, Performing the process of obtaining the decryption key S if the comparisons match;
【請求項8】 請求項4記載の非寄託型鍵回復方法にお
いて、以下のことを特徴とする。復号化する利用者端末
は公開情報p,qより秘密鍵x,公開鍵Yx =gx mod
pを持つこと、 鍵回復機関装置の鍵回復手段は、利用者端末の公開鍵Y
x を入手する過程と、検証過程を実行するものであり、 上記検証過程は(Y)s (Gr c mod p,(Yx s
(Gx c mod pを計算する過程と、 その計算結果と暗号文Eを一方向性関数hに適用してh
((Y)s (Gr c‖(Yx s (Gx c ‖E)を
計算した値c′を求める過程と、 値c′と上記cを比較する過程とよりな、 上記比較が一致すれば上記復号鍵Sを得る過程を実行す
ること。
8. The non-deposited key recovery method according to claim 4, wherein: The user terminal to be decrypted uses the public information p and q to obtain a secret key x and a public key Y x = g x mod
p, the key recovery means of the key recovery authority device is the public key Y of the user terminal
a process to obtain the x, is intended to perform the verification process, the verification process (Y) s (G r) c mod p, (Y x) s
The process of calculating (G x ) c mod p, and applying the calculation result and the ciphertext E to the one-way function h, h
((Y) s (G r ) c ‖ (Y x) s (G x ) c ‖E) ' and process of obtaining the value c' value c calculated the Ri Na more and the process of comparing the c, Performing the process of obtaining the decryption key S if the comparisons match;
【請求項9】 請求項4記載の非寄託型鍵回復方法にお
いて、以下のことを特徴とする。復号化する利用者端末
は公開情報p,qより秘密鍵x,公開鍵Yx =gx mod
pを持つこと、 復号化、鍵回復するための情報(上記Xもしくはx)を
持たない第三の利用者端末は検証手段をもつこと、 上記検証手段は復号化する利用者端末の公開鍵Yx を入
手する過程と、検証過程を実行するものであり、 上記検証過程は(Y)s (Gr c mod p,(Yx s
(Gx c mod pを計算する過程と、 その計算結果と暗号文Eを一方向性関数hに適用してh
((Y)s (Gr c‖(Yx s (Gx c ‖E)を
計算した値c′を求める過程と、 値c′と上記cを比較する過程とよりなること。
9. A non-deposited key recovery method according to claim 4, wherein: The user terminal to be decrypted uses the public information p and q to obtain a secret key x and a public key Y x = g x mod
Having p, decoding, third user terminal having no information (the X or x) to the key recovery is to have the validation means, the public key Y of the user terminal is said verification means for decoding a process to obtain the x, is intended to perform the verification process, the verification process (Y) s (G r) c mod p, (Y x) s
The process of calculating (G x ) c mod p, and applying the calculation result and the ciphertext E to the one-way function h, h
(Y) s (G r ) c ‖ (Y x ) s (G x ) c ‖ E) The process of obtaining a value c ′ and the process of comparing the value c ′ with the above c.
【請求項10】 請求項4記載の非寄託型鍵回復方法に
おいて、以下のことを特徴とする。暗号化する利用者端
末は上記値Yx も上記鍵回復情報に含めること、 復号化、鍵回復するための情報(上記Xもしくはx)を
持たない第三の利用者端末は検証過程を実行させるもの
であり、 上記検証過程は(Y)s (Gr c mod p,(Yx s
(Gx c mod pを計算する過程と、 その計算結果と暗号文Eを一方向性関数hに適用してh
((Y)s (Gr c‖(Yx s (Gx c ‖E)を
計算した値c′を求める過程と、 値c′と上記cを比較する過程とよりなること。
10. The non-deposited key recovery method according to claim 4, wherein: User terminal to encrypt also be included in the key recovery information the values Y x, decoding, third user terminal having no information (the X or x) for key recovery is to perform the validation process thing
And the verification process is (Y) s (G r ) c mod p, (Y x ) s
The process of calculating (G x ) c mod p, and applying the calculation result and the ciphertext E to the one-way function h, h
(Y) s (G r ) c ‖ (Y x ) s (G x ) c ‖ E) The process of obtaining a value c ′ and the process of comparing the value c ′ with the above c.
【請求項11】 利用者端末が鍵回復情報を暗号文Eに
添付し、鍵回復機関装置か、鍵回復要求に基づいて鍵回
復情報から復号鍵を回復する非寄託型鍵回復システムに
おける暗号化側の利用者端末であって以下のことを特徴
とする。大きな素数をpとし、qはp−1を割り切る数
とし、gをpが作る乗法群の位数qの元とする公開情報
p,gおよびq、鍵回復機関装置の公開鍵Yとして記憶
するメモリと、 暗号鍵作成手段と暗号化手段と鍵回復情報作成手段とを
有すること、 暗号鍵作成手段は、乱数tを生成する手段と、gとtを
入力してgt mod pを計算して暗号鍵Sを得る手段とよ
りなり、 暗号化手段は上記暗号鍵SでメッセージMを暗号化して
暗号文Eを得る手段よりなり、 鍵回復情報作成手段は、利用者端末と復号化する利用者
端末が共有する値xとgとを入力してgx mod pを計算
して値Yx を得る手段と、 Yx 、乱数tを入力して(Yx t mod pを計算して値
x を得る手段と、 鍵回復機関装置の公開鍵Y、乱数tを入力して(Y)t
mod pを計算して値Gr を得る手段と、 値Gx 、値Gr よりなる鍵回復情報を作成する手段とよ
りなること。
11. An encryption system in which a user terminal attaches key recovery information to ciphertext E and recovers a decryption key from the key recovery information based on a key recovery request or a key recovery authority device. Side user terminal, characterized in that: Let p be a large prime number, q be a number divisible by p-1, and g be stored as public information p, g, and q that are the basis of the order q of the multiplicative group created by p, and the public key Y of the key recovery authority device. Having a memory, an encryption key generation unit, an encryption unit, and a key recovery information generation unit; the encryption key generation unit calculates g t mod p by inputting g and t and generating random number t The encryption means comprises means for encrypting the message M with the encryption key S to obtain a ciphertext E, and the key recovery information creating means comprises means for decrypting with the user terminal. party and means for obtaining a g x mod p and compute the value Y x terminal to input the values x and g to be shared, Y x, enter the random number t by calculating (Y x) t mod p Means for obtaining the value G x , the public key Y of the key recovery authority device, and the random number t are inputted (Y) t
means for calculating mod p to obtain a value Gr; and means for generating key recovery information consisting of a value G x and a value G r .
【請求項12】 請求項11記載の利用者端末において
下記のことを特徴とする。 検証用情報を作成する手段を有すること、 検証用情報作成手段は、 乱数rを生成する手段と、 Y,Yx ,rを入力して(Y)r mod p,(Yx r mo
d pを計算する手段と、 その計算結果と暗号文Eを連結し、一方向性関数hを適
用した値c=h((Y)r ‖(Yx r ‖E)を得る手
段と、 r,t,cを入力してr−ct modqを計算した値sを求
める手段と、 cとsを検証用情報として暗号文Eに添付する手段とよ
りなること。
12. The user terminal according to claim 11, wherein: A means for generating verification information; a means for generating a random number; a means for generating a random number r; and inputting Y, Y x , r to (Y) r mod p, (Y x ) r mo
means for calculating d p; means for concatenating the calculation result with ciphertext E to obtain a value c = h ((Y) r ‖ (Y x ) r ‖E) to which a one-way function h is applied; means for obtaining a value s obtained by calculating r-ct modq by inputting r, t, and c; and means for attaching c and s to the ciphertext E as verification information.
【請求項13】 利用者端末が鍵回復情報を暗号文Eに
添付し、鍵回復機関装置が、鍵回復要求に基づいて鍵回
復情報から復号鍵を回復する非寄託型鍵回復システムに
おける復号化側の利用者端末であって、以下のことを特
徴とする。大きな素数をpとし、qはp−1を割り切る
数とし、gをpが作る乗法群の位数qの元とする公開情
報p、公開鍵Y、秘密鍵xを記憶するメモリと、 暗号文E、鍵回復情報Yx ,Gx ,Gr 、検証用情報
c,sを受信する手段と、 検証手段と、鍵回復手段と、復号化手段とを有するこ
と、 検証手段はY,Gr ,s,cを入力してB1=(Y)s
(Gr c mod pを計算する手段と、 Yx ,Gx ,s,cを入力してB2=(Yx
s (Gx c mod pを計算する手段と、 これら計算結果B1,B2と暗号文Eを入力して一方向
性関数値c′=h(B1‖B2‖E)を計算する手段
と、 c′とcを比較し、一致すれば合格とする手段と、より
なること、 鍵回復手段はxとGx を入力して(Gx 1/x mod pを
計算して復号鍵Sを得る手段であること、 復号化手段は暗号文Eを復号鍵Sで復号化してメッセー
ジMを得る手段であること。
13. A decryption method in a non-escrowed key recovery system in which a user terminal attaches key recovery information to a ciphertext E and a key recovery authority device recovers a decryption key from the key recovery information based on a key recovery request. Side user terminal, characterized in that: P is a large prime number, q is a number divisible by p−1, g is a memory storing public information p, a public key Y, and a secret key x, which are elements of an order q of a multiplicative group formed by p. E, have key recovery information Y x, G x, G r , verification information c, means for receiving the s, the verification unit, and a key recovery means, a decoding means, verification means Y, G r , S, c and B1 = (Y) s
Means for calculating (G r ) c mod p, and inputting Y x , G x , s, c and B2 = (Y x )
means for calculating s (G x ) c mod p; means for inputting these calculation results B1, B2 and ciphertext E to calculate a one-way function value c ′ = h (B1‖B2‖E); c ′ and c are compared, and if they agree with each other, the means is determined to be acceptable. The key recovery means inputs x and G x and calculates (G x ) 1 / x mod p to obtain the decryption key S. The decryption means is a means for decrypting the ciphertext E with the decryption key S to obtain the message M.
【請求項14】 暗号化する利用者端末が鍵回復情報を
暗号文Eに添付し、復号化する利用者端末は公開情報
p,qより秘密鍵x,公開鍵Yx =gx mod pを持ち、
鍵回復機関装置が、鍵回復要求に基づいて鍵回復情報か
ら復号鍵を回復する非寄託型鍵回復システムにおける鍵
回復機関装置であって、以下のことを特徴とする。鍵回
復手段を備えること、 鍵回復手段は利用者端末の公開鍵Yx を入手する手段
と、検証手段と復号鍵回復手段を有すること、 上記検証手段は(Y)s (Gr c mod p,(Yx s
(Gx c mod pを計算する手段と、 その計算結果と暗号文Eを一方向性関数hに適用してh
((Y)s (Gr c‖(Yx s (Gx c ‖E)を
計算した値c′を求める手段と、 値c′と上記cを比較する手段とよりなること、 上記復号鍵回復手段は、上記比較が一致すれば鍵回復機
関装置の秘密鍵を用いて鍵回復情報から復号鍵Sを回復
する手段であること。
14. A user terminal for encryption attaches key recovery information to cipher text E, and a user terminal for decryption uses a secret key x and a public key Y x = g x mod p based on public information p and q. Holding
A key recovery authority device in a non-escrowed key recovery system for recovering a decryption key from key recovery information based on a key recovery request, characterized in that: Providing the key recovery device, the key recovery device and means for obtaining the public key Y x of the user terminal, to have a decryption key recovery unit and the verification means, the said verification means (Y) s (G r) c mod p, (Y x ) s
Means for calculating (G x ) c mod p, and applying the calculation result and ciphertext E to the one-way function h
(Y) s (G r ) c ‖ (Y x ) s (G x ) c ‖ E) means for calculating a value c ′, and means for comparing the value c ′ with the above c, The decryption key recovery means is means for recovering the decryption key S from the key recovery information using the secret key of the key recovery authority device if the comparisons match.
【請求項15】 暗号化する利用者端末が鍵回復情報を
暗号文Eに添付し、復号化する利用者端末が復号化する
利用者端末は公開情報p,qより秘密鍵x,公開鍵Yx
=gx mod pを持ち、鍵回復情報から復号鍵を回復し
て、暗号文Eを復号し、鍵回復機関装置が鍵回復要求に
基づいて、鍵回復情報から復号鍵を回復する非寄託型鍵
回復システムにおける復号化、鍵回復するための情報を
持たない第三者の利用者端末であって、以下のことを特
徴とする。検証手段をもつこと、 その検証手段は復号化する利用者端末の公開鍵Yx を入
手する手段と、検証実行手段を有すること、 上記検証実行手段は(Y)s (Gr c mod p,
(Yx s (Gx c mod pを計算する手段と、 その計算結果と暗号文Eを一方向性関数hに適用してh
((Y)s (Gr c‖(Yx s (Gx c ‖E)を
計算した値c′を求める手段と、 値c′と上記cを比較する手段とよりなること。
15. The encrypting user terminal attaches key recovery information to the ciphertext E, and the decrypting user terminal decrypts the secret key x and public key Y from the public information p and q. x
= G x mod p, recovers the decryption key from the key recovery information, decrypts the ciphertext E, and the key recovery authority device recovers the decryption key from the key recovery information based on the key recovery request. A third-party user terminal having no information for decryption and key recovery in a key recovery system, characterized by the following. Having a verification unit, and means the verification means for obtaining the public key Y x of the user terminal to decode, to have a verification execution means, it is the verification execution unit (Y) s (G r) c mod p ,
Means for calculating (Y x ) s (G x ) c mod p, and applying the calculation result and the ciphertext E to the one-way function h
((Y) s (G r ) c ‖ (Y x ) s (G x ) c ‖E) means for calculating a value c ′, and means for comparing the value c ′ with the above c.
【請求項16】 暗号化する利用者端末が鍵回復情報を
暗号文Eに添付し、復号化する利用者端末が復号化する
利用者端末は公開情報p,qより秘密鍵x,公開鍵Yx
=gx mod pを持ち、鍵回復情報から復号鍵を回復し
て、暗号文Eを復号し、暗号化する利用者端末は上記値
x も上記鍵回復情報に含め、鍵回復機関装置が鍵回復
要求に基づいて、鍵回復情報から復号鍵を回復する非寄
託型鍵回復システムにおける復号化、鍵回復するための
情報を持たない第三者の利用者端末であって、以下のこ
とを特徴とする。検証手段をもつこと、 上記検証手段は(Y)s (Gr c mod p,(Yx s
(Gx c mod pを計算する手段と、 その計算結果と暗号文Eを一方向性関数hに適用してh
((Y)s (Gr c‖(Yx s (Gx c ‖E)を
計算した値c′を求める手段と、 値c′と上記cを比較する手段とよりなること。
16. A user terminal for encryption attaches key recovery information to the ciphertext E, and a user terminal for decryption decrypts a user terminal based on public information p and q. x
= G x mod p, the user terminal that recovers the decryption key from the key recovery information, decrypts and encrypts the ciphertext E, also includes the value Y x in the key recovery information, Decryption in a non-escrowed key recovery system that recovers a decryption key from key recovery information based on a key recovery request, a third-party user terminal having no information for key recovery, Features. Having verification means, said verification means being (Y) s (G r ) c mod p, (Y x ) s
Means for calculating (G x ) c mod p, and applying the calculation result and the ciphertext E to the one-way function h
((Y) s (G r ) c ‖ (Y x ) s (G x ) c ‖E) means for calculating a value c ′, and means for comparing the value c ′ with the above c.
【請求項17】 利用者端末が鍵回復情報を暗号文Eに
添付し、鍵回復機関装置が鍵回復要求に基づいて鍵回復
情報から復号鍵を回復し、大きな素数をpとし、qはp
−1を割り切る数とし、gをpが作る乗法群の位数qの
元とし、p,q,gを公開情報とする非寄託型鍵回復シ
ステムにおける暗号化側の利用者端末として機能させる
コンピュータに、 乱数tを生成する処理と、 gとtを入力してgt mod pを計算して暗号鍵Sを得る
処理と、 暗号鍵SでメッセージMを暗号化して暗号文Eを得る処
理と、 暗号化側利用者端末と復号化側利用者端末が共有する値
xとgを入力して、gx mod pを計算して値Yx を得る
処理と、 値Yx 、乱数tを入力して(Yx t mod pを計算して
値Gx を得る処理と、 鍵回復機関装置の公開鍵Y、乱数tを入力して(Y)t
mod pを計算して値Gr を得る処理と、 値Gx 、値Gr を鍵回復情報として暗号文Eに添付して
送信する処理とを実行させるためのプログラムを記録し
た記録媒体。
17. A user terminal attaches key recovery information to ciphertext E, a key recovery authority recovers a decryption key from key recovery information based on a key recovery request, and sets a large prime number to p, and q to p
Let -1 be a divisible number, g be the element of the order q of the multiplicative group created by p, and function as a user terminal on the encryption side in a non-escrowed key recovery system in which p, q, and g are public information. a process for generating a random number t in a computer; a process for inputting g and t to calculate g t mod p to obtain an encryption key S; a process for encrypting a message M with the encryption key S and a ciphertext E And inputting the values x and g shared by the encryption-side user terminal and the decryption-side user terminal, calculating g x mod p to obtain the value Y x, and obtaining the value Y x , Inputting a random number t and calculating (Y x ) t mod p to obtain a value G x , inputting the public key Y of the key recovery authority device and the random number t and inputting (Y) t
a process of obtaining the values G r to calculate a mod p, the value G x, a recording medium recording a program for executing a process of transmitting and attach to the ciphertext E values G r as the key recovery information.
【請求項18】 請求項17記載の記録媒体において、 乱数rを生成する処理と、 公開鍵Y、乱数rを入力してA1=(Y)r mod pを計
算する処理と、 値Yx 、乱数rを入力してA2=(Yx r mod pを計
算する処理と、 値A1,A2、暗号文Eを連結して一方向性関数値c=
h(A1‖A2‖E)を計算する処理と、 乱数r,t、値cを入力してs=r−ct modqを計算す
る処理と、 値c,sを検証用情報として暗号文Eに添付する処理
と、 を上記コンピュータに実行させる処理として含むことを
特徴とする記録媒体。
18. The recording medium of claim 17, the process of generating a random number r, and processing to input the public key Y, the random number r to calculate the A1 = (Y) r mod p , the value Y x, A process of calculating A2 = (Y x ) r mod p by inputting a random number r, and concatenating the values A1 and A2 and the ciphertext E to obtain a one-way function value c =
h (A1‖A2‖E), random number r, t and value c are input to calculate s = r-ct modq, and value c, s is used as verification information in ciphertext E A recording medium comprising: a process to be attached; and a process for causing the computer to execute.
【請求項19】 暗号化する利用者端末が鍵回復情報を
暗号文Eに添付し、鍵回復機関装置が鍵回復要求に基づ
いて鍵回復情報から復号鍵を回復する非寄託型鍵回復シ
ステムにおける復号化する利用者端末として機能させる
コンピュータに、 暗号文E、鍵回復情報Yx ,Gx ,Gr 、検証用情報
c,sを受信する処理と、Y,Gr ,s,cからB1=
(Y)s (Gr c mod pを計算する処理と、 Yx ,Gx ,s,cからB2=(Yx s (Gx c mo
d pを計算する処理と、 これら計算結果B1,B2と暗号文Eから一方向性関数
値c′=h(B1‖B2‖E)を計算する処理と、 c′とcを比較し、一致すれば合格とする処理と、 xとGx とから(Gx 1/x mod pを計算して復号鍵S
を得る処理と、 暗号文Eを復号鍵Sで復号化してメッセージMを得る処
理と、 を実行させるためのプログラムを記録した記録媒体。
19. A non-deposited key recovery system in which a user terminal for encryption attaches key recovery information to ciphertext E, and a key recovery authority device recovers a decryption key from key recovery information based on a key recovery request. the <br/> computer to function as the user terminal to decrypt the ciphertext E, the key recovery information Y x, G x, the process of receiving the G r, verification information c, s, Y, G r , s , C to B1 =
(Y) s (G r ) c mod p, and B2 = (Y x ) s (G x ) c mo from Y x , G x , s, c
d ′ is calculated; b ′ is calculated from the calculated results B1 and B2; and ciphertext E is used to calculate a one-way function value c ′ = h (B1‖B2‖E). Then, the process is determined to be acceptable, and (G x ) 1 / x mod p is calculated from x and G x to obtain the decryption key
And a process for decrypting the ciphertext E with the decryption key S to obtain a message M. A recording medium recording a program for executing the process.
【請求項20】 暗号化する利用者端末が鍵回復情報を
暗号文Eに添付し、鍵回復機関装置が、鍵回復要求に基
づいて鍵回復情報から復号鍵を回復する非寄託型鍵回復
システムにおける復号化する利用者端末として機能させ
コンピュータに、 暗号文E、鍵回復情報Gx ,Gr 、検証用情報c,sを
受信する処理と、 Y,Gr ,s,cからB1=(Y)s (Gr c mod p
を計算する処理と、 Gx ,s,cと復号化する利用者端末の公開鍵Yx とか
らB2=(Yx s (Gx c mod pを計算する処理
と、 これら計算結果B1,B2と暗号文Eから一方向性関数
値c′=h(B1‖B2‖E)を計算する処理と、 c′とcを比較し、一致すれば合格とする処理と、 xとGx とから(Gx 1/x mod pを計算して復号鍵S
を得る処理と、 暗号文Eを復号鍵Sで復号化してメッセージMを得る処
理と、 を実行させるためのプログラムを記録した記録媒体。
20. A non-deposited key recovery system in which a user terminal for encryption attaches key recovery information to ciphertext E, and a key recovery authority recovers a decryption key from the key recovery information based on a key recovery request. Function as a user terminal to decrypt
The computer that the ciphertext E, the key recovery information G x, G r, verification information c, the process of receiving s, Y, G r, s , B1 = the c (Y) s (G r ) c mod p
A process of calculating, a process of calculating a G x, s, the public key Y x from the B2 = (Y x) of the user terminal to decrypt and c s (G x) c mod p, these calculation results B1 , B2 and a ciphertext E to calculate a one-way function value c ′ = h (B1‖B2‖E); c ′ and c are compared; if they match, processing is accepted; x and G x And (G x ) 1 / x mod p to calculate the decryption key S
And a process for decrypting the ciphertext E with the decryption key S to obtain a message M. A recording medium recording a program for executing the process.
JP04142299A 1999-02-19 1999-02-19 Non-deposited key recovery method, device thereof, and program recording medium Expired - Fee Related JP3321428B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04142299A JP3321428B2 (en) 1999-02-19 1999-02-19 Non-deposited key recovery method, device thereof, and program recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04142299A JP3321428B2 (en) 1999-02-19 1999-02-19 Non-deposited key recovery method, device thereof, and program recording medium

Publications (2)

Publication Number Publication Date
JP2000244476A JP2000244476A (en) 2000-09-08
JP3321428B2 true JP3321428B2 (en) 2002-09-03

Family

ID=12607933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04142299A Expired - Fee Related JP3321428B2 (en) 1999-02-19 1999-02-19 Non-deposited key recovery method, device thereof, and program recording medium

Country Status (1)

Country Link
JP (1) JP3321428B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010008103A (en) * 2000-11-08 2001-02-05 안병엽 Method for constructing secure diffie-hellman type authenticated key agreement protocol with key confirmation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
企業向け鍵回復システムにおける一提案,電子情報通信学会技術研究報告,1997年 9月12日,Vol.97,No.252,p.55−62

Also Published As

Publication number Publication date
JP2000244476A (en) 2000-09-08

Similar Documents

Publication Publication Date Title
US10530585B2 (en) Digital signing by utilizing multiple distinct signing keys, distributed between two parties
CN108352015B (en) Secure multi-party loss-resistant storage and encryption key transfer for blockchain based systems in conjunction with wallet management systems
US5920630A (en) Method of public key cryptography that includes key escrow
JP4527358B2 (en) An authenticated individual cryptographic system that does not use key escrow
JP3560439B2 (en) Device for performing encryption key recovery
US5631961A (en) Device for and method of cryptography that allows third party access
US7574596B2 (en) Cryptographic method and apparatus
US20130191632A1 (en) System and method for securing private keys issued from distributed private key generator (d-pkg) nodes
US9705683B2 (en) Verifiable implicit certificates
US20010055388A1 (en) Server-assisted regeneration of a strong secret from a weak secret
US8589679B2 (en) Identifier-based signcryption with two trusted authorities
CN110113155B (en) High-efficiency certificateless public key encryption method
CN110120939B (en) Encryption method and system capable of repudiation authentication based on heterogeneous system
CN110113150B (en) Encryption method and system based on non-certificate environment and capable of repudiation authentication
US11870891B2 (en) Certificateless public key encryption using pairings
CN112104453B (en) Anti-quantum computation digital signature system and signature method based on digital certificate
GB2395872A (en) Implementing a policy controlling data output/printing using identifier based encryption
CN111355582A (en) Two-party combined signature and decryption method and system based on SM2 algorithm
CN110557367B (en) Secret key updating method and system for quantum computing secure communication resistance based on certificate cryptography
CN104734847A (en) Shared symmetric key data encrypting and decrypting method for public key cryptography application
US20050135610A1 (en) Identifier-based signcryption
EP2395698B1 (en) Implicit certificate generation in the case of weak pseudo-random number generators
US6507656B1 (en) Non malleable encryption apparatus and method
CN115361109A (en) Homomorphic encryption method supporting bidirectional proxy re-encryption
CN111737748B (en) Data decryption method and device applied to block chain and storage medium

Legal Events

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

Free format text: PAYMENT UNTIL: 20090621

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090621

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100621

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees