JPH11231777A - Multiple digital signature method using elliptic curve, its apparatus and program recording medium - Google Patents
Multiple digital signature method using elliptic curve, its apparatus and program recording mediumInfo
- Publication number
- JPH11231777A JPH11231777A JP10032929A JP3292998A JPH11231777A JP H11231777 A JPH11231777 A JP H11231777A JP 10032929 A JP10032929 A JP 10032929A JP 3292998 A JP3292998 A JP 3292998A JP H11231777 A JPH11231777 A JP H11231777A
- Authority
- JP
- Japan
- Prior art keywords
- signature
- elements
- user
- elliptic curve
- variable
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods 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/72—Methods 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/724—Finite field arithmetic
- G06F7/725—Finite field arithmetic over elliptic curves
Abstract
(57)【要約】
【課題】 有限体上の離散対数問題を安全性の根拠とす
るよりも安全性を向上させることができる。
【解決手段】 有限体F(pn )(p:素数、n:自然
数)のF(pn )上で定義された楕円曲線E上の有理点
群E(F(pn ))中の要素数qの部分群Gq からラン
ダムに異なる要素G1 ,G2 を選択して公開し、各署名
装置11i (i=1,2,…,N)は秘密鍵s1i,s2i
としてZ/qZからランダムに異なる2つを選択し、ユ
ーザ公開鍵Vi =[−s1i]G1 +[−s2i]G2 をE
上の要素として求め、公開鍵V=Σi=1 N Vi を公開
し、Z/qZからr1i,r2iをランダムに選択して、ユ
ーザ要素Xi =[r1i]G1 +[r2i]G2 をE上の要
素として求め、X=Σi=1 N Xi を求め、e=h(X,
m)を計算し、y1i=r1i+e・s1i mod q、y2i=r
1i+e・s2i mod qを計算し、y1 =(Σi=1 N y1i)
mod q、y2 =(Σi=1 N y2i)mod qを求め、e,y
1 ,y2 をmに対する多重署名とする。X′=[y1 ]
G1 +[y2 ]G2 +[e]VをE上の要素として求
め、e=h(X′,m)が成立すれば、正当とする。
(57) [Summary] [PROBLEMS] It is possible to improve the security than using the discrete logarithm problem on a finite field as the basis of security. SOLUTION: An element in a rational point group E (F (p n )) on an elliptic curve E defined on F (p n ) of a finite field F (p n ) (p: prime number, n: natural number). published by selecting the different elements G 1, G 2 randomly from subgroup G q number q, the signing device 11 i (i = 1,2, ... , N) is a secret key s 1i, s 2i
Are randomly selected from Z / qZ, and the user public key V i = [− s 1i ] G 1 + [− s 2i ] G 2 is E
Calculated as an element of the above, and discloses the public key V = Σ i = 1 N V i, r 1i from Z / qZ, a r 2i selected randomly, the user element X i = [r 1i] G 1 + [ seeking r 2i] G 2 as an element of the E, obtains the X = Σ i = 1 N X i, e = h (X,
m), and y 1i = r 1i + es · s 1i mod q, y 2i = r
1i + es2s mod q is calculated, and y 1 = (Σ i = 1 N y 1i )
mod q, y 2 = (Σ i = 1 N y 2i ) mod q is obtained, and e, y
Let 1 and y 2 be multiple signatures for m. X '= [y 1 ]
G 1 + [y 2 ] G 2 + [e] V is obtained as an element on E, and if e = h (X ′, m) holds, it is valid.
Description
【0001】[0001]
【発明の属する技術分野】この発明は情報セキュリティ
技術としての、電子化された文書、決裁などの情報で、
1つの文書に多数の者が重複して電子的署名/捺印を与
える多重ディジタル署名方法、その装置およびプログラ
ム記録媒体に関するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to information such as digitized documents and approvals as information security technology.
The present invention relates to a multiplex digital signature method, an apparatus, and a program recording medium for giving a digital signature / seal to a plurality of persons in duplicate on one document.
【0002】[0002]
【従来の技術】従来技術として、提案されている岡本に
よる多重署名方式の説明をする。図5はこの署名方法の
手順を表すものである。多重署名に参加するユーザはN
人であり、番号付けされていてi番目のユーザはユーザ
iと書くシステム構築時にシステムパラメータp,q,
g1 ,g2 ,tを生成する。ここでp,qは素数、qは
p−1を割りきれる。g1 ,g2 はpを法とする既約剰
余類群(Z/pZ)* の要素から選んだものであり、い
ずれの指数もqであるとする。2. Description of the Related Art As a prior art, a multisignature scheme proposed by Okamoto will be described. FIG. 5 shows the procedure of this signature method. Users participating in multiple signatures are N
And the i-th user is numbered and the system parameter p, q,
Generate g 1 , g 2 , and t. Here, p and q are prime numbers, and q is divisible by p-1. g 1 and g 2 are selected from the elements of the irreducible coset group (Z / pZ) * modulo p, and both indices are q.
【0003】ユーザiは秘密鍵s1i,s2iとしてZ/q
Z(Z/qZは{0,1,…,q−1}の整数)よりラ
ンダムな異なる要素を選び、公開鍵vi =g1 -s1ig2
-s2imod pを計算してvを公開する。hをハッシュ関数
とし、その出力のビット長をtとする。多重署名の公開
鍵ではユーザ全ての公開鍵をmod pのもとで掛合せたv
=(Πi=1 N vi )mod pとする。[0003] User i uses Z / q as secret keys s 1i and s 2i.
Z (Z / qZ is an integer of {0, 1,..., Q−1}) is used to select a different element at random, and a public key vi = g 1 -s1 i g 2
-s2i mod Calculate p and publish v. Let h be a hash function and let the bit length of the output be t. In a multi-signature public key, the public key of all users is multiplied under mod p.
= (Π i = 1 N v i ) mod p.
【0004】事前計算として、ユーザiはランダムな数
r1i,r2i∈Z/qZを選び、x=g1 r1i g2 r2i mo
d pを計算する。1人のユーザがまとめて、あるいは各
ユーザが協力してx=(Πi=1 N x(i) )mod pを計算
して各ユーザに知らせる。署名生成として、ユーザiは
メッセージmに対する部分署名(e,y1i,y2u)を次
の計算により得る。e=h(x,m)∈Z/2t Z,y
1i=r1i+e・s 1imod q,y2i=r2i+e・s2i mod
qがまとめて、あるいは各ユーザが協力して多重署名
(e,y1 ,y2 )を次式により生成する。As a pre-calculation, the user i is a random number
r1i, R2i∈ Select Z / qZ, x = g1 r1igTwo r2imo
Calculate d p. One user collectively or
X = (Πi = 1 Nx (i)) Calculate mod p
To inform each user. As a signature generation, the user i
Partial signature for message m (e, y1i, Y2u) To
Is obtained by calculation. e = h (x, m) ∈Z / 2tZ, y
1i= R1i+ E · s 1imod q, y2i= R2i+ E · s2i mod
q collectively or multi-signature by each user in cooperation
(E, y1, YTwo) Is generated by the following equation.
【0005】y1 =(Σi=1 N y1i)mod q,y2i=
(Σi=1 N y2i)mod q 検証者へメッセージmとその署名(e,y1 ,y2 )を
送る。検証者はその署名の検証としてx′=g1 y1g2
y2ve mod pを計算して、更にh(x′,m)を計算
し、等式e=h(x′,m)を満たすならばその署名は
正当であるとする。Y 1 = ( 1 i = 1 N y 1i ) mod q, y 2i =
(Σ i = 1 N y 2i ) mod q The message m and its signature (e, y 1 , y 2 ) are sent to the verifier. The verifier verifies the signature as x ′ = g 1 y1 g 2
y2 v e mod p is calculated, and h (x ', m) is further calculated. If the equation e = h (x', m) is satisfied, the signature is determined to be valid.
【0006】この岡本による多重署名方式は安全性の証
明がされている方式である。(Tatsuaki Okamoto, “Pr
ovably Secure and Practical Identification Scheme
andCorresponding Signature Schemes ,Lecture Notes
in Computer Science ,Volume 740,Advances in Cry
ptology:CRYPT'92 ) 一方、近年公開鍵暗号の分野では、公開鍵暗号の安全性
をより高めることを主な目的として、有限体上の離散対
数問題を楕円曲線上の離散対数問題に置き換えて暗号ア
ルゴリズムを構築する試みがされてきている。The multi-signature scheme by Okamoto is a scheme whose security has been proven. (Tatsuaki Okamoto, “Pr
ovably Secure and Practical Identification Scheme
andCorresponding Signature Schemes, Lecture Notes
in Computer Science, Volume 740, Advances in Cry
ptology: CRYPT'92) On the other hand, in recent years, in the field of public key cryptography, the main purpose is to improve the security of public key cryptography by replacing the discrete logarithm problem on a finite field with a discrete logarithm problem on an elliptic curve. Attempts have been made to build cryptographic algorithms.
【0007】楕円曲線上の離散対数問題とは次のような
ものである。いま、pを素数とし、nを自然数として、
要素数pn である有限体F(pn )上で定義された楕円
曲線EのF(pn )有理点で構成される群をE(F(p
n ))として、E(F(pn))上の2項演算を記号+
で書き、E(F(pn ))の要素Gをx個加算したG+
G+…+G(x個)を[x]Gと書くとする。The discrete logarithm problem on an elliptic curve is as follows. Now, let p be a prime number and n be a natural number,
A group consisting of F (p n ) rational points of an elliptic curve E defined on a finite field F (p n ) having the number of elements p n is represented by E (F (p (p
n )), the binary operation on E (F (p n )) is represented by the symbol +
G + which is obtained by adding x elements G of E (F (p n ))
Let G + ... + G (x) be written as [x] G.
【0008】この時、楕円曲線上の離散対数問題とは、
楕円曲線上の群E(F(pn ))の元P,Qに対してP
=[n]Qを満たす整数nが存在する場合に、nを求め
る問題のことである。楕円曲線および楕円曲線上の群に
関しては、J.H.Silverman 著の“The Arithmetic of El
liptic Curves ”,GTM106 ,Springer-Verlag New
York 1986 参照。At this time, the discrete logarithm problem on the elliptic curve is
For elements P and Q of group E (F (p n )) on the elliptic curve, P
= [N] It is a problem to find n when there is an integer n that satisfies Q. For elliptic curves and groups on elliptic curves, see JHS Silverman's "The Arithmetic of El
liptic Curves ", GTM106, Springer-Verlag New
See York 1986.
【0009】岡本による多重署名方式は有限体上離散対
数問題を安全性の根拠とおいているが、岡本による多重
署名方式を楕円曲線上の離散対数問題を安全性の根拠と
する多重署名方式に置き換える提案はされていなかっ
た。Okamoto's multiple signature scheme uses the discrete logarithm problem over a finite field as the basis for security, but replaces Okamoto's multiple signature scheme with a multiple signature scheme that uses the discrete logarithm problem over an elliptic curve as the basis for security. No proposal was made.
【0010】[0010]
【発明が解決しようとする課題】コンピュータの計算能
力の向上や有限体上の離散対数問題の解法アルゴリズム
の発見により、安全性を向上させるためにより難しい問
題を根拠とする必要が生じてきている。この発明の目的
は上記従来方式の問題点に対して、より難しい問題であ
る楕円曲線上の群に対する離散対数問題を安全性の根拠
とする多重署名方法、その装置およびプログラム記録媒
体を提供することである。With the increase in computing power of computers and the discovery of algorithms for solving discrete logarithm problems on finite fields, it has become necessary to base more difficult problems on improving security. SUMMARY OF THE INVENTION An object of the present invention is to provide a multi-signature method, a device and a program recording medium which use the discrete logarithm problem for a group on an elliptic curve, which is a more difficult problem, as a basis for security, in order to solve the problems of the conventional method. It is.
【0011】[0011]
【課題を解決するための手段】上記目的を達成するため
に請求項2に係る多重署名方法においては、pを素数と
し、nを自然数として、要素数pn である有限体F(p
n )上で定義された楕円曲線EのF(pn )有理点で構
成される群をE(F(pn ))とし、E(F(pn ))
上の2項演算を記号+で書き、E(F(pn ))の要素
Gの逆元を記号−Gで書き、E(F(pn ))の要素G
をx個加算したG+G+…+G(x個)を〔x〕Gと書
き、負の整数xに対して、E(F(pn ))の要素Gの
逆元−Gを−x個加算した(−G)+(−G)+…+
(−G)(−x個)を〔x〕Gと書くとして、群E(F
(pn ))中の、要素数が素数qである部分群をGq と
して、その部分群Gq の異なる2つの要素G1 ,G2 を
選び、(pn ,E,q,G1 ,G2 )を公開パラメータ
として公開し、多重署名に参加するユーザがN人であり
番号付けされていて、i番目のユーザiはユーザiと
し、さらに各ユーザiについて楕円曲線上の群の要素X
i と整数を入力変数として、2t −1がq以下であるよ
うなtに対して、{0,1,…,2t −1}の要素を出
力とする一方向性関数をhとし、N個の署名装置と検証
装置が署名通信をする環境に各ユーザiの署名装置iは
秘密にランダムに2つの異なる要素s1i,s2iをZ/q
Zより選び、これらを用いて楕円曲線Eの群の要素Vi
=[−s1i]G1 +[−s2i]G2 を計算しする。In the multi-signature method according to claim 2 in order to achieve the above object, according to an aspect of, the prime p, where n is a natural number, the finite field is a number of elements p n F (p
n ) A group composed of F (p n ) rational points of the elliptic curve E defined above is defined as E (F (p n )), and E (F (p n ))
Write binary operation above the symbol +, write inverse element G of E (F (p n)) by the symbol -G, element G of E (F (p n))
G + G +... + G (x) obtained by adding x are written as [x] G, and for the negative integer x, the inverse element -G of the element G of E (F (p n )) is added by -x. (-G) + (-G) + ... +
Assuming that (−G) (−x) is written as [x] G, the group E (F
In (p n )), a subgroup in which the number of elements is a prime number q is G q , and two elements G 1 and G 2 having different sub groups G q are selected, and (p n , E, q, G 1) , G 2 ) as public parameters, N users participating in the multiple signature are numbered and numbered, the i-th user i is a user i, and for each user i, a group element on an elliptic curve X
With i and integers as input variables, for a t such that 2 t -1 is less than or equal to q, let h be a one-way function that outputs elements of {0, 1, ..., 2 t -1}, In an environment where the N signing devices and the verification device perform signature communication, the signing device i of each user i secretly and randomly writes two different elements s 1i and s 2i as Z / q.
Select from Z, elements V i of the group of the elliptic curve E using these
= [- s 1i] G 1 + [- s 2i] to calculate the G 2.
【0012】全ユーザiの要素Vi を楕円曲線E上で足
し合わせて公開鍵V=Σi=1 N Viとし、また各署名装
置iは秘密にランダムに2つの異なる要素r1i,r2iを
Z/qZより選び、これらを用いて楕円曲線Eの群の要
素Xi =[r1i]G1 +[r2i]G2 を計算してユーザ
変数要素とし、全ユーザiのユーザ変数要素Xi を足し
合わせて変数要素X=Σi=1 N Xi とし、一方向性関数
演算e=h(X,m)を実行し、これらs1i,s2i,
e,r1i,r2iを用いてy1i=r1i+e・s1i modq,
y2i=r2i+e・s2i modqをそれぞれ計算して、部分
署名(e,y1i,y2i)を得、1人のユーザがまとめ
て、あるいは各ユーザが協力してy1 =(Σ
i=1 N y1i)mod q,y2 =(Σi=1 N y 2i)mod qを
計算し、この多重署名(e,y1 ,y2 )を検証装置へ
送り、検証装置では署名(e,y1 ,y2 )と上記公開
パラメータG1 ,G2 を用いて、楕円曲線上の群の要素
X′=[y1 ]G1 +[y2 ]G2 +[e]Vを計算
し、X′とメッセージを数値化したmを入力として一方
向性関数hを計算し、検証式e=h(X′,m)を満た
すかどうかチェックし、式を満たすならば署名検証成功
とし、式を満たさないならば検証失敗とする。Element V for all users iiOn the elliptic curve E
The public key V = Vi = 1 NViAnd each signature
The position i is secretly and randomly two different elements r1i, R2iTo
Z / qZ, and use these to calculate the group of elliptic curves E
Element Xi= [R1i] G1+ [R2i] GTwoCalculate the user
User variable element X for all users iiAdd
In addition, the variable element X = Σi = 1 NXiAnd the one-way function
The operation e = h (X, m) is executed, and these s1i, S2i,
e, r1i, R2iUsing y1i= R1i+ E · s1i modq,
y2i= R2i+ E · s2i Calculate modq and calculate
Signature (e, y1i, Y2i), And one user puts together
Or each user cooperates1= (Σ
i = 1 Ny1i) Mod q, yTwo= (Σi = 1 Ny 2i) Mod q
Is calculated and this multiple signature (e, y1, YTwo) To the verification device
In the verification device, the signature (e, y1 , YTwo ) And published above
Parameter G1, GTwo, The elements of the group on the elliptic curve
X '= [y1 ] G1 + [YTwo ] GTwo Calculate + [e] V
And input X 'and m which is the numerical value of the message
Calculate the directional function h and satisfy the verification equation e = h (X ', m)
Check whether the signature is satisfied if the expression is satisfied
If the expression is not satisfied, the verification fails.
【0013】[0013]
【発明の実施の形態】実施例1 図1にこの発明署名方法の実施例1の処理手順を示し、
図2にその署名装置、図3に検証装置の各機能構成をそ
れぞれ示す。多重署名に参加するユーザはN人であり、
各ユーザは番号付けされ、i番目のユーザはユーザiと
書き、ユーザiが用いる署名装置を11i と記す。システムパラメータ生成 システム構築時に、以下の性質を満たす有限体F
(pn )とその有限体上に定義された楕円曲線Eを選
ぶ。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiment 1 FIG. 1 shows a processing procedure of Embodiment 1 of the signature method of the present invention.
FIG. 2 shows the functional configuration of the signature device, and FIG. 3 shows the functional configuration of the verification device. N users participate in the multiple signature,
Each user is numbered, i th user writes a user i, the signature device used by the user i referred to as 11 i. When constructing a system parameter generation system, a finite field F satisfying the following properties
Choose (p n ) and the elliptic curve E defined on its finite field.
【0014】・楕円曲線Eを上に定義される群の部分群
Gq の位数が大きな、例えば160ビット程度の素数で
ある。 ・上記部分群の2つの要素をランダムに選べる。ここで
上記部分群Gq の位数である素数をqとおく。次に上記
部分群Gq の異なる要素G1 ,G2 をランダムに選ぶ。The order of the subgroup Gq of the group defined above the elliptic curve E is large, for example, a prime number of about 160 bits. -Two elements of the above subgroup can be selected at random. Here, the prime number which is the order of the subgroup Gq is set to q. Next, different elements G 1 and G 2 of the subgroup Gq are randomly selected.
【0015】以上の(GF(pn ),E,q,G1 ,G
2 )を公開パラメータとして公開する。さらに楕円曲線
上の群の要素と整数を入力として{0,1,…,2t −
1}の要素を出力とする一方向性ハッシュ関数をhとす
る。これら公開パラメータGF(pn )又はpn ,E,
q,G1 ,G2 は一般には図5Aに示すようにセンタ装
置10で生成され、通信回線を介して各署名装置111
〜11N へ送られ、各受信部41(図2)で受信され、
メモリ12(図2)内に格納されてある。秘密鍵、公開鍵生成 ユーザiはその署名装置11i 内の秘密鍵生成部14に
より、秘密にランダムに2つの異なる要素s1i,s2iを
Z/qZ、つまり{0,1,…,q−1}の整数中より
選ぶ。例えば乱数生成器から乱数を発生させ、その乱数
がZ/qZの1要素であればそれを出力することによ
り、異なる2つのs1iとs2iを得る。これら要素s1i,
s2iと公開要素G1 ,G2 を用いて楕円曲線Eの群の要
素Vi が、公開鍵生成部15で次式により計算される。The above (GF (p n ), E, q, G 1 , G
2 ) Publish as public parameters. Further, the elements of the group on the elliptic curve and integers are input as {0, 1, ..., 2 t −
Let h be a one-way hash function that outputs 1} elements. These public parameters GF (p n ) or p n , E,
In general, q, G 1 , and G 2 are generated by the center device 10 as shown in FIG. 5A, and each signature device 11 1 is transmitted via a communication line.
To 11 N and received by each receiving unit 41 (FIG. 2).
It is stored in the memory 12 (FIG. 2). The secret key / public key generation user i secretly and randomly converts two different elements s 1i and s 2i into Z / qZ, that is, {0, 1,..., Q, by the secret key generation unit 14 in the signature device 11 i . Choose from integers of -1}. For example, a random number is generated from a random number generator, and if the random number is one element of Z / qZ, it is output to obtain two different s 1i and s 2i . These elements s 1i ,
elements V i of the group of s 2i and public elements G 1, G 2 elliptic curve E with a is calculated by the public key generation unit 15 by the following equation.
【0016】 Vi =[−s1i]G1 +[−s2i]G2 (1) ユーザiはVi をユーザ公開鍵として公開し、(s1i,
s2i)を秘密鍵として、メモリ12内に秘密に保持して
おく。全てのユーザ公開鍵Vi を次式により楕円曲線の
群演算で足し合わせた公開鍵Vを生成する。[0016] V i = [- s 1i] G 1 + [- s 2i] G 2 (1) user i has issued a V i as a user public key, (s 1i,
s 2i ) is secretly held in the memory 12 as a secret key. All user public key V i to generate a public key V corresponding to the sum in group operation of the elliptic curve by the following equation.
【0017】 V=Σi=1 N V(i) (2) このユーザ公開鍵Vi の足し合わせは、図4Aに示すよ
うに各署名装置11iからそのユーザ公開鍵Vi をセン
タ装置10へ送り、センタ装置10で足し合せを行って
公開鍵Vを得る。あるいは図4Bに示すように、署名装
置11i のうちの1つ、例えば署名装置11N に他の署
名装置111 〜11N-1 のユーザ公開鍵V1 〜VN-1 を
送り、署名装置11N で全てのユーザ公開鍵Vi を足し
合わせて公開鍵Vを生成してもよい。または図4Cに示
すように、例えば予め番号付けられた順に、署名装置1
11 のユーザ公開鍵V1 を次の署名装置112 へ送り、
署名装置112 ではV1 と自己のユーザ公開鍵V2 とを
加算してV1 +V2 を次の署名装置113 へ送り、ここ
でV1 +V2 +V3 を作り、次の署名装置114 へ送
り、以下同様にして順次足し合わせて、最終の署名装置
11N で公開鍵Vを得るようにしてもよい。[0017] V = Σ i = 1 N V (i) (2) summing the user public key V i is the center device and the user public key V i from the signature device 11 i as shown in FIG. 4A 10 To the public key V. Alternatively, as shown in FIG. 4B, one of the signature device 11 i, for example, the signature apparatus 11 N to feed the user public key V 1 ~V N-1 other signing devices 11 1 to 11 N-1, the signature adding together all the user public key V i in apparatus 11 N may generate a public key V. Alternatively, as shown in FIG. 4C, for example, the signature device 1
1 sent 1 of the user public key V 1 to the next of the signature device 11 2,
The signature device 11 2, by adding the user's public key V 2 of V 1 and self sends a V 1 + V 2 to the next of the signature device 11 3, here to make a V 1 + V 2 + V 3 , following the signature device 11 feed to 4, added together sequentially in the same manner, at the final signing devices 11 N may be obtained the public key V.
【0018】この場合は図2中に破線で示すように、受
信部41で受信された1つ手前の署名装置11i-1 から
のV1 +…+Vi-1 が加算部42でVi と加算されて送
信部21より次の署名装置11i+1 へ送られる。事前計算 署名対象であるメッセージは数値化されて整数mで表
せ、メモリ12に格納されているとする。ここで署名者
であるユーザiの署名装置11i は補助変数生成部16
により、秘密にランダムに2つのことなる要素r1i,r
2iをZ/qZより選ぶ。この要素r1i,r2iの取得は秘
密鍵s1i,s2iの生成と同様に行えばよい。これら
r1i,r2iと公開要素G1 ,G2 が変数演算部17に入
力されて楕円曲線Eの群の要素Xi が次式により計算さ
れる。In this case, as shown by a broken line in FIG. 2, V 1 +... + V i-1 from the preceding signature device 11 i-1 received by the reception unit 41 is added to the V i by the addition unit 42. Is transmitted from the transmission unit 21 to the next signature device 11 i + 1 . It is assumed that the message to be subjected to the pre-computation signature is digitized and represented by an integer m and stored in the memory 12. Here, the signature device 11 i of the user i who is the signer is the auxiliary variable generation unit 16.
Gives two randomly different elements r 1i , r
2i is selected from Z / qZ. The elements r 1i and r 2i may be obtained in the same manner as the generation of the secret keys s 1i and s 2i . These r 1i , r 2i and the public elements G 1 , G 2 are input to the variable operation unit 17, and the element X i of the group of the elliptic curve E is calculated by the following equation.
【0019】 Xi =[r1i]G1 +[r2i]G2 (3) この計算結果であるユーザ変数要素Xi は、全ユーザに
ついて加算されて、楕円曲線Eの要素である変数要素X
が次式により求められる。 X=Σi=1 N Xi (4) このユーザ変数要素Xi の足し合せは、ユーザ公開鍵V
i の足し合せと同様に、図4A,B,Cの3通りの何れ
かで行う、得られた変数要素Xは各署名装置11 i に返
送され、そのメモリ12内に一担格納される。署名生成 変数要素Xとメッセージmがハッシュ関数演算部18に
入力されて次式が演算される。Xi= [R1i] G1 + [R2i] GTwo (3) User variable element X that is the result of this calculationiIs available to all users
Variable element X, which is an element of the elliptic curve E
Is obtained by the following equation. X = Σi = 1 NXi (4) This user variable element XiOf the user public key V
i4A, B, and C.
The obtained variable element X is stored in each signature device 11 iReturned to
And stored in the memory 12.Signature generation The variable element X and the message m are sent to the hash function operation unit 18
The following equation is calculated by inputting.
【0020】e=h(X,m) そのハッシュ関数演算結果eと、補助変数r1i,r2i、
秘密鍵s1i,s2iが剰余演算部19に入力されて次式が
演算される。 y1i=r1i+e・s1i mod q (5) y2i=r2i+e・s2i mod q (6) (e,y1i,y2i)をmに対する部分署名とする。E = h (X, m) The hash function operation result e and auxiliary variables r 1i , r 2i ,
The secret keys s 1i and s 2i are input to the remainder operation unit 19 and the following equation is calculated. y1i = r1i + esi2modq (5) y2i = r2i + es2imodq (6) Let (e, y1i , y2i ) be a partial signature for m.
【0021】これら部分署名の要素y1i,y2iは全ユー
ザについてqを法とする加算演算が行われ、 y1 =(Σi=1 N y1i)mod q (7) y2 =(Σi=1 N y2i)mod q (8) が得られる。(e,y1 ,y2 )をmに対する多重署名
として、mと共に検証装置31へ送出する。部分署名要
素y1i,y2iの加算は、図4A,B,Cについて述べた
Vi ,Xi についての加算の何れかで行われる。従って
mとe,y1 ,y 2 は図4Aの手法を用いた場合はセン
タ装置10から検証装置31へ送られ、図4Bの手法を
用いた場合は集められた1つの署名装置11N から検証
装置31へ送られ、図4Cの手法の場合は、最後の加算
署名装置11N から検証装置31へ送られることにな
る。署名検証 検証装置31(図3)においてはそのメモリ32にセン
タ装置10からの公開要素G1 ,G2 、また前述のよう
にして得られた公開鍵Vが格納されてあり、受信部33
でmとその多重署名(e,y1 ,y2 )が前述のように
受信されると、検証演算部34にG1 ,G2 ,V、と受
信された多重署名が入力され、次式により楕円曲線上の
群の要素X′が計算される。Elements y of these partial signatures1i, Y2iIs all you
An addition operation modulo q is performed on the1= (Σi = 1 Ny1i) Mod q (7) yTwo= (Σi = 1 Ny2i) Mod q (8) is obtained. (E, y1, YTwo) Is a multiple signature for m
Is sent to the verification device 31 together with m. Partial signature required
Element y1i, Y2iAddition described for FIGS. 4A, 4B and 4C.
Vi, XiIs performed by any of the additions of Therefore
m and e, y1, Y TwoIs the case when the method of FIG. 4A is used.
Sent to the verification device 31 from the
If used, one collected signature device 11NVerified from
4C, and in the case of the method of FIG.
Signature device 11NWill be sent to the verification device 31
You.Signature verification In the verification device 31 (FIG. 3),
Public element G from the data device 101 , GTwo And also as mentioned above
The public key V obtained is stored in the receiving unit 33
And m and its multiple signature (e, y1 , YTwo ) As described above
When received, G1 , GTwo , V, and receiving
The trusted multi-signature is input and the following equation
The group element X 'is calculated.
【0022】 X′=[y1 ]G1 +[y2 ]G2 +[e]V (9) この計算結果X′とメッセージmがハッシュ関数演算部
35内に入力されて、次式が演算される。 e′=h(X′,m) この演算結果e′と受信されたeとが比較部36で比較
され、e′=eであるかが調べられる。X ′ = [y 1 ] G 1 + [y 2 ] G 2 + [e] V (9) The calculation result X ′ and the message m are input into the hash function operation unit 35, and the following equation is obtained. Is calculated. e ′ = h (X ′, m) This operation result e ′ is compared with the received e by the comparing section 36, and it is checked whether e ′ = e.
【0023】もし多重署名が正常に作られたものならば
式(9)に式(1)〜式(8)を代入すると次のように
なる。 X′=[y1 ]G1 +[y2 ]G2 +[e]V =[Σi=1 N y1i]G1+[Σi=1 N y2i]G2+[e] (Σi=1 N Vi ) =Σi=1 N ([y1i]G1 +[y2i]G2 +[e]Vi ) =Σi=1 N ([r1i+e・s1i]G1 +[r2i+e・s2i]G2 +[e]([−s1i]G1 +[−s2i]G2 )) =Σi=1 N ([r1i+e・s1i+e・(−s1i)]G1 +[r2i+e・s2i+e・(−s2i)]G2 ) =Σi=1 N [r1i]G1 +[r2i]G2 =Σi=1 N Xi =X つまり、X′=Xとなり、h(X′,m)=e′=eと
なり、多重署名が正しいことが比較部36から出力さ
れ、e′=eでなければ、多重署名(e,y1 ,y 2 )
は正しくないものと判定出力される。If the multiple signature is created successfully
Substituting equations (1) to (8) into equation (9) gives
Become. X '= [y1] G1+ [YTwo] GTwo+ [E] V = [Σi = 1 Ny1i] G1+ [Σi = 1 Ny2i] GTwo+ [E] (Σi = 1 NVi) = Σi = 1 N([Y1i] G1 + [Y2i] GTwo + [E] Vi) = Σi = 1 N([R1i+ E · s1i] G1 + [R2i+ E · s2i] GTwo + [E] ([-s1i] G1 + [-S2i] GTwo)) = Σi = 1 N([R1i+ E · s1i+ E · (-s1i)] G1 + [R2i+ E · s2i+ E · (-s2i)] GTwo) = Σi = 1 N[R1i] G1 + [R2i] GTwo = Σi = 1 NXi= X That is, X '= X, and h (X', m) = e '= e,
Output from the comparing unit 36 that the multiple signature is correct.
If e ′ = e, the multiple signature (e, y1 , Y Two )
Is determined to be incorrect and output.
【0024】図4Aに示す手法では、センタ装置10が
秘密鍵を保持することが前提であるから、e=h(X,
m)の演算をセンタ装置10で行って、eを各署名装置
11 i へ送ってもよい。署名装置11i 、検証装置31
は一般にはマイクロプロセッサなどを主体とする制御部
23,37がそれぞれ設けられて、各手段の順次制御
や、メモリに対する読み、書きが行われる。In the method shown in FIG. 4A, the center device 10
Since it is assumed that the secret key is held, e = h (X,
m) is performed by the center device 10, and e is set to each signature device.
11 iMay be sent to Signature device 11i, Verification device 31
Is generally a control unit mainly composed of a microprocessor, etc.
23 and 37 are provided, respectively, to sequentially control each means.
And reading from and writing to memory.
【0025】[0025]
【発明の効果】以上説明したようにこの発明は安全性の
根拠を有限体の離散対数問題から楕円曲線上の離散対数
問題に変えることにより、従来より安全性の向上をはか
ることが可能となった。As described above, according to the present invention, the security can be improved more than before by changing the basis of security from a discrete logarithm problem of a finite field to a discrete logarithm problem on an elliptic curve. Was.
【図1】この発明による楕円曲線を用いた多重署名方法
の動作手順を示す図。FIG. 1 is a diagram showing an operation procedure of a multiple signature method using an elliptic curve according to the present invention.
【図2】この発明の多重署名装置の実施例の機能構成を
示すブロック図。FIG. 2 is a block diagram showing a functional configuration of an embodiment of the multiple signature device of the present invention.
【図3】この発明の方法の実施に用いる検証装置の機能
構成を示すブロック図。FIG. 3 is a block diagram showing a functional configuration of a verification device used for implementing the method of the present invention.
【図4】システムパラメータの生成個所、各Vi より
V、各Xi よりXを生成する手法の各種例を示すブロッ
ク図。FIG. 4 is a block diagram showing various examples of a method of generating a system parameter, V from each V i , and X from each X i .
【図5】従来の岡本による有限体上のディジタル多重署
名方法の動作手順を示す図。FIG. 5 is a diagram showing an operation procedure of a conventional digital multiple signature method on a finite field by Okamoto.
Claims (7)
が各署名装置iにて同一のメッセージを多重ディジタル
署名する方法において、 pを素数、nを自然数とし、要素数pn である有限体F
(pn )上で定義された楕円曲線EのF(pn )有理点
で構成される群をE(F(pn ))とし、群E(F(p
n ))中の要素G1 ,G2 と、E(F(pn ))又はp
n と、Eを公開し、 署名装置iは秘密鍵s1i,s2iと上記公開要素G1 ,G
2 を用いて楕円曲線Eの群の要素Vi を求めてユーザ公
開鍵とし、 全ユーザ公開鍵Vi を楕円曲線E上で加算して多重署名
の公開鍵V=Σi=0 NVi とし、 各署名装置iは楕円曲線Eの群のユーザ要素Xi をラン
ダムに求め、 全ユーザiのXi を楕円曲線E上で加算して要素X=Σ
i=1 N Xi とし、 要素Xと、数値化されたメッセージmとを入力として関
数演算を行い、 各署名装置iはその関数演算結果eと秘密鍵s1i,s2i
と、ユーザ要素Xi を求める際に用いた情報とを用いて
部分署名要素y1i,y2iを求め、 全ユーザのその部分署名要素y1i,y2iをそれぞれ加算
してy1 ,y2 とし、 y1 ,y2 とeをmに対する多重署名として検証装置へ
送り、 検証装置は受信した多重署名y1 ,y2 ,eと公開要素
G1 ,G2 とを用いて楕円曲線E上の群の要素X′を求
め、 その要素X′とmを入力として関数演算を行いその演算
結果とeとを比較し、一致していれば多重署名が正しい
と判定することを特徴とする楕円曲線を用いた多重ディ
ジタル署名方法。1. A plurality of users i (i = 1, 2,..., N)
Finite field F but a method of multiplexing digital signature the same message at the signing device i, prime p, the n is a natural number, a number of elements p n
The F (p n) the group consisting of rational points (p n) on a defined elliptic curve E and E (F (p n)) , the group E (F (p
n )), G 1 , G 2 and E (F (p n )) or p
n and E are publicized, and the signature device i publishes the private keys s 1i and s 2i and the public elements G 1 and G
A user public key seeking elements V i of the group of the elliptic curve E with 2, = 0 public key V = sigma i of multisignature all user public key V i by adding on an elliptic curve E N V i Each signature device i randomly obtains the user element X i of the group of the elliptic curve E, and adds X i of all the users i on the elliptic curve E to obtain an element X = Σ
i = 1 N and X i, element X and performs function operation as inputs and digitized message m, the signature device i as a result the function calculating e and a secret key s 1i, s 2i
When obtains the partial signature element y 1i, y 2i by using the information used in determining the user element X i, y 1 by adding the partial signature element y 1i of all users, y 2i respectively, y 2 Then, y 1 , y 2 and e are sent to the verification device as a multi-signature for m, and the verification device uses the received multi-signatures y 1 , y 2 and e and the public elements G 1 and G 2 to generate an elliptic curve E An ellipse characterized in that a function operation is performed using the elements X 'and m as inputs and the operation result is compared with e, and if they match, it is determined that the multiple signature is correct. Multiple digital signature method using curves.
で書き、E(F(p n ))の要素Gの逆元を記号−Gで
書き、E(F(pn ))の要素Gをx個加算したG+G
+…+G(x個)を[x]Gと書き、負の整数xに対し
て、E(F(pn ))の要素Gの逆元−Gを−x個演算
した(−G)+(−G)+…+(−G)(−x個)を
[x]Gと書くとし、 上記群E(F(pn ))中の要素からなり、要素数が素
数qである部分群をG q として、部分群Gq の異なる2
つの要素を上記公開要素G1 ,G2 として選び、pn ,
qも公開し、 上記関数演算は一方向性関数hの演算であり、2t −1
がq以下であるようなtに対して、{0,1,…,2t
−1}の要素を出力するものであり、 上記秘密鍵s1i,s2iとして、ランダムに2つの異なる
要素をZ/qZ(Z/qZは{0,1,…,q−1}の
整数)より選び、 上記ユーザ公開鍵Vi を、Vi =[−s1i]G1 +[−
s2i]G2 の計算により求め、 各署名装置iで秘密にランダムに2つの異なる要素
r1i,r2iをZ/qZより選び、これらを用いてユーザ
要素Xi =[r1i]G1 +[r2i]G2 を計算し、 上記関数演算結果、e=h(X,m)と、上記要素
r1i,r2iと秘密鍵s1i,s2iとを用いて上記部分署名
要素y1i=r1i+e・s1i modq,y2i=r2i+e・s
2i modqをそれぞれ計算し、 全ての上記部分署名要素y1i,y2iをそれぞれqを法と
して加算して上記多重署名要素y1 =(Σi=1 N y1i)
mod q,y2 =(Σi=1 N y2i)mod qを求め、 検証装置での上記要素X′をX′=[y1 ]G1 +[y
2 ]G2 +[e]Vの計算により求め、検証式e=h
(X′,m)を満たすかどうかチェックをすることを特
徴とする請求項1記載の楕円曲線を用いたディジタル署
名方法。2. E (F (p (pn)) The above binary operation is represented by the symbol +
And write E (F (p n)) The inverse of element G with the symbol -G
Write, E (F (pnG + G obtained by adding x elements G of))
+ ... + G (x) is written as [x] G, and for a negative integer x
And E (F (pn)) -X operations on the inverse -G of element G
(−G) + (− G) +... + (− G) (−x)
[X] G, the group E (F (pn)) And the number of elements is prime
Let G be a subgroup of the number q qAs a subgroup GqTwo different
Public element G1 , GTwo As pn,
q is also disclosed, and the above function operation is an operation of the one-way function h.t-1
{0, 1,..., 2 for t such thatt
-1}, and outputs the secret key s1i, S2iAs two different randomly
The elements are represented by Z / qZ (Z / qZ is {0, 1,..., Q-1}
Integer), and the above user public key ViAnd Vi= [-S1i] G1 + [-
s2i] GTwo And two different elements are secretly and randomly generated by each signature device i.
r1i, R2iIs selected from Z / qZ, and the user is
Element Xi= [R1i] G1 + [R2i] GTwo , And the function operation result, e = h (X, m), and the element
r1i, R2iAnd secret key s1i, S2iAnd the partial signature using
Element y1i= R1i+ E · s1i modq, y2i= R2i+ E · s
2i modq and calculate all the above partial signature elements y1i, Y2iWith q modulo
And add the above multi-signature element y1= (Σi = 1 Ny1i)
mod q, yTwo= (Σi = 1 Ny2i) Mod q is obtained, and the above element X ′ in the verification device is expressed as X ′ = [y1 ] G1 + [Y
Two ] GTwo + [E] V, and the verification equation e = h
Check whether (X ', m) is satisfied.
2. A digital signature using an elliptic curve according to claim 1.
Name method.
重電子署名を行う、一つの署名装置であって、 秘密鍵、有限体で定義される楕円曲線上の有理点である
公開要素G1 ,G2 と秘密鍵s1i,s2iを格納するメモ
リと、 上記秘密鍵s1i,s2iを生成する秘密鍵生成手段と、 上記秘密鍵s1i,s2iと上記公開要素G1 ,G2 とを入
力して、上記楕円曲線上の有理点の要素であるユーザ公
開鍵Vi を生成する公開鍵生成手段と、 補助変数r1i,r2iをランダムに生成する補助変数生成
手段と、 上記補助変数r1i,r2iと上記公開要素G1 ,G2 を入
力して上記楕円曲線上の有理点の要素であるユーザ変数
要素Xi を生成する変数演算手段と、 全ユーザ変数要素Xi を上記楕円曲線上で足し合わせた
変数要素Xとメッセージmとが変数として入力されて関
数演算を行う関数演算手段と、 その関数演算手段の演算結果eと、上記補助変数r1i,
r2i、上記秘密鍵s1i,s2iが入力されて部分署名要素
y1i,y2iを演算する署名要素演算手段と、 上記ユーザ公開鍵Vi と、上記ユーザ変数要素Xi と、
上記関数演算手段の演算結果eと全ユーザの上記部分署
名要素y1i,y2iと、を外部へ出力する送信手段と、 上記変数要素Xを外部より受信する受信手段と、 上記各手段を順次制御し、上記メモリに対する読出し書
込みなどを行う制御手段とを具備する署名装置。3. A signature device for performing multiple digital signatures on the same message by a plurality of signature devices, wherein the public element G 1 , which is a rational point on an elliptic curve defined by a secret key and a finite field, G 2 and the private key s 1i, a memory for storing s 2i, the secret key s 1i, and the private key generating means for generating a s 2i, the secret key s 1i, s 2i and the public elements G 1, G 2 enter the door, and the public key generating means for generating a user public key V i is an element of rational points on the elliptic curve, an auxiliary variable generation unit for generating auxiliary variables r 1i, the r 2i randomly, the Variable operation means for inputting the auxiliary variables r 1i , r 2i and the public elements G 1 , G 2 to generate a user variable element X i which is an element of a rational point on the elliptic curve; and all user variable elements X i Is added as a variable on the above elliptic curve and the message m is entered as a variable. Is a function operation means for performing a function calculation, the calculation result e of the function operation unit, the auxiliary variable r 1i,
r 2i, the secret key s 1i, s 2i is inputted partial signature element y 1i, a signature element calculation means for calculating the y 2i, and the user public key V i, and the user variable element X i,
Transmitting means for outputting the operation result e of the function operation means and the partial signature elements y 1i and y 2i of all users to the outside; receiving means for receiving the variable element X from the outside; A signature device comprising: a control unit that controls and performs reading and writing on the memory.
然数として、要素数pn である有限体F(pn )上で定
義され、その有理点で群E(F(pn ))が構成され、
E(F(pn ))上の要素Gのx個加算を[x]Gで表
わし、群E(F(pn ))中の要素数が素数qである部
分群Gq から異なる2つの要素G1 ,G2 が上記公開要
素として選定されており、 上記秘密鍵生成手段はZ/qZ(Z/qZは{0,1,
…,q−1}の整数)よりランダムに2つの異なる整数
s1i,s2iを生成する手段であり、 上記公開鍵生成手段はVi =[−s1i]G1 +[−
s2i]G2 を計算して上記ユーザ公開鍵Vi とする手段
であり、 上記補助変数選択手段はZ/qZよりランダムに2つの
異なる整数r1i,r2iを生成する手段であり、 上記変数演算手段はXi =[r1i]G1 +[r2i]G2
を計算して上記ユーザ変数要素Xi とする手段であり、 上記関数演算手段は一方向性関数h(X,m)=eを演
算する手段であり、 上記署名要素演算手段はy1i=r1i+e・s1imod q,
y2i=r2i+e・s2imod qを計算して、上記部分署名
要素y1i,y2iとする手段であることを特徴とする請求
項3記載の署名装置。4. The elliptic curve E is defined on a finite field F (p n ) having p n elements, where p is a prime number and n is a natural number, and the rational point is a group E (F (p n ) ) Is composed,
The addition of x elements G on E (F (p n )) is represented by [x] G, and two additions different from the subgroup G q in which the number of elements in the group E (F (p n )) is a prime number q. The elements G 1 and G 2 are selected as the public elements, and the secret key generation means uses Z / qZ (Z / qZ is {0, 1,
.., Q−1}) to generate two different integers s 1i , s 2i at random, and the public key generation means V i = [− s 1i ] G 1 + [−
s 2i] to calculate the G 2 is a means to the user public key V i, the auxiliary variable selection means is means for generating two different integers r 1i, r 2i random from Z / qZ, the The variable operation means is X i = [r 1i ] G 1 + [r 2i ] G 2
The calculated a means to the user variable element X i, the function calculating means is means for calculating the one-way function h (X, m) = e , the signature element calculation unit y 1i = r 1i + es 1s mod q,
4. The signature apparatus according to claim 3, wherein y2i = r2i + es2s mod q is calculated to obtain the partial signature elements y1i and y2i .
の前段のユーザ公開鍵V1 〜Vi-1 、全ての前段のユー
ザ変数要素X1 〜Xi-1 、全ての前段の部分署名要素y
1i〜y1i-1,y2i〜y2i-1も受信する手段であり、上記
受信したV1〜Vi-1 と公開鍵生成手段からのVi を加
算し、上記受信したX1 〜Xi-1 と変数演算手段からの
Xi を加算し、上記受信したy1i〜y1i-1,y2i〜y
2i-1と剰余演算手段よりのy1i,y2iをそれぞれ加算す
る加算手段を含み、上記加算手段における各加算結果を
上記送信手段よりそれぞれ次の署名装置へ上記送信手段
で送信する手段を含むことを特徴とする請求項3又は4
記載の署名装置。5. The receiving means sends all preceding user public keys V 1 to V i-1 , all preceding user variable elements X 1 to X i-1 , and all preceding partial signatures from the preceding signature device. Element y
1i ~y 1i-1, y 2i ~y 2i-1 is also a means for receiving, by adding V i from V 1 ~V i-1 and the public key generating unit thus received, X 1 ~ thus received X i−1 and X i from the variable operation means are added, and the received y 1i to y 1i-1 and y 2i to y are received.
2i-1 and addition means for adding y 1i and y 2i from the remainder operation means, respectively, and means for transmitting each addition result in the addition means from the transmission means to the next signature device by the transmission means. 5. The method according to claim 3, wherein
A signature device as described.
が同一のメッセージmに対し、ディジタル多重署名を行
うユーザiの署名装置で、 秘密鍵s1i,s2iを生成する秘密鍵生成過程と、 有限体で定義される楕円曲線上の有理点である公開要素
G1 ,G2 と上記秘密鍵s1i,s2iを用いて上記楕円曲
線上の有理点の要素であるユーザ公開鍵Vi を生成する
公開鍵生成過程と、 補助変数r1i,r2iをランダムに生成する補助変数生成
過程と、 上記補助変数r1i,r2iと上記公開要素G1 ,G2 を用
いて上記楕円曲線上の有理点の要素であるユーザ変数要
素Xi を生成する変数演算過程と、 全ユーザ変数要素Xi を上記楕円曲線上で足し合わせた
変数要求Xとメッセージmとが変数として入力されて関
数演算を行う関数演算過程と、 その関数演算過程の演算結果eと、上記補助変数r1i,
r2i、上記秘密鍵s1i,s2iを用いて部分署名要素
y1i,y2iを演算する署名要素演算過程と、 上記関数演算の演算結果eと上記部分署名要素y1i,y
2iとを外部へ出力する送信過程と、 上記変数要素Xを外部から受信する受信過程とを実行さ
せるプログラムを記録したコンピュータ読出し可能な記
録媒体。6. A plurality of users i (i = 1, 2,..., N)
Is a secret key generation process of generating secret keys s 1i and s 2i by a signature device of a user i performing digital multiple signature on the same message m, and a rational point on an elliptic curve defined by a finite field. public elements G 1, G 2 and the secret key s 1i, and the public key generation process of generating a user public key V i is an element of rational points on the elliptic curve using s 2i, auxiliary variables r 1i, r An auxiliary variable generation process of randomly generating 2i , and generating a user variable element X i that is an element of a rational point on the elliptic curve using the auxiliary variables r 1i and r 2i and the public elements G 1 and G 2. A variable calculation process, a variable request X obtained by adding all user variable elements X i on the elliptic curve and a message m are input as variables and a function calculation is performed, and a calculation result of the function calculation process e and the above auxiliary variables r 1i ,
r 2i , a signature element operation process of operating partial signature elements y 1i , y 2i using the secret keys s 1i , s 2i , an operation result e of the function operation, and the partial signature elements y 1i , y
A computer-readable recording medium storing a program for executing a transmitting step of outputting 2i to the outside and a receiving step of receiving the variable element X from the outside.
然数として、要素数pn である有限体F(pn )上で定
義され、その有理点群E(F(pn ))が構成され、E
(F(pn ))上の要素Gのx個加算を[x]Gで表わ
し、群E(F(pn ))中の要素数が素数qである部分
群Gq から異なる2つの要素G1 ,G 2 が上記公開要素
として選定されており、 上記秘密鍵生成過程はZ/qZ(Z/qZは{0,1,
…,q−1}の整数)よりランダムに2つの異なる整数
s1i,s2iを取出す過程であり、 上記公開鍵生成過程はVi =[−s1i]G1 +[−
s2i]G2 を計算する過程であり、 上記補助変数選択過程はZ/qZよりランダムに2つの
異なる整数r1i,r2iを取出す過程であり、 上記変数演算過程はXi =[r1i]G1 +[r2i]G2
を計算する過程であり、 上記関数演算過程は一方向性関数h(X,m)=eを演
算する過程であり、 上記署名要素演算過程はy1i=r1i+e・s1i modq,
y2i=r2i+e・s2imod qを計算する過程であること
を特徴とする請求項6記載の記録媒体。7. The elliptic curve E has p as a prime number and n as its own.
Naturally, the number of elements pnFinite field F (pn) Fixed on
And the rational point group E (F (pn)) Is constructed and E
(F (pn)) X addition of the above element G is represented by [x] G
And group E (F (pnPart where the number of elements in)) is a prime number q
Group GqTwo elements G different from1 , G Two Is the above public element
And the secret key generation process is Z / qZ (Z / qZ is {0, 1,
..., an integer of q-1})
s1i, S2iAnd the above public key generation processi= [-S1i] G1 + [-
s2i] GTwo The above-mentioned auxiliary variable selection process is a process of calculating two random numbers from Z / qZ.
Different integer r1i, R2iAnd the above variable operation process is Xi= [R1i] G1 + [R2i] GTwo
The function operation process described above performs a one-way function h (X, m) = e.
Where the signature element operation process is y1i= R1i+ E · s1i modq,
y2i= R2i+ E · s2iBe a process of calculating mod q
The recording medium according to claim 6, wherein:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10032929A JPH11231777A (en) | 1998-02-16 | 1998-02-16 | Multiple digital signature method using elliptic curve, its apparatus and program recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10032929A JPH11231777A (en) | 1998-02-16 | 1998-02-16 | Multiple digital signature method using elliptic curve, its apparatus and program recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11231777A true JPH11231777A (en) | 1999-08-27 |
Family
ID=12372619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10032929A Pending JPH11231777A (en) | 1998-02-16 | 1998-02-16 | Multiple digital signature method using elliptic curve, its apparatus and program recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH11231777A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003521056A (en) * | 2000-01-24 | 2003-07-08 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | Protect content from illegal duplication by proving the existence of a complete dataset using security identifiers |
JP2013118707A (en) * | 2006-09-08 | 2013-06-13 | Certicom Corp | Radio frequency identification (rfid) authentication and key distribution system therefor |
-
1998
- 1998-02-16 JP JP10032929A patent/JPH11231777A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003521056A (en) * | 2000-01-24 | 2003-07-08 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | Protect content from illegal duplication by proving the existence of a complete dataset using security identifiers |
JP2011061845A (en) * | 2000-01-24 | 2011-03-24 | Koninkl Philips Electronics Nv | Protecting content from illicit reproduction by proof of existence of complete data set using security identifier |
JP2013118707A (en) * | 2006-09-08 | 2013-06-13 | Certicom Corp | Radio frequency identification (rfid) authentication and key distribution system therefor |
US8938615B2 (en) | 2006-09-08 | 2015-01-20 | Ceritcom Corp. | System and method for authenticating radio frequency identification (RFID) tags |
US9013266B2 (en) | 2006-09-08 | 2015-04-21 | Certicom Corp. | Authenticated radio frequency identification and key distribution system therefor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1326351C (en) | The Circular Cut Polynomial Structure of Finite Field Discrete Logarithm Cryptosystem | |
EP0503119B1 (en) | Public key cryptographic system using elliptic curves over rings | |
US7814326B2 (en) | Signature schemes using bilinear mappings | |
Burnett et al. | A biometric identity based signature scheme | |
US8654975B2 (en) | Joint encryption of data | |
US7007164B1 (en) | Method and array for authenticating a first instance and a second instance | |
JP2002515128A (en) | Private key certificate | |
WO2006126668A1 (en) | Pseudo-random function calculating device and method, and number limited anonymous authentication system and method | |
CN111325535A (en) | Block chain private key management method, system and storage medium based on elliptic curve migration | |
CN112152813A (en) | Certificateless content extraction signcryption method supporting privacy protection | |
Kazmirchuk et al. | The Improvement of digital signature algorithm based on elliptic curve cryptography | |
JP2009005213A (en) | Batch verification apparatus, program, and batch verification method | |
KR20240045231A (en) | Creation of digitally signed shares | |
Tso | A new way to generate a ring: Universal ring signature | |
JP2000511649A (en) | Public key cryptography | |
CN116318736B (en) | Two-level threshold signature method and device for hierarchical management | |
Sabbry et al. | Nonce generation techniques in Schnorr multi-signatures: Exploring EdDSA-inspired approaches | |
CN117278312A (en) | An efficient cloud storage data integrity audit method based on national secret SM2 | |
JPH11231777A (en) | Multiple digital signature method using elliptic curve, its apparatus and program recording medium | |
Kim et al. | An efficient public key functional encryption for inner product evaluations | |
JP4598269B2 (en) | Fast finite field operations on elliptic curves | |
CN115277019A (en) | An agile digital signature verification method and system | |
EP1921790A1 (en) | Signature schemes using bilinear mappings | |
CN100411334C (en) | Data Encryption and Decryption Methods | |
CN116318636A (en) | SM 2-based threshold signature method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040326 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20051104 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060502 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060725 |