Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5330964B2 - Signature / verification system, signature / verification method, signature device, verification device, program - Google Patents
[go: Go Back, main page]

JP5330964B2 - Signature / verification system, signature / verification method, signature device, verification device, program - Google Patents

Signature / verification system, signature / verification method, signature device, verification device, program Download PDF

Info

Publication number
JP5330964B2
JP5330964B2 JP2009260882A JP2009260882A JP5330964B2 JP 5330964 B2 JP5330964 B2 JP 5330964B2 JP 2009260882 A JP2009260882 A JP 2009260882A JP 2009260882 A JP2009260882 A JP 2009260882A JP 5330964 B2 JP5330964 B2 JP 5330964B2
Authority
JP
Japan
Prior art keywords
signature
verification
group
unit
key
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
JP2009260882A
Other languages
Japanese (ja)
Other versions
JP2011107319A (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.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
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, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2009260882A priority Critical patent/JP5330964B2/en
Publication of JP2011107319A publication Critical patent/JP2011107319A/en
Application granted granted Critical
Publication of JP5330964B2 publication Critical patent/JP5330964B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、主に電気通信を介したメッセージの授受の際に用いる署名・検証システム、署名・検証方法、署名装置、検証装置、プログラムに関する。   The present invention relates to a signature / verification system, a signature / verification method, a signature device, a verification device, and a program, which are mainly used when sending and receiving messages via telecommunications.

デジタル署名はメッセージmに対して、公開鍵pkに対応する秘密鍵skを知る署名者が、メッセージmに対して秘密鍵skを正しく使ったときにのみ計算できる値sを算出し、これを電子的な署名として用いるものである。正しく計算された署名は誰でも公開鍵pkを用いてその正当性を検証でき、秘密鍵skを知らないいかなる第三者も正当な署名sを算出することはできない。   The digital signature calculates a value s that can be calculated only when the signer who knows the secret key sk corresponding to the public key pk correctly uses the secret key sk for the message m. It is used as a typical signature. A correct signature can be verified by anyone using the public key pk, and any third party who does not know the secret key sk cannot calculate the valid signature s.

デジタル署名は、電子現金やクレデンシャルシステムなど様々な暗号プロトコルにおいて基本的な構成要素として利用されている。特に、利用者のプライバシーを必要とする応用においては、ゼロ知識証明と組み合わせることにより署名sを明かさないまま、あるメッセージmに対する正しい署名sを保持しているという事実を任意の第三者に納得させるなど、高度な利用形態がしばしば見受けられる。   Digital signatures are used as basic components in various cryptographic protocols such as electronic cash and credential systems. In particular, in applications that require user privacy, it is possible to convince an arbitrary third party that the correct signature s for a message m is retained without revealing the signature s by combining with zero knowledge proof. Advanced usage forms are often seen.

近年のペアリング技術の進展によって、群の要素がある関係を満たすという事実を効率的に証明するゼロ知識証明が構成可能になった(非特許文献1)。これによって、署名sが効率的なペアリングを持つ群Gの要素である場合、即ちs∈Gである場合、前述のように署名sを明かさないまま、正しい署名sを保持しているという事実を証明することが可能である。例えば、非特許文献2に示されている、いわゆるCL-Signatureと呼ばれる方法では、メッセージm∈Zに対する署名sは3つの群要素(a,b,c)∈Gから構成されている。 Recent progress in pairing technology has made it possible to construct zero-knowledge proof that efficiently proves the fact that groups of elements satisfy a certain relationship (Non-Patent Document 1). Thus, if the signature s is an element of the group G with efficient pairing, that is, if sεG, the fact that the correct signature s is retained without revealing the signature s as described above It is possible to prove For example, disclosed in Non-Patent Document 2, in the method of so-called CL-Signature, the signature s to the message M∈Z q is composed of three groups elements (a, b, c) ∈G 3.

しかしながら、CL-signatureのように、ランダムオラクル等の(実現不可能と知られている)理想化された構成要素を用いず、数論的な仮定のみによって安全性が証明できる既存の署名方法では、メッセージmが群Gの要素ではない。そのため、メッセージを秘匿した状態で、その秘匿したメッセージに対する正しい署名を保持していることを証明するという応用には供さない。メッセージが群Gの要素である場合にも安全な署名方法として、上記のCL-Signatureを改良した方式が非特許文献3に示されており、ランダムメッセージ攻撃に対して安全であることが示されているが、より強い選択メッセージ攻撃に対する安全性は不明である。   However, with CL-signature, an existing signature method that can prove its security only by number-theoretic assumptions without using idealized components (known as impossible) such as random oracles. , Message m is not an element of group G. Therefore, it is not used for the application of proving that the correct signature is retained for the concealed message in a state where the message is concealed. As a secure signature method even when a message is a group G element, Non-Patent Document 3 shows a method improved from the above-mentioned CL-Signature, which shows that it is safe against random message attacks. However, the security against stronger selective message attacks is unclear.

メッセージが群要素であって、選択メッセージ攻撃に強いことが証明されている方法として、非特許文献4に示された方法がある。この方法を以下に説明する。図1は署名・検証システムの構成例を示す図であり、図2は署名装置の処理フローを示す図、図3は検証装置の処理フローを示す図である。署名・検証システムは、ネットワーク800に接続された署名装置700と検証装置900で構成される。   As a method in which the message is a group element and proved to be strong against the selective message attack, there is a method shown in Non-Patent Document 4. This method will be described below. FIG. 1 is a diagram showing a configuration example of a signature / verification system, FIG. 2 is a diagram showing a processing flow of the signature device, and FIG. 3 is a diagram showing a processing flow of the verification device. The signature / verification system includes a signature device 700 and a verification device 900 connected to a network 800.

v=(q,G,G,e,g)を公開パラメータとする。qは大きな素数、G,Gは位数qの群、eはG×G→Gの効率的な計算が可能なペアリング、gを群Gの任意の生成元、F,H,K,Tを群Gの生成元とする。また、メッセージは群要素の対(M,N)∈Gであって、e(M,H)=e(g,N)を満たすものに限られているとする。 Let v = (q, G, G T , e, g) be a public parameter. q is large prime numbers, G, G T is a group of order q, e is G × G → G T efficient calculations can pairing, g any generator of the group G, F, H, K , T is a generator of group G. Further, it is assumed that the message is limited to a group element pair (M, N) εG 2 and satisfying e (M, H) = e (g, N).

署名装置700は、1以上q−1以下のランダムな整数xを生成する(S710)。そして、X=xg、Y=xHを計算し(S720)、(v,xg,xH)を公開鍵pkとし、xを秘密鍵skとする(S730)。   The signature device 700 generates a random integer x not less than 1 and not more than q−1 (S710). Then, X = xg and Y = xH are calculated (S720), (v, xg, xH) is set as the public key pk, and x is set as the secret key sk (S730).

署名装置700は、1以上q−1以下の乱数c,rを生成し(S750)、   The signature device 700 generates random numbers c and r of 1 to q−1 (S750),

Figure 0005330964
Figure 0005330964

=cg
=cF
=rg
=rH
を計算する(S760)。そして、5つの組(a,a,a,a,a)∈Gを署名σとする(S770)。
a 2 = cg
a 3 = cF
a 4 = rg
a 5 = rH
Is calculated (S760). Then, the five sets (a 1 , a 2 , a 3 , a 4 , a 5 ) εG 5 are set as a signature σ (S770).

検証装置900は、ネットワーク800を介して署名σを受け取る(S910)。そして、メッセージ対(M,N)と署名σに対して、
e(a,X+a)=e(K+M,g)e(T,a)であること、
e(a,F)=e(g,a)であること、
e(a,H)=e(g,a)であること、
e(M,H)=e(g,N)であること、
e(X,H)=e(g,Y)であること
を確認する(S920)。そして、すべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に書名が正しくないことを示す情報を出力する(S930)。
The verification apparatus 900 receives the signature σ via the network 800 (S910). And for message pair (M, N) and signature σ,
e (a 1 , X + a 2 ) = e (K + M, g) e (T, a 4 )
e (a 2 , F) = e (g, a 3 )
e (a 4 , H) = e (g, a 5 )
e (M, H) = e (g, N)
It is confirmed that e (X, H) = e (g, Y) (S920). If it is confirmed that all the conditions are satisfied, information indicating that the signature is correct is output, and if it is determined that any one of the conditions is not satisfied, information indicating that the title is incorrect is output (S930). .

Jens Groth and Amit Sahai, “Efficient Non-interactive Proof Systems for Bilinear Groups”, Eurocrypt 2008, LNCS 2965, pp.415-432.Jens Groth and Amit Sahai, “Efficient Non-interactive Proof Systems for Bilinear Groups”, Eurocrypt 2008, LNCS 2965, pp.415-432. Jan Camenisch and Anna Lysyanskaya, “Signature Schemes and Anonymous Credentials from Bilinear Maps”, Crypto 2004, LNCS 3152, pp.56-72.Jan Camenisch and Anna Lysyanskaya, “Signature Schemes and Anonymous Credentials from Bilinear Maps”, Crypto 2004, LNCS 3152, pp.56-72. Matthew Green and Susan Hohenberger, “Universally Composable Adaptive Oblivious Transfer”, IACR e-Print archive, 2008/163 [平成21年10月27日検索]、インターネット<URL: http://eprint.iacr.org/cgi-bin/getfile.pl?entry=2008/163&version=20080806:150034&file=163.pdf>.Matthew Green and Susan Hohenberger, “Universally Composable Adaptive Oblivious Transfer”, IACR e-Print archive, 2008/163 [searched October 27, 2009], Internet <URL: http://eprint.iacr.org/cgi- bin / getfile.pl? entry = 2008/163 & version = 20080806: 150034 & file = 163.pdf>. Georg Fuchsbauer, “Automorphic Signatures in Bilinear Groups”, IACR e-print 200/320 [平成21年10月27日検索]、インターネット<URL: http://eprint.iacr.org/2009/320.pdf>.Georg Fuchsbauer, “Automorphic Signatures in Bilinear Groups”, IACR e-print 200/320 [searched October 27, 2009], Internet <URL: http://eprint.iacr.org/2009/320.pdf>.

しかしながら、従来技術は署名・検証システムでは、署名が群Gの5つの要素からなり、また、検証においては5つのペアリングの等式を確認するため、効率が悪いという課題がある。   However, in the conventional technique, the signature / verification system has a problem that the signature is composed of five elements of the group G, and the verification is performed because five pairing equations are confirmed.

そこで、本発明では、署名長が短く、検証式の計算量がより少なく、高い安全性が証明可能な、群要素メッセージに対するデジタル署名方法を提供することを目的とする。   Therefore, an object of the present invention is to provide a digital signature method for a group element message that has a short signature length, a smaller calculation amount of a verification formula, and can prove high security.

本発明の署名・検証システムは、署名装置と検証装置を含む。署名装置は、少なくとも署名記録部、署名確認部、署名乱数生成部、署名計算部、署名出力部を備える。署名装置は、さらに鍵乱数生成部、鍵計算部、鍵生成部も備えてもよい。検証装置は、検証入力部、検証確認部、検証出力部を備える。   The signature / verification system of the present invention includes a signature device and a verification device. The signature device includes at least a signature recording unit, a signature confirmation unit, a signature random number generation unit, a signature calculation unit, and a signature output unit. The signature device may further include a key random number generation unit, a key calculation unit, and a key generation unit. The verification apparatus includes a verification input unit, a verification confirmation unit, and a verification output unit.

本発明の第1の署名・検証システムでは、G、G、Gを位数qの群であってG→Gの写像およびその逆写像が効率的には計算できない群、eをG×G→Gのペアリング、gを群Gの任意の生成元、gを群Gの任意の生成元、(M,M)を群G上の1以外の元であるMと群Gの元であるMからなるメッセージm、xとyを1以上q−1以下の任意の整数、X=g 、Y=g とする。鍵乱数生成部は、整数xと整数yを生成する。鍵計算部は、X=g 、Y=g を計算する。鍵生成部は、(q,G,G,G,e,g,g,X,Y)を公開鍵pkとし、(pk,x,y)を秘密鍵skとする。なお、Γ=(q,G,G,G,e,g,g)とし、公開鍵pkを(Γ,X,Y)としてもよい。署名記録部は、q,G,G,G,e,g,g,X,Y,x,yを記録する。署名確認部は、e(M,g)=e(g,M)であることを確認する。署名乱数生成部は、1以上q−1以下のランダムな整数rを生成する。署名計算部は、
=g
=M ry
=g rx rxy
=g ry
を計算する。署名出力部は、(A,A,B,B)を署名σとして出力する。検証入力部は、メッセージmと署名σとを受信する。検証確認部は、
とMとが群G上の1以外の元であること、
e(M,g)=e(g,M)であること、
e(A,Y)=e(g,B)であること、
e(A,g)=e(M,B)であること、
e(g,B)=e(A,X)であること
を確認する。検証出力部は、検証確認部がすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に書名が正しくないことを示す情報を出力する。
In the first signature-verification system of the present invention, G 1, G 2, the group mapping and its inverse mapping of a group of order q of G T G 1 → G 2 can not be computed efficiently, e G 1 × G 2 → G T pairing, g 1 is an arbitrary generator of group G 1 , g 2 is an arbitrary generator of group G 2 , and (M 1 , M 2 ) is on group G 1 Message m consisting of M 1 which is an element other than 1 and M 2 which is an element of group G 2 , x and y are arbitrary integers of 1 to q−1, X 2 = g 2 x , Y 2 = g 2 y . The key random number generation unit generates an integer x and an integer y. The key calculation unit calculates X 2 = g 2 x and Y 2 = g 2 y . The key generation unit sets (q, G 1 , G 2 , G T , e, g 1 , g 2 , X 2 , Y 2 ) as the public key pk and (pk, x, y) as the secret key sk. . Note that Γ = (q, G 1 , G 2 , G T , e, g 1 , g 2 ) and the public key pk may be (Γ, X 2 , Y 2 ). The signature recording unit records q, G 1 , G 2 , G T , e, g 1 , g 2 , X 2 , Y 2 , x, y. The signature confirmation unit confirms that e (M 1 , g 2 ) = e (g 1 , M 2 ). The signature random number generation unit generates a random integer r of 1 to q-1. The signature calculator is
A 1 = g 1 r ,
A 2 = M 1 ry ,
B 3 = g 2 rx M 2 rxy ,
B 4 = g 2 ry
Calculate The signature output unit outputs (A 1 , A 2 , B 3 , B 4 ) as a signature σ. The verification input unit receives the message m and the signature σ. The verification confirmation part
A 1 and M 1 are elements other than 1 on the group G 1 ;
e (M 1 , g 2 ) = e (g 1 , M 2 )
e (A 1 , Y 2 ) = e (g 1 , B 4 )
e (A 2 , g 2 ) = e (M 1 , B 4 ),
Confirm that e (g 1 , B 3 ) = e (A 1 A 2 , X 2 ). The verification output unit outputs information indicating that the signature is correct when the verification confirmation unit confirms that all the conditions are satisfied, and indicates that the book title is incorrect when it is confirmed that any of the conditions is not satisfied. Output information.

本発明の第2の署名・検証システムでは、G、G、Gを位数qの群、eをG×G→Gの双線形写像、gとhを群Gの任意の生成元、gとh(ただし、h=g α)を群Gの任意の生成元、(M,M)を群G上の1以外の元であるMと群Gの元であるMからなるメッセージm、xとyを1以上q−1以下の任意の整数、X=h 、Y=g とする。なお、この署名・検証システムでは群GとGとは同じ群であってもかまわない。 In the second signature / verification system of the present invention, G 1 , G 2 , and G T are groups of order q, e is a bilinear map of G 1 × G 2 → G T , and g 1 and h 1 are groups G. An arbitrary generator of 1 , g 2 and h 2 (where h 2 = g 2 α ) is an arbitrary generator of group G 2 , and (M 1 , M 2 ) is an element other than 1 on group G 1 message m composed of M 2 is located M 1 and the group G 2 of the original, x and y one or more q-1 following any integer, X 2 = h 2 x, and Y 2 = g 2 y. In this signature / verification system, the groups G 1 and G 2 may be the same group.

鍵乱数生成部は、整数xと整数yを生成する。鍵計算部は、X=h 、Y=g を計算する。鍵生成部は、(q,G,G,G,e,g,h,g,h,X,Y)を公開鍵pkとし、(pk,α,x,y)を秘密鍵skとする。なお、Γ=(q,G,G,G,e,g,h,g,h)とし、公開鍵pkを(Γ,X,Y)としてもよい。署名記録部は、q,G,G,G,e,g,h,g,h,X,Y,α,x,yを記録する。署名確認部は、e(M,h)=e(g,M)であることを確認する。署名乱数生成部は、1以上q−1以下のランダムな整数rを生成する。署名計算部は、
=g
=M ry
=h rx rxy
=g ry
を計算する。署名出力部は(A,A,B,B)を署名σとして出力する。検証入力部は、メッセージmと署名σとを受信する。検証確認部は、
とMとが群G上の1以外の元であること、
e(M,h)=e(g,M)であること、
e(A,Y)=e(g,B)であること、
e(A,g)=e(M,B)であること、
e(g,B)=e(A,X)であること
を確認する。検証出力部は、検証確認部がすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に書名が正しくないことを示す情報を出力する。
The key random number generation unit generates an integer x and an integer y. The key calculation unit calculates X 2 = h 2 x and Y 2 = g 2 y . The key generation unit uses (q, G 1 , G 2 , G T , e, g 1 , h 1 , g 2 , h 2 , X 2 , Y 2 ) as the public key pk, and (pk, α, x, Let y) be the secret key sk. Note that Γ = (q, G 1 , G 2 , G T , e, g 1 , h 1 , g 2 , h 2 ) may be used, and the public key pk may be (Γ, X 2 , Y 2 ). Signature recording part, q, G 1, G 2 , G T, e, g 1, h 1, g 2, h 2, X 2, Y 2, α, x, to record the y. The signature confirmation unit confirms that e (M 1 , h 2 ) = e (g 1 , M 2 ). The signature random number generation unit generates a random integer r of 1 to q-1. The signature calculator is
A 1 = g 1 r ,
A 2 = M 1 ry ,
B 3 = h 2 rx M 2 rxy ,
B 4 = g 2 ry
Calculate The signature output unit outputs (A 1 , A 2 , B 3 , B 4 ) as a signature σ. The verification input unit receives the message m and the signature σ. The verification confirmation part
A 1 and M 1 are elements other than 1 on the group G 1 ;
e (M 1 , h 2 ) = e (g 1 , M 2 )
e (A 1 , Y 2 ) = e (g 1 , B 4 )
e (A 2 , g 2 ) = e (M 1 , B 4 ),
Confirm that e (g 1 , B 3 ) = e (A 1 A 2 , X 2 ). The verification output unit outputs information indicating that the signature is correct when the verification confirmation unit confirms that all the conditions are satisfied, and indicates that the book title is incorrect when it is confirmed that any of the conditions is not satisfied. Output information.

本発明の署名・検証システムによれば、署名を4つの群要素で構成でき、検証装置で確認しなければならないペアリングの等式を4つにできる。また、署名によって確認しなければならない事項(各要素が偽造されていないかなど)を減らすことなく、署名の構成を変えることだけで署名長を短くしているので、安全性の劣化を生じない。したがって、署名長が短く、検証式の計算量がより少なく、高い安全性が証明可能な、群要素メッセージに対するデジタル署名方法を提供できる。   According to the signature / verification system of the present invention, a signature can be composed of four group elements, and four pairing equations that must be confirmed by a verification apparatus can be achieved. In addition, the signature length is shortened only by changing the configuration of the signature without reducing the matters that must be confirmed by the signature (whether each element has not been forged), so there is no deterioration in security. . Therefore, it is possible to provide a digital signature method for a group element message that has a short signature length, requires a smaller amount of calculation of a verification formula, and can prove high security.

従来の署名・検証システムの構成例を示す図。The figure which shows the structural example of the conventional signature and verification system. 従来の署名装置の処理フローを示す図。The figure which shows the processing flow of the conventional signature apparatus. 従来の検証装置の処理フローを示す図。The figure which shows the processing flow of the conventional verification apparatus. 本発明の署名・検証システムの構成例を示す図。The figure which shows the structural example of the signature and verification system of this invention. 本発明の署名装置の処理フローを示す図。The figure which shows the processing flow of the signature apparatus of this invention. 本発明の検証装置の処理フローを示す図。The figure which shows the processing flow of the verification apparatus of this invention.

以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。   Hereinafter, embodiments of the present invention will be described in detail. In addition, the same number is attached | subjected to the structure part which has the same function, and duplication description is abbreviate | omitted.

図4は実施例1の署名・検証システムの構成例を示す図、図5は署名装置の処理フローを示す図、図6は検証装置の処理フローを示す図である。署名・検証システムは、署名装置100と検証装置200を含む。この図では、署名装置100と検証装置200とはネットワーク800によって接続されている。なお、署名装置100が出力した署名σを検証装置200に渡す方法は、ネットワークを用いる方法に限定する必要はない。例えば、記録媒体によって署名装置100から検証装置200に渡されてもよい。署名装置100は、少なくとも署名記録部190、署名確認部140、署名乱数生成部150、署名計算部160、署名出力部170を備える。署名装置100は、さらに鍵乱数生成部110、鍵計算部120、鍵生成部130も備えてもよい。鍵乱数生成部110、鍵計算部120、鍵生成部130を備えていない場合は、公開鍵pkと対応する秘密鍵skを何らかの方法で鍵生成装置(鍵乱数生成部110、鍵計算部120、鍵生成部130を備える装置)から受け取り、署名記録部190に記録しておけばよい。なお、以下の説明では、鍵乱数生成部110、鍵計算部120、鍵生成部130を備えている場合について説明する。また、検証装置200は、検証入力部210、検証確認部220、検証出力部230、検証記録部290を備える。実施例1では、G、G、Gを位数qの群であってG→Gの写像およびその逆写像が効率的には計算できない群、eをG×G→Gのペアリング、gを群Gの任意の生成元、gを群Gの任意の生成元、(M,M)を群G上の1以外の元であるMと群Gの元であるMからなるメッセージm、xとyを1以上q−1以下の任意の整数、X=g 、Y=g とする。 4 is a diagram illustrating a configuration example of the signature / verification system according to the first embodiment, FIG. 5 is a diagram illustrating a processing flow of the signature device, and FIG. 6 is a diagram illustrating a processing flow of the verification device. The signature / verification system includes a signature device 100 and a verification device 200. In this figure, the signature device 100 and the verification device 200 are connected by a network 800. Note that the method of passing the signature σ output from the signature device 100 to the verification device 200 is not necessarily limited to a method using a network. For example, it may be transferred from the signature device 100 to the verification device 200 by a recording medium. The signature device 100 includes at least a signature recording unit 190, a signature confirmation unit 140, a signature random number generation unit 150, a signature calculation unit 160, and a signature output unit 170. The signature device 100 may further include a key random number generation unit 110, a key calculation unit 120, and a key generation unit 130. When the key random number generation unit 110, the key calculation unit 120, and the key generation unit 130 are not provided, the secret key sk corresponding to the public key pk is generated by a key generation device (the key random number generation unit 110, the key calculation unit 120, From the device including the key generation unit 130) and recorded in the signature recording unit 190. In the following description, a case where the key random number generation unit 110, the key calculation unit 120, and the key generation unit 130 are provided will be described. The verification apparatus 200 includes a verification input unit 210, a verification confirmation unit 220, a verification output unit 230, and a verification recording unit 290. In Example 1, G 1, G 2, a group of order q of G T G 1 → mapping and inverse mapping of G 2 is a group that can not be computed efficiently, the e G 1 × G 2 → pairing of G T, g 1 any generator of the group G 1, any generator of the g 2 groups G 2, a (M 1, M 2) other than 1 element on the group G 1 M message m composed of M 2 is 1 and the group G 2 of the original, x and y one or more q-1 following any integer, X 2 = g 2 x, and Y 2 = g 2 y.

(q,G,G,G,e,g,g)が公開情報Γとして公開されており、署名記録部190が、q,G,G,G,e,g,gを記録している。鍵乱数生成部110は、整数xと整数yを生成する(S110)。鍵計算部120は、
=g
=g
を計算する(S120)。鍵生成部130は、(q,G,G,G,e,g,g,X,Y)を公開鍵pkとし、(pk,x,y)を秘密鍵skとし、署名記録部190に記録する(S130)。なお、公開鍵pkを(Γ,X,Y)としてもよい。ここまでの処理で、署名記録部190は、q,G,G,G,e,g,g,X,Y,x,yを記録した状態となる。署名確認部140は、e(M,g)=e(g,M)の条件を満たすかを確認する。そして、この条件を満たさない場合は、エラーを出力し、処理を終了する。この条件を満たす場合は次の処理に進む(S140)。署名乱数生成部150は、1以上q−1以下のランダムな整数rを生成する(S150)。署名計算部160は、
=g
=M ry
=g rx rxy
=g ry
を計算する(S160)。署名出力部170は、(A,A,B,B)を署名σとして出力する(S170)。検証入力部210は、メッセージmと署名σとを受信する(S210)。検証確認部220は、
とMとが群G上の1以外の元であること、
e(M,g)=e(g,M)であること、
e(A,Y)=e(g,B)であること、
e(A,g)=e(M,B)であること、
e(g,B)=e(A,X)であること
を確認する(S220)。検証出力部230は、検証確認部220がすべての条件を満たすと確認した場合には署名が正しいことを示す情報(例えば、“1”)を出力し、いずれかの条件を満たさないと確認した場合に書名が正しくないことを示す情報(例えば、“0”)を出力する(S230)。
(Q, G 1 , G 2 , G T , e, g 1 , g 2 ) are disclosed as public information Γ, and the signature recording unit 190 performs q, G 1 , G 2 , G T , e, g 1, records the g 2. The key random number generation unit 110 generates an integer x and an integer y (S110). The key calculation unit 120
X 2 = g 2 x
Y 2 = g 2 y
Is calculated (S120). The key generation unit 130 uses (q, G 1 , G 2 , G T , e, g 1 , g 2 , X 2 , Y 2 ) as the public key pk, and (pk, x, y) as the secret key sk. The signature is recorded in the signature recording unit 190 (S130). The public key pk may be (Γ, X 2 , Y 2 ). With the processing so far, the signature recording unit 190 is in a state where q, G 1 , G 2 , G T , e, g 1 , g 2 , X 2 , Y 2 , x, y are recorded. The signature confirmation unit 140 confirms whether or not the condition of e (M 1 , g 2 ) = e (g 1 , M 2 ) is satisfied. If this condition is not satisfied, an error is output and the process ends. If this condition is satisfied, the process proceeds to the next process (S140). The signature random number generation unit 150 generates a random integer r between 1 and q−1 (S150). The signature calculation unit 160
A 1 = g 1 r
A 2 = M 1 ry
B 3 = g 2 rx M 2 rxy
B 4 = g 2 ry
Is calculated (S160). The signature output unit 170 outputs (A 1 , A 2 , B 3 , B 4 ) as a signature σ (S170). The verification input unit 210 receives the message m and the signature σ (S210). The verification confirmation unit 220
A 1 and M 1 are elements other than 1 on the group G 1 ;
e (M 1 , g 2 ) = e (g 1 , M 2 )
e (A 1 , Y 2 ) = e (g 1 , B 4 )
e (A 2 , g 2 ) = e (M 1 , B 4 ),
It is confirmed that e (g 1 , B 3 ) = e (A 1 A 2 , X 2 ) (S220). The verification output unit 230 outputs information (for example, “1”) indicating that the signature is correct when the verification confirmation unit 220 confirms that all the conditions are satisfied, and confirms that any of the conditions is not satisfied. In this case, information indicating that the book title is not correct (for example, “0”) is output (S230).

実施例1の署名・検証システムによれば、署名を4つの群要素で構成でき、検証装置で確認しなければならないペアリングの等式を4つにできる。また、署名によって確認しなければならない事項(各要素が偽造されていないかなど)を減らすことなく、署名の構成を変えることだけで署名長を短くしているので、安全性の劣化を生じない。したがって、署名長が短く、検証式の計算量がより少なく、高い安全性が証明可能な、群要素メッセージに対するデジタル署名方法を提供できる。   According to the signature / verification system of the first embodiment, the signature can be composed of four group elements, and the number of pairing equations that must be confirmed by the verification device can be increased to four. In addition, the signature length is shortened only by changing the configuration of the signature without reducing the matters that must be confirmed by the signature (whether each element has not been forged), so there is no deterioration in security. . Therefore, it is possible to provide a digital signature method for a group element message that has a short signature length, requires a smaller amount of calculation of a verification formula, and can prove high security.

実施例2の署名・検証システムは、構成要素の種類は実施例1と同じであり、各構成要素の処理が異なる。実施例2の署名・検証システムの構成例を図4、署名装置の処理フローを図5、検証装置の処理フローを図6に示す。実施例2の署名・検証システムは、署名装置300と検証装置400を含む。この図では、署名装置300と検証装置400とはネットワーク800によって接続されているが、ネットワーク以外によって署名σを渡してもよい。署名装置300は、少なくとも署名記録部390、署名確認部340、署名乱数生成部350、署名計算部360、署名出力部370を備える。署名装置300は、さらに鍵乱数生成部310、鍵計算部320、鍵生成部330も備えてもよい。鍵乱数生成部310、鍵計算部320、鍵生成部330を備えていない場合は、公開鍵pkと対応する秘密鍵skを何らかの方法で鍵生成装置(鍵乱数生成部310、鍵計算部320、鍵生成部330を備える装置)から受け取り、署名記録部390に記録しておけばよい。なお、以下の説明では、鍵乱数生成部310、鍵計算部320、鍵生成部330を備えている場合について説明する。また、検証装置400は、検証入力部410、検証確認部420、検証出力部430、検証記録部490を備える。実施例2では、G、G、Gを位数qの群、eをG×G→Gの双線形写像、gとhを群Gの任意の生成元、gとh(ただし、h=g α)を群Gの任意の生成元、(M,M)を群G上の1以外の元であるMと群Gの元であるMからなるメッセージm、xとyを1以上q−1以下の任意の整数、X=h 、Y=g とする。なお、この署名・検証システムでは群GとGとは同じ群であってもかまわない。 In the signature / verification system of the second embodiment, the types of components are the same as those of the first embodiment, and the processing of each component is different. FIG. 4 shows a configuration example of the signature / verification system according to the second embodiment, FIG. 5 shows a processing flow of the signature apparatus, and FIG. 6 shows a processing flow of the verification apparatus. The signature / verification system according to the second embodiment includes a signature device 300 and a verification device 400. In this figure, the signature device 300 and the verification device 400 are connected by a network 800, but the signature σ may be passed by other than the network. The signature device 300 includes at least a signature recording unit 390, a signature confirmation unit 340, a signature random number generation unit 350, a signature calculation unit 360, and a signature output unit 370. The signature device 300 may further include a key random number generation unit 310, a key calculation unit 320, and a key generation unit 330. When the key random number generation unit 310, the key calculation unit 320, and the key generation unit 330 are not provided, the public key pk and the secret key sk corresponding to the public key pk are generated by a key generation device (the key random number generation unit 310, the key calculation unit 320, From the device including the key generation unit 330) and recorded in the signature recording unit 390. In the following description, a case where the key random number generation unit 310, the key calculation unit 320, and the key generation unit 330 are provided will be described. The verification apparatus 400 includes a verification input unit 410, a verification confirmation unit 420, a verification output unit 430, and a verification recording unit 490. In Example 2, G 1 , G 2 , and G T are groups of order q, e is a bilinear map of G 1 × G 2 → G T , g 1 and h 1 are arbitrary generators of group G 1 , g 2 and h 2 (where h 2 = g 2 α ) is an arbitrary generator of group G 2 , and (M 1 , M 2 ) is an element other than 1 on group G 1 and group G 2 A message m, x, and y consisting of M 2 that is an element of X is an arbitrary integer between 1 and q−1, and X 2 = h 2 x and Y 2 = g 2 y . In this signature / verification system, the groups G 1 and G 2 may be the same group.

(q,G,G,G,e,g,h,g,h)が公開情報Γとして公開されており、署名記録部390が、q,G,G,G,e,g,h,g,hを記録している。鍵乱数生成部310は、整数xと整数yを生成する(S310)。鍵計算部320は、
=h
=g
を計算する(S320)。鍵生成部330は、(q,G,G,G,e,g,h,g,h,X,Y)を公開鍵pkとし、(pk,α,x,y)を秘密鍵skとする。なお、公開鍵pkを(Γ,X,Y)としてもよい。ここまでの処理で、署名記録部390は、q,G,G,G,e,g,h,g,h,X,Y,α,x,yを記録した状態となる。署名確認部340は、e(M,h)=e(g,M)の条件を満たすかを確認する。そして、この条件を満たさない場合は、エラーを出力し、処理を終了する。この条件を満たす場合は次の処理に進む(S340)。署名乱数生成部350は、1以上q−1以下のランダムな整数rを生成する(S350)。署名計算部360は、
=g
=M ry
=h rx rxy
=g ry
を計算する(S360)。署名出力部370は(A,A,B,B)を署名σとして出力する(S370)。検証入力部410は、メッセージmと署名σとを受信する(S410)。検証確認部420は、
とMとが群G上の1以外の元であること、
e(M,h)=e(g,M)であること、
e(A,Y)=e(g,B)であること、
e(A,g)=e(M,B)であること、
e(g,B)=e(A,X)であること
を確認する(S420)。検証出力部430は、検証確認部420がすべての条件を満たすと確認した場合には署名が正しいことを示す情報(例えば、“1”)を出力し、いずれかの条件を満たさないと確認した場合に書名が正しくないことを示す情報(例えば、“0”)を出力する(S430)。
(Q, G 1 , G 2 , G T , e, g 1 , h 1 , g 2 , h 2 ) are disclosed as public information Γ, and the signature recording unit 390 stores q, G 1 , G 2 , G T, e, records the g 1, h 1, g 2 , h 2. The key random number generation unit 310 generates an integer x and an integer y (S310). The key calculation unit 320
X 2 = h 2 x
Y 2 = g 2 y
Is calculated (S320). The key generation unit 330 sets (q, G 1 , G 2 , G T , e, g 1 , h 1 , g 2 , h 2 , X 2 , Y 2 ) as a public key pk, and (pk, α, x , Y) is a secret key sk. The public key pk may be (Γ, X 2 , Y 2 ). In the processing so far, the signature recording unit 390 records q, G 1 , G 2 , G T , e, g 1 , h 1 , g 2 , h 2 , X 2 , Y 2 , α, x, y. It will be in the state. The signature confirmation unit 340 confirms whether the condition of e (M 1 , h 2 ) = e (g 1 , M 2 ) is satisfied. If this condition is not satisfied, an error is output and the process ends. If this condition is satisfied, the process proceeds to the next process (S340). The signature random number generation unit 350 generates a random integer r of 1 to q−1 (S350). The signature calculation unit 360
A 1 = g 1 r
A 2 = M 1 ry
B 3 = h 2 rx M 2 rxy
B 4 = g 2 ry
Is calculated (S360). The signature output unit 370 outputs (A 1 , A 2 , B 3 , B 4 ) as a signature σ (S 370). The verification input unit 410 receives the message m and the signature σ (S410). The verification confirmation unit 420
A 1 and M 1 are elements other than 1 on the group G 1 ;
e (M 1 , h 2 ) = e (g 1 , M 2 )
e (A 1 , Y 2 ) = e (g 1 , B 4 )
e (A 2 , g 2 ) = e (M 1 , B 4 ),
It is confirmed that e (g 1 , B 3 ) = e (A 1 A 2 , X 2 ) (S420). The verification output unit 430 outputs information (for example, “1”) indicating that the signature is correct when the verification confirmation unit 420 confirms that all the conditions are satisfied, and confirms that any of the conditions is not satisfied. In this case, information indicating that the book title is not correct (for example, “0”) is output (S430).

実施例2の署名・検証システムでも、署名を4つの群要素で構成でき、検証装置で確認しなければならないペアリングの等式を4つにできる。また、署名によって確認しなければならない事項(各要素が偽造されていないかなど)を減らすことなく、署名の構成を変えることだけで署名長を短くしているので、安全性の劣化を生じない。したがって、署名長が短く、検証式の計算量がより少なく、高い安全性が証明可能な、群要素メッセージに対するデジタル署名方法を提供できる。   Also in the signature / verification system of the second embodiment, the signature can be composed of four group elements, and the number of pairing equations that must be confirmed by the verification device can be increased to four. In addition, the signature length is shortened only by changing the configuration of the signature without reducing the matters that must be confirmed by the signature (whether each element has not been forged), so there is no deterioration in security. . Therefore, it is possible to provide a digital signature method for a group element message that has a short signature length, requires a smaller amount of calculation of a verification formula, and can prove high security.

また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。   Further, when the above-described configuration is realized by a computer, processing contents of functions that each device should have are described by a program. The processing functions are realized on the computer by executing the program on the computer.

この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。   The program describing the processing contents can be recorded on a computer-readable recording medium. As the computer-readable recording medium, for example, any recording medium such as a magnetic recording device, an optical disk, a magneto-optical recording medium, and a semiconductor memory may be used.

また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。   The program is distributed by selling, transferring, or lending a portable recording medium such as a DVD or CD-ROM in which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of the server computer and transferring the program from the server computer to another computer via a network.

このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。   A computer that executes such a program first stores, for example, a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device. When executing the process, the computer reads a program stored in its own recording medium and executes a process according to the read program. As another execution form of the program, the computer may directly read the program from a portable recording medium and execute processing according to the program, and the program is transferred from the server computer to the computer. Each time, the processing according to the received program may be executed sequentially. Also, the program is not transferred from the server computer to the computer, and the above-described processing is executed by a so-called ASP (Application Service Provider) type service that realizes the processing function only by the execution instruction and result acquisition. It is good. Note that the program in this embodiment includes information that is used for processing by an electronic computer and that conforms to the program (data that is not a direct command to the computer but has a property that defines the processing of the computer).

また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。   In this embodiment, the present apparatus is configured by executing a predetermined program on a computer. However, at least a part of these processing contents may be realized by hardware.

本発明は、電子データの正当性を証明するために利用することができる。   The present invention can be used to prove the validity of electronic data.

100、300、700 署名装置 110、310 鍵乱数生成部
120、320 鍵計算部 130、330 鍵生成部
140、340 署名確認部 150、350 署名乱数生成部
160、360 署名計算部 170、370 署名出力部
190、390 署名記録部 200、400、900 検証装置
210、410 検証入力部 220、420 検証確認部
230、430 検証出力部 290、490 検証記録部
800 ネットワーク
100, 300, 700 Signature device 110, 310 Key random number generation unit 120, 320 Key calculation unit 130, 330 Key generation unit 140, 340 Signature confirmation unit 150, 350 Signature random number generation unit 160, 360 Signature calculation unit 170, 370 Signature output Unit 190, 390 Signature recording unit 200, 400, 900 Verification device 210, 410 Verification input unit 220, 420 Verification confirmation unit 230, 430 Verification output unit 290, 490 Verification recording unit 800 Network

Claims (13)

、G、Gを位数qの群であってG→Gの写像およびその逆写像が効率的には計算できない群、eをG×G→Gのペアリング、gを群Gの任意の生成元、gを群Gの任意の生成元、(M,M)を群G上の1以外の元であるMと群Gの元であるMからなりe(M ,g )=e(g ,M )を満たすメッセージm、xとyを1以上q−1以下の任意の整数、X=g 、Y=g とし、
q,G,G,G,e,g,g,X,Y,x,yを記録する署名記録部と、
e(M,g)=e(g,M)であることを確認する署名確認部と、
1以上q−1以下のランダムな整数rを生成する署名乱数生成部と、
=g
=M ry
=g rx rxy
=g ry
を計算する署名計算部と、
(A,A,B,B)を署名σとして出力する署名出力部と
を備える署名装置と、
メッセージmと署名σとを受信する検証入力部と、
とMとが群G上の1以外の元であること、
e(M,g)=e(g,M)であること、
e(A,Y)=e(g,B)であること、
e(A,g)=e(M,B)であること、
e(g,B)=e(A,X)であること
を確認する検証確認部と、
前記検証確認部がすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に書名が正しくないことを示す情報を出力する検証出力部と
を備える検証装置と
を有する署名・検証システム。
G 1, G 2, the group mapping and its inverse mapping of a group of order q of G T G 1G 2 can not be computed efficiently, pairing the e G 1 × G 2 → G T any generator of the group G 1 to g 1, any generator of the g 2 groups G 2, M 1 and the group G 2 is a (M 1, M 2) other than 1 element on the group G 1 of e consists M 2 which is the original (M 1, g 2) = e (g 1, M 2) message satisfies the m, x and y one or more q-1 following any integer, X 2 = g 2 x , Y 2 = g 2 y ,
q, and G 1, G 2, G T , e, g 1, g 2, X 2, Y 2, x, the signature recording part for recording a y,
a signature confirmation unit for confirming that e (M 1 , g 2 ) = e (g 1 , M 2 );
A signature random number generator for generating a random integer r of 1 to q−1;
A 1 = g 1 r ,
A 2 = M 1 ry ,
B 3 = g 2 rx M 2 rxy ,
B 4 = g 2 ry
A signature calculation unit for calculating
A signature output unit that outputs (A 1 , A 2 , B 3 , B 4 ) as a signature σ;
A verification input unit for receiving the message m and the signature σ;
A 1 and M 1 are elements other than 1 on the group G 1 ;
e (M 1 , g 2 ) = e (g 1 , M 2 )
e (A 1 , Y 2 ) = e (g 1 , B 4 )
e (A 2 , g 2 ) = e (M 1 , B 4 ),
a verification confirmation unit for confirming that e (g 1 , B 3 ) = e (A 1 A 2 , X 2 );
When the verification confirmation unit confirms that all conditions are satisfied, information indicating that the signature is correct is output, and when it is determined that any of the conditions is not satisfied, information indicating that the title is incorrect is output. A signature / verification system comprising: a verification device comprising: a verification output unit.
請求項1記載の署名・検証システムであって、
前記署名装置は、さらに
整数xと整数yを生成する鍵乱数生成部と、
=g 、Y=g を計算する鍵計算部と、
(q,G,G,G,e,g,g,X,Y)を公開鍵pkとし、(pk,x,y)を秘密鍵skとする鍵生成部
も備える
ことを特徴とする署名・検証システム。
The signature / verification system according to claim 1,
The signature device further includes a key random number generation unit that generates an integer x and an integer y,
A key calculation unit for calculating X 2 = g 2 x and Y 2 = g 2 y ;
And (q, G 1, G 2 , G T, e, g 1, g 2, X 2, Y 2) of the public key pk, comprising (pk, x, y) be a key generation unit for the secret key sk and This is a signature / verification system.
、G、Gを位数qの群、eをG×G→Gの双線形写像、gとhを群Gの任意の生成元、gとh(ただし、h=g α)を群Gの任意の生成元、(M,M)を群G上の1以外の元であるMと群Gの元であるMからなりe(M ,h )=e(g ,M )を満たすメッセージm、xとyを1以上q−1以下の任意の整数、X=h 、Y=g とし、
q,G,G,G,e,g,h,g,h,X,Y,α,x,yを記録する署名記録部と、
e(M,h)=e(g,M)であることを確認する署名確認部と、
1以上q−1以下のランダムな整数rを生成する署名乱数生成部と、
=g
=M ry
=h rx rxy
=g ry
を計算する署名計算部と、
(A,A,B,B)を署名σとして出力する署名出力部と
を備える署名装置と、
メッセージmと署名σとを受信する検証入力部と、
とMとが群G上の1以外の元であること、
e(M,h)=e(g,M)であること、
e(A,Y)=e(g,B)であること、
e(A,g)=e(M,B)であること、
e(g,B)=e(A,X)であること
を確認する検証確認部と、
前記検証確認部がすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に書名が正しくないことを示す情報を出力する検証出力部と
を備える検証装置と
を有する署名・検証システム。
G 1 , G 2 , G T are groups of order q, e is a bilinear map of G 1 × G 2 → G T , g 1 and h 1 are arbitrary generators of group G 1 , g 2 and h 2 (Where h 2 = g 2 α ) is an arbitrary generator of the group G 2 , and (M 1 , M 2 ) is an element other than 1 on the group G 1 and an element M of the group G 2 2 Tona Ri e (M 1, h 2) = e (g 1, M 2) message satisfies the m, x and y one or more q-1 following any integer, X 2 = h 2 x, Y 2 = G 2 y ,
q, and G 1, G 2, G T , e, g 1, h 1, g 2, h 2, X 2, Y 2, α, x, the signature recording part for recording a y,
a signature confirmation unit for confirming that e (M 1 , h 2 ) = e (g 1 , M 2 );
A signature random number generator for generating a random integer r of 1 to q−1;
A 1 = g 1 r ,
A 2 = M 1 ry ,
B 3 = h 2 rx M 2 rxy ,
B 4 = g 2 ry
A signature calculation unit for calculating
A signature output unit that outputs (A 1 , A 2 , B 3 , B 4 ) as a signature σ;
A verification input unit for receiving the message m and the signature σ;
A 1 and M 1 are elements other than 1 on the group G 1 ;
e (M 1 , h 2 ) = e (g 1 , M 2 )
e (A 1 , Y 2 ) = e (g 1 , B 4 )
e (A 2 , g 2 ) = e (M 1 , B 4 ),
a verification confirmation unit for confirming that e (g 1 , B 3 ) = e (A 1 A 2 , X 2 );
When the verification confirmation unit confirms that all conditions are satisfied, information indicating that the signature is correct is output, and when it is determined that any of the conditions is not satisfied, information indicating that the title is incorrect is output. A signature / verification system comprising: a verification device comprising: a verification output unit.
請求項3記載の署名・検証システムであって、
前記署名装置は、さらに
整数xと整数yを生成する鍵乱数生成部と、
=h 、Y=g を計算する鍵計算部と、
(q,G,G,G,e,g,h,g,h,X,Y)を公開鍵pkとし、(pk,α,x,y)を秘密鍵skとする鍵生成部
も備える
ことを特徴とする署名・検証システム。
The signature / verification system according to claim 3,
The signature device further includes a key random number generation unit that generates an integer x and an integer y,
A key calculation unit for calculating X 2 = h 2 x and Y 2 = g 2 y ;
And (q, G 1, G 2 , G T, e, g 1, h 1, g 2, h 2, X 2, Y 2) a public key pk, (pk, α, x , y) and private key A signature / verification system comprising a key generation unit for sk.
署名装置と検証装置とを含む署名・検証システムでの署名・検証方法であって、
、G、Gを位数qの群であってG→Gの写像およびその逆写像が効率的には計算できない群、eをG×G→Gのペアリング、gを群Gの任意の生成元、gを群Gの任意の生成元、(M,M)を群G上の1以外の元であるMと群Gの元であるMからなりe(M ,g )=e(g ,M )を満たすメッセージm、xとyを1以上q−1以下の任意の整数、X=g 、Y=g とし、
前記署名装置において、
署名記録部に、q,G,G,G,e,g,gをあらかじめ記録しておき、
鍵乱数生成部が、整数xと整数yを生成する鍵乱数生成ステップと、
鍵計算部が、X=g 、Y=g を計算する鍵計算ステップと、
鍵生成部が、(q,G,G,G,e,g,g,X,Y)を公開鍵pkとし、(pk,x,y)を秘密鍵skとする鍵生成ステップと、
署名確認部が、e(M,g)=e(g,M)であることを確認する署名確認ステップと、
署名乱数生成部が、1以上q−1以下のランダムな整数rを生成する署名乱数生成ステップと、
署名計算部が、
=g
=M ry
=g rx rxy
=g ry
を計算する署名計算ステップと、
署名出力部が、(A,A,B,B)を署名σとして出力する署名出力ステップと
を有し、
前記検証装置において、
検証入力部が、メッセージmと署名σとを受信する検証入力ステップと、
検証確認部が、
とMとが群G上の1以外の元であること、
e(M,g)=e(g,M)であること、
e(A,Y)=e(g,B)であること、
e(A,g)=e(M,B)であること、
e(g,B)=e(A,X)であること
を確認する検証確認ステップと、
検証出力部が、前記検証確認ステップがすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に書名が正しくないことを示す情報を出力する検証出力ステップと
を有する署名・検証方法。
A signature / verification method in a signature / verification system including a signature device and a verification device,
G 1, G 2, the group mapping and its inverse mapping of a group of order q of G T G 1G 2 can not be computed efficiently, pairing the e G 1 × G 2 → G T any generator of the group G 1 to g 1, any generator of the g 2 groups G 2, M 1 and the group G 2 is a (M 1, M 2) other than 1 element on the group G 1 of M 2 Tona Ri e is the original (M 1, g 2) = e (g 1, M 2) message satisfies the m, x and y one or more q-1 following any integer, X 2 = g 2 x , Y 2 = g 2 y
In the signature device,
Q, G 1 , G 2 , G T , e, g 1 , g 2 are recorded in advance in the signature recording unit,
A key random number generation unit for generating an integer x and an integer y;
A key calculation step in which the key calculation unit calculates X 2 = g 2 x and Y 2 = g 2 y ;
The key generation unit sets (q, G 1 , G 2 , G T , e, g 1 , g 2 , X 2 , Y 2 ) as the public key pk and (pk, x, y) as the secret key sk. A key generation step;
A signature confirmation step in which the signature confirmation unit confirms that e (M 1 , g 2 ) = e (g 1 , M 2 );
A signature random number generation unit for generating a random integer r between 1 and q−1;
The signature calculation department
A 1 = g 1 r ,
A 2 = M 1 ry ,
B 3 = g 2 rx M 2 rxy ,
B 4 = g 2 ry
A signature calculation step for calculating
A signature output unit including a signature output step of outputting (A 1 , A 2 , B 3 , B 4 ) as a signature σ,
In the verification device,
A verification input step in which the verification input unit receives the message m and the signature σ;
Verification verification part
A 1 and M 1 are elements other than 1 on the group G 1 ;
e (M 1 , g 2 ) = e (g 1 , M 2 )
e (A 1 , Y 2 ) = e (g 1 , B 4 )
e (A 2 , g 2 ) = e (M 1 , B 4 ),
a verification check step for confirming that e (g 1 , B 3 ) = e (A 1 A 2 , X 2 );
The verification output unit outputs information indicating that the signature is correct when the verification confirmation step confirms that all conditions are satisfied, and confirms that the title is not correct when it is confirmed that any of the conditions is not satisfied. And a verification output step for outputting information indicating the signature / verification method.
署名装置と検証装置とを含む署名・検証システムでの署名・検証方法であって、
、G、Gを位数qの群、eをG×G→Gの双線形写像、gとhを群Gの任意の生成元、gとh(ただし、h=g α)を群Gの任意の生成元、(M,M)を群G上の1以外の元であるMと群Gの元であるMからなりe(M ,h )=e(g ,M )を満たすメッセージm、xとyを1以上q−1以下の任意の整数、X=h 、Y=g とし、
前記署名装置において、
署名記録部に、q,G,G,G,e,g,h,g,hをあらかじめ記録しておき、
鍵乱数生成部が、整数xと整数yを生成する鍵乱数生成ステップと、
鍵計算部が、X=h 、Y=g を計算する鍵計算ステップと、
鍵生成部が、(q,G,G,G,e,g,h,g,h,X,Y)を公開鍵pkとし、(pk,α,x,y)を秘密鍵skとする鍵生成ステップと、
署名確認部が、e(M,h)=e(g,M)であることを確認する署名確認ステップと、
署名乱数生成部が、1以上q−1以下のランダムな整数rを生成する署名乱数生成ステップと、
署名計算部が、
=g
=M ry
=h rx rxy
=g ry
を計算する署名計算ステップと、
署名出力部が、(A,A,B,B)を署名σとして出力する署名出力ステップと
を有し、
前記検証装置において、
検証入力部が、メッセージmと署名σとを受信する検証入力ステップと、
検証確認部が、
とMとが群G上の1以外の元であること、
e(M,h)=e(g,M)であること、
e(A,Y)=e(g,B)であること、
e(A,g)=e(M,B)であること、
e(g,B)=e(A,X)であること
を確認する検証確認ステップと、
検証出力部が、前記検証確認ステップがすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に書名が正しくないことを示す情報を出力する検証出力ステップと
を有する署名・検証方法。
A signature / verification method in a signature / verification system including a signature device and a verification device,
G 1 , G 2 , G T are groups of order q, e is a bilinear map of G 1 × G 2 → G T , g 1 and h 1 are arbitrary generators of group G 1 , g 2 and h 2 (Where h 2 = g 2 α ) is an arbitrary generator of the group G 2 , and (M 1 , M 2 ) is an element other than 1 on the group G 1 and an element M of the group G 2 2 Tona Ri e (M 1, h 2) = e (g 1, M 2) message satisfies the m, x and y one or more q-1 following any integer, X 2 = h 2 x, Y 2 = G 2 y ,
In the signature device,
In the signature recording unit, q, G 1 , G 2 , G T , e, g 1 , h 1 , g 2 , h 2 are recorded in advance,
A key random number generation unit for generating an integer x and an integer y;
A key calculation step in which the key calculation unit calculates X 2 = h 2 x and Y 2 = g 2 y ;
The key generation unit sets (q, G 1 , G 2 , G T , e, g 1 , h 1 , g 2 , h 2 , X 2 , Y 2 ) as the public key pk, and (pk, α, x, a key generation step using y) as a secret key sk;
A signature confirmation step in which the signature confirmation unit confirms that e (M 1 , h 2 ) = e (g 1 , M 2 );
A signature random number generation unit for generating a random integer r between 1 and q−1;
The signature calculation department
A 1 = g 1 r ,
A 2 = M 1 ry ,
B 3 = h 2 rx M 2 rxy ,
B 4 = g 2 ry
A signature calculation step for calculating
A signature output unit including a signature output step of outputting (A 1 , A 2 , B 3 , B 4 ) as a signature σ,
In the verification device,
A verification input step in which the verification input unit receives the message m and the signature σ;
Verification verification part
A 1 and M 1 are elements other than 1 on the group G 1 ;
e (M 1 , h 2 ) = e (g 1 , M 2 )
e (A 1 , Y 2 ) = e (g 1 , B 4 )
e (A 2 , g 2 ) = e (M 1 , B 4 ),
a verification check step for confirming that e (g 1 , B 3 ) = e (A 1 A 2 , X 2 );
The verification output unit outputs information indicating that the signature is correct when the verification confirmation step confirms that all conditions are satisfied, and confirms that the title is not correct when it is confirmed that any of the conditions is not satisfied. And a verification output step for outputting information indicating the signature / verification method.
、G、Gを位数qの群であってG→Gの写像およびその逆写像が効率的には計算できない群、eをG×G→Gのペアリング、gを群Gの任意の生成元、gを群Gの任意の生成元、(M,M)を群G上の1以外の元であるMと群Gの元であるMからなりe(M ,g )=e(g ,M )を満たすメッセージm、xとyを1以上q−1以下の任意の整数、X=g 、Y=g とし、
q,G,G,G,e,g,g,X,Y,x,yを記録する署名記録部と、
e(M,g)=e(g,M)であることを確認する署名確認部と、
1以上q−1以下のランダムな整数rを生成する署名乱数生成部と、
=g
=M ry
=g rx rxy
=g ry
を計算する署名計算部と、
(A,A,B,B)を署名σとして出力する署名出力部と
を備える署名装置。
G 1, G 2, the group mapping and its inverse mapping of a group of order q of G T G 1G 2 can not be computed efficiently, pairing the e G 1 × G 2 → G T any generator of the group G 1 to g 1, any generator of the g 2 groups G 2, M 1 and the group G 2 is a (M 1, M 2) other than 1 element on the group G 1 of M 2 Tona Ri e is the original (M 1, g 2) = e (g 1, M 2) message satisfies the m, x and y one or more q-1 following any integer, X 2 = g 2 x , Y 2 = g 2 y
q, and G 1, G 2, G T , e, g 1, g 2, X 2, Y 2, x, the signature recording part for recording a y,
a signature confirmation unit for confirming that e (M 1 , g 2 ) = e (g 1 , M 2 );
A signature random number generator for generating a random integer r of 1 to q−1;
A 1 = g 1 r ,
A 2 = M 1 ry ,
B 3 = g 2 rx M 2 rxy ,
B 4 = g 2 ry
A signature calculation unit for calculating
And a signature output unit that outputs (A 1 , A 2 , B 3 , B 4 ) as a signature σ.
請求項7記載の署名装置であって、
整数xと整数yを生成する鍵乱数生成部と、
=g 、Y=g を計算する鍵計算部と、
(q,G,G,G,e,g,g,X,Y)を公開鍵pkとし、(pk,x,y)を秘密鍵skとする鍵生成部
も備えることを特徴とする署名装置。
The signature device according to claim 7,
A key random number generator for generating an integer x and an integer y;
A key calculation unit for calculating X 2 = g 2 x and Y 2 = g 2 y ;
And (q, G 1, G 2 , G T, e, g 1, g 2, X 2, Y 2) of the public key pk, comprising (pk, x, y) be a key generation unit for the secret key sk and The signature apparatus characterized by the above-mentioned.
、G、Gを位数qの群、eをG×G→Gの双線形写像、gとhを群Gの任意の生成元、gとh(ただし、h=g α)を群Gの任意の生成元、(M,M)を群G上の1以外の元であるMと群Gの元であるMからなりe(M ,h )=e(g ,M )を満たすメッセージm、xとyを1以上q−1以下の任意の整数、X=h 、Y=g とし、
q,G,G,G,e,g,h,g,h,X,Y,α,x,yを記録する署名記録部と、
e(M,h)=e(g,M)であることを確認する署名確認部と、
1以上q−1以下のランダムな整数rを生成する署名乱数生成部と、
=g
=M ry
=h rx rxy
=g ry
を計算する署名計算部と、
(A,A,B,B)を署名σとして出力する署名出力部と
を備える署名装置。
G 1 , G 2 , G T are groups of order q, e is a bilinear map of G 1 × G 2 → G T , g 1 and h 1 are arbitrary generators of group G 1 , g 2 and h 2 (Where h 2 = g 2 α ) is an arbitrary generator of the group G 2 , and (M 1 , M 2 ) is an element other than 1 on the group G 1 and an element M of the group G 2 2 Tona Ri e (M 1, h 2) = e (g 1, M 2) message satisfies the m, x and y one or more q-1 following any integer, X 2 = h 2 x, Y 2 = G 2 y ,
q, and G 1, G 2, G T , e, g 1, h 1, g 2, h 2, X 2, Y 2, α, x, the signature recording part for recording a y,
a signature confirmation unit for confirming that e (M 1 , h 2 ) = e (g 1 , M 2 );
A signature random number generator for generating a random integer r of 1 to q−1;
A 1 = g 1 r ,
A 2 = M 1 ry ,
B 3 = h 2 rx M 2 rxy ,
B 4 = g 2 ry
A signature calculation unit for calculating
And a signature output unit that outputs (A 1 , A 2 , B 3 , B 4 ) as a signature σ.
請求項9記載の署名装置であって、
整数xと整数yを生成する鍵乱数生成部と、
=h 、Y=g を計算する鍵計算部と、
(q,G,G,G,e,g,h,g,h,X,Y)を公開鍵pkとし、(pk,α,x,y)を秘密鍵skとする鍵生成部
も備えることを特徴とする署名装置。
The signature device according to claim 9, comprising:
A key random number generator for generating an integer x and an integer y;
A key calculation unit for calculating X 2 = h 2 x and Y 2 = g 2 y ;
And (q, G 1, G 2 , G T, e, g 1, h 1, g 2, h 2, X 2, Y 2) a public key pk, (pk, α, x , y) and private key A signature apparatus comprising a key generation unit for sk.
、G、Gを位数qの群であってG→Gの写像およびその逆写像が効率的には計算できない群、eをG×G→Gのペアリング、gを群Gの任意の生成元、gを群Gの任意の生成元、(M,M)を群G上の1以外の元であるMと群Gの元であるMからなりe(M ,g )=e(g ,M )を満たすメッセージm、xとyとrを1以上q−1以下の任意の整数、X=g 、Y=g とし、
=g
=M ry
=g rx rxy
=g ry
のように計算した(A ,A ,B ,B )を正しい署名σであると確認するための検証装置であって、
メッセージmと署名σとを受信する検証入力部と、
とMとが群G上の1以外の元であること、
e(M,g)=e(g,M)であること、
e(A,Y)=e(g,B)であること、
e(A,g)=e(M,B)であること、
e(g,B)=e(A,X)であること
を確認する検証確認部と、
前記検証確認部がすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に書名が正しくないことを示す情報を出力する検証出力部と
を備える検証装置。
G 1, G 2, the group mapping and its inverse mapping of a group of order q of G T G 1G 2 can not be computed efficiently, pairing the e G 1 × G 2 → G T any generator of the group G 1 to g 1, any generator of the g 2 groups G 2, M 1 and the group G 2 is a (M 1, M 2) other than 1 element on the group G 1 of M 2 Tona Ri e is the original (M 1, g 2) = e (g 1, M 2) messages satisfy m, x, y and r to 1 or q-1 following any integer, X 2 = G 2 x , Y 2 = g 2 y
A 1 = g 1 r ,
A 2 = M 1 ry ,
B 3 = g 2 rx M 2 rxy ,
B 4 = g 2 ry
(A 1 , A 2 , B 3 , B 4 ) calculated as follows:
A verification input unit for receiving the message m and the signature σ;
A 1 and M 1 are elements other than 1 on the group G 1 ;
e (M 1 , g 2 ) = e (g 1 , M 2 )
e (A 1 , Y 2 ) = e (g 1 , B 4 )
e (A 2 , g 2 ) = e (M 1 , B 4 ),
a verification confirmation unit for confirming that e (g 1 , B 3 ) = e (A 1 A 2 , X 2 );
When the verification confirmation unit confirms that all conditions are satisfied, information indicating that the signature is correct is output, and when it is determined that any of the conditions is not satisfied, information indicating that the title is incorrect is output. A verification device comprising: a verification output unit.
、G、Gを位数qの群、eをG×G→Gの双線形写像、gとhを群Gの任意の生成元、gとh(ただし、h=g α)を群Gの任意の生成元、(M,M)を群G上の1以外の元であるMと群Gの元であるMからなりe(M ,h )=e(g ,M )を満たすメッセージm、xとyとrを1以上q−1以下の任意の整数、X=h 、Y=g とし、
=g
=M ry
=h rx rxy
=g ry
のように計算した(A ,A ,B ,B )を正しい署名σであると確認するための検証装置であって、
メッセージmと署名σとを受信する検証入力部と、
とMとが群G上の1以外の元であること、
e(M,h)=e(g,M)であること、
e(A,Y)=e(g,B)であること、
e(A,g)=e(M,B)であること、
e(g,B)=e(A,X)であること
を確認する検証確認部と、
前記検証確認部がすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に書名が正しくないことを示す情報を出力する検証出力部と
を備える検証装置。
G 1 , G 2 , G T are groups of order q, e is a bilinear map of G 1 × G 2 → G T , g 1 and h 1 are arbitrary generators of group G 1 , g 2 and h 2 (Where h 2 = g 2 α ) is an arbitrary generator of the group G 2 , and (M 1 , M 2 ) is an element other than 1 on the group G 1 and an element M of the group G 2 2 Tona Ri e (M 1, h 2) = e (g 1, M 2) messages satisfy m, x, y and r to 1 or q-1 following any integer, X 2 = h 2 x, Y 2 = g 2 y
A 1 = g 1 r ,
A 2 = M 1 ry ,
B 3 = h 2 rx M 2 rxy ,
B 4 = g 2 ry
(A 1 , A 2 , B 3 , B 4 ) calculated as follows:
A verification input unit for receiving the message m and the signature σ;
A 1 and M 1 are elements other than 1 on the group G 1 ;
e (M 1 , h 2 ) = e (g 1 , M 2 )
e (A 1 , Y 2 ) = e (g 1 , B 4 )
e (A 2 , g 2 ) = e (M 1 , B 4 ),
a verification confirmation unit for confirming that e (g 1 , B 3 ) = e (A 1 A 2 , X 2 );
When the verification confirmation unit confirms that all conditions are satisfied, information indicating that the signature is correct is output, and when it is determined that any of the conditions is not satisfied, information indicating that the title is incorrect is output. A verification device comprising: a verification output unit.
請求項7から10のいずれかに記載の署名装置、もしくは請求項11または12に記載の検証装置のいずれかの装置として、コンピュータを動作させるためのプログラム。   A program for operating a computer as the signature device according to any one of claims 7 to 10 or the verification device according to claim 11 or 12.
JP2009260882A 2009-11-16 2009-11-16 Signature / verification system, signature / verification method, signature device, verification device, program Expired - Fee Related JP5330964B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009260882A JP5330964B2 (en) 2009-11-16 2009-11-16 Signature / verification system, signature / verification method, signature device, verification device, program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009260882A JP5330964B2 (en) 2009-11-16 2009-11-16 Signature / verification system, signature / verification method, signature device, verification device, program

Publications (2)

Publication Number Publication Date
JP2011107319A JP2011107319A (en) 2011-06-02
JP5330964B2 true JP5330964B2 (en) 2013-10-30

Family

ID=44230872

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009260882A Expired - Fee Related JP5330964B2 (en) 2009-11-16 2009-11-16 Signature / verification system, signature / verification method, signature device, verification device, program

Country Status (1)

Country Link
JP (1) JP5330964B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013111673A1 (en) * 2012-01-24 2013-08-01 日本電信電話株式会社 Signature verification system, signature device, verification device, and signature verification method

Also Published As

Publication number Publication date
JP2011107319A (en) 2011-06-02

Similar Documents

Publication Publication Date Title
JP5790319B2 (en) Signature verification apparatus, signature verification method, program, and recording medium
JP5736816B2 (en) Authentication device, authentication method, program, and signature generation device
JP6069852B2 (en) Information processing apparatus, information processing method, and program
CN101877635B (en) Image processing apparatus and method, electronic signature generation system, electronic signature key generation method
KR102747331B1 (en) Computer implemented method and system for obtaining digitally signed data
KR20230002941A (en) (EC)DSA Threshold Signature with Secret Sharing
US20120323981A1 (en) Proxy calculation system, proxy calculation method, proxy calculation requesting apparatus, and proxy calculation program and recording medium therefor
JP5790287B2 (en) Information processing apparatus, information processing method, program, and recording medium
JP2015126332A (en) Cryptographic communication system, cryptographic communication method, program
JP5331027B2 (en) Signature / verification system, signature / verification method, signature device, verification device, program, recording medium
JP5330964B2 (en) Signature / verification system, signature / verification method, signature device, verification device, program
JP5572580B2 (en) Lost communication system, lost communication method, and program
JP5790286B2 (en) Information processing apparatus, signature generation apparatus, information processing method, signature generation method, and program
JP5815754B2 (en) Signature verification system, signature device, verification device, and signature verification method
JP5331028B2 (en) Signature / verification system, signature / verification method, signature device, verification device, program, recording medium
JP5314449B2 (en) Electronic signature verification system, electronic signature device, verification device, electronic signature verification method, electronic signature method, verification method, electronic signature program, verification program
JP5069157B2 (en) Signature system, signature method, verification device, verification device, verification method, verification method, program
CN112385181A (en) Apparatus, method, and program for certifying authenticity of public key
JP5227764B2 (en) Electronic signature verification system, electronic signature device, verification device, electronic signature verification method, electronic signature method, verification method, electronic signature program, verification program
WO2013031413A1 (en) Information processing device, information processing method, program, and recording medium
JP5907906B2 (en) Certification system, certification device, verification device, certification method
JP5907910B2 (en) Certification system, certification device, verification device, certification method
Aboud et al. Efficient multiple‐collision trapdoor hash family
Bernstein et al. Progress in Cryptology-AFRICACRYPT 2010: Third International Conference on Cryptology in Africa, Stellenbosch, South Africa, May 3-6, 2010, Proceedings
JPWO2019039382A1 (en) Consensus systems, consensus devices, programs, and recording media

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110722

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130528

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130628

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130716

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130726

R150 Certificate of patent or registration of utility model

Ref document number: 5330964

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees