JP5331028B2 - Signature / verification system, signature / verification method, signature device, verification device, program, recording medium - Google Patents

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

Info

Publication number
JP5331028B2
JP5331028B2 JP2010035929A JP2010035929A JP5331028B2 JP 5331028 B2 JP5331028 B2 JP 5331028B2 JP 2010035929 A JP2010035929 A JP 2010035929A JP 2010035929 A JP2010035929 A JP 2010035929A JP 5331028 B2 JP5331028 B2 JP 5331028B2
Authority
JP
Japan
Prior art keywords
signature
key
verification
unit
integer
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
JP2010035929A
Other languages
Japanese (ja)
Other versions
JP2011170247A (en
Inventor
正幸 阿部
美也子 大久保
ハラランビエフ クリスチャン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2010035929A priority Critical patent/JP5331028B2/en
Publication of JP2011170247A publication Critical patent/JP2011170247A/en
Application granted granted Critical
Publication of JP5331028B2 publication Critical patent/JP5331028B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a signature method, wherein signature length is short and calculation amount of signature generation and signature verification is smaller. <P>SOLUTION: In a signature and verification system, a bilinear map composed of different groups (G<SB>1</SB>, G<SB>2</SB>) is used to assume that mapping from a group G<SB>1</SB>to a group G<SB>2</SB>is difficult and, by using the property where the exponent part of different generators is hard to determine, a message on two different groups is output as a signature. A signature device includes at least a signature recording section, a commitment group element selection section, a commitment random number generation section, a commitment calculation section, a key random number generation section, a key calculation section, a key group element selection section, a key randomizing section, a key generation section, a message acquisition section, a signature random number generation section, a signature calculation section, and a signature output section. A verification device includes a verification input section, a verification confirmation section, and a verification output section. <P>COPYRIGHT: (C)2011,JPO&amp;INPIT

Description

本発明は、主に電気通信を介したメッセージの授受の際に用いる署名・検証システム、署名・検証方法、署名装置、検証装置、プログラム、記録媒体に関する。   The present invention relates to a signature / verification system, a signature / verification method, a signature device, a verification device, a program, and a recording medium, 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 0005331028
Figure 0005331028

=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 of the conditions is not satisfied, information indicating that the signature is incorrect is output (S930). .

Jens Groth and AmitSahai, “Efficient Non-interactive Proof Systems for Bilinear Groups”, Eurocrypt 2008, LNCS 2965, pp.415-432.Jens Groth and AmitSahai, “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 [平成22年2月5日検索]、インターネット<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 [Search February 5, 2010], Internet <URL: http://eprint.iacr.org/cgi- bin / getfile.pl? entry = 2008/163 & version = 20080806: 150034 & file = 163.pdf>. Georg Fuchsbauer, “AutomorphicSignatures in Bilinear Groups”, IACR e-print 200/320 [平成22年2月5日検索]、インターネット<URL: http://eprint.iacr.org/2009/320.pdf>.Georg Fuchsbauer, “AutomorphicSignatures in Bilinear Groups”, IACR e-print 200/320 [searched February 5, 2010], Internet <URL: http://eprint.iacr.org/2009/320.pdf>.

しかしながら、従来技術は署名・検証システムでは、署名が群Gの5つの要素からなり、また、検証においては5つのペアリングの等式を確認するため、効率が悪いという課題がある。また、メッセージは群要素の対(M,N)∈Gであって、e(M,H)=e(g,N)を満たさなければならないという制約がある。 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. In addition, the message is a group element pair (M, N) ∈ G 2 , and there is a restriction that e (M, H) = e (g, N) must be satisfied.

そこで、本発明では、署名長が短く、署名生成と署名検証の計算量がより少な署名方法を提供することを目的とする。   Therefore, an object of the present invention is to provide a signature method that has a short signature length and a smaller amount of calculation for signature generation and signature verification.

本発明の署名・検証システムは、群要素の複数メッセージに対して署名生成と署名検証を行う。まず、G、GをGからGへの写像が困難な位数pの群、Gを位数pの群、eをG×G→Gの双線形写像、Kを2以上の整数、^をべき乗を示す記号とする。本発明の署名・検証システムは、署名装置と検証装置で構成される。署名装置は、署名記録部、コミットメント群要素選択部、コミットメント乱数生成部、コミットメント計算部、CRS生成部、鍵乱数生成部、鍵計算部、鍵群要素選択部、鍵ランダマイズ部、鍵生成部、メッセージ取得部、署名乱数生成部、署名計算部、署名ランダマイズ部、署名出力部を備える。検証装置は、検証入力部、検証確認部、検証出力部を備える。署名記録部は、p,G,G,G,eを記録する。コミットメント群要素選択部は、群Gの生成元g,hをランダムに選択する。コミットメント乱数生成部は、1以上p−1以下のランダムな整数x,…,xと整数y,…,yを生成する。コミットメント計算部は、
k=1,…,Kに対して、
=g^x
=h^y
を計算する。CRS生成部は、(,G,G,G,e,g,h,…,g,h)をCRS(Common Reference String)として設定し、(x,y,…,x,y)をトラップドアτとする。鍵乱数生成部は、1以上p−1以下のランダムな整数α,βと、ランダムな整数α,…,αと整数β,…,βを生成する。鍵計算部は、
=g^α
=g^β
を計算する。鍵群要素選択部は、群Gの生成元gをランダムに選択する。鍵ランダマイズ部は、
The signature / verification system of the present invention performs signature generation and signature verification for a plurality of messages of group elements. First, G 1, G 2 a mapping is difficult order p groups from G 1 to G 2, bilinear mapping of a group of order p of G T, the e G 1 × G 2 → G T, K Is an integer of 2 or more, and ^ is a symbol indicating a power. The signature / verification system of the present invention includes a signature device and a verification device. The signature device includes a signature recording unit, a commitment group element selection unit, a commitment random number generation unit, a commitment calculation unit, a CRS generation unit, a key random number generation unit, a key calculation unit, a key group element selection unit, a key randomization unit, a key generation unit, A message acquisition unit, a signature random number generation unit, a signature calculation unit, a signature randomization unit, and a signature output unit are provided. The verification apparatus includes a verification input unit, a verification confirmation unit, and a verification output unit. The signature recording unit records p, G 1 , G 2 , G T , and e. The commitment group element selection unit randomly selects the generation sources g 0 and h 0 of the group G 2 . Commitment random number generator, a random integer x 1 of 1 or more p-1 or less, ..., x K and integer y 1, ..., and generates a y K. The commitment calculator
For k = 1, ..., K,
g k = g 0 ^ x k ,
h k = h 0 ^ y k ,
Calculate The CRS generator sets ( p 1 , G 1 , G 2 , G T , e, g 0 , h 0 ,..., G K , h K ) as a CRS (Common Reference String), and (x 1 , y 1 ,..., X K , y K ) are trap doors τ. The key random number generation unit, one or more p-1 or less random integer alpha z, and beta z, random integer α 0, ..., α K and integer beta 0, ..., to produce a beta K. The key calculator is
g z = g 0 ^ α z ,
h z = g 0 ^ β z ,
Calculate Key group element selection unit selects the origin g s of the group G 2 at random. The key randomization department

Figure 0005331028
Figure 0005331028

となる(g,g^α)以外の組合せ(a1k,a2k)と、(h,g^β)以外の組合せ(b1k,b2k)を求める。鍵生成部は、(g,α,β,α,β,…,α,β)を秘密鍵skとし、(g,h,{a10,a20,b10,b20},…,{a1K,a2K,b1K,b2K})を検証鍵vkとし、当該検証鍵vkを公開する。メッセージ取得部は、群G上の1以外の元であるメッセージm,…,mを受け取る。署名乱数生成部は、1以上p−1以下のランダムな整数ζ,η,…,η,ξ,…,ξを生成する。署名計算部は、 A combination (a 1k , a 2k ) other than (g k , g s ^ α k ) and a combination (b 1k , b 2k ) other than (h k , g s ^ β k ) are obtained. Key generating unit, (g s, α z, β z, α 0, β 0, ..., α K, β K) was used as a secret key sk, (g z, h z , {a 10, a 20, b 10 , b 20 },..., {A 1K , a 2K , b 1K , b 2K }) are used as verification keys vk, and the verification keys vk are disclosed. The message acquisition unit receives messages m 1 ,..., M K that are elements other than 1 on the group G 2 . Signature random number generation unit, one or more p-1 or less random integer ζ, η 1, ..., η K, ξ 1, ..., to generate the xi] K. The signature calculator is

Figure 0005331028
Figure 0005331028

を計算する。署名ランダマイズ部は、 Calculate The signature randomization department

Figure 0005331028
Figure 0005331028

となる(r’,s’)以外の組合せ(r,s)と、(u’,v’)以外の組合せ(u,v)を求める。署名出力部は、(z,t,w,{r,s,u,v},…,{r,s,u,v})を署名σとして出力する。検証装置の検証入力部は、メッセージm,…,mと署名σとを受信する。検証確認部は、 Become (r 'k, s' k ) except combinations (r k, s k) and obtains the (u 'k, v' k ) except combinations (u k, v k). The signature output unit outputs (z, t, w, {r 1 , s 1 , u 1 , v 1 },..., {R K , s K , u K , v K }) as a signature σ. The verification input unit of the verification device receives the messages m 1 ,..., M K and the signature σ. The verification confirmation part

Figure 0005331028
Figure 0005331028

で得られるA,Bに対して、 For A and B obtained by

Figure 0005331028
Figure 0005331028

であることを確認する。検証出力部は、検証確認部がすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に署名が正しくないことを示す情報を出力する。 Make sure that The verification output unit outputs information indicating that the signature is correct when the verification confirmation unit confirms that all conditions are satisfied, and indicates that the signature is incorrect when it is confirmed that any of the conditions is not satisfied. Output information.

本発明の署名・検証システムは、異なる群(G,G)からなる双線形写像を利用し、群Gから群Gへの写像が困難であることを仮定し、異なる生成元の指数部を求めることが難しい性質を利用し、2つの異なる群上でのメッセージを署名のアウトプットとしている。 The signature / verification system of the present invention uses a bilinear mapping composed of different groups (G 1 , G 2 ), assumes that it is difficult to map from the group G 1 to the group G 2 , and uses different generation sources. Using the property that it is difficult to find the exponent part, messages on two different groups are used as signature output.

したがって、本発明の署名・検証システムによれば、群要素の複数メッセージに対して、ここに署名を生成するよりも、署名長を短くでき、署名生成と署名検証に必要な計算量を少なくできる。   Therefore, according to the signature / verification system of the present invention, the signature length can be shortened and the amount of calculation required for signature generation and signature verification can be reduced compared to the case where signatures are generated for a plurality of group element messages. .

従来の署名・検証システムの構成例を示す図。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. 実施例1、実施例1変形例1、実施例1変形例2の署名・検証システムの機能構成例を示す図。The figure which shows the function structural example of the signature and verification system of Example 1, Example 1 modification 1, Example 1 modification 2. FIG. 実施例1、実施例1変形例1、実施例1変形例2の署名装置の処理フローを示す図。The figure which shows the processing flow of the signature apparatus of Example 1, Example 1 modification 1, Example 1 modification 2. FIG. 本発明の検証装置の処理フローを示す図。The figure which shows the processing flow of the verification apparatus of this invention. 実施例2の署名・検証システムの機能構成例を示す図。FIG. 9 is a diagram illustrating a functional configuration example of a signature / verification system according to a second embodiment. 実施例2の署名装置の処理フローを示す図。FIG. 10 is a diagram illustrating a processing flow of the signature device according to the second embodiment.

以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。   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に実施例1の署名装置の処理フローを、図6に実施例1の検証装置の処理フローを示す。この署名・検証システムは、ネットワーク800で接続された署名装置100と検証装置200で構成され、群要素の複数メッセージに対して署名生成と署名検証を行う。なお、署名装置100で生成された署名を、記録媒体で検証装置200に渡す場合には署名装置100と検証装置200はネットワーク800で接続されている必要はない。   FIG. 4 shows a functional configuration example of the signature / verification system of the first embodiment, FIG. 5 shows a processing flow of the signature apparatus of the first embodiment, and FIG. 6 shows a processing flow of the verification apparatus of the first embodiment. This signature / verification system includes a signature device 100 and a verification device 200 connected by a network 800, and performs signature generation and signature verification for a plurality of group element messages. When the signature generated by the signature device 100 is transferred to the verification device 200 using a recording medium, the signature device 100 and the verification device 200 do not need to be connected via the network 800.

、GをGからGへの写像が困難な位数pの群、Gを位数pの群、eをG×G→Gの双線形写像、Kを2以上の整数、^をべき乗を示す記号とする。署名装置100は、コミットメント群要素選択部110、コミットメント乱数生成部115、コミットメント計算部120、CRS生成部125、鍵乱数生成部130、鍵計算部135、鍵群要素選択部140、鍵ランダマイズ部145、鍵生成部150、メッセージ取得部155、署名乱数生成部160、署名計算部165、署名ランダマイズ部170、署名出力部175、署名記録部190を備える。検証装置200は、検証入力部210、検証確認部220、検証出力部230を備える。 G 1, G 2 a mapping is difficult order p groups from G 1 to G 2, a group of order p of G T, bilinear mapping of e G 1 × G 2 → G T, the K 2 The above integers and ^ are symbols indicating powers. The signature device 100 includes a commitment group element selection unit 110, a commitment random number generation unit 115, a commitment calculation unit 120, a CRS generation unit 125, a key random number generation unit 130, a key calculation unit 135, a key group element selection unit 140, and a key randomization unit 145. A key generation unit 150, a message acquisition unit 155, a signature random number generation unit 160, a signature calculation unit 165, a signature randomization unit 170, a signature output unit 175, and a signature recording unit 190. The verification apparatus 200 includes a verification input unit 210, a verification confirmation unit 220, and a verification output unit 230.

署名記録部190は、あらかじめp,G,G,G,eを記録しておく。コミットメント群要素選択部110は、群Gの生成元g,hをランダムに選択する(S110)。コミットメント乱数生成部115は、1以上p−1以下のランダムな整数x,…,xと整数y,…,yを生成する(S115)。コミットメント計算部120は、
k=1,…,Kに対して、
=g^x
=h^y
を計算する(S120)。CRS生成部125は、コミットメント鍵ck(,G,G,G,e,g,h,…,g,h)をCRS(Common Reference String)として設定し、(x,y,…,x,y)をトラップドアτとする(S125)。鍵乱数生成部130は、1以上p−1以下のランダムな整数α,βと、ランダムな整数α,…,αと整数β,…,βを生成する(S130)。
The signature recording unit 190 records p, G 1 , G 2 , G T , and e in advance. The commitment group element selection unit 110 randomly selects the generation sources g 0 and h 0 of the group G 2 (S110). Commitment random number generator 115, a random integer x 1 of 1 or more p-1 or less, ..., x K and integer y 1, ..., and generates a y K (S115). The commitment calculation unit 120
For k = 1, ..., K,
g k = g 0 ^ x k ,
h k = h 0 ^ y k ,
Is calculated (S120). The CRS generation unit 125 sets the commitment key ck ( p , G 1 , G 2 , G T , e, g 0 , h 0 ,..., G K , h K ) as a CRS (Common Reference String), and (x 1 , y 1 ,..., X K , y K ) are set as trap doors τ (S125). The key random number generation unit 130, one or more p-1 or less random integer alpha z, and beta z, random integer α 0, ..., α K and integer beta 0, ..., to produce a β K (S130).

鍵計算部135は、
=g^α
=g^β
を計算する(S135)。鍵群要素選択部140は、群Gの生成元gをランダムに選択する(S140)。鍵ランダマイズ部145は、
The key calculation unit 135
g z = g 0 ^ α z ,
h z = g 0 ^ β z ,
Is calculated (S135). The key group element selection unit 140 randomly selects the generation source g s of the group G 2 (S140). The key randomization unit 145

Figure 0005331028
Figure 0005331028

となる(g,g^α)以外の組合せ(a1k,a2k)と、(h,g^β)以外の組合せ(b1k,b2k)を求める(S145)。鍵生成部150は、(g,α,β,α,β,…,α,β)を秘密鍵skとし、(g,h,{a10,a20,b10,b20},…,{a1K,a2K,b1K,b2K})を検証鍵vkとし、当該検証鍵vkを公開する(S150)。 A combination (a 1k , a 2k ) other than (g k , g s ^ α k ) and a combination (b 1k , b 2k ) other than (h k , g s ^ β k ) are obtained (S145). The key generation unit 150, and (g s, α z, β z, α 0, β 0, ..., α K, β K) and a secret key sk, (g z, h z , {a 10, a 20, b 10 , b 20 },... {a 1K , a 2K , b 1K , b 2K }) are used as verification keys vk, and the verification keys vk are disclosed (S150).

メッセージ取得部155は、群G上の1以外の元であるメッセージm,…,mを受け取る(S155)。なお、「メッセージm,…,mを受け取る」とは、何らかの方法でメッセージm,…,mが利用できる状態になることであり、外部から入力されたメッセージm,…,mを受信することや、署名記録部190などにあらかじめ記録しておいたメッセージm,…,mを読み出すことなどを含む意味である。署名乱数生成部160は、1以上p−1以下のランダムな整数ζ,η,…,η,ξ,…,ξを生成する(S160)。署名計算部165は、 The message acquisition unit 155 receives messages m 1 ,..., M K other than 1 on the group G 2 (S155). Note that "Message m 1, ..., receives the m K ', a message m 1 in some way, ..., m K is to is ready, a message m 1 is inputted from the outside, ..., m This includes receiving K , reading out messages m 1 ,..., M K recorded in advance in the signature recording unit 190 and the like. Signature random number generation unit 160, one or more p-1 or less random integer ζ, η 1, ..., η K, ξ 1, ..., to produce a ξ K (S160). The signature calculation unit 165

Figure 0005331028
Figure 0005331028

を計算する(S165)。署名ランダマイズ部170は、 Is calculated (S165). The signature randomizing unit 170

Figure 0005331028
Figure 0005331028

となる(r’,s’)以外の組合せ(r,s)と、(u’,v’)以外の組合せ(u,v)を求める(S170)。署名出力部175は、(z,t,w,{r,s,u,v},…,{r,s,u,v})を署名σとして出力する(S175)。 Become (r 'k, s' k ) except combinations (r k, s k) and obtains the (u 'k, v' k ) except combinations (u k, v k) ( S170). The signature output unit 175 outputs (z, t, w, {r 1 , s 1 , u 1 , v 1 },..., {R K , s K , u K , v K }) as a signature σ ( S175).

ここで、鍵ランダマイズ部145と署名ランダマイズ部170の具体例について説明する。ここでは、入力される数値の組合せを(x,y),(x,y),…,(x,y)、出力される数値の組合せを(x’,y’),(x’,y’),…,(x’,y’)とする。つまり、この説明では、鍵ランダマイズ部145と署名ランダマイズ部170は、e(x,y)e(x,y)…e(x,y)=e(x’,y’)e(x’,y’)…e(x’,y’)となる(x,y)以外の組合せ(x’,y’)を求める。なお、この具体例ではy’=y,x’=xである。鍵ランダマイズ部145と署名ランダマイズ部170は、ランダマイズ乱数生成手段146,171とランダマイズ実行手段147,172とを備える。ランダマイズ乱数生成手段146,171は、1以上p−1以下のランダムな整数γ,…,γK−1を生成する(S146,S171)。ランダマイズ実行手段147,172は、以下のような処理をk=1からk=K−1まで順番に行う。 Here, specific examples of the key randomizing unit 145 and the signature randomizing unit 170 will be described. Here, combinations of input numerical values are (x 1 , y 1 ), (x 2 , y 2 ),..., (X K , y K ), and combinations of numerical values to be output are (x ′ 1 , y ′). 1 ), (x ′ 2 , y ′ 2 ),..., (X ′ K , y ′ K ). That is, in this description, the key randomizing unit 145 and the signature randomizing unit 170 are e (x 1 , y 1 ) e (x 2 , y 2 )... E (x K , y K ) = e (x ′ 1 , y A combination (x ′ k , y ′ k ) other than (x k , y k ) which becomes “ 1” e (x ′ 2 , y ′ 2 )... E (x ′ K , y ′ K ) is obtained. In this specific example, y ′ 1 = y 1 and x ′ K = x K. The key randomizing unit 145 and the signature randomizing unit 170 include randomized random number generating means 146 and 171 and randomizing executing means 147 and 172. The randomized random number generating means 146, 171 generates random integers γ 1 ,..., Γ K−1 that are 1 or more and p−1 or less (S146, S171). The randomizing execution units 147 and 172 perform the following processing in order from k = 1 to k = K−1.

(1)y’≠1,xk+1≠1であることを確認する。y’=1の場合は、(x,y’)を入れ替える処理などによって、処理後のy’の値を1以外にする。また、xk+1=1の場合も、(xk+1,yk+1)を入れ替える処理などによって、処理後のxk+1の値を1以外にする。 (1) Confirm that y ′ k ≠ 1, x k + 1 ≠ 1. When y ′ k = 1, the value of y ′ k after processing is set to a value other than 1, for example, by replacing (x k , y ′ k ). Also in the case of x k + 1 = 1, the value of x k + 1 after processing is set to a value other than 1 by a process of exchanging (x k + 1 , y k + 1 ).

(2)e(x,y’)とe(xk+1,yk+1)の間にe(xk+1^−γ,y’)e(xk+1,y’^γ)を挿入することで、
e(x’,y’)…e(x,y’)e(xk+1,yk+1)…e(x,y)を、
e(x’,y’)…e(xk+1^−γ,y’)e(xk+1,(y’^γ)yk+1)…e(x,y)のように変換し、変換後を
e(x’,y’)…e(x’,y’)e(xk+1,y’k+1)…e(x,y
とする。
(2) e (x k + 1 ^ −γ k , y ′ k ) e (x k + 1 , y ′ k ^ γ k ) between e (x k , y ′ k ) and e (x k + 1 , y k + 1 ) By inserting
e (x ′ 1 , y ′ 1 )... e (x k , y ′ k ) e (x k + 1 , y k + 1 )... e (x K , y K )
e (x '1, y' 1) ... e (x k x k + 1 ^ -γ k, y 'k) e (x k + 1, (y' k ^ γ k) y k + 1) ... e (x K, y K ), And e (x ′ 1 , y ′ 1 )... E (x ′ k , y ′ k ) e (x k + 1 , y ′ k + 1 )... E (x K , y K )
And

このような処理によって、(x,y),(x,y),…,(x,y)を(x’,y’),(x’,y’),…,(x’,y’)にランダマイズする。なお、ランダマイズとは、演算結果が同一になるような別の数値の組合せに書き換えることである。ランダマイズ乱数生成手段146,171が整数γ,…,γK−1を偏りがないようにランダムに生成(uniformに選択)することによって、ペアリングe(x’,y’)も群G上にuniformに分布させることができる。 By such processing, (x 1 , y 1 ), (x 2 , y 2 ),..., (X K , y K ) are changed to (x ′ 1 , y ′ 1 ), (x ′ 2 , y ′ 2). ),..., (X ′ K , y ′ K ). Note that randomization is rewriting to a combination of different numerical values so that the calculation results are the same. Randomized random number generation means 146, 171 randomly generates integers γ 1 ,..., Γ K−1 so as not to be biased (selected as uniform), so that pairing e (x ′ k , y ′ k ) is also a group. it can be distributed uniform over the G T.

次に、検証装置200について説明する。検証入力部210は、メッセージm,…,mと署名σとを取得する(S210)。例えば、図4のようにネットワーク800に接続されている場合であれば、検証入力部210は、メッセージm,…,mと署名σとを受信する。ネットワークに接続されていない場合であれば、メッセージm,…,mと署名σとを記録媒体から受け取る。検証確認部220は、 Next, the verification apparatus 200 will be described. The verification input unit 210 acquires the messages m 1 ,..., M K and the signature σ (S210). For example, when connected to the network 800 as shown in FIG. 4, the verification input unit 210 receives the messages m 1 ,..., M K and the signature σ. If not connected to the network, the message m 1 ,..., M K and the signature σ are received from the recording medium. The verification confirmation unit 220

Figure 0005331028
Figure 0005331028

で得られる値A,Bに対して、 For values A and B obtained by

Figure 0005331028
Figure 0005331028

であることを確認する(S220)。なお、式(1)の計算は、検証確認部220がステップS220の中で計算してもよいし、あらかじめ検証鍵vkの要素を利用して計算しておいてもよい。もしくは、鍵生成部150がステップS150の中で式(1)を用いて値A,Bを求め、検証鍵vkの一部として値A,Bを公開してもよい。検証出力部230は、検証確認部がすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に署名が正しくないことを示す情報を出力する(S230)。例えば、署名が正しいことを示す情報として“1”を出力し、署名が正しくないことを示す情報として“0”を出力すればよい。 (S220). The calculation of Expression (1) may be calculated by the verification confirming unit 220 in step S220, or may be calculated in advance using an element of the verification key vk. Alternatively, the key generation unit 150 may obtain the values A and B using the expression (1) in step S150, and disclose the values A and B as part of the verification key vk. The verification output unit 230 outputs information indicating that the signature is correct when the verification confirmation unit confirms that all the conditions are satisfied, and confirms that the signature is incorrect when it is confirmed that any of the conditions is not satisfied. The information shown is output (S230). For example, “1” may be output as information indicating that the signature is correct, and “0” may be output as information indicating that the signature is not correct.

実施例1の署名・検証システムは、異なる群(G,G)からなる双線形写像を利用し、群Gから群Gへの写像が困難であることを仮定し、異なる生成元の指数部を求めることが難しい性質を利用し、2つの異なる群上でのメッセージを署名のアウトプットとしている。したがって、実施例1の署名・検証システムによれば、群要素の複数メッセージに対して、ここに署名を生成するよりも、署名長を短くでき、署名生成と署名検証に必要な計算量を少なくできる。 The signature / verification system of the first embodiment uses a bilinear map composed of different groups (G 1 , G 2 ), assumes that it is difficult to map from the group G 1 to the group G 2, and generates different sources. Taking advantage of the fact that it is difficult to determine the exponent part of the message, messages on two different groups are used as signature output. Therefore, according to the signature / verification system of the first embodiment, the signature length can be shortened and the amount of calculation required for signature generation and signature verification can be reduced as compared with the case where signatures are generated for a plurality of group element messages. it can.

シミュレーション
鍵生成部150が、K個の“1”からなるデフォルトのメッセージm={1,1,…,1}に対する参照署名σを検証鍵vkに含めておく。そして、検証鍵vkから参照署名σを引き出し、(z,t,w,{r,s,u,v},…,{r,s,u,v})のそれぞれの値とする。そして、
The simulation key generation unit 150 includes the reference signature σ 0 for the default message m = {1, 1,..., 1} composed of K “1” s in the verification key vk. Then, the reference signature σ 0 is extracted from the verification key vk, and (z, t, w, {r 1 , s 1 , u 1 , v 1 },..., {R K , s K , u K , v K }) Each value of And

Figure 0005331028
Figure 0005331028

を計算し、(z,t’,w’,{r,s,u,v},…,{r,s,u,v})をメッセージm,…,mの署名σとして出力する。 And (z, t ′, w ′, {r 1 , s 1 , u 1 , v 1 },..., {R K , s K , u K , v K }) are converted into messages m 1 ,. and outputs as the signature σ for m K.

このように、本発明の署名・検証システムであれば、より高い安全性証明を行う際に必要となる“シミュレーション”の実行も可能になるという効果が得られる。   As described above, the signature / verification system according to the present invention provides an effect that it is possible to execute a “simulation” necessary for performing higher security certification.

[変形例1]
本変形例では、署名装置の処理を軽減する変更を行う。図4、5を参照して変更点についてのみ説明する。署名装置100’は、鍵乱数生成部130’、鍵ランダマイズ部145’、鍵生成部150’が実施例1の署名装置100と異なる。
[Modification 1]
In this modification, a change is made to reduce the processing of the signature device. Only the changes will be described with reference to FIGS. The signature device 100 ′ is different from the signature device 100 of the first embodiment in a key random number generation unit 130 ′, a key randomization unit 145 ′, and a key generation unit 150 ′.

鍵乱数生成部130’は、ランダムな整数α,…,αと整数β,…,βを生成する代わりに、ランダムな整数α,βと、α=β=0(k=0,2,…,K)を生成する(S130’)。鍵ランダマイズ部145’は、 Instead of generating random integers α 0 ,..., Α K and integers β 0 ,..., Β K , the key random number generator 130 ′ generates random integers α 1 , β 1 and α k = β k = 0. (K = 0, 2,..., K) are generated (S130 ′). The key randomization unit 145 ′

Figure 0005331028
Figure 0005331028

となる(a10,a20),…,(a1K,a2K)と(b10,b20),…,(b1K,b2K)を求める(S145’)。鍵生成部150’は、秘密鍵skを(g,α,β,α,β)とする(S150’)。その他の構成部と処理フローは実施例1と同じである。 Become (a 10, a 20), ..., (a 1K, a 2K) and (b 10, b 20), ..., (b 1K, b 2K) Request (S145 '). The key generation unit 150 ', a secret key sk (g s, α z, β z, α 1, β 1) to (S150'). Other components and processing flow are the same as those in the first embodiment.

本変形例の署名装置では、α=β=0(k=0,2,…,K)としたことによって、計算量を減らすことができる。したがって、本変形例の署名・検証システムも実施例1と同様の効果が得られ、かつ署名装置の処理を軽減できる。 In the signature device of this modification, the amount of calculation can be reduced by setting α k = β k = 0 (k = 0, 2,..., K). Therefore, the signature / verification system of the present modification can achieve the same effects as those of the first embodiment and can reduce the processing of the signature device.

[変形例2]
変形例1は、ランダムな整数α,…,αと整数β,…,βの中のα,βを0以外としたが、他の整数を0以外としてもよい。本変形例では、α,βを0以外とし、α=β=0(k=0,…,K ただし、k≠j)とする。図4、5を参照して変更点についてのみ説明する。署名装置100”は、鍵乱数生成部130”、鍵ランダマイズ部145”、鍵生成部150”が実施例1の署名装置100と異なる。
[Modification 2]
In the first modification, α 1 and β 1 in random integers α 0 ,..., Α K and integers β 0 ,..., Β K are set to other than 0, but other integers may be set to other than 0. In this modification, α j and β j are other than 0, and α k = β k = 0 (k = 0,..., K, where k ≠ j). Only the changes will be described with reference to FIGS. The signature device 100 ″ is different from the signature device 100 of the first embodiment in a key random number generation unit 130 ″, a key randomization unit 145 ″, and a key generation unit 150 ″.

鍵乱数生成部130”は、ランダムな整数α,…,αと整数β,…,βを生成する代わりに、ランダムな整数α,βと、α=β=0(k=0,…,K ただし、k≠j)を生成する(S130”)。鍵ランダマイズ部145”は、 Instead of generating random integers α 0 ,..., Α K and integers β 0 ,..., Β K , the key random number generator 130 ″ generates random integers α j , β j and α k = β k = 0. (K = 0,..., K, where k ≠ j) is generated (S130 ″). The key randomization section 145 "

Figure 0005331028
Figure 0005331028

となる(a10,a20),…,(a1K,a2K)と(b10,b20),…,(b1K,b2K)を求める(S145”)。鍵生成部150”は、秘密鍵skを(g,α,β,α,β)とする(S150”)。その他の構成部と処理フローは実施例1と同じである。 Become (a 10, a 20), ..., (a 1K, a 2K) and (b 10, b 20), ..., (b 1K, b 2K) Request (S145 "). The key generation unit 150" in the secret key sk (g s, α z, β z, α j, β j) to (S150 "). and the other components the processing flow is the same as in example 1.

本変形例の署名装置では、α=β=0(k=0,…,K ただし、k≠j)としたことによって、計算量を減らすことができる。したがって、本変形例の署名・検証システムも実施例1と同様の効果が得られ、かつ署名装置の処理を軽減できる。 In the signature device of this modification, the amount of calculation can be reduced by setting α k = β k = 0 (k = 0,..., K, k ≠ j). Therefore, the signature / verification system of the present modification can achieve the same effects as those of the first embodiment and can reduce the processing of the signature device.

図7に実施例2の署名・検証システムの機能構成例を、図8に実施例2の署名装置の処理フローを、図6に実施例2の検証装置の処理フローを示す。この署名・検証システムは、ネットワーク800で接続された署名装置300と検証装置400で構成され、群要素の複数メッセージに対して署名生成と署名検証を行う。なお、署名装置300で生成された署名を、記録媒体で検証装置400に渡す場合には署名装置300と検証装置400はネットワーク800で接続されている必要はない。   FIG. 7 shows a functional configuration example of the signature / verification system of the second embodiment, FIG. 8 shows a processing flow of the signature apparatus of the second embodiment, and FIG. 6 shows a processing flow of the verification apparatus of the second embodiment. This signature / verification system includes a signature device 300 and a verification device 400 connected via a network 800, and performs signature generation and signature verification for a plurality of group element messages. When the signature generated by the signature device 300 is transferred to the verification device 400 using a recording medium, the signature device 300 and the verification device 400 do not need to be connected via the network 800.

、GをGからGへの写像が困難な位数pの群、Gを位数pの群、eをG×G→Gの双線形写像、Kを2以上の整数、^をべき乗を示す記号とする。署名装置300は、コミットメント群要素選択部110、コミットメント乱数生成部115、コミットメント計算部120、鍵乱数生成部330、鍵計算部135、鍵群要素選択部140、鍵ランダマイズ部345、鍵生成部350、メッセージ取得部155、署名乱数生成部360、署名計算部365、署名出力部375、署名記録部390を備える。検証装置400は、検証入力部410、検証確認部420、検証出力部230を備える。 G 1, G 2 a mapping is difficult order p groups from G 1 to G 2, a group of order p of G T, bilinear mapping of e G 1 × G 2 → G T, the K 2 The above integers and ^ are symbols indicating powers. The signature device 300 includes a commitment group element selection unit 110, a commitment random number generation unit 115, a commitment calculation unit 120, a key random number generation unit 330, a key calculation unit 135, a key group element selection unit 140, a key randomization unit 345, and a key generation unit 350. , A message acquisition unit 155, a signature random number generation unit 360, a signature calculation unit 365, a signature output unit 375, and a signature recording unit 390. The verification apparatus 400 includes a verification input unit 410, a verification confirmation unit 420, and a verification output unit 230.

署名記録部390は、あらかじめp,G,G,G,eを記録しておく。コミットメント群要素選択部110は、群Gの生成元g,hをランダムに選択する(S110)。コミットメント乱数生成部115は、1以上p−1以下のランダムな整数x,…,xと整数y,…,yを生成する(S115)。コミットメント計算部120は、
k=1,…,Kに対して、
=g^x
=h^y
を計算する(S120)。鍵乱数生成部330は、
1以上p−1以下のランダムな整数α,βと、ランダムな整数α,βを生成する(S330)。鍵計算部135は、
=g^α
=g^β
を計算する(S135)。鍵群要素選択部140は、群Gの生成元gをランダムに選択する(S135)。鍵ランダマイズ部は345、
e(g,g^α)=e(a10,a20)e(a11,a21
e(h,g^β)=e(b10,b20)e(b11,b21
となる(a10,a20),(a11,a21)と、(b10,b20),(b11,b21)を求める(S345)。鍵生成部350は、(g,h,{g,h},…,{g,h},{a10,a20,b10,b20},{a11,a21,b11,b21})を検証鍵vkとし、(vk,g,α,β,α,β)を秘密鍵skとし、検証鍵vkを公開する(S350)。
The signature recording unit 390 records p, G 1 , G 2 , G T , and e in advance. The commitment group element selection unit 110 randomly selects the generation sources g 0 and h 0 of the group G 2 (S110). Commitment random number generator 115, a random integer x 1 of 1 or more p-1 or less, ..., x K and integer y 1, ..., and generates a y K (S115). The commitment calculation unit 120
For k = 1, ..., K,
g k = g 0 ^ x k ,
h k = h 0 ^ y k ,
Is calculated (S120). The key random number generator 330
Random integers α z and β z of 1 or more and p−1 or less and random integers α 1 and β 1 are generated (S330). The key calculation unit 135
g z = g 0 ^ α z ,
h z = g 0 ^ β z ,
Is calculated (S135). The key group element selection unit 140 randomly selects the generation source g s of the group G 2 (S135). Key randomization part is 345,
e (g k , g s ^ α k ) = e (a 10 , a 20 ) e (a 11 , a 21 )
e (h k , g s ^ β k ) = e (b 10 , b 20 ) e (b 11 , b 21 )
(A 10 , a 20 ), (a 11 , a 21 ) and (b 10 , b 20 ), (b 11 , b 21 ) are obtained (S345). The key generation unit 350 includes (g z , h z , {g 0 , h 0 },..., {G K , h K }, {a 10 , a 20 , b 10 , b 20 }, {a 11 , a 21 , b 11 , b 21 }) as the verification key vk, (vk, g s , α z , β z , α 1 , β 1 ) as the secret key sk, and the verification key vk is made public (S350).

メッセージ取得部155は、群G上の1以外の元であるメッセージm,…,mを受け取る(S155)。なお、「メッセージm,…,mを受け取る」とは、何らかの方法でメッセージm,…,mが利用できる状態になることであり、外部から入力されたメッセージm,…,mを受信することや、署名記録部390などにあらかじめ記録しておいたメッセージm,…,mを読み出すことなどを含む意味である。署名乱数生成部360は、1以上p−1以下のランダムな整数ζ,η,ξ,ρ,δを生成する(S360)。署名計算部365は、 The message acquisition unit 155 receives messages m 1 ,..., M K other than 1 on the group G 2 (S155). Note that "Message m 1, ..., receives the m K ', a message m 1 in some way, ..., m K is to is ready, a message m 1 is inputted from the outside, ..., m This includes receiving K , reading out messages m 1 ,..., M K recorded in advance in the signature recording unit 390 and the like. The signature random number generation unit 360 generates random integers ζ, η, ξ, ρ, δ of 1 or more and p−1 or less (S360). The signature calculation unit 365

Figure 0005331028
Figure 0005331028

を計算する(S365)。署名出力部375は、(z,t,w,r,s,u,v)を署名σとして出力する。 Is calculated (S365). The signature output unit 375 outputs (z, t, w, r, s, u, v) as a signature σ.

次に、検証装置400の処理について説明する。検証入力部410は、メッセージm,…,mと署名σとを取得する(S410)。検証確認部420は、 Next, processing of the verification apparatus 400 will be described. The verification input unit 410 acquires the messages m 1 ,..., M K and the signature σ (S410). The verification confirmation unit 420

Figure 0005331028
Figure 0005331028

であることを確認する(S420)。検証出力部230は、検証確認部がすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に署名が正しくないことを示す情報を出力する。例えば、署名が正しいことを示す情報として“1”を出力し、署名が正しくないことを示す情報として“0”を出力すればよい。 (S420). The verification output unit 230 outputs information indicating that the signature is correct when the verification confirmation unit confirms that all the conditions are satisfied, and confirms that the signature is incorrect when it is confirmed that any of the conditions is not satisfied. The information shown is output. For example, “1” may be output as information indicating that the signature is correct, and “0” may be output as information indicating that the signature is not correct.

実施例2の署名・検証システムも、異なる群(G,G)からなる双線形写像を利用し、群Gから群Gへの写像が困難であることを仮定し、異なる生成元の指数部を求めることが難しい性質を利用し、2つの異なる群上でのメッセージを署名のアウトプットとしている。したがって、実施例2の署名・検証システムによれば、群要素の複数メッセージに対して、ここに署名を生成するよりも、署名長を短くでき、署名生成と署名検証に必要な計算量を少なくできる。 The signature / verification system of the second embodiment also uses a bilinear map composed of different groups (G 1 , G 2 ), assumes that mapping from the group G 1 to the group G 2 is difficult, and generates different sources. Taking advantage of the fact that it is difficult to determine the exponent part of the message, messages on two different groups are used as signature output. Therefore, according to the signature / verification system of the second embodiment, the signature length can be shortened and the amount of calculation required for signature generation and signature verification can be reduced compared to the case where signatures are generated for a plurality of group element messages. it can.

プログラム、記録媒体
上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
Program, Recording Medium When the above-described configuration is realized by a computer, the processing contents of functions that each device should have are described by the 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、100’、100”、300、700 署名装置
110 コミットメント群要素選択部
115 コミットメント乱数生成部
120 コミットメント計算部 125 CRS生成部
130、130’、130”、330 鍵乱数生成部
135 鍵計算部 140 鍵群要素選択部
145、145’、145”、345 鍵ランダマイズ部
146,171 ランダマイズ乱数生成手段
147,172 ランダマイズ実行手段
150、150’、150”、350 鍵生成部
155 メッセージ取得部 160、360 署名乱数生成部
165、365 署名計算部 170 署名ランダマイズ部
175、375 署名出力部 190、390 署名記録部
200、400、900 検証装置 210、410 検証入力部
220、420 検証確認部 230 検証出力部
800 ネットワーク
100, 100 ′, 100 ″, 300, 700 Signature device 110 Commitment group element selection unit 115 Commitment random number generation unit 120 Commitment calculation unit 125 CRS generation unit 130, 130 ′, 130 ″, 330 Key random number generation unit 135 Key calculation unit 140 Key group element selection unit 145, 145 ′, 145 ″, 345 Key randomization unit 146, 171 Randomized random number generation unit 147, 172 Randomization execution unit 150, 150 ′, 150 ″, 350 Key generation unit 155 Message acquisition unit 160, 360 Signature Random number generation unit 165, 365 Signature calculation unit 170 Signature randomization unit 175, 375 Signature output unit 190, 390 Signature recording unit 200, 400, 900 Verification device 210, 410 Verification input unit 220, 420 Verification confirmation unit 230 Verification output unit 800 Net work

Claims (22)

、GをGからGへの写像が困難な位数pの群、Gを位数pの群、eをG×G→Gの双線形写像、Kを2以上の整数、^をべき乗を示す記号とし、
p,G,G,G,eを記録する署名記録部と、
群Gの生成元g,hをランダムに選択するコミットメント群要素選択部と、
1以上p−1以下のランダムな整数x,…,xと整数y,…,yを生成するコミットメント乱数生成部と、
k=1,…,Kに対して、
=g^x
=h^y
を計算するコミットメント計算部と、
,G,G,G,e,g,h,…,g,h)をCRSとして設定し、(x,y,…,x,y)をトラップドアτとするCRS生成部と、
1以上p−1以下のランダムな整数α,βと、ランダムな整数α,…,αと整数β,…,βを生成する鍵乱数生成部と、
=g^α
=g^β
を計算する鍵計算部と、
群Gの生成元gをランダムに選択する鍵群要素選択部と、
Figure 0005331028
となる(g,g^α)以外の組合せ(a1k,a2k)と、(h,g^β)以外の組合せ(b1k,b2k)を求める鍵ランダマイズ部と、
(g,α,β,α,β,…,α,β)を秘密鍵skとし、(g,h,{a10,a20,b10,b20},…,{a1K,a2K,b1K,b2K})を検証鍵vkとし、当該検証鍵vkを公開する鍵生成部と、
群G上の1以外の元であるメッセージm,…,mを受け取るメッセージ取得部と、
1以上p−1以下のランダムな整数ζ,η,…,η,ξ,…,ξを生成する署名乱数生成部と、
Figure 0005331028
を計算する署名計算部と、
Figure 0005331028
となる(r’,s’)以外の組合せ(r,s)と、(u’,v’)以外の組合せ(u,v)を求める署名ランダマイズ部と、
(z,t,w,{r,s,u,v},…,{r,s,u,v})を署名σとして出力する署名出力部と
を備える署名装置と、
メッセージm,…,mと署名σとを取得する検証入力部と、
Figure 0005331028
で得られるA,Bに対して、
Figure 0005331028
であることを確認する検証確認部と、
前記検証確認部がすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に署名が正しくないことを示す情報を出力する検証出力部と
を備える検証装置と
を有する署名・検証システム。
G 1, G 2 a mapping is difficult order p groups from G 1 to G 2, a group of order p of G T, bilinear mapping of e G 1 × G 2 → G T, the K 2 The above integer, ^ is a symbol indicating a power,
a signature recording unit for recording p, G 1 , G 2 , G T , e;
A commitment group element selector that randomly selects generators g 0 and h 0 of group G 2 ;
1 or p-1 random integer x 1 below, ..., x K and integer y 1, ..., and commitment random number generation unit for generating a y K,
For k = 1, ..., K,
g k = g 0 ^ x k ,
h k = h 0 ^ y k ,
A commitment calculation unit for calculating
(P, G 1, G 2 , G T, e, g 0, h 0, ..., g K, h K) was set as CRS, the (x 1, y 1, ... , x K, y K) A CRS generator for trap door τ;
1 or p-1 or less random integer alpha z, and beta z, random integer α 0, ..., α K and integer β 0, ..., a key the random number generation unit for generating a beta K,
g z = g 0 ^ α z ,
h z = g 0 ^ β z ,
A key calculation unit for calculating
A key group element selection unit that randomly selects a generator g s of the group G 2 ;
Figure 0005331028
A key randomization unit for obtaining a combination (a 1k , a 2k ) other than (g k , g s ^ α k ) and a combination (b 1k , b 2k ) other than (h k , g s ^ β k ) ,
(G s, α z, β z, α 0, β 0, ..., α K, β K) was used as a secret key sk, (g z, h z , {a 10, a 20, b 10, b 20} ,..., {A 1K , a 2K , b 1K , b 2K }) as a verification key vk, and a key generation unit that discloses the verification key vk;
A message acquisition unit that receives messages m 1 ,..., M K that are elements other than 1 on the group G 2 ;
1 or p-1 or less random integer ζ, η 1, ..., η K, ξ 1, ..., a signature random number generation unit for generating xi] K,
Figure 0005331028
A signature calculation unit for calculating
Figure 0005331028
Become (r 'k, s' k ) except combinations (r k, s k) and a signature randomizing unit for obtaining the (u 'k, v' k ) except combinations (u k, v k),
A signature output unit that outputs (z, t, w, {r 1 , s 1 , u 1 , v 1 },..., {R K , s K , u K , v K }) as a signature σ. Equipment,
A verification input unit for obtaining the messages m 1 ,..., M K and the signature σ;
Figure 0005331028
For A and B obtained by
Figure 0005331028
A verification and confirmation unit to confirm that
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 condition is not satisfied, information indicating that the signature is incorrect is output. A signature / verification system comprising: a verification device comprising: a verification output unit.
請求項1記載の署名・検証システムであって、
前記鍵ランダマイズ部と前記署名ランダマイズ部は、
e(x,y)e(x,y)…e(x,y)=e(x’,y’)e(x’,y’)…e(x’,y’)となる(x,y)以外の組合せ(x’,y’)を求めるときに、
1以上p−1以下のランダムな整数γ,…,γK−1を生成するランダマイズ乱数生成手段と、
e(x,y’)とe(xk+1,yk+1)の間にe(xk+1^−γ,y’)e(xk+1,y’^γ)を挿入することで、
e(x’,y’)…e(x,y’)e(xk+1,yk+1)…e(x,y)を、
e(x’,y’)…e(xk+1^−γ,y’)e(xk+1,(y’^γ)yk+1)…e(x,y
のように変換し、変換後を
e(x’,y’)…e(x’,y’)e(xk+1,y’k+1)…e(x,y
とする処理を、k=1からk=K−1まで順番に行うランダマイズ実行手段と
を有することを特徴とする署名・検証システム。
The signature / verification system according to claim 1,
The key randomization part and the signature randomization part are:
e (x 1, y 1) e (x 2, y 2) ... e (x K, y K) = e (x '1, y' 1) e (x '2, y' 2) ... e (x When obtaining a combination (x ′ k , y ′ k ) other than (x k , y k ) that becomes “ K , y ′ K ),
Randomized random number generating means for generating random integers γ 1 ,..., Γ K−1 of 1 or more and p−1 or less;
inserting e (x k + 1 ^ −γ k , y ′ k ) e (x k + 1 , y ′ k ^ γ k ) between e (x k , y ′ k ) and e (x k + 1 , y k + 1 ). so,
e (x ′ 1 , y ′ 1 )... e (x k , y ′ k ) e (x k + 1 , y k + 1 )... e (x K , y K )
e (x '1, y' 1) ... e (x k x k + 1 ^ -γ k, y 'k) e (x k + 1, (y' k ^ γ k) y k + 1) ... e (x K, y K )
E (x ′ 1 , y ′ 1 )... E (x ′ k , y ′ k ) e (x k + 1 , y ′ k + 1 )... E (x K , y K )
And a randomization executing means for sequentially performing the processing of k = 1 to k = K−1.
請求項1記載の署名・検証システムであって、
前記鍵乱数生成部は、ランダムな整数α,…,αと整数β,…,βを生成する代わりに、ランダムな整数α,βと、α=β=0(k=0,2,…,K)を生成し、
前記鍵ランダマイズ部は、
Figure 0005331028
となる(a10,a20),…,(a1K,a2K)と(b10,b20),…,(b1K,b2K)を求め、
前記鍵生成部は、秘密鍵skを(g,α,β,α,β)とする
ことを特徴とする署名・検証システム。
The signature / verification system according to claim 1,
The key the random number generator, a random integer α 0, ..., α K and integer beta 0, ..., instead of generating a beta K, random integer alpha 1, and β 1, α k = β k = 0 ( k = 0, 2, ..., K),
The key randomization part
Figure 0005331028
(A 10 , a 20 ), ..., (a 1K , a 2K ) and (b 10 , b 20 ), ..., (b 1K , b 2K )
The key generation unit, a signature-verification system, characterized by a secret key sk and (g s, α z, β z, α 1, β 1).
請求項1記載の署名・検証システムであって、
jは0以上K以下の整数とし、
前記鍵乱数生成部は、ランダムな整数α,…,αと整数β,…,βを生成する代わりに、ランダムな整数α,βと、α=β=0(k=0,…,K ただし、k≠j)を生成し、
前記鍵ランダマイズ部は、
Figure 0005331028
となる(a10,a20),…,(a1K,a2K)と(b10,b20),…,(b1K,b2K)を求め、
前記鍵生成部は、秘密鍵skを(g,α,β,α,β)とする
ことを特徴とする署名・検証システム。
The signature / verification system according to claim 1,
j is an integer between 0 and K,
The key the random number generator, a random integer α 0, ..., α K and integer beta 0, ..., instead of generating a beta K, random integer alpha j, and β j, α k = β k = 0 ( k = 0,..., K where k ≠ j)
The key randomization part
Figure 0005331028
(A 10 , a 20 ), ..., (a 1K , a 2K ) and (b 10 , b 20 ), ..., (b 1K , b 2K )
The key generation unit, a signature-verification system, characterized by a secret key sk and (g s, α z, β z, α j, β j).
請求項1から4のいずれかに記載の署名・検証システムであって、
前記鍵生成部は、
Figure 0005331028
を計算し、公開鍵にA,Bも含める
ことを特徴とする署名・検証システム。
The signature / verification system according to any one of claims 1 to 4,
The key generation unit
Figure 0005331028
And a signature / verification system characterized by including A and B in the public key.
、GをGからGへの写像が困難な位数pの群、Gを位数pの群、eをG×G→Gの双線形写像、Kを2以上の整数、^をべき乗を示す記号とし、
p,G,G,G,eを記録する署名記録部と、
群Gの生成元g,hをランダムに選択するコミットメント群要素選択部と、
1以上p−1以下のランダムな整数x,…,xと整数y,…,yを生成するコミットメント乱数生成部と、
k=1,…,Kに対して、
=g^x
=h^y
を計算するコミットメント計算部と、
1以上p−1以下のランダムな整数α,βと、ランダムな整数α,βを生成する鍵乱数生成部と、
=g^α
=g^β
を計算する鍵計算部と、
群Gの生成元gをランダムに選択する鍵群要素選択部と、
e(g,g^α)=e(a10,a20)e(a11,a21
e(h,g^β)=e(b10,b20)e(b11,b21
となる(a10,a20),(a11,a21)と、(b10,b20),(b11,b21)を求める鍵ランダマイズ部と、
(g,h,{g,h},…,{g,h},{a10,a20,b10,b20},{a11,a21,b11,b21})を検証鍵vkとし、(vk,g,α,β,α,β)を秘密鍵skとし、検証鍵vkを公開する鍵生成部と、
群G上の1以外の元であるメッセージm,…,mを受け取るメッセージ取得部と、
1以上p−1以下のランダムな整数ζ,η,ξ,ρ,δを生成する署名乱数生成部と、
Figure 0005331028
を計算する署名計算部と、
(z,t,w,r,s,u,v)を署名σとして出力する署名出力部と
を備える署名装置と、
メッセージm,…,mと署名σとを取得する検証入力部と、
Figure 0005331028
であることを確認する検証確認部と、
前記検証確認部がすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に署名が正しくないことを示す情報を出力する検証出力部と
を備える検証装置と
を有する署名・検証システム。
G 1, G 2 a mapping is difficult order p groups from G 1 to G 2, a group of order p of G T, bilinear mapping of e G 1 × G 2 → G T, the K 2 The above integer, ^ is a symbol indicating a power,
a signature recording unit for recording p, G 1 , G 2 , G T , e;
A commitment group element selector that randomly selects generators g 0 and h 0 of group G 2 ;
1 or p-1 random integer x 1 below, ..., x K and integer y 1, ..., and commitment random number generation unit for generating a y K,
For k = 1, ..., K,
g k = g 0 ^ x k ,
h k = h 0 ^ y k ,
A commitment calculation unit for calculating
A random number α z , β z of 1 to p−1 and a key random number generator for generating random integers α 1 , β 1 ;
g z = g 0 ^ α z ,
h z = g 0 ^ β z ,
A key calculation unit for calculating
A key group element selection unit that randomly selects a generator g s of the group G 2 ;
e (g k , g s ^ α k ) = e (a 10 , a 20 ) e (a 11 , a 21 )
e (h k , g s ^ β k ) = e (b 10 , b 20 ) e (b 11 , b 21 )
(A 10 , a 20 ), (a 11 , a 21 ), and (b 10 , b 20 ), (b 11 , b 21 ) to obtain a key randomization unit,
(G z, h z, { g 0, h 0}, ..., {g K, h K}, {a 10, a 20, b 10, b 20}, {a 11, a 21, b 11, b 21 }) as a verification key vk, (vk, g s , α z , β z , α 1 , β 1 ) as a secret key sk, and a key generation unit that publishes the verification key vk;
A message acquisition unit that receives messages m 1 ,..., M K that are elements other than 1 on the group G 2 ;
A signature random number generator for generating random integers ζ, η, ξ, ρ, δ of 1 or more and p−1 or less;
Figure 0005331028
A signature calculation unit for calculating
A signature device comprising: a signature output unit that outputs (z, t, w, r, s, u, v) as a signature σ;
A verification input unit for obtaining the messages m 1 ,..., M K and the signature σ;
Figure 0005331028
A verification and confirmation unit to confirm that
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 condition is not satisfied, information indicating that the signature is incorrect is output. A signature / verification system comprising: a verification device comprising: a verification output unit.
署名装置と検証装置とを含む署名・検証システムでの署名・検証方法であって、
、GをGからGへの写像が困難な位数pの群、Gを位数pの群、eをG×G→Gの双線形写像、Kを2以上の整数、^をべき乗を示す記号とし、
前記署名装置において、
署名記録部に、あらかじめp,G,G,G,eを記録しておき、
コミットメント群要素選択部で、群Gの生成元g,hをランダムに選択するコミットメント群要素選択ステップと、
コミットメント乱数生成部で、1以上p−1以下のランダムな整数x,…,xと整数y,…,yを生成するコミットメント乱数生成ステップと、
コミットメント計算部で、k=1,…,Kに対して、
=g^x
=h^y
を計算するコミットメント計算ステップと、
CRS生成部で、(,G,G,G,e,g,h,…,g,h)をCRSとして設定し、(x,y,…,x,y)をトラップドアτとするCRS生成ステップと、
鍵乱数生成部で、1以上p−1以下のランダムな整数α,βと、ランダムな整数α,…,αと整数β,…,βを生成する鍵乱数生成ステップと、
鍵計算部で、
=g^α
=g^β
を計算する鍵計算ステップと、
鍵群要素選択部で、群Gの生成元gをランダムに選択する鍵群要素選択ステップと、
鍵ランダマイズ部で、
Figure 0005331028
となる(g,g^α)以外の組合せ(a1k,a2k)と、(h,g^β)以外の組合せ(b1k,b2k)を求める鍵ランダマイズステップと、
鍵生成部で、(g,α,β,α,β,…,α,β)を秘密鍵skとし、(g,h,{a10,a20,b10,b20},…,{a1K,a2K,b1K,b2K})を検証鍵vkとし、当該検証鍵vkを公開する鍵生成ステップと、
メッセージ取得部で、群G上の1以外の元であるメッセージm,…,mを受け取るメッセージ取得ステップと、
署名乱数生成部で、1以上p−1以下のランダムな整数ζ,η,…,η,ξ,…,ξを生成する署名乱数生成ステップと、
署名計算部で、
Figure 0005331028
を計算する署名計算ステップと、
署名ランダマイズ部で、
Figure 0005331028
となる(r’,s’)以外の組合せ(r,s)と、(u’,v’)以外の組合せ(u,v)を求める署名ランダマイズステップと、
署名出力部で、(z,t,w,{r,s,u,v},…,{r,s,u,v})を署名σとして出力する署名出力ステップと
を有し、
前記検証装置において、
検証入力部で、メッセージm,…,mと署名σとを取得する検証入力ステップと、
検証確認部で、
Figure 0005331028
で得られるA,Bに対して、
Figure 0005331028
であることを確認する検証確認ステップと、
検証出力部で、前記検証確認ステップですべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に署名が正しくないことを示す情報を出力する検証出力ステップと
を有する署名・検証方法。
A signature / verification method in a signature / verification system including a signature device and a verification device,
G 1, G 2 a mapping is difficult order p groups from G 1 to G 2, a group of order p of G T, bilinear mapping of e G 1 × G 2 → G T, the K 2 The above integer, ^ is a symbol indicating a power,
In the signature device,
In the signature recording part, p, G 1 , G 2 , G T , e are recorded in advance,
A commitment group element selection unit that randomly selects the generators g 0 and h 0 of the group G 2 in the commitment group element selection unit;
In commitment random number generation unit, a random integer x 1 of 1 or more p-1 or less, ..., x K and integer y 1, ..., and commitment random number generation step of generating a y K,
In the commitment calculator, for k = 1, ..., K,
g k = g 0 ^ x k ,
h k = h 0 ^ y k ,
A commitment calculation step for calculating
In the CRS generator, ( p , G 1 , G 2 , G T , e, g 0 , h 0 ,..., G K , h K ) are set as CRS, and (x 1 , y 1 ,..., X K , Y K ) as a trapdoor τ, a CRS generation step;
The key the random number generation unit, one or more p-1 or less random integer alpha z, and beta z, random integer α 0, ..., α K and integer beta 0, ..., a key the random number generation step of generating a beta K ,
In the key calculator,
g z = g 0 ^ α z ,
h z = g 0 ^ β z ,
A key calculation step for calculating
A key group element selection unit for randomly selecting a generation source g s of the group G 2 by a key group element selection unit;
In the key randomization department,
Figure 0005331028
A key randomization step for obtaining a combination (a 1k , a 2k ) other than (g k , g s ^ α k ) and a combination (b 1k , b 2k ) other than (h k , g s ^ β k ) ,
In the key generation unit, (g s , α z , β z , α 0 , β 0 ,..., Α K , β K ) is set as a secret key sk, and (g z , h z , {a 10 , a 20 , b 10 , b 20 },..., {A 1K , a 2K , b 1K , b 2K }) as a verification key vk, and a key generation step for publishing the verification key vk;
A message acquisition step of receiving messages m 1 ,..., M K that are elements other than 1 on the group G 2 in the message acquisition unit;
In the signature random number generation unit, one or more p-1 or less random integer ζ, η 1, ..., η K, ξ 1, ..., a signature random number generation step of generating xi] K,
In the signature calculator,
Figure 0005331028
A signature calculation step for calculating
In the signature randomization department,
Figure 0005331028
Become (r 'k, s' k ) except combinations (r k, s k) and, a signature Randomized determining a (u 'k, v' k ) except combinations (u k, v k),
The signature output unit outputs (z, t, w, {r 1 , s 1 , u 1 , v 1 },..., {R K , s K , u K , v K }) as a signature σ. Steps and
In the verification device,
A verification input step of acquiring messages m 1 ,..., M K and a signature σ at the verification input unit;
In the verification check section,
Figure 0005331028
For A and B obtained by
Figure 0005331028
A verification confirmation step to confirm that
When the verification output unit confirms that all the conditions are satisfied in the verification check step, it outputs information indicating that the signature is correct, and when it is confirmed that any of the conditions is not satisfied, the signature is not correct. And a verification output step for outputting information indicating the signature / verification method.
請求項7記載の署名・検証方法であって、
前記鍵ランダマイズステップと前記署名ランダマイズステップは、
e(x,y)e(x,y)…e(x,y)=e(x’,y’)e(x’,y’)…e(x’,y’)となる(x,y)以外の組合せ(x’,y’)を求めるときに、
1以上p−1以下のランダムな整数γ,…,γK−1を生成するランダマイズ乱数生成サブステップと、
e(x,y’)とe(xk+1,yk+1)の間にe(xk+1^−γ,y’)e(xk+1,y’^γ)を挿入することで、
e(x’,y’)…e(x,y’)e(xk+1,yk+1)…e(x,y)を、
e(x’,y’)…e(xk+1^−γ,y’)e(xk+1,(y’^γ)yk+1)…e(x,y
のように変換し、変換後を
e(x’,y’)…e(x’,y’)e(xk+1,y’k+1)…e(x,y
とする処理を、k=1からk=K−1まで順番に行うランダマイズ実行サブステップと
を有することを特徴とする署名・検証方法。
The signature / verification method according to claim 7,
The key randomizing step and the signature randomizing step are:
e (x 1, y 1) e (x 2, y 2) ... e (x K, y K) = e (x '1, y' 1) e (x '2, y' 2) ... e (x When obtaining a combination (x ′ k , y ′ k ) other than (x k , y k ) that becomes “ K , y ′ K ),
1 or p-1 random integer gamma 1 below, ..., a randomizing random number generation substep of generating a gamma K-1,
inserting e (x k + 1 ^ −γ k , y ′ k ) e (x k + 1 , y ′ k ^ γ k ) between e (x k , y ′ k ) and e (x k + 1 , y k + 1 ). so,
e (x ′ 1 , y ′ 1 )... e (x k , y ′ k ) e (x k + 1 , y k + 1 )... e (x K , y K )
e (x '1, y' 1) ... e (x k x k + 1 ^ -γ k, y 'k) e (x k + 1, (y' k ^ γ k) y k + 1) ... e (x K, y K )
E (x ′ 1 , y ′ 1 )... E (x ′ k , y ′ k ) e (x k + 1 , y ′ k + 1 )... E (x K , y K )
And a randomization execution sub-step for performing the processing in order from k = 1 to k = K−1 in order.
請求項7記載の署名・検証方法であって、
前記鍵乱数生成ステップは、ランダムな整数α,…,αと整数β,…,βを生成する代わりに、ランダムな整数α,βと、α=β=0(k=0,2,…,K)を生成し、
前記鍵ランダマイズステップは、
Figure 0005331028
となる(a10,a20),…,(a1K,a2K)と(b10,b20),…,(b1K,b2K)を求め、
前記鍵生成ステップは、秘密鍵skを(g,α,β,α,β)とする
ことを特徴とする署名・検証方法。
The signature / verification method according to claim 7,
The key the random number generation step, random integer α 0, ..., α K and integer beta 0, ..., instead of generating a beta K, random integer alpha 1, and β 1, α k = β k = 0 ( k = 0, 2, ..., K),
The key randomizing step includes
Figure 0005331028
(A 10 , a 20 ), ..., (a 1K , a 2K ) and (b 10 , b 20 ), ..., (b 1K , b 2K )
The key generating step, the secret key sk (g s, α z, β z, α 1, β 1) signature and verification method which is characterized in that a.
請求項7記載の署名・検証方法であって、
jは0以上K以下の整数とし、
前記鍵乱数生成ステップは、ランダムな整数α,…,αと整数β,…,βを生成する代わりに、ランダムな整数α,βと、α=β=0(k=0,…,K ただし、k≠j)を生成し、
前記鍵ランダマイズステップは、
Figure 0005331028
となる(a10,a20),…,(a1K,a2K)と(b10,b20),…,(b1K,b2K)を求め、
前記鍵生成ステップは、秘密鍵skを(g,α,β,α,β)とする
ことを特徴とする署名・検証方法。
The signature / verification method according to claim 7,
j is an integer between 0 and K,
The key the random number generation step, random integer α 0, ..., α K and integer beta 0, ..., instead of generating a beta K, random integer alpha j, and β j, α k = β k = 0 ( k = 0,..., K where k ≠ j)
The key randomizing step includes
Figure 0005331028
(A 10 , a 20 ), ..., (a 1K , a 2K ) and (b 10 , b 20 ), ..., (b 1K , b 2K )
The key generating step, the secret key sk (g s, α z, β z, α j, β j) signature and verification method which is characterized in that a.
請求項7から10のいずれかに記載の署名・検証方法であって、
前記鍵生成ステップは、
Figure 0005331028
を計算し、公開鍵にA,Bも含める
ことを特徴とする署名・検証方法。
The signature / verification method according to any one of claims 7 to 10,
The key generation step includes:
Figure 0005331028
And a signature / verification method characterized by including A and B in the public key.
署名装置と検証装置とを含む署名・検証システムでの署名・検証方法であって、
、GをGからGへの写像が困難な位数pの群、Gを位数pの群、eをG×G→Gの双線形写像、Kを2以上の整数、^をべき乗を示す記号とし、
前記署名装置において、
署名記録部で、あらかじめp,G,G,G,eを記録しておき、
コミットメント群要素選択部で、群Gの生成元g,hをランダムに選択するコミットメント群要素選択ステップと、
コミットメント乱数生成部で、1以上p−1以下のランダムな整数x,…,xと整数y,…,yを生成するコミットメント乱数生成ステップと、
コミットメント計算部で、k=1,…,Kに対して、
=g^x
=h^y
を計算するコミットメント計算ステップと、
鍵乱数生成部で、1以上p−1以下のランダムな整数α,βと、ランダムな整数α,βを生成する鍵乱数生成ステップと、
鍵計算部で、
=g^α
=g^β
を計算する鍵計算ステップと、
鍵群要素選択部で、群Gの生成元gをランダムに選択する鍵群要素選択ステップと、
鍵ランダマイズ部で、
e(g,g^α)=e(a10,a20)e(a11,a21
e(h,g^β)=e(b10,b20)e(b11,b21
となる(a10,a20),(a11,a21)と、(b10,b20),(b11,b21)を求める鍵ランダマイズステップと、
鍵生成部で、(g,h,{g,h},…,{g,h},{a10,a20,b10,b20},{a11,a21,b11,b21})を検証鍵vkとし、(vk,g,α,β,α,β)を秘密鍵skとし、検証鍵vkを公開する鍵生成ステップと、
メッセージ取得部で、群G上の1以外の元であるメッセージm,…,mを受け取るメッセージ取得ステップと、
署名乱数生成部で、1以上p−1以下のランダムな整数ζ,η,ξ,ρ,δを生成する署名乱数生成ステップと、
署名計算部で、
Figure 0005331028
を計算する署名計算ステップと、
署名出力部で、(z,t,w,r,s,u,v)を署名σとして出力する署名出力ステップと
を有し、
前記検証装置において、
検証入力部で、メッセージm,…,mと署名σとを取得する検証入力ステップと、
検証確認部で、
Figure 0005331028
であることを確認する検証確認ステップと、
検証出力部で、前記検証確認ステップがすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に署名が正しくないことを示す情報を出力する検証出力ステップと
を有する署名・検証方法。
A signature / verification method in a signature / verification system including a signature device and a verification device,
G 1, G 2 a mapping is difficult order p groups from G 1 to G 2, a group of order p of G T, bilinear mapping of e G 1 × G 2 → G T, the K 2 The above integer, ^ is a symbol indicating a power,
In the signature device,
In the signature recording part, p, G 1 , G 2 , G T , e are recorded in advance,
A commitment group element selection unit that randomly selects the generators g 0 and h 0 of the group G 2 in the commitment group element selection unit;
In commitment random number generation unit, a random integer x 1 of 1 or more p-1 or less, ..., x K and integer y 1, ..., and commitment random number generation step of generating a y K,
In the commitment calculator, for k = 1, ..., K,
g k = g 0 ^ x k ,
h k = h 0 ^ y k ,
A commitment calculation step for calculating
A key random number generation unit for generating random integers α z and β z of 1 to p−1 and random integers α 1 and β 1 ;
In the key calculator,
g z = g 0 ^ α z ,
h z = g 0 ^ β z ,
A key calculation step for calculating
A key group element selection unit for randomly selecting a generation source g s of the group G 2 by a key group element selection unit;
In the key randomization department,
e (g k , g s ^ α k ) = e (a 10 , a 20 ) e (a 11 , a 21 )
e (h k , g s ^ β k ) = e (b 10 , b 20 ) e (b 11 , b 21 )
(A 10 , a 20 ), (a 11 , a 21 ) and (b 10 , b 20 ), (b 11 , b 21 ) to obtain a key randomization step,
In the key generation unit, (g z , h z , {g 0 , h 0 },..., {G K , h K }, {a 10 , a 20 , b 10 , b 20 }, {a 11 , a 21 , B 11 , b 21 }) as a verification key vk, (vk, g s , α z , β z , α 1 , β 1 ) as a secret key sk, and a key generation step for publicizing the verification key vk;
A message acquisition step of receiving messages m 1 ,..., M K that are elements other than 1 on the group G 2 in the message acquisition unit;
A signature random number generation unit for generating random integers ζ, η, ξ, ρ, δ of 1 or more and p−1 or less;
In the signature calculator,
Figure 0005331028
A signature calculation step for calculating
A signature output unit that outputs (z, t, w, r, s, u, v) as a signature σ, and
In the verification device,
A verification input step of acquiring messages m 1 ,..., M K and a signature σ at the verification input unit;
In the verification check section,
Figure 0005331028
A verification confirmation step to confirm that
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 signature is incorrect 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からGへの写像が困難な位数pの群、Gを位数pの群、eをG×G→Gの双線形写像、Kを2以上の整数、^をべき乗を示す記号とし、
p,G,G,G,eを記録する署名記録部と、
群Gの生成元g,hをランダムに選択するコミットメント群要素選択部と、
1以上p−1以下のランダムな整数x,…,xと整数y,…,yを生成するコミットメント乱数生成部と、
k=1,…,Kに対して、
=g^x
=h^y
を計算するコミットメント計算部と、
,G,G,G,e,g,h,…,g,h)をCRSとして設定し、(x,y,…,x,y)をトラップドアτとするCRS生成部と、
1以上p−1以下のランダムな整数α,βと、ランダムな整数α,…,αと整数β,…,βを生成する鍵乱数生成部と、
=g^α
=g^β
を計算する鍵計算部と、
群Gの生成元gをランダムに選択する鍵群要素選択部と、
Figure 0005331028
となる(g,g^α)以外の組合せ(a1k,a2k)と、(h,g^β)以外の組合せ(b1k,b2k)を求める鍵ランダマイズ部と、
(g,α,β,α,β,…,α,β)を秘密鍵skとし、(g,h,{a10,a20,b10,b20},…,{a1K,a2K,b1K,b2K})を検証鍵vkとし、当該検証鍵vkを公開する鍵生成部と、
群G上の1以外の元であるメッセージm,…,mを受け取るメッセージ取得部と、
1以上p−1以下のランダムな整数ζ,η,…,η,ξ,…,ξを生成する署名乱数生成部と、
Figure 0005331028
を計算する署名計算部と、
Figure 0005331028
となる(r’,s’)以外の組合せ(r,s)と、(u’,v’)以外の組合せ(u,v)を求める署名ランダマイズ部と、
(z,t,w,{r,s,u,v},…,{r,s,u,v})を署名σとして出力する署名出力部と
を備える署名装置。
G 1, G 2 a mapping is difficult order p groups from G 1 to G 2, a group of order p of G T, bilinear mapping of e G 1 × G 2 → G T, the K 2 The above integer, ^ is a symbol indicating a power,
a signature recording unit for recording p, G 1 , G 2 , G T , e;
A commitment group element selector that randomly selects generators g 0 and h 0 of group G 2 ;
1 or p-1 random integer x 1 below, ..., x K and integer y 1, ..., and commitment random number generation unit for generating a y K,
For k = 1, ..., K,
g k = g 0 ^ x k ,
h k = h 0 ^ y k ,
A commitment calculation unit for calculating
(P, G 1, G 2 , G T, e, g 0, h 0, ..., g K, h K) was set as CRS, the (x 1, y 1, ... , x K, y K) A CRS generator for trap door τ;
1 or p-1 or less random integer alpha z, and beta z, random integer α 0, ..., α K and integer β 0, ..., a key the random number generation unit for generating a beta K,
g z = g 0 ^ α z ,
h z = g 0 ^ β z ,
A key calculation unit for calculating
A key group element selection unit that randomly selects a generator g s of the group G 2 ;
Figure 0005331028
A key randomizing unit for obtaining a combination (a 1k , a 2k ) other than (g k , g s ^ α k ) and a combination (b 1k , b 2k ) other than (h k , g s ^ β k ) ,
(G s, α z, β z, α 0, β 0, ..., α K, β K) was used as a secret key sk, (g z, h z , {a 10, a 20, b 10, b 20} ,..., {A 1K , a 2K , b 1K , b 2K }) as a verification key vk, and a key generation unit that discloses the verification key vk;
A message acquisition unit that receives messages m 1 ,..., M K that are elements other than 1 on the group G 2 ;
1 or p-1 or less random integer ζ, η 1, ..., η K, ξ 1, ..., a signature random number generation unit for generating xi] K,
Figure 0005331028
A signature calculation unit for calculating
Figure 0005331028
Become (r 'k, s' k ) except combinations (r k, s k) and a signature randomizing unit for obtaining the (u 'k, v' k ) except combinations (u k, v k),
A signature output unit that outputs (z, t, w, {r 1 , s 1 , u 1 , v 1 },..., {R K , s K , u K , v K }) as a signature σ. apparatus.
請求項13記載の署名装置であって、
前記鍵ランダマイズ部と前記署名ランダマイズ部は、
e(x,y)e(x,y)…e(x,y)=e(x’,y’)e(x’,y’)…e(x’,y’)となる(x,y)以外の組合せ(x’,y’)を求めるときに、
1以上p−1以下のランダムな整数γ,…,γK−1を生成するランダマイズ乱数生成手段と、
e(x,y’)とe(xk+1,yk+1)の間にe(xk+1^−γ,y’)e(xk+1,y’^γ)を挿入することで、
e(x’,y’)…e(x,y’)e(xk+1,yk+1)…e(x,y)を、
e(x’,y’)…e(xk+1^−γ,y’)e(xk+1,(y’^γ)yk+1)…e(x,y
のように変換し、変換後を
e(x’,y’)…e(x’,y’)e(xk+1,y’k+1)…e(x,y
とする処理を、k=1からk=K−1まで順番に行うランダマイズ実行手段と
を有することを特徴とする署名装置。
14. The signature device according to claim 13, comprising:
The key randomization part and the signature randomization part are:
e (x 1, y 1) e (x 2, y 2) ... e (x K, y K) = e (x '1, y' 1) e (x '2, y' 2) ... e (x When obtaining a combination (x ′ k , y ′ k ) other than (x k , y k ) that becomes “ K , y ′ K ),
Randomized random number generating means for generating random integers γ 1 ,..., Γ K−1 of 1 or more and p−1 or less;
inserting e (x k + 1 ^ −γ k , y ′ k ) e (x k + 1 , y ′ k ^ γ k ) between e (x k , y ′ k ) and e (x k + 1 , y k + 1 ). so,
e (x ′ 1 , y ′ 1 )... e (x k , y ′ k ) e (x k + 1 , y k + 1 )... e (x K , y K )
e (x '1, y' 1) ... e (x k x k + 1 ^ -γ k, y 'k) e (x k + 1, (y' k ^ γ k) y k + 1) ... e (x K, y K )
E (x ′ 1 , y ′ 1 )... E (x ′ k , y ′ k ) e (x k + 1 , y ′ k + 1 )... E (x K , y K )
And a randomization execution means for sequentially performing the following processing from k = 1 to k = K−1.
請求項13記載の署名装置であって、
前記鍵乱数生成部は、ランダムな整数α,…,αと整数β,…,βを生成する代わりに、ランダムな整数α,βと、α=β=0(k=0,2,…,K)を生成し、
前記鍵ランダマイズ部は、
Figure 0005331028
となる(a10,a20),…,(a1K,a2K)と(b10,b20),…,(b1K,b2K)を求め、
前記鍵生成部は、秘密鍵skを(g,α,β,α,β)とする
ことを特徴とする署名装置。
14. The signature device according to claim 13, comprising:
The key the random number generator, a random integer α 0, ..., α K and integer beta 0, ..., instead of generating a beta K, random integer alpha 1, and β 1, α k = β k = 0 ( k = 0, 2, ..., K),
The key randomization part
Figure 0005331028
(A 10 , a 20 ), ..., (a 1K , a 2K ) and (b 10 , b 20 ), ..., (b 1K , b 2K )
The key generating unit, a secret key sk (g s, α z, β z, α 1, β 1) and the signature device, characterized by.
請求項13記載の署名装置であって、
jは0以上K以下の整数とし、
前記鍵乱数生成部は、ランダムな整数α,…,αと整数β,…,βを生成する代わりに、ランダムな整数α,βと、α=β=0(k=0,…,K ただし、k≠j)を生成し、
前記鍵ランダマイズ部は、
Figure 0005331028
となる(a10,a20),…,(a1K,a2K)と(b10,b20),…,(b1K,b2K)を求め、
前記鍵生成部は、秘密鍵skを(g,α,β,α,β)とする
ことを特徴とする署名装置。
14. The signature device according to claim 13, comprising:
j is an integer between 0 and K,
The key the random number generator, a random integer α 0, ..., α K and integer beta 0, ..., instead of generating a beta K, random integer alpha j, and β j, α k = β k = 0 ( k = 0,..., K where k ≠ j)
The key randomization part
Figure 0005331028
(A 10 , a 20 ), ..., (a 1K , a 2K ) and (b 10 , b 20 ), ..., (b 1K , b 2K )
The key generating unit, a secret key sk (g s, α z, β z, α j, β j) the signature apparatus which is characterized in that a.
請求項13から16のいずれかに記載の署名装置であって、
前記鍵生成部は、
Figure 0005331028
を計算し、公開鍵にA,Bも含める
ことを特徴とする署名装置。
The signature device according to any one of claims 13 to 16,
The key generation unit
Figure 0005331028
A signature apparatus characterized in that A and B are also included in the public key.
、GをGからGへの写像が困難な位数pの群、Gを位数pの群、eをG×G→Gの双線形写像、Kを2以上の整数、^をべき乗を示す記号とし、
p,G,G,G,eを記録する署名記録部と、
群Gの生成元g,hをランダムに選択するコミットメント群要素選択部と、
1以上p−1以下のランダムな整数x,…,xと整数y,…,yを生成するコミットメント乱数生成部と、
k=1,…,Kに対して、
=g^x
=h^y
を計算するコミットメント計算部と、
1以上p−1以下のランダムな整数α,βと、ランダムな整数α,βを生成する鍵乱数生成部と、
=g^α
=g^β
を計算する鍵計算部と、
群Gの生成元gをランダムに選択する鍵群要素選択部と、
e(g,g^α)=e(a10,a20)e(a11,a21
e(h,g^β)=e(b10,b20)e(b11,b21
となる(a10,a20),(a11,a21)と、(b10,b20),(b11,b21)を求める鍵ランダマイズ部と、
(g,h,{g,h},…,{g,h},{a10,a20,b10,b20},{a11,a21,b11,b21})を検証鍵vkとし、(vk,g,α,β,α,β)を秘密鍵skとし、検証鍵vkを公開する鍵生成部と、
群G上の1以外の元であるメッセージm,…,mを受け取るメッセージ取得部と、
1以上p−1以下のランダムな整数ζ,η,ξ,ρ,δを生成する署名乱数生成部と、
Figure 0005331028
を計算する署名計算部と、
(z,t,w,r,s,u,v)を署名σとして出力する署名出力部と
を備える署名装置。
G 1, G 2 a mapping is difficult order p groups from G 1 to G 2, a group of order p of G T, bilinear mapping of e G 1 × G 2 → G T, the K 2 The above integer, ^ is a symbol indicating a power,
a signature recording unit for recording p, G 1 , G 2 , G T , e;
A commitment group element selector that randomly selects generators g 0 and h 0 of group G 2 ;
1 or p-1 random integer x 1 below, ..., x K and integer y 1, ..., and commitment random number generation unit for generating a y K,
For k = 1, ..., K,
g k = g 0 ^ x k ,
h k = h 0 ^ y k ,
A commitment calculation unit for calculating
A random number α z , β z of 1 to p−1 and a key random number generator for generating random integers α 1 , β 1 ;
g z = g 0 ^ α z ,
h z = g 0 ^ β z ,
A key calculation unit for calculating
A key group element selection unit that randomly selects a generator g s of the group G 2 ;
e (g k , g s ^ α k ) = e (a 10 , a 20 ) e (a 11 , a 21 )
e (h k , g s ^ β k ) = e (b 10 , b 20 ) e (b 11 , b 21 )
(A 10 , a 20 ), (a 11 , a 21 ), and (b 10 , b 20 ), (b 11 , b 21 ) to obtain a key randomization unit,
(G z, h z, { g 0, h 0}, ..., {g K, h K}, {a 10, a 20, b 10, b 20}, {a 11, a 21, b 11, b 21 }) as a verification key vk, (vk, g s , α z , β z , α 1 , β 1 ) as a secret key sk, and a key generation unit that publishes the verification key vk;
A message acquisition unit that receives messages m 1 ,..., M K that are elements other than 1 on the group G 2 ;
A signature random number generator for generating random integers ζ, η, ξ, ρ, δ of 1 or more and p−1 or less;
Figure 0005331028
A signature calculation unit for calculating
A signature output unit that outputs (z, t, w, r, s, u, v) as a signature σ.
、GをGからGへの写像が困難な位数pの群、Gを位数pの群、eをG×G→Gの双線形写像、Kを2以上の整数、^をべき乗を示す記号、 とh を群G の生成元、x ,…,x とy ,…,y を1以上p−1以下の整数、
k=1,…,Kに対して、g =g ^x 、h =h ^y
,G,G,G,e,g,h,…,g,h)をCRS、(x ,y ,…,x ,y )をトラップドアτ、
α とβ を1以上p−1以下の整数、α ,…,α とβ ,…,β を整数、
=g ^α 、h =g ^β
を群G の生成元、(a 1k ,a 2k )を
Figure 0005331028
となる(g ,g ^α )以外の組合せ、(b 1k ,b 2k )を
Figure 0005331028
となる(h ,g ^β )以外の組合せ、(g ,α ,β ,α ,β ,…,α ,β )を秘密鍵sk、(g,h,{a10,a20,b10,b20},…,{a1K,a2K,b1K,b2K})を検証鍵vk、m ,…,m を群G 上の1以外の元であるメッセージ、ζ,η ,…,η ,ξ ,…,ξ を1以上p−1以下の整数とし、
Figure 0005331028
を計算し、
Figure 0005331028
となる(r’ ,s’ )以外の組合せ(r ,s )と、(u’ ,v’ )以外の組合せ(u ,v )を求めることで生成した(z,t,w,{r,s,u,v},…,{r,s,u,v})を正しい署名σであると確認するための検証装置であって、
メッセージm,…,mと署名σとを取得する検証入力部と、
Figure 0005331028
で得られるA,Bに対して、
Figure 0005331028
であることを確認する検証確認部と、
前記検証確認部がすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に署名が正しくないことを示す情報を出力する検証出力部と
を備える検証装置。
G 1, G 2 a mapping is difficult order p groups from G 1 to G 2, a group of order p of G T, bilinear mapping of e G 1 × G 2 → G T, the K 2 more integer, ^ symbol indicating the power, g 0 and h 0 the generator of the group G 2, x 1, ..., x K and y 1, ..., 1 or more y K p-1 an integer,
For k = 1,..., K, g k = g 0 ^ x k , h k = h 0 ^ y k ,
(P, G 1, G 2 , G T, e, g 0, h 0, ..., g K, h K) the CRS, (x 1, y 1 , ..., x K, y K) a trap door τ ,
The alpha z and beta z 1 or p-1 an integer, α 0, ..., α K and beta 0, ..., a beta K integers,
g z = g 0 ^ α z , h z = g 0 ^ β z ,
g s is the generator of group G 2 and (a 1k , a 2k )
Figure 0005331028
A combination other than (g k , g s ^ α k ), (b 1k , b 2k )
Figure 0005331028
A combination other than (h k , g s ^ β k ), (g s , α z , β z , α 0 , β 0 ,..., Α K , β K ) is assigned to the secret key sk, (g z , h z, {a 10, a 20 , b 10, b 20}, ..., {a 1K, a 2K, b 1K, b 2K}) the verification key vk, m 1, ..., a m K on a group G 2 of 1 other messages are original, ζ, η 1, ..., η K, ξ 1, ..., a xi] K is 1 or more p-1 an integer,
Figure 0005331028
Calculate
Figure 0005331028
And becomes (r 'k, s' k ) except combinations (r k, s k), was generated by obtaining the (u 'k, v' k ) except combinations (u k, v k) ( z , T, w, {r 1 , s 1 , u 1 , v 1 },..., {R K , s K , u K , v K }) are verification devices for confirming that they are correct signatures σ. And
A verification input unit for obtaining the messages m 1 ,..., M K and the signature σ;
Figure 0005331028
For A and B obtained by
Figure 0005331028
A verification and confirmation unit to confirm that
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 condition is not satisfied, information indicating that the signature is incorrect is output. A verification device comprising: a verification output unit.
、GをGからGへの写像が困難な位数pの群、Gを位数pの群、eをG×G→Gの双線形写像、Kを2以上の整数、^をべき乗を示す記号、 ,h を群G の生成元、x ,…,x とy ,…,y を1以上p−1以下の整数、
k=1,…,Kに対して、g =g ^x 、h =h ^y
α とβ を1以上p−1以下の整数、α とβ を整数、
=g ^α 、h =g ^β
を群G の生成元、(a 10 ,a 20 )と(a 11 ,a 21 )を
e(g ,g ^α )=e(a 10 ,a 20 )e(a 11 ,a 21
となる組み合わせ、(b 10 ,b 20 )と(b 11 ,b 21 )を
e(h ,g ^β )=e(b 10 ,b 20 )e(b 11 ,b 21
となる組み合わせ、(vk,g ,α ,β ,α ,β )を秘密鍵sk、(g,h,{g,h},…,{g,h},{a10,a20,b10,b20},{a11,a21,b11,b21})を検証鍵vk、 ,…,m を群G 上の1以外の元であるメッセージ、ζ,η,ξ,ρ,δを1以上p−1以下の整数とし、
Figure 0005331028
のように計算して求めた(z,t,w,r,s,u,v)を正しい署名σであると確認するための検証装置であって、
メッセージm,…,mと署名σとを取得する検証入力部と、
Figure 0005331028
であることを確認する検証確認部と、
前記検証確認部がすべての条件を満たすと確認した場合には署名が正しいことを示す情報を出力し、いずれかの条件を満たさないと確認した場合に署名が正しくないことを示す情報を出力する検証出力部と
を備える検証装置。
G 1, G 2 a mapping is difficult order p groups from G 1 to G 2, a group of order p of G T, bilinear mapping of e G 1 × G 2 → G T, the K 2 or greater, the symbol indicating the power of ^, g 0, h 0 of origin group G 2, x 1, ..., x K and y 1, ..., 1 or more y K p-1 an integer,
For k = 1,..., K, g k = g 0 ^ x k , h k = h 0 ^ y k ,
α z and β z are integers from 1 to p−1, α 1 and β 1 are integers,
g z = g 0 ^ α z , h z = g 0 ^ β z ,
g s is the generator of group G 2 and (a 10 , a 20 ) and (a 11 , a 21 )
e (g k , g s ^ α k ) = e (a 10 , a 20 ) e (a 11 , a 21 )
A combination of (b 10 , b 20 ) and (b 11 , b 21 )
e (h k , g s ^ β k ) = e (b 10 , b 20 ) e (b 11 , b 21 )
The combination (vk, g s , α z , β z , α 1 , β 1 ) is a secret key sk, (g z , h z , {g 0 , h 0 }, ..., {g K , h K }, {A 10 , a 20 , b 10 , b 20 }, {a 11 , a 21 , b 11 , b 21 }) are verification keys vk, m 1 ,..., M K are other than 1 on the group G 2 The message, ζ, η, ξ, ρ, δ, which is the element of, is an integer between 1 and p-1,
Figure 0005331028
A verification device for confirming that (z, t, w, r, s, u, v) obtained by calculation as follows is a correct signature σ,
A verification input unit for obtaining the messages m 1 ,..., M K and the signature σ;
Figure 0005331028
A verification and confirmation unit to confirm that
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 condition is not satisfied, information indicating that the signature is incorrect is output. A verification device comprising: a verification output unit.
請求項13から18のいずれかに記載の署名装置、もしくは請求項19または20記載の検証装置のいずれかの装置として、コンピュータを機能させるプログラム。   A program that causes a computer to function as the signature device according to any one of claims 13 to 18 or the verification device according to claim 19 or 20. 請求項21記載のプログラムを記録した記録媒体。   A recording medium on which the program according to claim 21 is recorded.
JP2010035929A 2010-02-22 2010-02-22 Signature / verification system, signature / verification method, signature device, verification device, program, recording medium Expired - Fee Related JP5331028B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010035929A JP5331028B2 (en) 2010-02-22 2010-02-22 Signature / verification system, signature / verification method, signature device, verification device, program, recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010035929A JP5331028B2 (en) 2010-02-22 2010-02-22 Signature / verification system, signature / verification method, signature device, verification device, program, recording medium

Publications (2)

Publication Number Publication Date
JP2011170247A JP2011170247A (en) 2011-09-01
JP5331028B2 true JP5331028B2 (en) 2013-10-30

Family

ID=44684410

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010035929A Expired - Fee Related JP5331028B2 (en) 2010-02-22 2010-02-22 Signature / verification system, signature / verification method, signature device, verification device, program, recording medium

Country Status (1)

Country Link
JP (1) JP5331028B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5815754B2 (en) * 2012-01-24 2015-11-17 日本電信電話株式会社 Signature verification system, signature device, verification device, and signature verification method
AU2019322590B2 (en) * 2018-08-13 2021-12-16 Nippon Telegraph And Telephone Corporation Secure joining system, method, secure computing apparatus and program

Also Published As

Publication number Publication date
JP2011170247A (en) 2011-09-01

Similar Documents

Publication Publication Date Title
JP5790319B2 (en) Signature verification apparatus, signature verification method, program, and recording medium
JP6069852B2 (en) Information processing apparatus, information processing method, and program
Zhao Practical aggregate signature from general elliptic curves, and applications to blockchain
JP5099003B2 (en) Group signature system and information processing method
EP4035307A1 (en) Key-value map commitments system and method
Meshram et al. A provably secure lightweight subtree-based short signature scheme with fuzzy user data sharing for human-centered IoT
JP6075785B2 (en) Cryptographic communication system, cryptographic communication method, program
JP5331028B2 (en) Signature / verification system, signature / verification method, signature device, verification device, program, recording medium
KR20230002941A (en) (EC)DSA Threshold Signature with Secret Sharing
JP2013110628A (en) Key exchange system, key exchange device, key generation apparatus, key exchange method and key exchange program
JP5331027B2 (en) Signature / verification system, signature / verification method, signature device, verification device, program, recording medium
JP5815754B2 (en) Signature verification system, signature device, verification device, and signature verification method
JP5069157B2 (en) Signature system, signature method, verification device, verification device, verification method, verification method, program
JP5651611B2 (en) Key exchange device, key exchange system, key exchange method, program
JP2011145591A (en) Commitment system, master device, transmitter, receiver, commitment method, program and 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
JP5330964B2 (en) Signature / verification system, signature / verification method, signature device, verification device, program
JP6634171B2 (en) Apparatus, method and program for certifying public key reliability
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
JP5572580B2 (en) Lost communication system, lost communication method, and program
JP4533636B2 (en) Digital signature system, digital signature management apparatus, digital signature management method and program
JP5486454B2 (en) Digital signature / verification system, digital signature / verification method, signature apparatus, verification apparatus, and program thereof
JP5457991B2 (en) Digital signature / verification system, digital signature / verification method, signature apparatus, verification apparatus, and program thereof
JP5427156B2 (en) Key exchange device, key exchange system, key exchange method, key exchange program
JP6225097B2 (en) Signature / Verification System, Signature Device, Verification Device, Signature / Verification Method, Program

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110624

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: 5331028

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