JPH06282226A - Elliptic curve-based public-key cipher system - Google Patents

Elliptic curve-based public-key cipher system

Info

Publication number
JPH06282226A
JPH06282226A JP5070436A JP7043693A JPH06282226A JP H06282226 A JPH06282226 A JP H06282226A JP 5070436 A JP5070436 A JP 5070436A JP 7043693 A JP7043693 A JP 7043693A JP H06282226 A JPH06282226 A JP H06282226A
Authority
JP
Japan
Prior art keywords
elliptic curve
decryption key
key
mod
decryption
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
JP5070436A
Other languages
Japanese (ja)
Inventor
Shusuke Kuwakado
秀典 桑門
Kenji Koyama
謙二 小山
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 JP5070436A priority Critical patent/JPH06282226A/en
Publication of JPH06282226A publication Critical patent/JPH06282226A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/724Finite field arithmetic
    • G06F7/725Finite field arithmetic over elliptic curves

Abstract

PURPOSE:To provide an elliptic curve-based public-key enciphering system having much enhanced safety by eliminating a limit to the prime factor of a parameter. CONSTITUTION:An arbitrary prime factor is first selected and an enciphering key corresponding to the factor is registered with a public file device 10. Then, a decoding key list corresponding to the factor and the enciphering key is generated and saved in a decoding device 40, together with the factor. Thereafter, an enciphering device 30 receives the public-key of a receiver (decoding device) from the public file device 10, and performs the multiplication of a plain text on an elliptic curve. Then, the device 30 sends the multiplied value as a cryptotext to the decoding device 40. This device 40 calculates an elliptic curve parameter from the cryptotext and selects such a decoding key as corresponding to the parameter, using the decoding key list. Then, the plain text is obtained from the multiplied value of the cryptotext on the elliptical curve, using a remainder theorem.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、楕円曲線に基づく公開
鍵暗号方式に係り、特に、ディジタル化された文書を伝
送する際の暗号方式における有限のモノイド上の楕円曲
線に基づく暗号方式及び暗号方式に用いられる鍵生成装
置、暗号化装置及び復号装置における楕円曲線に基づく
公開鍵暗号方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an elliptic curve-based public key cryptosystem, and more particularly to an elliptic curve-based cryptosystem and cipher on a finite monoid in the cryptosystem for transmitting a digitized document. The present invention relates to an elliptic curve-based public key cryptosystem in a key generation device, an encryption device, and a decryption device used in the system.

【0002】[0002]

【従来の技術】1990年に楕円曲線に基づく公開鍵暗
号(KMOV方式)が提案されている。このKMOV方
式はパラメータn(=pq)の素因数分解の困難さに安
全性の根拠をおいているものである。KMOV方式は、
パラメータの素数p,qがp≡q≡2(mod 3)また
は、p≡q≡3(mod 4)でなければならないという制
限がある。
2. Description of the Related Art Public key cryptography (KMOV method) based on an elliptic curve was proposed in 1990. This KMOV system is based on the security of the difficulty of factorizing the parameter n (= pq). The KMOV method is
There is a restriction that the prime numbers p and q of the parameters must be p≡q≡2 (mod 3) or p≡q≡3 (mod 4).

【0003】[0003]

【発明が解決しようとする課題】しかしながら、従来の
公開鍵暗号方式にはKMOV方式を用いた方式により暗
号方式を用いていたが、法のnの素因数に制限があるた
め、この制限内で暗号方式を適用すると鍵の安全性に問
題がある。
However, the conventional public-key cryptosystem uses the KMOV system as the cryptosystem, but since the prime factor of n of the modulus is limited, the encryption is performed within this limit. When the method is applied, there is a problem with the security of the key.

【0004】本発明は、上記の点に鑑みなされたもの
で、パラメータの素数の制限をなくすことにより安全性
を一層高めた楕円曲線に基づく公開暗号方式を提供する
ことを目的とする。
The present invention has been made in view of the above points, and an object thereof is to provide an elliptic curve-based public encryption system in which the security is further improved by eliminating the limitation of the prime number of the parameter.

【0005】[0005]

【課題を解決するための手段】図1は本発明の原理構成
図を示す。本発明は、受信者により5以上の任意の素数
p,qを選択し、素数p,qに対応する公開鍵e,nを
登録する公開ファイル装置10と、素数p,qに対して
楕円曲線Ep (0,b):y2 ≡x3 +bp (mod
p),Eq (0,b):y2 ≡x3 +bq (mod q)の
位数bp ,bq とパラメータbとの関係を示す識別子と
位数の対応を示す位数表を生成する位数表生成手段21
と、素数p,qと位数表生成手段21により生成された
位数表から復号鍵を計算し、復号鍵と位数表の識別子と
の対応を示す復号鍵表を生成する復号鍵表生成手段24
とを含む鍵生成装置20と、平文Mと受信者の公開鍵
e,nが入力され、平文Mを楕円曲線En (0,
M ):y2 ≡x3 +bM (mod n)上で公開鍵eに基
づいて乗算する楕円曲線乗算手段31を含み、暗号文を
出力する暗号化装置30と、該鍵生成装置20から受け
取った素数p,qと復号鍵表を記憶する記憶手段41
と、暗号化装置30からの暗号文Cと素数p,qから楕
円曲線Ep (0,bp):y2 ≡x3 +bp (mod
p),Eq (0,bq ):y2 ≡x3 +bq (modq)
のパラメータbp ,bq を計算する係数計算手段42
と、記憶手段41に記憶されている復号鍵表より楕円曲
線のパラメータに対応する復号鍵dp ,dq を検索する
復号鍵検索手段と、暗号化装置30から入力された暗号
文Cを楕円曲線Ep (0,bp ),Eq (0,bq )上
で復号鍵dp ,dq に基づいて乗算する楕円曲線乗算手
段45と、楕円曲線乗算手段45により求められた値M
p ,Mqと、素数p,qから平文Mを中国剰余定理に基
づいて計算し出力する中国剰余定理計算手段46とを含
む復号装置を有する。
FIG. 1 is a block diagram showing the principle of the present invention. According to the present invention, a public file device 10 that selects arbitrary prime numbers p and q of 5 or more by a receiver and registers public keys e and n corresponding to the prime numbers p and q, and an elliptic curve for prime numbers p and q E p (0, b): y 2 ≡x 3 + b p (mod
p), E q (0, b): y 2 ≡x 3 + b q (mod q) An order showing the correspondence between the identifiers and the order showing the relationship between the orders b p and b q of the parameter b and the order b. Order table generating means 21 for generating
And a decryption key from the order table generated by the order table generating means 21 and prime numbers p and q, and a decryption key table generation for generating a decryption key table showing the correspondence between the decryption key and the identifier of the order table. Means 24
A key generation device 20 including a plaintext M and a public key e, n of the recipient are input, and the plaintext M is elliptic curve E n (0,
b M ): y 2 ≡x 3 + b M (mod n) includes an elliptic curve multiplication means 31 that multiplies based on the public key e, and outputs the ciphertext from the encryption device 30 and the key generation device 20. Storage means 41 for storing the received prime numbers p and q and the decryption key table
And the ciphertext C from the encryption device 30 and the prime numbers p and q, the elliptic curve E p (0, b p ): y 2 ≡x 3 + b p (mod
p), E q (0, b q ): y 2 ≡x 3 + b q (modq)
Coefficient calculating means 42 for calculating the parameters b p and b q of
And a decryption key search unit that retrieves the decryption keys d p and d q corresponding to the parameters of the elliptic curve from the decryption key table stored in the storage unit 41, and the ciphertext C input from the encryption device 30 to the ellipse. Elliptic curve multiplication means 45 for multiplying on the curves E p (0, b p ) and E q (0, b q ) based on the decryption keys d p and d q , and the value M obtained by the elliptic curve multiplication means 45.
It has a decoding device including p 1 and M q, and Chinese remainder theorem calculation means 46 that calculates and outputs plaintext M from prime numbers p and q based on the Chinese remainder theorem.

【0006】[0006]

【作用】本発明は、5以上の任意の素数p,qを選び、
p,qに対応した暗号化鍵e,nを公開ファイル装置1
0に登録し、p,q,eに対応する復号鍵表を生成し、
素数p,qと共に復号鍵表を復号装置に記憶しておく。
送信者(暗号化装置)は公開ファイル装置10より受信
者(復号装置)の公開鍵e,nを入手し、平文M=(m
x ,my )を楕円曲線En (0,bM ):y2 ≡x3
M (mod n)上でe倍した点Cを暗号文Cとして受信
者(復号装置)に送信する。受信者(復号装置)は暗号
文Cから楕円曲線Ep (0,bp ):y2 ≡x3 +bp
(mod p),Eq (0,bq ):y2 ≡x3 +bq (mo
d q)のパラメータbp ,bq を計算し、復号鍵表を用
いてパラメータbp ,bq を計算し、復号装置側で予め
記憶されている復号鍵表を用いてパラメータbp ,bq
に対応する復号鍵dp ,dqを選び、暗号文Cを楕円曲
線でdp ,dq 倍した点Mp ,Mq とから中国剰余定理
を用いて平文Mを得る。これにより、公開鍵暗号方式と
して、従来のKMOV方式に代わり有限モノイド上の楕
円曲線に基づいており、用いる素数に制限がないため、
素因数分解がKMOV方式よりも難解になり、安全性が
高くなる。
According to the present invention, an arbitrary prime number p, q of 5 or more is selected,
The public file device 1 stores the encryption keys e and n corresponding to p and q.
0, generate the decryption key table corresponding to p, q, and e,
The decryption key table is stored in the decryption device together with the prime numbers p and q.
The sender (encryption device) obtains the public key e, n of the receiver (decryption device) from the public file device 10, and the plaintext M = (m
x, m y) an elliptic curve E n (0, b M) : y 2 ≡x 3 +
The point C multiplied by e on b M (mod n) is transmitted to the receiver (decryption device) as a ciphertext C. From the ciphertext C, the receiver (decryption device) uses the elliptic curve E p (0, b p ): y 2 ≡x 3 + b p
(Mod p), E q (0, b q ): y 2 ≡x 3 + b q (mo
d parameter b p of q), to calculate the b q, parameter b p using the decryption key table, b q is calculated, and parameter b p using the decryption key table stored in advance on the decoding apparatus side, b q
The decryption keys d p and d q corresponding to are selected, and the plaintext M is obtained from the points M p and M q obtained by multiplying the ciphertext C by d p and d q with an elliptic curve using the Chinese Remainder Theorem. As a result, the public key cryptosystem is based on an elliptic curve on a finite monoid instead of the conventional KMOV system, and there is no limit to the prime numbers used.
The factorization becomes more difficult than the KMOV method, and the safety becomes higher.

【0007】[0007]

【実施例】以下、図面と共に本発明の実施例を説明す
る。
Embodiments of the present invention will be described below with reference to the drawings.

【0008】図2は本発明の一実施例のシステム構成を
示す。同図のシステムは、公開鍵e,nを登録しておく
公開ファイル装置10、公開鍵e,n及び、復号鍵
p ,dq を生成する鍵生成装置20、入力された平文
Mを公開ファイル装置10からの公開鍵e,nにより平
文Mを暗号化し、暗号文Cを作成し、出力する暗号化装
置30と、暗号化装置30から入力された暗号文Cを楕
円曲線を用いて復号し,平文Mを出力する復号装置40
から構成される。
FIG. 2 shows the system configuration of an embodiment of the present invention. The system shown in the figure discloses a public file device 10 in which public keys e and n are registered, a public key e and n, a key generation device 20 which generates decryption keys d p and d q, and an input plaintext M. The plaintext M is encrypted by the public keys e and n from the file device 10, the ciphertext C is created, and the ciphertext C input from the encryption device 30 and the ciphertext C input from the encryption device 30 are decrypted using the elliptic curve. Decoding device 40 that outputs plaintext M
Composed of.

【0009】以下、実施例を説明するにあたり、本発明
の公開鍵暗号方式における前提条件を説明する。本発明
における公開鍵暗号方式は、有限モノイド上の楕円曲線
に基づいており、用いる素数に制限のないものである。
Before describing the embodiments, the preconditions for the public key cryptosystem of the present invention will be described. The public key cryptosystem in the present invention is based on an elliptic curve on a finite monoid, and there is no limit to the prime numbers used.

【0010】まず、楕円曲線に関する記号の説明をす
る。素数pとパラメータa,bに対しし、 y2 ≡x3 +ax+b(mod p) を満たす点の集合に無限遠点Οを加えた集合を楕円曲線
n (a,b)と呼ぶ。本発明の実施例ではパラメータ
aが零(a=0)の楕円曲線En (0,b)を用いる。
First, the symbols relating to the elliptic curve will be described. A set obtained by adding a point at infinity Ο to a set of points satisfying y 2 ≡x 3 + ax + b (mod p) for a prime number p and parameters a and b is called an elliptic curve E n (a, b). In the embodiment of the present invention, an elliptic curve E n (0, b) whose parameter a is zero (a = 0) is used.

【0011】以下に本発明の一実施例の各装置について
説明する。 1.公開ファイル装置 公開ファイル装置10は、受信者(復号装置)により5
以上の任意の素数p,qが選択され、この素数に対応し
た暗号化鍵(公開鍵)e,nが登録される。
Each device of one embodiment of the present invention will be described below. 1. Public File Device The public file device 10 depends on the recipient (decryption device) 5
The above arbitrary prime numbers p and q are selected, and the encryption keys (public keys) e and n corresponding to these prime numbers are registered.

【0012】2.鍵生成装置 図3は本発明の一実施例の鍵生成装置の構成を示す。同
図に示す復号鍵生成装置24は、素数生成器241、位
数表生成装置242、243及び復号鍵表生成装置24
4から構成される。素数生成器241は素数p,qを生
成し、素数pを位数表生成装置242に、素数qを位数
表生成装置243に入力する。
2. Key Generation Device FIG. 3 shows the configuration of a key generation device according to an embodiment of the present invention. The decryption key generation device 24 shown in the figure includes a prime number generator 241, an order table generation devices 242 and 243, and a decryption key table generation device 24.
It is composed of 4. The prime number generator 241 generates prime numbers p and q, and inputs the prime number p to the order table generating device 242 and the prime number q to the order table generating device 243.

【0013】(1)位数表生成装置 ここで、各位数表生成装置242、243は、素数生成
器241から素数p,qにより位数表を作成する。位数
表生成装置242は、素数pに対して楕円曲線 Ep (0,b):y2 ≡x3 +b(mod p) の位数とパラメータbとの関係を示す識別子と位数の対
応を示す位数表を生成する。もし、素数pが p≡2(mod 3) であれば、位数表生成装置242が生成する位数表は、
(1) Order table generation device Here, each of the order table generation devices 242 and 243 creates a order table from the prime number generator 241 using prime numbers p and q. The order table generating device 242 associates the order with the identifier indicating the relationship between the order of the elliptic curve E p (0, b): y 2 ≡x 3 + b (mod p) and the parameter b with respect to the prime number p. To generate a table of orders. If the prime number p is p≡2 (mod 3), the order table generated by the order table generator 242 is

【0014】[0014]

【表1】 [Table 1]

【0015】となる。位数表生成装置242は、この位
数表を復号鍵表生成装置245に出力する。
[0015] The order table generator 242 outputs this order table to the decryption key table generator 245.

【0016】また、位数表生成装置243は素数qに対
して楕円曲線 Eq (0,b):y2 ≡x3 +b(mod q ) の位数とパラメータbとの関係を示す識別子と位数の対
応を示す位数表を生成する。もし、素数qが、 q≡2(mod 3) であれば、位数表生成装置243が生成する位数表は、
The order table generator 243 uses an identifier indicating the relationship between the order of the elliptic curve E q (0, b): y 2 ≡x 3 + b (mod q) and the parameter b with respect to the prime number q. A table of orders showing the correspondence of the orders is generated. If the prime number q is q≡2 (mod 3), the order table generated by the order table generator 243 is

【0017】[0017]

【表2】 [Table 2]

【0018】となり、位数表生成装置243はこの位数
表を復号鍵生成装置245に出力する。
Then, the order table generator 243 outputs this order table to the decryption key generator 245.

【0019】ここで、位数表生成装置242、243は p=ππ’かつ、π≡2(mod 3) を満たす二次体Z[ω]上の整数 π=αーβω を求める。この時、位数表生成装置242、243は以
下に示す位数表を生成する。
Here, the order table generators 242 and 243 obtain an integer π = α-βω on the quadratic field Z [ω] satisfying p = ππ ′ and π≡2 (mod 3). At this time, the order table generators 242 and 243 generate the following order tables.

【0020】[0020]

【表3】 [Table 3]

【0021】位数表生成装置242、243は、この位
数表を復号鍵生成装置245に出力し、動作を終了す
る。
The order table generators 242 and 243 output this order table to the decryption key generator 245, and the operation ends.

【0022】(2)復号鍵表生成装置 次に、復号鍵表生成装置245は、2つの素数p,qと
各素数の位数表から公開鍵e,nを計算し、復号鍵表を
生成し、公開鍵e,n及び復号鍵表を出力する。
(2) Decryption Key Table Generation Device Next, the decryption key table generation device 245 calculates the public keys e and n from the two prime numbers p and q and the order table of each prime number, and generates the decryption key table. Then, the public keys e and n and the decryption key table are output.

【0023】図4は本発明の一実施例の鍵生成装置の復
号鍵表生成装置を説明するための図である。復号鍵表生
成装置245は、素数p,qの入力により使用する復号
鍵生成装置1〜3を使い分ける。
FIG. 4 is a diagram for explaining the decryption key table generation device of the key generation device of one embodiment of the present invention. The decryption key table generator 245 uses the decryption key generators 1 to 3 that are used by inputting the prime numbers p and q.

【0024】まず、素数p,qが、 p≡q≡2(mod 3) であれば、復号鍵生成装置1に素数p,qとそれらの位
数表を入力し、復号鍵生成装置1の出力をそのまま、復
号鍵生成装置245の出力とし、処理を終了する。
First, when the prime numbers p and q are p≡q≡2 (mod 3), the prime numbers p and q and their order tables are input to the decryption key generating apparatus 1 to enable the decryption key generating apparatus 1 to operate. The output is used as it is as the output of the decryption key generation device 245, and the process is ended.

【0025】詳しくは、復号鍵生成装置1は、入力とし
て素数p,qと、当該素数p,qの位数表が与えられ
る。ここで、復号鍵生成装置1は、 gcd(e,p+1)=gcd(e,q+1)=1 となる公開鍵eをランダムに設定する。そして、以下の
式を満たす復号鍵dp0,dq0を計算する。 e・dp0≡1(mod p), e・dq0≡1(mod
q). これにより、復号鍵生成装置1が出力する復号鍵表は、
Specifically, the decryption key generating apparatus 1 is provided with prime numbers p and q and a rank table of the prime numbers p and q as inputs. Here, the decryption key generation device 1 randomly sets the public key e such that gcd (e, p + 1) = gcd (e, q + 1) = 1. Then, the decryption keys d p0 and d q0 satisfying the following equation are calculated. e ・ d p0 ≡1 (mod p), e ・ d q0 ≡1 (mod
q). As a result, the decryption key table output by the decryption key generation device 1 is

【0026】[0026]

【表4】 [Table 4]

【0027】とする。但し、これらの表において、左の
列の項は識別子を表し、右の列の項はその識別子に対応
する復号鍵を表す。これにより復号鍵生成装置1は暗号
化鍵e,nと復号鍵表を出力する。
[0027] However, in these tables, the item in the left column represents the identifier, and the item in the right column represents the decryption key corresponding to the identifier. As a result, the decryption key generation device 1 outputs the encryption keys e and n and the decryption key table.

【0028】次に、素数p,qが、 p≡1(mod 3),q≡2(mod 3) であれば、復号鍵表生成装置2に素数p,qとそれらの
位数表を入力し、復号鍵表生成装置2の出力をそのまま
復号鍵表生成装置245の出力とし、処理を終了する。
Next, if the prime numbers p and q are p≡1 (mod 3) and q≡2 (mod 3), the prime numbers p and q and their order tables are input to the decryption key table generator 2. Then, the output of the decryption key table generation device 2 is directly used as the output of the decryption key table generation device 245, and the process is ended.

【0029】詳しくは、復号鍵生成装置2は、入力とし
て素数p,qと、当該素数p,qの位数表が与えられ
る。ここで、復号鍵生成装置1は、 gcd(e,Np0)=gcd(e,Np0) =gcd(e,Np1) =gcd(e,Np2) =gcd(e,Np3) =(e,q+1) =1 となる公開鍵eをランダムに設定する。そして、以下の
式を満たす復号鍵dpi(i=0〜3)、dq0を計算す
る。
Specifically, the decryption key generating device 2 is provided with prime numbers p and q and a rank table of the prime numbers p and q as inputs. Here, the decryption key generation device 1 is: gcd (e, N p0 ) = gcd (e, N p0 ) = gcd (e, N p1 ) = gcd (e, N p2 ) = gcd (e, N p3 ) = A public key e for which (e, q + 1) = 1 is randomly set. Then, the decryption keys d pi (i = 0 to 3) and d q0 satisfying the following expressions are calculated.

【0030】e・dpi≡1(mod p)(i=0〜3), e・dq0≡1(mod q). これにより、復号鍵生成装置2が出力する復号鍵表は、E · d pi ≡1 (mod p) (i = 0 to 3), e · d q0 ≡1 (mod q). As a result, the decryption key table output by the decryption key generation device 2 is

【0031】[0031]

【表5】 [Table 5]

【0032】とする。但し、これらの表において、左の
列の項は識別子を表し、右の列の項はその識別子に対応
する復号鍵を表す。これにより復号鍵生成装置2は暗号
化鍵e,nと復号鍵表を出力する。
It is assumed that However, in these tables, the item in the left column represents the identifier, and the item in the right column represents the decryption key corresponding to the identifier. As a result, the decryption key generation device 2 outputs the encryption keys e and n and the decryption key table.

【0033】さらに、素数p,qが p≡q≡1(mod 3) ならば、復号鍵表生成装置3に素数p,qとそれらの位
数表を入力し、復号鍵表生成装置245の出力とし、処
理を終了する。
Further, if the prime numbers p and q are p≡q≡1 (mod 3), the prime numbers p and q and their order tables are input to the decryption key table generating device 3, and the decryption key table generating device 245 outputs the prime numbers p and q. Outputs and ends the process.

【0034】詳しくは、復号鍵生成装置3は、入力とし
て素数p,qと、当該素数p,qの位数表が与えられ
る。ここで、復号鍵生成装置1は、 gcd(e,Npi)=gcd(e,Npi) =1(i=0〜3) となる公開鍵eをランダムに設定する。そして、以下の
式を満たす復号鍵dpi、dqiを計算する。
More specifically, the decryption key generation device 3 is provided with prime numbers p and q and order tables of the prime numbers p and q as inputs. Here, the decryption key generation device 1 randomly sets the public key e such that gcd (e, N pi ) = gcd (e, N pi ) = 1 (i = 0 to 3). Then, the decryption keys d pi and d qi that satisfy the following equation are calculated.

【0035】e・dpi≡1(mod p) e・dqi≡1(mod q)(i=0〜3). これにより、復号鍵生成装置3が出力する復号鍵表は、E · d pi ≡1 (mod p) e · d qi ≡1 (mod q) (i = 0 to 3). As a result, the decryption key table output by the decryption key generating device 3 is

【0036】[0036]

【表6】 [Table 6]

【0037】とする。但し、これらの表において、左の
列の項は識別子を表し、右の列の項はその識別子に対応
する復号鍵を表す。
It is assumed that However, in these tables, the item in the left column represents the identifier, and the item in the right column represents the decryption key corresponding to the identifier.

【0038】これにより復号鍵生成装置3は暗号化鍵
e,nと復号鍵表を公開ファイル装置10または、復号
装置40に出力する。
As a result, the decryption key generation device 3 outputs the encryption keys e and n and the decryption key table to the public file device 10 or the decryption device 40.

【0039】(3)暗号化装置 図5は本発明の一実施例の暗号化装置の構成を示す。暗
号化装置30は楕円曲線En (0,bM )上において入
力された平文Mに公開鍵e分を乗算する楕円曲線乗算器
31を有する。
(3) Encryption Device FIG. 5 shows the configuration of an encryption device according to an embodiment of the present invention. The encryption device 30 has an elliptic curve multiplier 31 that multiplies the plaintext M input on the elliptic curve E n (0, b M ) by the public key e.

【0040】暗号化装置30は、入力として、公開鍵
e,nと平文M=(mx ,my )が与えられる。但し、 0<mx ,my <n and gcd(mx ,n)=g
cd(my ,n)=1 とする。
The encryption device 30 includes, as an input, a public key e, n and the plaintext M = (m x, m y ) is given. However, 0 <m x, m y <n and gcd (m x, n) = g
cd (m y, n) = 1 to.

【0041】暗号化装置30は、楕円曲線En (0,b
M ):y2 ≡x3 +bM (mod n)上で、 e・m over En (0,bM ) を計算し、その計算結果を暗号文Cとする。そして、暗
号文Cを復号装置40に出力して処理を終了する。
The encryption device 30 uses the elliptic curve E.n(0, b
M): Y2≡ x3+ BMOn (mod n)  e ・ m over En(0, bM) Is calculated, and the calculation result is ciphertext C. And dark
The message C is output to the decoding device 40, and the process ends.

【0042】(4)復号装置 図6は本発明の一実施例の復号装置の構成を示す。同図
において、復号装置40は、素数p記憶部410、素数
q記憶部411、第1、第2の係数計算器420、42
1、第1、第2の識別子計算器430、431、復号鍵
検索器440、441、第1、第2の楕円曲線乗算器4
50、451、pの復号鍵表記憶部470、qの復号鍵
記憶部471及び中国剰余定理計算器460より構成さ
れる。
(4) Decoding Device FIG. 6 shows the configuration of a decoding device according to an embodiment of the present invention. In the figure, the decoding device 40 includes a prime number p storage unit 410, a prime number q storage unit 411, first and second coefficient calculators 420 and 42.
First, first and second identifier calculators 430 and 431, decryption key searchers 440 and 441, first and second elliptic curve multipliers 4
50, 451, and p decryption key table storage unit 470, q decryption key storage unit 471, and Chinese remainder theorem calculator 460.

【0043】復号装置40の素数p記憶部410は素数
pを記憶しておき、素数q記憶部411は素数qを記憶
しておく。
The prime p storage unit 410 of the decoding device 40 stores the prime p, and the prime q storage unit 411 stores the prime q.

【0044】第1の係数計算器420は、暗号化装置3
0から入力された暗号文Cと素数p記憶部410に記憶
されている素数pから楕円曲線 Ep (0,bp ):y2 ≡x3 +bp (mod p) のパラメータbp を計算する。
The first coefficient calculator 420 is used by the encryption device 3
Calculate the parameter b p of the elliptic curve E p (0, b p ): y 2 ≡x 3 + b p (mod p) from the ciphertext C input from 0 and the prime number p stored in the prime number p storage unit 410 To do.

【0045】第2の係数計算器421は、暗号化装置3
0から入力された暗号文Cと素数q記憶部411に記憶
されている素数qから楕円曲線 Eq (0,bq ):y2 ≡x3 +bq (mod q) のパラメータbq を計算する。
The second coefficient calculator 421 is used by the encryption device 3
The parameter b q of the elliptic curve E q (0, b q ): y 2 ≡x 3 + b q (mod q) is calculated from the ciphertext C input from 0 and the prime number q stored in the prime number q storage unit 411. To do.

【0046】第1の識別子計算器430は、楕円曲線の
パラメータbp と素数pから識別子τp を計算する。
The first identifier calculator 430 calculates the identifier τ p from the elliptic curve parameter b p and the prime number p.

【0047】第2の識別子計算器431は、楕円曲線の
パラメータbq と素数qから識別子τq を計算する。
The second identifier calculator 431 calculates an identifier τ q from the elliptic curve parameter b q and the prime number q.

【0048】pの復号鍵表記憶部470は、素数pの復
号鍵表を記憶し、qの復号鍵表記憶部471は素数qの
復号鍵表を記憶する。
The p decryption key table storage unit 470 stores the decryption key table of the prime number p, and the decryption key table storage unit 471 of q stores the decryption key table of the prime number q.

【0049】復号鍵検索器440はpの復号鍵表記憶部
470からの復号鍵表と第1の識別子計算器430から
識別子τp が入力されると、当該識別子τp により復号
鍵表を検索し、復号鍵dp を取得する。
When the decryption key table from the decryption key table storage unit 470 of p and the identifier τ p from the first identifier calculator 430 are input, the decryption key searcher 440 retrieves the decryption key table by the identifier τ p . Then, the decryption key d p is acquired.

【0050】復号鍵検索器441は識別子qが入力され
ると、当該識別子τq により復号鍵表を検索し、復号鍵
q を取得する。
[0050] When the decryption key retriever 441 identifier q is input, searches the decryption key table by the identifier tau q, acquires the decryption key d q.

【0051】第1の楕円曲線乗算部450は、暗号化装
置30から入力された暗号文Cを楕円曲線Ep (0,b
p )上でdp 倍して、乗算された結果Mp を出力する。
The first elliptic curve multiplication unit 450 calculates the ciphertext C input from the encryption device 30 into an elliptic curve E p (0, b).
and d p times over p), and outputs the multiplied result M p.

【0052】第2の楕円曲線乗算部451は、暗号化装
置30から入力された暗号文Cを楕円曲線Eq (0,b
q )上でdq 倍して、乗算された結果Mq を出力する。
The second elliptic curve multiplication unit 451 converts the ciphertext C input from the encryption device 30 into an elliptic curve E q (0, b
q ) times d q above and outputs the multiplied result M q .

【0053】中国剰余定理計算器460は素数p記憶部
410からの素数pと素数q記憶部411からの素数q
と第1の楕円曲線乗算器450、第2の楕円曲線乗算器
451からMp ,Mq が入力されると、中国剰余定理に
より、平文Mを出力する。
The Chinese remainder theorem calculator 460 uses the prime number p from the prime number p storage unit 410 and the prime number q from the prime number q storage unit 411.
When M p and M q are input from the first elliptic curve multiplier 450 and the second elliptic curve multiplier 451, the plaintext M is output according to the Chinese Remainder Theorem.

【0054】詳しくは、復号装置40は、入力として、
暗号化装置30から暗号文C=(c x ,cy )が与えら
れ、第1及び第2の係数計算器420、421では、パ
ラメータ bp =cy 2 −cx 3mod p, bq =cy 2 −cx 3 mod q を計算する。
Specifically, the decoding device 40 receives as an input,
Ciphertext C = (c x, Cy) Given
Then, in the first and second coefficient calculators 420 and 421,
Parameter bp= Cy 2-Cx 3mod p, bq= Cy 2-Cx 3Compute mod q.

【0055】第1及び第2の識別子計算器430、43
1は、各パラメータbp 、bq と、各素数記憶部41
0、411から得られた素数によりもし、p≡q≡2
(mod 3)であれば、素数pに対する識別子を「*」、
素数qに対する識別子を「*」とする。また、p≡1
(mod 3),q≡2(mod 3)ならば、素数pに対する
識別子τp を、
First and second identifier calculators 430, 43
1 is each parameter b p , b q and each prime number storage unit 41.
Depending on the prime numbers obtained from 0 and 411, p≡q≡2
If (mod 3), the identifier for the prime number p is "*",
The identifier for the prime number q is “*”. Also, p ≡ 1
If (mod 3), q≡2 (mod 3), the identifier τ p for the prime p is

【0056】[0056]

【数1】 の計算結果とし、素数qに対する識別子τq を、[Equation 1] And the identifier τ q for the prime number q,

【0057】[0057]

【数2】 [Equation 2]

【0058】とし、各々の計算結果を素数pに対する識
別子τp 、素数qに対する識別子τqとする。復号鍵検
索器440、441は、p,qの復号鍵表記録部47
0、471から復号鍵表を識別子τp ,τq により検索
し、復号鍵dp ,dq を得る。次に、第 1の楕円曲線乗
算器450、451は、楕円曲線 Ep (0,bp ):y2 ≡x3 +bp (mod p) Eq (0,bq ):y2 ≡x3 +bq (mod q) 上において、 dp ・C over Ep (0,bp ), dq ・C over Eq (0,bq ) を計算し、各々の計算結果をMp ,Mq とする。これに
より、中国剰余定理計算器460は中国剰余定理を用い
てMp ,Mq より平文Mを計算し、平文Mとして出力す
る。
[0058] and then, to each of the calculation result identifier tau p for prime p, the identifier tau q for prime q. The decryption key searchers 440 and 441 are connected to the decryption key table recording unit 47 for p and q.
Identifier tau p decryption key table from 0,471 searches by tau q, to obtain the decryption key d p, d q. Next, the first elliptic curve multipliers 450 and 451 use the elliptic curves E p (0, b p ): y 2 ≡x 3 + b p (mod p) E q (0, b q ): y 2 ≡x. On 3 + b q (mod q), d p · C over E p (0, b p ) and d q · C over E q (0, b q ) are calculated, and the respective calculation results are M p and M. Let q . Accordingly, the Chinese remainder theorem calculator 460 calculates the plaintext M from M p and M q using the Chinese remainder theorem, and outputs it as the plaintext M.

【0059】なお、上記実施例の中の説明で用いられて
いる素数p,qの桁数は、その積n(=pq)の素因数
分解の困難さを考慮して決められる。
The number of digits of the prime numbers p and q used in the description of the above embodiment is determined in consideration of the difficulty of factoring the product n (= pq).

【0060】[0060]

【発明の効果】上述のように本発明によれば、法nの素
因数p,qに制限がないため、その素因数分解がより難
しくり、素数p,qの大きさを同じにした場合に、KM
OV方式に比べてより安全である。これにより、安全な
公開鍵暗号方式を提供することができる。
As described above, according to the present invention, since the prime factors p and q of the modulus n are not limited, it is more difficult to factor them, and when the prime numbers p and q have the same size, KM
It is safer than the OV method. This makes it possible to provide a secure public key cryptosystem.

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

【図1】本発明の原理構成図である。FIG. 1 is a principle configuration diagram of the present invention.

【図2】本発明の一実施例のシステム構成図である。FIG. 2 is a system configuration diagram of an embodiment of the present invention.

【図3】本発明の一実施例の鍵生成装置の構成図であ
る。
FIG. 3 is a configuration diagram of a key generation device according to an embodiment of the present invention.

【図4】本発明の一実施例の復号鍵表生成装置を説明す
るための図である。
FIG. 4 is a diagram for explaining a decryption key table generation device according to an embodiment of the present invention.

【図5】本発明の一実施例の暗号化装置の構成図であ
る。
FIG. 5 is a configuration diagram of an encryption device according to an embodiment of the present invention.

【図6】本発明の一実施例の復号装置の構成図である。FIG. 6 is a configuration diagram of a decoding device according to an embodiment of the present invention.

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

1,2,3 復号鍵生成装置 10 公開ファイル装置 20 鍵生成装置 21 位数表生成手段 24 復号鍵生成手段 30 暗号化装置 31,45 楕円曲線乗算手段 40 復号装置 41 記憶手段 42 係数計算手段 43 識別子計算手段 44 復号鍵検索手段 46 中国剰余定理計算手段 241 素数生成器 242,243 位数表生成装置 245 復号鍵表生成装置 410 素数p記憶部 411 素数q記憶部 420 第1の係数計算器 421 第2の係数計算器 430 第1の識別子計算器 431 第2の識別子計算器 440,441 復号鍵検索器 450 第1の楕円曲線乗算器 451 第2の楕円曲線乗算器 460 中国剰余定理計算器 1, 2 and 3 Decryption key generation device 10 Public file device 20 Key generation device 21 Number table generation means 24 Decryption key generation means 30 Encryption device 31, 45 Elliptic curve multiplication means 40 Decryption device 41 Storage means 42 Coefficient calculation means 43 Identifier calculation means 44 Decryption key search means 46 Chinese remainder theorem calculation means 241 Prime number generator 242, 243 Order table generation device 245 Decryption key table generation device 410 Prime number p storage unit 411 Prime number q storage unit 420 First coefficient calculator 421 Second coefficient calculator 430 First identifier calculator 431 Second identifier calculator 440,441 Decryption key searcher 450 First elliptic curve multiplier 451 Second elliptic curve multiplier 460 Chinese remainder theorem calculator

【手続補正書】[Procedure amendment]

【提出日】平成5年5月7日[Submission date] May 7, 1993

【手続補正1】[Procedure Amendment 1]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】特許請求の範囲[Name of item to be amended] Claims

【補正方法】変更[Correction method] Change

【補正内容】[Correction content]

【特許請求の範囲】[Claims]

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 受信者により5以上の任意の素数を選択
し、該素数に対応する公開鍵を登録する公開ファイル装
置と、 素数に対して楕円曲線y2 ≡x3 +ax(mod n)の位
数とパラメータとの関係を示す識別子と該位数の対応を
示す位数表を生成する位数表生成手段と、該素数と該位
数表生成手段により生成された該位数表から復号鍵を計
算し、該復号鍵と該位数表の識別子との対応を示す復号
鍵表を生成する復号鍵表生成手段とを含む復号表生成装
置とを有する鍵生成装置と、 平文と公開鍵が入力され、該平文を楕円曲線y2 ≡x3
+ax(mod n)上で該公開鍵に基づいて乗算する楕円
曲線乗算手段を含み、暗号文を出力する暗号化装置と、 該素数と復号鍵表を予め記憶しておく記憶手段と、該暗
号化装置から取得した該暗号文と該素数から該楕円曲線
2 ≡x3 +ax(mod n)のパラメータを計算する係
数計算手段と、該記憶手段に記憶されている該復号鍵表
より該楕円曲線y2 ≡x3 +ax(mod n)のパラメー
タに対応する復号鍵を検索する復号鍵検索手段と、該暗
号化装置から入力された該暗号文を該楕円曲線y2 ≡x
3 +ax(mod n)上で該復号鍵に基づいて乗算する楕
円曲線乗算手段と、該楕円曲線乗算手段により求められ
た値と該素数から平文を中国剰余定理に基づいて計算
し、出力する中国剰余定理計算手段とを含む復号装とを
有することを特徴とする楕円曲線に基づく公開鍵暗号方
式。
1. A public file device for selecting an arbitrary prime number of 5 or more by a receiver and registering a public key corresponding to the prime number, and an elliptic curve y 2 ≡x 3 + ax (mod n) for the prime number. An identifier showing the relationship between the order and the parameter and a order table generating means for generating a order table showing the correspondence of the order, and decoding from the prime table and the order table generated by the order table generating means. A key generation device having a decryption table generation device including a decryption key table generation means for calculating a key and generating a decryption key table showing the correspondence between the decryption key and the identifier of the order table, a plaintext and a public key Is input and the plaintext is converted into an elliptic curve y 2 ≡x 3
An encryption device that includes an elliptic curve multiplication unit that multiplies on + ax (mod n) based on the public key, a storage unit that stores the prime number and the decryption key table in advance, and the encryption unit. Coefficient calculation means for calculating the parameters of the elliptic curve y 2 ≡x 3 + ax (mod n) from the ciphertext and the prime number acquired from the encryption device, and the ellipse from the decryption key table stored in the storage means. Decryption key search means for searching a decryption key corresponding to the parameter of the curve y 2 ≡x 3 + ax (mod n), and the ciphertext input from the encryption device to the elliptic curve y 2 ≡x
3 + ax (mod n) Elliptic curve multiplication means for multiplying based on the decryption key, plaintext is calculated from the value obtained by the elliptic curve multiplication means and the prime number based on the Chinese Remainder Theorem, and output A public key cryptosystem based on an elliptic curve, comprising: a decryption device including a remainder theorem calculation means.
JP5070436A 1993-03-29 1993-03-29 Elliptic curve-based public-key cipher system Pending JPH06282226A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5070436A JPH06282226A (en) 1993-03-29 1993-03-29 Elliptic curve-based public-key cipher system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5070436A JPH06282226A (en) 1993-03-29 1993-03-29 Elliptic curve-based public-key cipher system

Publications (1)

Publication Number Publication Date
JPH06282226A true JPH06282226A (en) 1994-10-07

Family

ID=13431439

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5070436A Pending JPH06282226A (en) 1993-03-29 1993-03-29 Elliptic curve-based public-key cipher system

Country Status (1)

Country Link
JP (1) JPH06282226A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004252433A (en) * 2003-01-28 2004-09-09 Matsushita Electric Ind Co Ltd Elliptic curve exponentiation apparatus and information security apparatus that can counter fault utilization attack
US7023990B1 (en) 1999-08-27 2006-04-04 Nec Corporation Secure parameter generating device and parameter generating method in algebraic curve crytography
CN110247771A (en) * 2019-06-21 2019-09-17 恒宝股份有限公司 A kind of management method of smart card and its parameter of curve key

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7023990B1 (en) 1999-08-27 2006-04-04 Nec Corporation Secure parameter generating device and parameter generating method in algebraic curve crytography
JP2004252433A (en) * 2003-01-28 2004-09-09 Matsushita Electric Ind Co Ltd Elliptic curve exponentiation apparatus and information security apparatus that can counter fault utilization attack
CN110247771A (en) * 2019-06-21 2019-09-17 恒宝股份有限公司 A kind of management method of smart card and its parameter of curve key
CN110247771B (en) * 2019-06-21 2022-10-25 恒宝股份有限公司 Intelligent card and management method of curve parameter key thereof

Similar Documents

Publication Publication Date Title
KR101861089B1 (en) Homomorphic Encryption Method of a Plurality of Messages Supporting Approximate Arithmetic of Complex Numbers
JP3862500B2 (en) High-speed elliptic curve encryption method and apparatus by direct embedding method
JP3292107B2 (en) Double vector adder, double vector doubler and double vector integer multiplier
JPH0720778A (en) Remainder calculating device, table generating device, and multiplication remainder calculating device
EP0596945A1 (en) Digital signature algorithm
Kota et al. Implementation of the RSA algorithm and its cryptanalysis
JP2003503864A (en) Method and apparatus for authenticating a first instance and a second instance
US6480606B1 (en) Elliptic curve encryption method and system
US6337909B1 (en) Generation of session keys for El Gamal-like protocols from low hamming weight integers
JP3616897B2 (en) Montgomery method multiplication remainder calculator
JPH06282226A (en) Elliptic curve-based public-key cipher system
JP3123820B2 (en) Operators in finite commutative groups
Jannah et al. A combination of Rivest Shamir Adlemann (RSA) and Affine Cipher method on improvement of the effectiveness and security of text message
JP2003507761A (en) Pseudo random number forming method and digital signature method
JP3278790B2 (en) Public key encryption method and public key encryption system
JP2000132095A (en) Encryption method, decryption method, authentication method, encryption apparatus, decryption apparatus, authentication apparatus, authentication text transmitter apparatus, encryption text receiver apparatus, cipher communication system and authentication system
EP0854603B1 (en) Generation of session parameters for el gamal-like protocols
KR100326226B1 (en) Method of Generating Matix Group Public Key
Rao et al. A novel modular multiplication algorithm and its application to RSA decryption
JP4462511B2 (en) Session parameter generation method for Elgamal-like protocol
Thu et al. Time performance analysis of RSA and Elgamal public-key cryptosystems
JP3615132B2 (en) Public key encryption and decryption method and system
JPH0798563A (en) Signature, authentication and secret communication system using elliptic curve
JPH06308882A (en) Open key enciphering system based on elliptic curve, its key generating device and ciphering device and its deciphering device
JPH0713484A (en) Key forming device, ciphering device and deciphering device based on elliptic curbe