JP2015135452A - Pairing computation device, multi-pairing computation device and program - Google Patents

Pairing computation device, multi-pairing computation device and program Download PDF

Info

Publication number
JP2015135452A
JP2015135452A JP2014007518A JP2014007518A JP2015135452A JP 2015135452 A JP2015135452 A JP 2015135452A JP 2014007518 A JP2014007518 A JP 2014007518A JP 2014007518 A JP2014007518 A JP 2014007518A JP 2015135452 A JP2015135452 A JP 2015135452A
Authority
JP
Japan
Prior art keywords
expression evaluation
point
pairing
unit
expression
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.)
Granted
Application number
JP2014007518A
Other languages
Japanese (ja)
Other versions
JP6067596B2 (en
Inventor
祐人 川原
Yuto Kawahara
祐人 川原
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 JP2014007518A priority Critical patent/JP6067596B2/en
Publication of JP2015135452A publication Critical patent/JP2015135452A/en
Application granted granted Critical
Publication of JP6067596B2 publication Critical patent/JP6067596B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To improve conventional arts about a pairing on an elliptic curve, and further to high-speed a calculation velocity.SOLUTION: A pairing computation device according to the present invention comprises: a record unit; an input conversion unit; an expression evaluation generation unit; and an expression evaluation computation unit. When an expression evaluation Lis L=αy+βxw+γvw, the record unit records ahaving a prescribed relationship with A, and bhaving a prescribed relationship with B. The input conversion unit obtains x' and y' in which x'=γ/(B*β*x), y'=(α*y)/(A*β*x) from xand y. The expression evaluation generation unit reads the aand bfrom the record unit, and generates an expression evaluation L' like L'=dv(Ay'+w+Bx'vw) using the aand b. The expression evaluation computation unit outputs a computation result of f*L' with f,L' as an input.

Description

本発明は、情報セキュリティ技術のためのペアリング演算装置、マルチペアリング演算装置、プログラムに関する。   The present invention relates to a pairing arithmetic device, a multi-pairing arithmetic device, and a program for information security technology.

図1は、Barreto-Naehrig楕円曲線(BN曲線,E:y=x+b,b≠0∈F(p))上のOptimal Ateペアリングの従来のアルゴリズムを示す図である。そして、このようなペアリング演算の入力の一方の元が固定されている場合に、事前に計算可能な値を事前に計算して記録しておくことで、元が入力されたときの計算速度を高速化する技術として非特許文献1が知られている。 FIG. 1 is a diagram showing a conventional algorithm for Optimal Ate pairing on a Barreto-Naehrig elliptic curve (BN curve, E: y 2 = x 3 + b, b ≠ 0∈F (p)). And when one element of the input of such a pairing operation is fixed, the calculation speed when the element is input can be calculated in advance and recorded. Non-Patent Document 1 is known as a technique for speeding up the process.

C. Costello, D. Stebila, "Fixed Argument Pairings," LATINCRYPT 2010, LNCS 6212, pp. 92-108, 2010.C. Costello, D. Stebila, "Fixed Argument Pairings," LATINCRYPT 2010, LNCS 6212, pp. 92-108, 2010.

ペアリング暗号では、IDベース暗号や関数型暗号など利便性の高い暗号方式が構成できる。これらの暗号方式ではペアリング演算が必要となるため、実用的なシステムの構成のためには、ペアリング演算が高速に計算できることが求められる。ペアリング暗号システムでは、事前に秘密情報(例えば,秘密鍵)が配布されており、ペアリング演算の際に秘密情報を入力の片方として計算することがある。この場合、入力の一方が固定であることを利用して、オフライン事前計算によりペアリング演算の高速化が可能となる。また関数型暗号などの高機能な暗号方式では、複数のペアリング演算の積を計算するマルチペアリング演算で片方の入力が固定である場合もあり、この場合でも、オフライン事前計算によりマルチペアリング演算の高速化が可能となる。しかしながら、暗号システムの高機能化が進んでいる状況から、さらなる高速化が求められている。   In the pairing encryption, a highly convenient encryption method such as ID-based encryption or functional encryption can be configured. Since these encryption methods require a pairing operation, it is required that the pairing operation can be calculated at high speed for a practical system configuration. In the pairing encryption system, secret information (for example, a secret key) is distributed in advance, and the secret information may be calculated as one of the inputs during the pairing calculation. In this case, by making use of the fact that one of the inputs is fixed, the pairing calculation can be speeded up by off-line pre-calculation. In addition, in advanced cryptosystems such as functional cryptography, one input may be fixed in a multi-pairing operation that calculates the product of multiple pairing operations. Calculation speed can be increased. However, due to the progress of higher functionality in cryptographic systems, higher speed is required.

本発明は、楕円曲線上のペアリングについて従来技術を改良し、さらに計算速度を高速化することを目的とする。   An object of the present invention is to improve the prior art for pairing on an elliptic curve and further increase the calculation speed.

まず、mを2以上の整数、jを0以上m−1以下の整数、pを素数または素数のべき乗、Nをあらかじめ定めた0,1,2のいずれかの整数、kを正の整数、F(p)とF(p)を有限体、Pを有限体F(p)上の楕円曲線の点、Qを有限体F(p12)上の楕円曲線の点であって固定された点、Tj1とTj2をQに対応する有限体F(p12)上の楕円曲線の点、Tj1=(xj1,yj1)、Tj2=(xj2,yj2)、P=(xjP,yjP)、eを点Pと点Qを入力とし有限体F(p12)上の元を出力するペアリング演算を示す記号、fを有限体F(p12)上の元、Lを点Tj1と点Tj2を通る直線をPで評価した式評価、α,β,γ,A,BをF(p)上の元、dを小整数とし、
F(p12)上の元を、c,c,c,c,c,cはF(p)上の元である係数、v=ξ、w=v、ξは平方非剰余かつ立方非剰余として、
+cv+c+cw+cvw+c
のように表現することとする。また、式評価Lは、
=αjP+βjpw+γvw
である。
First, m is an integer of 2 or more, j is an integer of 0 to m−1, p is a prime number or a power of a prime number, N is a predetermined integer of 0, 1, 2, and k is a positive integer. F (p) and F (p k ) are finite fields, P j is an elliptic curve point on the finite field F (p), and Q j is an elliptic curve point on the finite field F (p 12 ). Points, the points of the elliptic curve on the finite field F (p 12 ) corresponding to Q j , T j1 and T j2 , T j1 = (x j1 , y j1 ), T j2 = (x j2 , y j2 ) , P j = (x jP , y jP ), a symbol indicating a pairing operation in which e is input to the point P j and the point Q j and outputs an element on the finite field F (p 12 ), and f is a finite field F ( p 12) on the original, expression evaluation a straight line passing through the L j the point T j1 and the point T j2 was evaluated by P j, α j, β j , γ j, a j, B j and F (p 2 Top of the original, the d j as a small integer,
The elements on F (p 12 ) are the coefficients c 0 , c 1 , c 2 , c 3 , c 4 , c 5 are the elements on F (p 2 ), v 3 = ξ, w 2 = v, ξ is a square non-residue and a cubic non-residue,
c 0 + c 1 v + c 2 v 2 + c 3 w + c 4 vw + c 5 v 2 w
It will be expressed as The expression evaluation L j is
L j = α j y jP + β j x jp w + γ j vw
It is.

本発明のペアリング演算装置は、群Gの元Pと群Gの元Qとのペアリングe(P,Q)を求める。本発明のペアリング演算装置は、記録部、入力変換部、式評価生成部、式評価演算部を備える。記録部は、Aと所定の関係を持つ値であるaと、Bと所定の関係を持つ値であるbを記録している。入力変換部は、x0Pとy0Pから、x0P’=γ/(B・β・x0P)、y0P’=(α・y0P)/(A・β・x0P)が成り立つx0P’とy0P’を求める。式評価生成部は、記録部からaとbを読み出し、aとbを用いて、
’=d(A0P’+w+B0P’vw)
のように式評価L’を生成する。式評価演算部は、f,L’を入力とし、f×L’の演算結果を出力する。
The pairing arithmetic unit of the present invention obtains a pairing e (P 0 , Q 0 ) between the element P 0 of the group G 1 and the element Q 0 of the group G 2 . The pairing calculation device of the present invention includes a recording unit, an input conversion unit, an expression evaluation generation unit, and an expression evaluation calculation unit. The recording unit records a 0 which is a value having a predetermined relationship with A 0 and b 0 which is a value having a predetermined relationship with B 0 . Input conversion unit, the x 0P and y 0P, x 0P '= γ 0 / (B 0 · β 0 · x 0P), y 0P' = (α 0 · y 0P) / (A 0 · β 0 · x X 0P ′ and y 0P ′ satisfying ( 0P ) are obtained. The expression evaluation generator reads a 0 and b 0 from the recording unit, and uses a 0 and b 0 ,
L 0 '= d 0 v N (A 0 y 0P ' + w + B 0 x 0P 'vw)
An expression evaluation L 0 ′ is generated as follows. The expression evaluation calculation unit receives f and L 0 ′ and outputs a calculation result of f × L 0 ′.

本発明のマルチペアリング演算装置は、m個の群Gの元P,…,Pm−1と群Gの元Q,…,Qm−1とのマルチペアリングe(P,Q)×e(P,Q)×…×e(Pm−1,Qm−1)を求める。本発明のマルチペアリング演算装置は、記録部、式評価生成部、式評価演算部を備える。記録部は、j=0,…,m−1について、Aと所定の関係を持つ値であるaと、Bと所定の関係を持つ値であるbを記録している。入力変換部は、j=0,…,m−1について、xjPとyjPから、xjP’=γ/(B・β・xjP)、yjP’=(α・yjP)/(A・β・xjP)が成り立つxjP’とyjP’を求める。式評価生成部は、j=0,…,m−1のすべてについて、記録部からaとbを読み出し、aとbを用いて、
’=d(AjP’+w+BjP’vw)
のように式評価L’を生成する。式評価演算部は、f,L’,L’,…,Lm−1’を入力とし、f×L’×…×Lm−1’の演算結果を出力する。
Multi pairing computation device of the present invention, m number original P 0 of the group G 1 of, ..., P m-1 and the original Q 0 of the group G 2, ..., multi-pairing e (P and Q m-1 0 , Q 0 ) × e (P 1 , Q 1 ) ×... × e (P m−1 , Q m−1 ) are obtained. The multi-pairing calculation device of the present invention includes a recording unit, an expression evaluation generation unit, and an expression evaluation calculation unit. The recording unit records a j which is a value having a predetermined relationship with A j and b j which is a value having a predetermined relationship with B j for j = 0,..., M−1. For j = 0,..., M −1, the input conversion unit calculates x jP ′ = γ j / (B j · β j · x jP ), y jP ′ = (α j · y) from x jP and y jP. x jP ′ and y jPsatisfying jP ) / (A j · β j · x jP ) are obtained. The expression evaluation generation unit reads a j and b j from the recording unit for all of j = 0,..., M−1, and uses a j and b j .
L j '= d j v N (A j y jP ' + w + B j x jP 'vw)
An expression evaluation L j ′ is generated as follows. Expression evaluation calculation unit, f, L 0 ', L 1', ..., ' as input, f × L 0' L m -1 outputs an operation result of × ... × L m-1 ' .

本発明のペアリング演算装置とマルチペアリング装置によれば、点Qが固定されていることを利用してあらかじめAと所定の関係を持つ値であるaと、Bと所定の関係を持つ値であるbを記録しておく。そして、可変である点Pが入力されると、
’=d(AjP’+w+BjP’vw)
のように式評価L’を生成し、式評価の乗算を行う。このような形式の式評価L’であれば、有限体F(p12)上の任意の元との乗算において、Lよりも有限体F(p)上の乗算回数を少なくできる。つまり、式評価をLからL’に変更したことで計算コストが増えてしまう計算は、点Qが固定されていることを利用して事前に計算しておき、点Pが入力された後の計算コストを削減している。したがって、点Pが入力されてからの計算速度を高速化できる。
According to the pairing computation device and a multi-pairing device of the present invention, and a j is a value having a pre A j a predetermined relationship based on the fact that the point Q j is fixed, B j and a given B j which is a value having a relationship is recorded. And when a variable point P j is input,
L j '= d j v N (A j y jP ' + w + B j x jP 'vw)
An expression evaluation L j ′ is generated as shown in FIG. With this type of expression evaluation L j ′, in the multiplication with an arbitrary element on the finite field F (p 12 ), the number of multiplications on the finite field F (p 2 ) can be reduced as compared with L j . That is, the calculation that increases the calculation cost by changing the expression evaluation from L j to L j ′ is calculated in advance using the fact that the point Q j is fixed, and the point P j is input. The calculation cost after being reduced. Therefore, the calculation speed after the point P j is input can be increased.

Barreto-Naehrig楕円曲線上のOptimal Ateペアリングの従来のアルゴリズムを示す図。The figure which shows the conventional algorithm of Optimal Ate pairing on a Barreto-Naehrig elliptic curve. 式5を用いた場合のOptimal Ateペアリングのアルゴリズム(Algorithm 2)を示す図。The figure which shows the algorithm (Algorithm 2) of Optimal Ate pairing at the time of using Formula 5. FIG. 図2のステップ7,12,21,24の乗算のアルゴリズムの具体例(Algorithm 3)を示す図。The figure which shows the specific example (Algorithm 3) of the algorithm of the multiplication of step 7, 12, 21, 24 of FIG. F(p12)上の任意の元と式4の形式の元との乗算のアルゴリズム(Algorithm 3’)を示す図。It shows the F (p 12) on any of the original and algorithms multiplication of the original form of Equation 4 (Algorithm 3 '). 本発明のペアリング演算装置の機能構成例を示す図。The figure which shows the function structural example of the pairing calculating apparatus of this invention. 本発明のペアリング演算装置の入力変換と式評価演算の処理フロー例を示す図。The figure which shows the example of a processing flow of the input conversion of the pairing calculating apparatus of this invention, and an expression evaluation calculation. 本発明のマルチペアリング演算装置の機能構成例を示す図。The figure which shows the function structural example of the multi-pairing arithmetic unit of this invention. 本発明のマルチペアリング演算装置の入力変換と式評価演算の処理フローの例を示す図。The figure which shows the example of the processing flow of the input conversion of the multi-pairing calculating apparatus of this invention, and an expression evaluation calculation. Optimal Ateペアリングにおけるマルチペアリングのアルゴリズムの例(Algorithm 4)を示す図。The figure which shows the example (Algorithm 4) of the multi-pairing algorithm in Optimal Ate pairing. 図9のステップ7,12,21,24の乗算のアルゴリズムの例(Algorithm 5)を示す図。The figure which shows the example (Algorithm 5) of the algorithm of the multiplication of step 7, 12, 21, 24 of FIG. 図10のステップ3の計算のアルゴリズム(Algorithm 6)を示す図。The figure which shows the algorithm (Algorithm 6) of the calculation of step 3 of FIG. 図10のステップ4の計算のアルゴリズム(Algorithm 7)を示す図。The figure which shows the algorithm (Algorithm 7) of the calculation of step 4 of FIG. 従来技術である式4の形式の式評価を用いた場合の乗算のアルゴリズムの例(Algorithm 6’)を示す図。The figure which shows the example (Algorithm 6 ') of the algorithm of multiplication at the time of using the formula evaluation of the format of Formula 4 which is a prior art. 図13で求めた元同士の乗算のアルゴリズムの例(Algorithm 7’)を示す図。The figure which shows the example (Algorithm 7 ') of the algorithm of the multiplication of the elements calculated | required in FIG.

以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。まず、mを2以上の整数、jを0以上m−1以下の整数、pを素数または素数のべき乗、Nをあらかじめ定めた0,1,2のいずれかの整数、kを正の整数、F(p)とF(p)を有限体、Pを有限体F(p)上の楕円曲線の点、Qを有限体F(p12)上の楕円曲線の点であって固定された点、Tj1とTj2をQに対応する有限体F(p12)上の楕円曲線の点、Tj1=(xj1,yj1)、Tj2=(xj2,yj2)、P=(xjP,yjP)、eを点Pと点Qを入力とし有限体F(p12)上の元を出力するペアリング演算を示す記号、fを有限体F(p12)上の元、Lを点Tj1と点Tj2を通る直線をPで評価した式評価、dを小整数とする。なお、点Tj1と点Tj2とが同一の点の場合、「点Tj1と点Tj2を通る直線」は点Tj1での接線である。また、「小整数」とは少なくとも1を含む値の小さい整数であり、例えば、任意の元fと小整数dとの乗算(d×f)を、任意の元fのd−1回の加算(f+f+…+f)で行った方が、計算コストが小さくなるような整数である。演算装置、演算方法、プログラムによって具体的な小整数は異なるが、ある演算装置が、整数dと元fとの乗算(d×f)を加算(f+f+…+f)に置き換えて計算している場合、その演算装置においては、整数dは小整数である。また、小整数dは負の整数でもよい。 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. First, m is an integer of 2 or more, j is an integer of 0 to m−1, p is a prime number or a power of a prime number, N is a predetermined integer of 0, 1, 2, and k is a positive integer. F (p) and F (p k ) are finite fields, P j is an elliptic curve point on the finite field F (p), and Q j is an elliptic curve point on the finite field F (p 12 ). Points, the points of the elliptic curve on the finite field F (p 12 ) corresponding to Q j , T j1 and T j2 , T j1 = (x j1 , y j1 ), T j2 = (x j2 , y j2 ) , P j = (x jP , y jP ), a symbol indicating a pairing operation in which e is input to the point P j and the point Q j and an element on the finite field F (p 12 ) is output, and f is a finite field F ( p 12) on the original, expression evaluation a straight line passing through the point of L j T j1 and the point T j2 was evaluated by P j, the d j and the small integer. When the point T j1 and the point T j2 are the same point, the “straight line passing through the point T j1 and the point T j2 ” is a tangent at the point T j1 . A “small integer” is an integer having a small value including at least 1. For example, a multiplication (d j × f) of an arbitrary element f and a small integer d j is performed by d j −1 of the arbitrary element f. The number of times of addition (f + f +... + F) is an integer that reduces the calculation cost. A specific small integer differs depending on an arithmetic device, an arithmetic method, and a program, but a certain arithmetic device calculates by replacing the multiplication (d × f) of the integer d and the element f with addition (f + f +... + F) In the arithmetic unit, the integer d is a small integer. The small integer d j may be a negative integer.

F(p12)上の元を、c,c,c,c,c,cはF(p)上の元である係数、v=ξ、w=v、ξは平方非剰余かつ立方非剰余として、
+cv+c+cw+cvw+c
のように表現することとする。
The elements on F (p 12 ) are the coefficients c 0 , c 1 , c 2 , c 3 , c 4 , c 5 are the elements on F (p 2 ), v 3 = ξ, w 2 = v, ξ is a square non-residue and a cubic non-residue,
c 0 + c 1 v + c 2 v 2 + c 3 w + c 4 vw + c 5 v 2 w
It will be expressed as

また、図1に示すアルゴリズムでは、TがT01に相当し、T,Q,Q’,−Q”がT02に相当し、aoptがeに相当し、

Figure 2015135452
がLに相当する。また、アルゴリズムの具体例を示す図では、F(p)は、
Figure 2015135452
のように示されている。 In the algorithm shown in FIG. 1, T corresponds to T 01 , T, Q, Q ′, −Q ″ corresponds to T 02 , a opt corresponds to e,
Figure 2015135452
Corresponds to L 0 . In the figure showing a specific example of the algorithm, F (p k ) is
Figure 2015135452
It is shown as follows.

<従来技術の分析>
ペアリング演算には、点Tj1と点Tj2と点Pに対して、点加算/2倍算と式評価の計算が含まれる。次に、具体的な座標系の例を示しながら説明する。
<Analysis of conventional technology>
The pairing calculation includes point addition / doubling and expression evaluation for the points T j1 , T j2, and P j . Next, description will be given while showing a specific example of a coordinate system.

次の具体例の説明では、Barreto-Naehrig楕円曲線(BN曲線,E:y=x+b,b≠0∈F(p))を用いる。BN曲線では、整数zに対して素数pとBN曲線上のF(p)有理点群の位数rは、
p=36z+36z+24z+6z+1
r=36z+36z+18z+6z+1
である。BN曲線では、rで割り切れる(p−1)となる最小のkは12である。
In the following description of the specific example, a Barreto-Naehrig elliptic curve (BN curve, E: y 2 = x 3 + b, b ≠ 0∈F (p)) is used. In the BN curve, the prime number p and the order r of the F (p) rational point group on the BN curve with respect to the integer z are
p = 36z 4 + 36z 3 + 24z 2 + 6z + 1
r = 36z 4 + 36z 3 + 18z 2 + 6z + 1
It is. In the BN curve, the minimum k that is divisible by r (p k −1) is 12.

拡大体F(p)を逐次拡大により
F(p)=F(p)[u]/(u−β)
F(p)=F(p)[v]/(v−ξ)
F(p12)=F(p)[w]/(w−v)
ただし、v=ξ、w=v、βは平方非剰余、ξは平方非剰余かつ立方非剰余
のように構成する。そして、F(p12)上の元Cを
C=c+cv+c+cw+cvw+cw (式1)
ただし、c,c,c,c,c,c ∈F(p
のように表現する。なお、6次のツイスト曲線E’は、y=x+b/ξ である。このとき、点(x,y)に対してE’,Eの同型写像(x,y)→(xw,yw)となる
Φ:E’(F(p))→E(F(p12))
が存在する。
Sequential expansion of the extension field F (p k ) F (p 2 ) = F (p) [u] / (u 2 −β)
F (p 6 ) = F (p 2 ) [v] / (v 3 −ξ)
F (p 12 ) = F (p 6 ) [w] / (w 2 −v)
However, v 3 = ξ, w 2 = v, β is configured as a non-square residue, and ξ is configured as a non-square residue and a cubic non-residue. Then, the element C on F (p 12 ) is changed to C = c 0 + c 1 v + c 2 v 2 + c 3 w + c 4 vw + c 5 v 2 w (Formula 1)
Where c 0 , c 1 , c 2 , c 3 , c 4 , c 5 ∈ F (p 2 )
Express like this. The sixth-order twist curve E ′ is y 2 = x 3 + b / ξ. At this time, the same map (x, y) → (xw 2 , yw 3 ) of E ′ and E with respect to the point (x, y) becomes Φ: E ′ (F (p 2 )) → E (F ( p 12))
Exists.

Affine座標系の例
j1=(xj1,yj1)、Tj2=(xj2,yj2)、P=(xjP,yjP)とする。λ=(yj2−yj1)/(xj2−xj1)に対して、点加算と式評価(点Tj1と点Tj2とが異なる場合)は、
j3=λ −xj1−x2j
j3=λ(xj1−xj3)−y1j
=yjP−λjpw+(λj1−yj1)vw (式2)
となる。また、点2倍算と式評価(点Tj1と点Tj2とが同じ場合)は、λ=3xj1 /2yj1に対して
j3=λ −2xj1
j3=λ(xj1−xj3)−yj1
=yjP−λjpw+(λj1−yj1)vw (式3)
となる。ここで、式1に示したF(p12)上の元Cはc,c,c,c,c,cの6つの係数が存在するが、式2、式3に示した式評価ではその中の3つの係数がゼロであることが分かる。
Affine coordinate system example T j1 = (x j1 , y j1 ), T j2 = (x j2 , y j2 ), P j = (x jP , y jP ). For λ j = (y j2 −y j1 ) / (x j2 −x j1 ), point addition and expression evaluation (when the points T j1 and T j2 are different) are:
x j3 = λ j 2 -x j1 -x 2j
y j3 = λ j (x j1 −x j3 ) −y 1j
L j = y jP -λ j x jp w + (λ j x j1 -y j1) vw ( Equation 2)
It becomes. Also, the point doubling and the expression evaluation (when the points T j1 and T j2 are the same) are as follows: λ j = 3x j1 2 / 2y j1 x j3 = λ j 2 -2x j1
y j3 = λ j (x j1 −x j3 ) −y j1
L j = y jP -λ j x jp w + (λ j x j1 -y j1) vw ( Equation 3)
It becomes. Here, the element C on F (p 12 ) shown in Equation 1 has six coefficients c 0 , c 1 , c 2 , c 3 , c 4 , and c 5. In the formula evaluation shown, it can be seen that three of the coefficients are zero.

Affine座標系の異なる形式の式評価の例
式2、式3を
jP’・L=1−λjp’w+yjP’(λj1−yj1)vw (式4)
ただし、xjp’=xjp/yjP, yjP’=1/yjP
のように変換して式評価としてもよい。このように変形しても、yjP’の部分は最終べきの計算(図1のアルゴリズムのステップ14)で除去されるため、ペアリング演算の結果には影響しない。式4のように変形すると、3つの係数がゼロであり1つの係数が小整数の「1」であることが分かる。
Expressions 2 and 3 of expression evaluations of different forms in the Affine coordinate system are expressed as y jP ′ · L j = 1−λ j x jp 'w + y jP ′ (λ j x j1 −y j1 ) vw (expression 4)
However, x jp '= x jp / y jP , y jP ' = 1 / y jP
It is good also as formula evaluation by converting like this. Even if it deform | transforms in this way, since the part of yjP 'is removed by the last power calculation (step 14 of the algorithm of FIG. 1), it does not affect the result of a pairing operation. When transformed as shown in Equation 4, it can be seen that three coefficients are zero and one coefficient is a small integer “1”.

非特許文献1では、事前に計算可能な値を事前に計算して記録しておく考え方をこの形式に当てはめ、(−λ,λj1−yj1)を事前に計算して記録している。また、
jp’=xjp/yjP, yjP’=1/yjP
の計算は、点Pの入力に対して1回行えばよいだけなので、点Pが入力された後の計算コストを削減できる。
In Non-Patent Document 1, the concept of calculating and recording in advance a value that can be calculated in advance is applied to this format, and ( −λ j , λ j x j1 −y j1 ) is calculated and recorded in advance. ing. Also,
x jp '= x jp / y jP , y jP ' = 1 / y jP
Is calculated only once for the input of the point P j , so that the calculation cost after the point P j is input can be reduced.

<本発明で利用する式評価>
本発明では、式評価を式4とは異なる形式に変形することで、計算コストを削減する。まず、1つの式評価の具体例を示して説明する。その具体例は、
’=−1/(λ・xjp)・L
=(−1/λ)yjP’+w+(−(λj1−yj1)/λ)xjP’vw (式5)
ただし、xjP’=1/xjP、 yjP’=yjP/xjP
である。この評価式の場合、(−1/λ,−(λj1−yj1)/λ)を事前に計算して記録しておけばよい。(−1/λ,−(λj1−yj1)/λ)の計算には逆元算が必要であり、乗算よりも低速な計算になるが、点Pが入力された後の計算コストには影響しない。また、点Pの入力に対して
jP’=1/xjP、 yjP’=yjP/xjP
の計算を1回行えばよい。なお、−1/(λ・xjp)の部分は最終べきの計算で除去されるため、ペアリング演算の結果には影響しない。また、−1/λと−(λj1−yj1)/λを事前に計算して記録しておくのが最も効率的と考えられる。しかし、乗算や逆元算のような低速な計算を必要とせずに−1/λと−(λj1−yj1)/λを求められる別の値を記録しておいてもよい。
<Formula evaluation used in the present invention>
In the present invention, the calculation cost is reduced by transforming the expression evaluation into a form different from Expression 4. First, a specific example of formula evaluation will be described. Specific examples are:
L j ′ = −1 / (λ j · x jp ) · L j
= (-1 / λ j ) y jP '+ w + (-(λ j x j1 -y j1 ) / λ j ) x jP ' vw (Formula 5)
However, x jP '= 1 / x jP , y jP ' = y jP / x jP
It is. In the case of this evaluation formula, (−1 / λ j , − (λ j x j1 −y j1 ) / λ j ) may be calculated and recorded in advance. The calculation of (−1 / λ j , − (λ j x j1 −y j1 ) / λ j ) requires an inverse operation, which is slower than the multiplication, but the point P j is input It does not affect later calculation costs. Also, x jP '= 1 / x jP , y jP ' = y jP / x jP with respect to the input of the point P j
Is calculated once. Since the part of -1 / (λ j · x jp ) is removed by the final power calculation, the result of the pairing operation is not affected. Also, it is considered most efficient to calculate and record -1 / λ j and-j x j1 -y j1 ) / λ j in advance. However, multiplication and a -1 / lambda j without requiring slower calculation such as inverse calculation - (λ j x j1 -y j1 ) / λ be recorded another value obtained for j Good.

図2は、式5を用いた場合のOptimal Ateペアリングのアルゴリズム(Algorithm 2)である。また、図3は、図2のステップ7,12,21,24の乗算のアルゴリズムの具体例(Algorithm 3)である。このようなアルゴリズムで、ペアリング演算ができる。図2のアルゴリズムでは、ステップ25が最終べきの計算である。なお、図2では式評価を小文字のエルで示している。   FIG. 2 shows an algorithm for Algorithm Ate pairing (Algorithm 2) when Expression 5 is used. FIG. 3 is a specific example (Algorithm 3) of the multiplication algorithm of Steps 7, 12, 21, and 24 of FIG. A pairing operation can be performed with such an algorithm. In the algorithm of FIG. 2, step 25 is the final power calculation. In FIG. 2, the expression evaluation is indicated by a lowercase letter L.

次に、式4と式5の違いを説明する。図3に示したアルゴリズムは、
A=a+av+a+aw+avw+a
のように表現できるF(p12)上の任意の元Aと、
B=b+w+bvw
のように表現できる式5の形式の元Bとの乗算のアルゴリズムである。これと対比するために、図4にF(p12)上の任意の元と式4の形式の元との乗算のアルゴリズム(Algorithm 3’)を示す。図4では、式4の形式の元を
B=1+bw+bvw
と表現している。図3と図4に示したアルゴリズムでは、F(p)上の元である係数同士の乗算回数が計算コストを決める要素である。図3では、ステップ1,4,7に3回ずつ係数同士の乗算が存在するので、F(p)上の元同士の乗算は9回である。一方、図4では、ステップ1,6に4回ずつ、ステップ2,7に1回ずつ係数同士の乗算が存在するので、F(p)上の元同士の乗算は10回である。したがって、式5の形式に変換した方が、計算コストが小さいことが分かる。
Next, the difference between Formula 4 and Formula 5 will be described. The algorithm shown in FIG.
A = a 0 + a 1 v + a 2 v 2 + a 3 w + a 4 vw + a 5 v 2 w
An arbitrary element A on F (p 12 ) that can be expressed as
B = b 0 + w + b 4 vw
This is an algorithm for multiplication with the element B in the form of Expression 5 that can be expressed as follows. For comparison, FIG. 4 shows an algorithm (Algorithm 3 ′) of multiplication between an arbitrary element on F (p 12 ) and an element of the form of Equation 4. In FIG. 4, the element of the form of Formula 4 is B = 1 + b 3 w + b 4 vw
It expresses. In the algorithms shown in FIG. 3 and FIG. 4, the number of multiplications of the original coefficients on F (p 2 ) is an element that determines the calculation cost. In FIG. 3, there are three multiplications between the coefficients in Steps 1, 4, and 7, so there are nine multiplications between elements on F (p 2 ). On the other hand, in FIG. 4, there is multiplication of coefficients four times in steps 1 and 6 and one time in steps 2 and 7, so that multiplication between elements on F (p 2 ) is 10 times. Therefore, it can be seen that the calculation cost is lower when converted into the form of Equation 5.

F(p12)上の任意の元同士の乗算の場合、単純に係数同士を組み合わせると36個の組み合わせがあるので、36回のF(p)上の元同士の乗算がある。そして、カラツバ法(Karatsuba法)を利用することで18回の乗算で計算できることが知られている。図3や図4のアルゴリズムでは、値がゼロや小整数の係数が含まれているので、乗算回数がさらに少なくなっている。そして、式4と式5の形式は、どちらも値がゼロの係数が3つあり、1つの係数が「1」であることは同じである。したがって、乗算回数の差は、どの係数を「1」にしているかによって生じている。本発明は、どの係数を「1」にするかによって、計算コストを削減する効果を得ている。 In the case of multiplication between arbitrary elements on F (p 12 ), since there are 36 combinations when coefficients are simply combined, there are 36 multiplications between elements on F (p 2 ). It is known that the calculation can be performed by 18 multiplications by using the Karatsuba method (Karatsuba method). In the algorithms shown in FIGS. 3 and 4, since the coefficient having a value of zero or a small integer is included, the number of multiplications is further reduced. The formats of Formula 4 and Formula 5 are the same in that there are three coefficients each having a zero value, and one coefficient is “1”. Therefore, the difference in the number of multiplications occurs depending on which coefficient is set to “1”. The present invention has an effect of reducing the calculation cost depending on which coefficient is set to “1”.

同様の効果が得られる式評価
「小整数d」は、任意の元fと小整数dとの乗算(d×f)を、任意の元fのd−1回の加算(f+f+…+f)で行った方が、計算コストが小さくなるような整数なので、「1」となっている係数の部分を他の小整数に変更しても、従来に比べれば計算コストを削減できる。したがって、
’=d((−1/λ)yjP’+w+(−(λj1−yj1)/λ)xjP’vw),
で表現される式評価L’でも従来に比べれば計算コストを削減できる。
The expression evaluation “small integer d j ” that provides the same effect is obtained by multiplying an arbitrary element f by a small integer d j (d j × f), and adding d j −1 times of the arbitrary element f (f + f + ... + F) is an integer that reduces the calculation cost. Therefore, even if the coefficient part “1” is changed to another small integer, the calculation cost can be reduced as compared with the conventional case. Therefore,
L j '= d j (( -1 / λ j) y jP' + w + (- (λ j x j1 -y j1) / λ j) x jP 'vw),
Even in the expression evaluation L j ′ expressed as follows, the calculation cost can be reduced as compared with the conventional case.

また、この式評価にvを乗算した式評価、vを乗算した式評価でも、式5と同じようにF(p)上の元同士の乗算を9回にできる。つまり、
’=d((−1/λ)yjP’v+vw+(−(λj1−yj1)/λ)xjP’vw)
または
’=d((−1/λ)yjP’v+vw+(−(λj1−yj1)/λ)xjP’ξw)
の場合も、従来に比べれば計算コストを削減できる。上記の内容をまとめると、
’=d((−1/λ)yjP’+w+(−(λj1−yj1)/λ)xjP’vw)
のような式評価L’であれば同様の効果が得られる。なお、式評価Lを式評価L’に変換するために乗算する−d/(λ・xjp)vの部分はF(p)の元なので最終べきの計算で除去されるため、ペアリング演算の結果には影響しない。
Further, even in the expression evaluation obtained by multiplying this expression evaluation by v and the expression evaluation obtained by multiplying v 2 , the multiplication of elements on F (p 2 ) can be performed nine times as in the case of Expression 5. That means
L j ′ = d j ((−1 / λ j ) y jP ′ v + vw + (− (λ j x j1 −y j1 ) / λ j ) x jP′v 2 w)
Or L j '= d j (( -1 / λ j) y jP' v 2 + v 2 w + (- (λ j x j1 -y j1) / λ j) x jP 'ξw)
In this case, the calculation cost can be reduced as compared with the conventional case. To summarize the above,
L j '= d j v N ((-1 / λ j) y jP' + w + (- (λ j x j1 -y j1) / λ j) x jP 'vw)
The same effect can be obtained if the expression evaluation L j ′ is as follows. Note that the portion of −d j / (λ j · x jp ) v N that is multiplied to convert the expression evaluation L j into the expression evaluation L j ′ is an element of F (p 6 ), and thus is removed in the final power calculation. Therefore, the result of the pairing operation is not affected.

さらに、式評価Lが式2,3以外の場合でも同様の効果が得られる場合がある。具体的には、式評価L
=αjP+βjpw+γvw (式6)
ただし、α,β,γはF(p)上の元
の場合には、
’=1/(β・xjp)・L
=(α・yjP)/(β・xjP))+w+(γ/(β・xjP))vw (式7)
のようにwの係数が1になるように変形すれば、式5の場合と同じようにF(p)上の元同士の乗算を9回にできる。また、vまたはvをさらに乗算しても同様である。つまり、AとBをF(p)上の元とし、式評価を
’=d(AjP’+w+BjP’vw)
ただし、A=sjA(α/β)、B=sjB(γ/β
jP’=1/(sjB・xjP)、yjP’=yjP/(sjA・xjP
jAとsjBはあらかじめ定めた定数
のように変換できれば、同様の効果が得られる。sjA=1、sjB=1の場合が最も簡単な計算になると考えるが、x0P’とy0P’の計算は図2のアルゴリズムのステップ2に示すように、ステップ3以下の繰り返し処理の前に1回行っているだけである。このように、点Pの入力に対して1回行うだけなので、sjAとsjBの場合は小整数に限らなくても、点Pの入力後の計算コストは従来よりも小さくできる。なお、F(p)上の元を乗算することで式評価Lを式評価L’に変換すれば、乗算した元の部分は最終べきの計算で除去されるため、ペアリング演算の結果には影響しない。
Further, the same effect may be obtained even when the expression evaluation L j is other than Expressions 2 and 3. Specifically, the expression evaluation L j is L j = α j y jP + β j x jp w + γ j vw (Expression 6)
However, α j , β j , and γ j are original elements on F (p 2 ),
L j ′ = 1 / (β j · x jp ) · L j
= (Α j · y jP) / (β j · x jP)) + w + (γ j / (β j · x jP)) vw ( Equation 7)
If the coefficient of w is modified so as to be 1 as shown in FIG. 5, the multiplication of elements on F (p 2 ) can be made 9 times as in the case of Expression 5. The same applies if v or v 2 is further multiplied. That is, A j and B j are elements on F (p 2 ), and the expression evaluation is L j '= d j v N (A j y jP ' + w + B j x jP 'vw)
However, A j = s jAj / β j ), B j = s jBj / β j )
x jP '= 1 / (s jB · x jP ), y jP ' = y jP / (s jA · x jP )
If s jA and s jB can be converted into predetermined constants, the same effect can be obtained. Although it is considered that the case of s jA = 1 and s jB = 1 is the simplest calculation, the calculation of x 0P ′ and y 0P ′ is an iterative process after step 3 as shown in step 2 of the algorithm of FIG. Just go once before. Thus, since only once for the input of the point P j, even in the case of s jA and s jB not limited to a small integer, calculate the cost of after input of the point P j can be made smaller than conventional. Incidentally, F if conversion expression evaluation L j by multiplying the (p 6) on the former in expression evaluation L j ', because the original portion of multiplying are removed in the calculation of the final exponentiation of pairing computation The result is not affected.

図5に本発明のペアリング演算装置の機能構成例を示す。また、図6に本発明のペアリング演算装置の入力変換と式評価演算の処理フロー例を示す。ペアリング演算装置10は、群Gの元Pと群Gの元Qとのペアリングe(P,Q)を求める。ペアリング演算装置10は、記録部50が事前計算の結果を記録していることと、入力変換部15、式評価処理手段20を有することを特徴としており、点加算や点2倍算などのその他の処理を行う構成部も有するが、それらは従来技術と同じである。図5,6では従来技術と同じ構成部は省略している。式評価処理手段20は、式評価生成部30と式評価演算部40からなる。 FIG. 5 shows a functional configuration example of the pairing arithmetic device of the present invention. FIG. 6 shows a processing flow example of input conversion and expression evaluation calculation of the pairing calculation device of the present invention. The pairing arithmetic unit 10 obtains a pairing e (P 0 , Q 0 ) between the element P 0 of the group G 1 and the element Q 0 of the group G 2 . The pairing calculation device 10 is characterized in that the recording unit 50 records the result of the pre-calculation, the input conversion unit 15 and the expression evaluation processing means 20, such as point addition and point doubling Although it has the structure part which performs another process, they are the same as a prior art. 5 and 6, the same components as those in the prior art are omitted. The expression evaluation processing unit 20 includes an expression evaluation generation unit 30 and an expression evaluation calculation unit 40.

記録部50は、(−1/λ)と所定の関係を持つ値であるaと、(−(λ01−y01)/λ)と所定の関係を持つ値であるbを記録している。上述のとおり、a=−1/λ、b=−(λ01−y01)/λとするのが最も効率的と考える。しかし、例えば、(−1/λ)に定数を加算した値をaとして記憶しておき、読み出した後にその定数を減算して(−1/λ)を求めても、計算コストへの影響は小さい。よって、乗算や逆元算のような低速な計算を必要とせずに−1/λと−(λ01−y01)/λを求められる別の値をaとbとして記録しておいてもよい。ここでは、「所定の関係を持つ値」は、低速な計算を必要とせずに−1/λと−(λ01−y01)/λを求めることができる値の意味である。 The recording unit 50 has a 0 having a predetermined relationship with (−1 / λ 0 ) and b having a predetermined relationship with (− (λ 0 x 01 −y 01 ) / λ 0 ). 0 is recorded. As described above, it is considered most efficient to set a 0 = −1 / λ 0 and b 0 = − (λ 0 x 01 −y 01 ) / λ 0 . However, for example, (- 1 / λ 0) a value obtained by adding a constant is stored as a 0, even if by subtracting the constant after reading sought (-1 / λ 0), to calculate the cost The impact of is small. Therefore, multiplication and slow computation, such as inversion calculation without requiring -1 / lambda 0 and - (λ 0 x 01 -y 01 ) / λ another value determined 0 as a 0 and b 0 It may be recorded. Here, the “value having a predetermined relationship” means a value that can obtain −1 / λ 0 and − (λ 0 x 01 −y 01 ) / λ 0 without requiring a slow calculation. .

入力変換部15は、x0P’=1/x0P、y0P’=y0P/x0Pを計算する(S15)。式評価生成部30は、記録部50からaとbを読み出し、aとbを用いて、
’=d((−1/λ)y0P’+w+(−(λ01−y01)/λ)x0P’vw)
のように式評価L’を生成する(S30)。上述のとおり、d=1,N=0が最も効率的と考えるが、dを乗算した式評価L’を生成してもよい。式評価演算部40は、f,L’を入力とし、f×L’の演算結果を出力する(S40)。例えば、図3に示したアルゴリズムで計算すればよい。また、ステップS30、S40が式評価の処理(S20)である。なお、図2では、ステップ2がS15に、ステップ6,11,20,23がS30に、ステップ7,12,21,24がS40に相当する。
The input conversion unit 15 calculates x0P ′ = 1 / x0P and y0P ′ = y0P / x0P (S15). The expression evaluation generation unit 30 reads a 0 and b 0 from the recording unit 50, and uses a 0 and b 0 ,
L 0 ′ = d 0 v N ((−1 / λ 0 ) y 0P ′ + w + (− (λ 0 x 01 −y 01 ) / λ 0 ) x 0P ′ vw)
An expression evaluation L 0 ′ is generated as follows (S30). As described above, d 0 = 1 and N = 0 are considered to be the most efficient, but an expression evaluation L 0 ′ multiplied by d 0 v N may be generated. The expression evaluation calculation unit 40 receives f and L 0 ′ as input and outputs a calculation result of f × L 0 ′ (S40). For example, what is necessary is just to calculate with the algorithm shown in FIG. Steps S30 and S40 are formula evaluation processing (S20). In FIG. 2, step 2 corresponds to S15, steps 6, 11, 20, and 23 correspond to S30, and steps 7, 12, 21, and 24 correspond to S40.

ペアリング演算装置10によれば、式評価L’を用いているので、有限体F(p12)上の任意の元とL’との乗算において、有限体F(p)上の乗算回数を少なくできる。つまり、式評価を変更したことで計算コストが増えてしまう計算は、点Qが固定されていることを利用して事前に計算しておき、点Pが入力された後の計算コストを削減している。したがって、点Pが入力されてからの計算速度を高速化できる。 According to the pairing arithmetic unit 10, since the expression evaluation L 0 ′ is used, in multiplication of an arbitrary element on the finite field F (p 12 ) and L 0 ′, the finite field F (p 2 ) The number of multiplications can be reduced. That is, the calculation that increases the calculation cost by changing the expression evaluation is calculated in advance using the fact that the point Q 0 is fixed, and the calculation cost after the point P 0 is input is calculated. Reduced. Therefore, the calculation speed after the point P 0 is input can be increased.

[変形例]
さらに、上述のとおり、式評価が式6のように、
=αjP+βjpw+γvw
の場合には、式評価を
’=d(AjP’+w+BjP’vw)
ただし、A=sjA(α/β)、B=sjB(γ/β
jP’=1/(sjB・xjP)、yjP’=yjP/(sjA・xjP
jAとsjBはあらかじめ定めた定数
のように変形すれば同様の効果が得られる。したがって、図5に示したペアリング演算装置と、図6に示したペアリング演算装置の入力変換と式評価演算の処理フローは、以下のとおりでもよい。ただし、AとBをF(p)上の元とする。
[Modification]
Furthermore, as described above, the expression evaluation is as shown in Expression 6.
L j = α j y jP + β j x jp w + γ j vw
In the case of the expression evaluation L j '= d j v N (A j y jP' + w + B j x jP 'vw)
However, A j = s jAj / β j ), B j = s jBj / β j )
x jP '= 1 / (s jB · x jP ), y jP ' = y jP / (s jA · x jP )
If s jA and s jB are modified like predetermined constants, the same effect can be obtained. Therefore, the processing flow of the input conversion and the expression evaluation calculation of the pairing arithmetic device shown in FIG. 5 and the pairing arithmetic device shown in FIG. 6 may be as follows. However, A 0 and B 0 are elements on F (p 2 ).

ペアリング演算装置10は、群Gの元Pと群Gの元Qとのペアリングe(P,Q)を求める。ペアリング演算装置10は、記録部50が事前計算の結果を記録していることと、入力変換部15、式評価処理手段20を有することを特徴としている。式評価処理手段20は、式評価生成部30と式評価演算部40からなる。 The pairing arithmetic unit 10 obtains a pairing e (P 0 , Q 0 ) between the element P 0 of the group G 1 and the element Q 0 of the group G 2 . The pairing arithmetic device 10 is characterized in that the recording unit 50 records the result of the pre-calculation, and includes the input conversion unit 15 and the expression evaluation processing means 20. The expression evaluation processing unit 20 includes an expression evaluation generation unit 30 and an expression evaluation calculation unit 40.

=s0A(α/β)、B=s0B(γ/β)とする。そして、記録部50は、Aと所定の関係を持つ値であるaと、Bと所定の関係を持つ値であるbを記録している。a=A、b=Bとするのが最も効率的と考える。しかし、例えば、Aに定数を加算した値をaとして記憶しておき、読み出した後にその定数を減算してAを求めても、計算コストへの影響は小さい。よって、乗算や逆元算のような低速な計算を必要とせずにAとBを求められる別の値をaとbとして記録しておいてもよい。ここでは、「所定の関係を持つ値」は、低速な計算を必要とせずにAとBを求めることができる値の意味である。 It is assumed that A 0 = s 0A0 / β 0 ) and B 0 = s 0B0 / β 0 ). The recording unit 50 records a 0 which is a value having a predetermined relationship with A 0 and b 0 which is a value having a predetermined relationship with B 0 . It is considered most efficient to set a 0 = A 0 and b 0 = B 0 . However, for example, even if a value obtained by adding a constant to A 0 is stored as a 0 and the constant is subtracted after reading to obtain A 0 , the influence on the calculation cost is small. Therefore, another value for obtaining A 0 and B 0 without requiring a slow calculation such as multiplication or inverse operation may be recorded as a 0 and b 0 . Here, the “value having a predetermined relationship” means a value that can obtain A 0 and B 0 without requiring a low-speed calculation.

入力変換部15は、x0P’=1/(s0B・x0P)、y0P’=y0P/(s0A・x0P)を計算する(S15)。式評価生成部30は、記録部50からaとbを読み出し、aとbを用いて、
’=d(A0P’+w+B0P’vw)
のように式評価L’を生成する(S30)。d=1,N=0が最も効率的と考えるが、dを乗算した式評価L’を生成してもよい。式評価演算部40は、f,L’を入力とし、f×L’の演算結果を出力する(S40)。
The input conversion unit 15 calculates x 0P '= 1 / (s 0B · x 0P ), y 0P ' = y 0P / (s 0A · x 0P ) (S15). The expression evaluation generation unit 30 reads a 0 and b 0 from the recording unit 50, and uses a 0 and b 0 ,
L 0 '= d 0 v N (A 0 y 0P ' + w + B 0 x 0P 'vw)
An expression evaluation L 0 ′ is generated as follows (S30). Although d 0 = 1 and N = 0 are considered to be the most efficient, an expression evaluation L 0 ′ multiplied by d 0 v N may be generated. The expression evaluation calculation unit 40 receives f and L 0 ′ as input and outputs a calculation result of f × L 0 ′ (S40).

図7に本発明のマルチペアリング演算装置の機能構成例を、図8に本発明のマルチペアリング演算装置の入力変換と式評価演算の処理フローの例を示す。マルチペアリング演算装置60は、m個の群Gの元P,…,Pm−1と群Gの元Q,…,Qm−1とのマルチペアリングe(P,Q)×e(P,Q)×…×e(Pm−1,Qm−1)を求める。マルチペアリング演算装置60は、記録部90が事前計算の結果を記録していることと、入力変換部65、式評価処理手段70を有することを特徴としており、点加算や点2倍算などのその他の処理を行う構成部も有するが、それらは従来技術と同じである。図7,8では従来技術と同じ構成部は省略している。式評価処理手段70は、式評価生成部80と式評価演算部100からなる。 FIG. 7 shows a functional configuration example of the multi-pairing arithmetic device of the present invention, and FIG. 8 shows an example of the processing flow of input conversion and expression evaluation arithmetic of the multi-pairing arithmetic device of the present invention. Multi pairing computation device 60, m pieces original P 0 of the group G 1 of, ..., P m-1 and the original Q 0 of the group G 2, ..., multi-pairing e (P 0 with Q m-1, Q 0 ) × e (P 1 , Q 1 ) ×... × e (P m−1 , Q m−1 ) is obtained. The multi-pairing calculation device 60 is characterized in that the recording unit 90 records the result of the pre-calculation, the input conversion unit 65, and the expression evaluation processing means 70, such as point addition and point doubling There are also components that perform the other processes, but they are the same as in the prior art. 7 and 8, the same components as those of the conventional technology are omitted. The expression evaluation processing unit 70 includes an expression evaluation generation unit 80 and an expression evaluation calculation unit 100.

記録部90は、j=0,…,m−1について、(−1/λ)と所定の関係を持つ値であるaと、(−(λj1−yj1)/λ)と所定の関係を持つ値であるbを記録している。上述のとおり、a=−1/λ、b=−(λj1−yj1)/λとするのが最も効率的と考える。しかし、乗算や逆元算のような低速な計算を必要とせずに−1/λと−(λj1−yj1)/λを求められる別の値をaとbとして記録しておいてもよい。ここでは、「所定の関係を持つ値」は、低速な計算を必要とせずに−1/λと−(λj1−yj1)/λを求めることができる値の意味である。 Recording unit 90, j = 0, ..., the m-1, (- 1 / λ j) and the a j is a value having a predetermined relationship, (- (λ j x j1 -y j1) / λ j Bj , which is a value having a predetermined relationship with). As described above, it is considered most efficient to set a j = −1 / λ j and b j = − (λ j x j1 −y j1 ) / λ j . However, multiplication and a -1 / lambda j slow calculations without requiring as inversion calculation - a different value obtained for (λ j x j1 -y j1) / λ j as a j and b j It may be recorded. Here, the “value having a predetermined relationship” means a value that can obtain −1 / λ j and − (λ j x j1 −y j1 ) / λ j without requiring a slow calculation. .

入力変換部65は、j=0,…,m−1について、xjP’=1/xjP、yjP’=yjP/xjPを計算する(S65)。式評価生成部80は、j=0,…,m−1のすべてについて、記録部からaとbを読み出し、aとbを用いて、
’=d((−1/λ)yjP’+w+(−(λj1−yj1)/λ)xjP’vw)
のように式評価L’を生成する(S80)。なお、Nはあらかじめ定めた0,1,2のいずれかの整数であり、j=0,…,m−1のすべてについて同じ値である。上述のとおり、d,…,dm−1=1,N=0が最も効率的と考えるが、d,…,dm−1を乗算した式評価L’,L’,…,Lm−1’を生成してもよい。
The input conversion unit 65 calculates x jP '= 1 / x jP and y jP ' = y jP / x jP for j = 0,..., M −1 (S65). The expression evaluation generation unit 80 reads a j and b j from the recording unit for all of j = 0,..., M−1, and uses a j and b j .
L j '= d j v N ((-1 / λ j) y jP' + w + (- (λ j x j1 -y j1) / λ j) x jP 'vw)
An expression evaluation L j ′ is generated as follows (S80). N is a predetermined integer of 0, 1, 2 and is the same value for all of j = 0,..., M−1. As described above, d 0, ..., but consider d m-1 = 1, N = 0 is the most efficient and, d 0 v N, ..., d m-1 v N expression evaluation multiplied by the L 0 ', L 1 ′,..., L m−1 ′ may be generated.

式評価演算部100は、f,L’,L’,…,Lm−1’を入力とし、f×L’×…×Lm−1’の演算結果を出力する(S100)。ステップS80、S100が式評価の処理(S70)である。ステップS100では、
f←f×L
の処理を、j=0,…,m−1について繰り返せば、実施例1のペアリング演算装置10と同様の効果が得られる。
The expression evaluation calculation unit 100 receives f, L 0 ′, L 1 ′,..., L m−1 ′, and outputs a calculation result of f × L 0 ′ × ... × L m−1 ′ (S100). . Steps S80 and S100 are formula evaluation processing (S70). In step S100,
f ← f × L j '
If the above process is repeated for j = 0,..., M−1, the same effect as the pairing arithmetic device 10 of the first embodiment can be obtained.

また、式評価にゼロの係数があることを利用すれば、さらに計算コストを削減することができる。その場合は、式評価演算部100は、式評価選択部110、式評価乗算部120、元乗算部130、演算制御部140、未選択乗算部150を備える。式評価選択部110は、選択されていない式評価L’,L’,…,Lm−1’の中から4個を選択し、h,h,h,hとする(S110)。 Moreover, if the fact that there is a zero coefficient is used in the expression evaluation, the calculation cost can be further reduced. In that case, the expression evaluation operation unit 100 includes an expression evaluation selection unit 110, an expression evaluation multiplication unit 120, an original multiplication unit 130, an operation control unit 140, and an unselected multiplication unit 150. The expression evaluation selection unit 110 selects four of the unselected expression evaluations L 0 ′, L 1 ′,..., L m−1 ′, and sets them as h 0 , h 1 , h 2 , h 3 . (S110).

式評価乗算部120は、
L”←h×h×h×h
を計算する(S120)。式評価乗算部120は、h,h,h,hをゼロまたは小整数の係数を含む元同士の演算がより多くなるように工夫して乗算すればよい。例えば、
’←h×h, H’←h×h
L”←H’×H
のようにL”を計算すればよい。
The expression evaluation multiplication unit 120
L ”← h 0 × h 1 × h 2 × h 3
Is calculated (S120). The expression evaluation multiplication unit 120 may multiply the h 0 , h 1 , h 2 , and h 3 by devising such that more operations are performed between elements including zero or small integer coefficients. For example,
H 0 '← h 0 × h 1 , H 1 ' ← h 2 × h 3
L ”← H 0 '× H 1 '
L ″ may be calculated as follows.

元乗算部130は、
f←f×L”
を計算し、fを更新する(S130)。演算制御部140は、L’,L’,…,Lm−1’の中で、式評価選択部110で選択されていない式評価の数が4より少なくなるまで、式評価選択部110と式評価乗算部120と元乗算部130の処理(S110,S120,S130)を繰り返す(S140)。未選択乗算部150は、L’,L’,…,Lm−1’の中で、式評価選択部で選択されていない式評価がある場合は、選択されていない式評価のすべてをfに乗算し、乗算結果にfを更新する(S150)。式評価演算部100は、L,L,…,Lm−1のすべてを乗算されたfを演算結果として出力する。
The original multiplication unit 130
f ← f × L ”
And f is updated (S130). Arithmetic control unit 140, L 0 ', L 1' , ..., in L m-1 ', up to the number of expression evaluation is not selected by the expression evaluator selection unit 110 is less than 4, expression evaluation selector 110, the processing (S110, S120, S130) of the expression evaluation multiplication unit 120 and the original multiplication unit 130 are repeated (S140). When there is an expression evaluation that is not selected by the expression evaluation selection section in L 0 ′, L 1 ′,..., L m−1 ′, the unselected multiplication section 150 determines all the expression evaluations that are not selected. Is multiplied by f, and f is updated to the multiplication result (S150). The expression evaluation calculation unit 100 outputs f multiplied by all of L 0 , L 1 ,..., L m−1 as a calculation result.

マルチペアリング演算装置60によれば、マルチペアリング演算の処理に含まれるf×L×…×Lm−1の演算において、まずゼロまたは小整数の係数を含む式評価L,L,…,Lm−1の中から4個の式評価を選択して乗算する処理を繰り返すので、係数にゼロや小整数を持つ元同士の演算を増やせる。したがって、計算コストを削減でき、計算速度を高速化できる。 According to the multi-pairing calculation device 60, in the calculation of f × L 0 ×... × L m−1 included in the processing of the multi-pairing calculation, first, the expression evaluations L 0 and L 1 including zero or small integer coefficients are performed. ,..., L m−1 is repeated by selecting and multiplying four expression evaluations, so that the number of operations between elements having zero or a small integer as a coefficient can be increased. Therefore, the calculation cost can be reduced and the calculation speed can be increased.

<アルゴリズムの具体例>
図9に、Optimal Ateペアリングにおけるマルチペアリングのアルゴリズムの例(Algorithm 4)を示す。式評価処理手段70の処理は、図9のアルゴリズムのステップ5〜14,19〜24に適用される。図10に図9のステップ7,12,21,24の乗算のアルゴリズムの例(Algorithm 5)を示す。図11は図10のステップ3の計算のアルゴリズム(Algorithm 6)、図12は図10のステップ4の計算のアルゴリズム(Algorithm 7)である。なお、図10のステップ9は、上述の図3に示したアルゴリズム(algorithm 3)を用いればよい。
<Specific example of algorithm>
FIG. 9 shows an example of algorithm (Algorithm 4) for multi-pairing in Optimal Ate pairing. The processing of the expression evaluation processing means 70 is applied to steps 5 to 14 and 19 to 24 of the algorithm of FIG. FIG. 10 shows an example (Algorithm 5) of the multiplication algorithm of steps 7, 12, 21, and 24 in FIG. FIG. 11 shows the calculation algorithm (Algorithm 6) in step 3 of FIG. 10, and FIG. 12 shows the calculation algorithm (Algorithm 7) in step 4 of FIG. Note that step 9 in FIG. 10 may use the algorithm (algorithm 3) shown in FIG.

図10のステップ3では、h,h,h,hとして

Figure 2015135452
が選択され、
’←h×h, H’←h×h
の計算が行われる。そして、ステップ4で
L”←H’×H
のようにL”が求められている。つまり、ステップ3の式評価の選択部分がS110に相当し、ステップ3のH’とH’の計算の部分と、ステップ4がS120に相当する。また、ステップ5がS130に相当し、ステップ1,2,6がS140に相当し、ステップ7〜10がS150に相当する。 In step 3 of FIG. 10, as h 0 , h 1 , h 2 , and h 3
Figure 2015135452
Is selected,
H 0 '← h 0 × h 1 , H 1 ' ← h 2 × h 3
Is calculated. In step 4, L "← H 0 '× H 1 '
In other words, L ″ is obtained as follows: That is, the selected part of the expression evaluation in step 3 corresponds to S110, the calculation part of H 0 ′ and H 1 ′ in step 3 and step 4 corresponds to S120. Step 5 corresponds to S130, Steps 1, 2, and 6 correspond to S140, and Steps 7 to 10 correspond to S150.

式4の形式の4つの式評価を、図4に示された従来の乗算方法でF(p12)上の任意の元fに乗算するときに、
f←f×L
の処理を4回繰り返した場合、F(p)上の元同士の乗算は40回(4×10)である。一方、式5の形式の4つの式評価を、図3に示された従来の乗算方法でF(p12)上の任意の元fに乗算するときに、
f←f×L
の処理を4回繰り返した場合、F(p)上の元同士の乗算は36回(4×9)である。したがって、式評価演算部100が式評価選択部110、式評価乗算部120、元乗算部130、演算制御部140、未選択乗算部150を備えなくても、従来に比べれば計算コスト削減の効果がある。
When four expression evaluations of the form of expression 4 are multiplied by an arbitrary element f on F (p 12 ) by the conventional multiplication method shown in FIG.
f ← f × L j '
When the above process is repeated four times, the multiplication between elements on F (p 2 ) is 40 times (4 × 10). On the other hand, when four expression evaluations of the form of Expression 5 are multiplied by an arbitrary element f on F (p 12 ) by the conventional multiplication method shown in FIG.
f ← f × L j '
When the above process is repeated four times, the multiplication between elements on F (p 2 ) is 36 times (4 × 9). Therefore, even if the expression evaluation calculation unit 100 does not include the expression evaluation selection unit 110, the expression evaluation multiplication unit 120, the original multiplication unit 130, the calculation control unit 140, and the unselected multiplication unit 150, the effect of reducing the calculation cost compared to the conventional case. There is.

そして、式5の形式の4つの式評価を、図10〜12に示したアルゴリズムでF(p12)上の任意の元fに乗算するときには、次のようになる。図11にはステップ1に3回の係数の乗算があるので、F(p)上の元同士の乗算は3回である。図12にはステップ1,2に4回ずつ、ステップ3に1回の係数同士の乗算が存在するので、F(p)上の元同士の乗算は9回である。また、F(p12)上の任意の元同士の乗算の場合、F(p)上の元同士の乗算は18回である(従来技術なので理由は省略する)。したがって、F(p)上の元同士の乗算は33回(3×2+9+18)である。このように、マルチペアリング演算の処理に含まれるf×L’×…×Lm−1’の演算において、式評価L’,L’,…,Lm−1’の中からΔ個以下の式評価を選択して乗算する処理を繰り返すことで、係数にゼロや小整数を持つ元同士の演算を増やせる。したがって、式5の形式の式評価を用い、式評価演算部100が式評価選択部110、式評価乗算部120、元乗算部130、演算制御部140、未選択乗算部150を備えることで、さらに計算コストを削減できる。 Then, when the four expression evaluations in the form of Expression 5 are multiplied by an arbitrary element f on F (p 12 ) using the algorithm shown in FIGS. In FIG. 11, there are three times multiplication of the coefficients in step 1, so that multiplication between elements on F (p 2 ) is three times. In FIG. 12, there are four multiplications for the coefficients in steps 1 and 2 and one in step 3, so that there are nine multiplications between elements on F (p 2 ). Further, in the case of multiplication between arbitrary elements on F (p 12 ), multiplication between elements on F (p 2 ) is 18 times (the reason is omitted because it is a conventional technique). Therefore, the multiplication between elements on F (p 2 ) is 33 times (3 × 2 + 9 + 18). Thus, in operation of the multi-pairing f × L 0 included in the calculation processing '× ... × L m-1 ', expression evaluation L 0 ', L 1', ..., from the L m-1 ' By repeating the process of selecting and multiplying Δ evaluations or less, it is possible to increase operations between elements having zero or a small integer as a coefficient. Therefore, by using expression evaluation in the form of Expression 5, the expression evaluation calculation unit 100 includes an expression evaluation selection unit 110, an expression evaluation multiplication unit 120, an original multiplication unit 130, an operation control unit 140, and an unselected multiplication unit 150. Furthermore, calculation cost can be reduced.

次に、式4の形式の式評価を用いて
’←h×h, H’←h×h
L”←H’×H
f←f×L”
のようにfを更新することを繰り返す方法と比較する。図13に、従来技術である式4の形式の式評価を用いた場合の乗算のアルゴリズムの例(Algorithm 6’)を示す。図14に、図13で求めた元同士の乗算のアルゴリズムの例(Algorithm 7’)を示す。図11のステップ6に示された元の式から、値がゼロの係数が1つと小整数「1」の係数が1つあることが分かる。図13のステップ7に示された元の式から、従来技術である式4の形式の式評価を用いた場合には、式評価同士の乗算の結果には、値がゼロの係数が1つあり、小整数「1」の係数はないことが分かる。そして、式4の形式の式評価を用いたときにはH’×H’の計算は図14に示されたアルゴリズムになる。図13に示されたアルゴリズムでは、ステップ1に3回の係数同士の乗算が存在するので、F(p)上の元同士の乗算は3回である。そして、図14に示されたアルゴリズムでは、ステップ1に5回、ステップ3,5,7,9に2回ずつ、ステップ11,13に1回ずつ係数同士の乗算が存在するので、F(p)上の元同士の乗算は15回である。したがって、式4の形式の4つの式評価を、図13,14に示された乗算方法でF(p12)上の任意の元fに乗算するときには、F(p)上の元同士の乗算は39回(3×2+15+18)である。したがって、式評価演算部100が式評価選択部110、式評価乗算部120、元乗算部130、演算制御部140、未選択乗算部150を備えなくても、式4の形式の式評価で計算方法を工夫するよりも、式5の形式で式評価を表現する方が計算コスト削減の効果がある。
Next, H 0 '← h 0 × h 1 , H 1 ' ← h 2 × h 3 using an expression evaluation of the form of Expression 4
L ”← H 0 '× H 1 '
f ← f × L ”
Compared with the method of repeatedly updating f as shown in FIG. FIG. 13 shows an example (Algorithm 6 ′) of a multiplication algorithm in the case of using the expression evaluation in the form of Expression 4 which is the prior art. FIG. 14 shows an example (Algorithm 7 ′) of the element multiplication algorithm obtained in FIG. From the original equation shown in step 6 of FIG. 11, it can be seen that there is one coefficient having a value of zero and one coefficient having a small integer “1”. From the original expression shown in Step 7 of FIG. 13, when the expression evaluation in the form of Expression 4 as the prior art is used, the result of multiplication between the expression evaluations is one coefficient having a value of zero. It can be seen that there is no coefficient of small integer “1”. When the expression evaluation in the form of Expression 4 is used, the calculation of H 0 ′ × H 1 ′ is the algorithm shown in FIG. In the algorithm shown in FIG. 13, there are three multiplications between the coefficients in Step 1, so the multiplication between elements on F (p 2 ) is three. In the algorithm shown in FIG. 14, there is a multiplication of coefficients 5 times in step 1, 2 times in steps 3, 5, 7, and 9 and 1 time in steps 11 and 13, so F (p 2 ) The multiplication between the above elements is 15 times. Accordingly, when four expression evaluations of the form of Expression 4 are multiplied by an arbitrary element f on F (p 12 ) by the multiplication method shown in FIGS. 13 and 14, the elements on F (p 2 ) Multiplication is performed 39 times (3 × 2 + 15 + 18). Therefore, even if the expression evaluation calculation unit 100 does not include the expression evaluation selection unit 110, the expression evaluation multiplication unit 120, the original multiplication unit 130, the calculation control unit 140, and the unselected multiplication unit 150, the calculation is performed by the expression evaluation in the form of Expression 4. Rather than devising a method, expressing the expression evaluation in the form of Expression 5 is more effective in reducing the calculation cost.

[変形例]
さらに、上述のとおり、式評価が式6のように、
=αjP+βjpw+γvw
の場合には、式評価を
’=d(AjP’+w+BjP’vw)
ただし、A=sjA(α/β)、B=sjB(γ/β
jP’=1/(sjB・xjP)、yjP’=yjP/(sjA・xjP
jAとsjBはあらかじめ定めた定数
のように変形すれば同様の効果が得られる。したがって、図7に示したマルチペアリング演算装置と、図8に示したマルチペアリング演算装置の入力変換と式評価演算の処理フローは、以下のとおりでもよい。ただし、AとBをF(p)上の元とする。
[Modification]
Furthermore, as described above, the expression evaluation is as shown in Expression 6.
L j = α j y jP + β j x jp w + γ j vw
In the case of the expression evaluation L j '= d j v N (A j y jP' + w + B j x jP 'vw)
However, A j = s jAj / β j ), B j = s jBj / β j )
x jP '= 1 / (s jB · x jP ), y jP ' = y jP / (s jA · x jP )
If s jA and s jB are modified like predetermined constants, the same effect can be obtained. Therefore, the processing flow of the input conversion and the expression evaluation calculation of the multi-pairing arithmetic device shown in FIG. 7 and the multi-pairing arithmetic device shown in FIG. 8 may be as follows. However, A j and B j are elements on F (p 2 ).

マルチペアリング演算装置60は、m個の群Gの元P,…,Pm−1と群Gの元Q,…,Qm−1とのマルチペアリングe(P,Q)×e(P,Q)×…×e(Pm−1,Qm−1)を求める。マルチペアリング演算装置60は、記録部90が事前計算の結果を記録していることと、入力変換部65、式評価処理手段70を有することを特徴としている。式評価処理手段70は、式評価生成部80と式評価演算部100からなる。 Multi pairing computation device 60, m pieces original P 0 of the group G 1 of, ..., P m-1 and the original Q 0 of the group G 2, ..., multi-pairing e (P 0 with Q m-1, Q 0 ) × e (P 1 , Q 1 ) ×... × e (P m−1 , Q m−1 ) is obtained. The multi-pairing calculation device 60 is characterized in that the recording unit 90 records the result of the pre-calculation, and includes the input conversion unit 65 and the expression evaluation processing means 70. The expression evaluation processing unit 70 includes an expression evaluation generation unit 80 and an expression evaluation calculation unit 100.

j=0,…,m−1について、A=sjA(α/β)、B=sjB(γ/β)とする。そして、記録部90は、j=0,…,m−1について、Aと所定の関係を持つ値であるaと、Bと所定の関係を持つ値であるbを記録している。a=A、b=Bとするのが最も効率的と考える。しかし、乗算や逆元算のような低速な計算を必要とせずにAとBを求められる別の値をaとbとして記録しておいてもよい。ここでは、「所定の関係を持つ値」は、低速な計算を必要とせずにAとBを求めることができる値の意味である。 For j = 0,..., m−1, let A j = s jAj / β j ) and B j = s jBj / β j ). The recording unit 90 records a j which is a value having a predetermined relationship with A j and b j which is a value having a predetermined relationship with B j for j = 0,..., M−1. Yes. It is considered most efficient to set a j = A j and b j = B j . However, other values for obtaining A j and B j without requiring a slow calculation such as multiplication or inverse operation may be recorded as a j and b j . Here, the “value having a predetermined relationship” means a value that allows A j and B j to be obtained without requiring a low-speed calculation.

入力変換部65は、j=0,…,m−1について、xjP’=1/(sjB・xjP)、yjP’=yjP/(sjA・xjP)を計算する(S65)。式評価生成部80は、j=0,…,m−1のすべてについて、記録部90からaとbを読み出し、aとbを用いて、
’=d(AjP’+w+BjP’vw)
のように式評価L’を生成する(S80)。d,…,dm−1=1,N=0が最も効率的と考えるが、d,…,dm−1を乗算した式評価L’,L’,…,Lm−1’を生成してもよい。
The input conversion unit 65 calculates x jP '= 1 / (s jB · x jP ) and y jP ' = y jP / (s jA · x jP ) for j = 0,..., M −1 (S65). ). The expression evaluation generation unit 80 reads a j and b j from the recording unit 90 for all of j = 0,..., M−1, and uses a j and b j .
L j '= d j v N (A j y jP ' + w + B j x jP 'vw)
An expression evaluation L j ′ is generated as follows (S80). d 0, ..., but is d m-1 = 1, N = 0 considered the most efficient and, d 0 v N, ..., d m-1 v Formula rating was multiplied by N L 0 ', L 1' , ... , L m−1 ′ may be generated.

式評価演算部100は、f,L’,L’,…,Lm−1’を入力とし、f×L’×…×Lm−1’の演算結果を出力する(S100)。式評価演算部100については、実施例2と同様に式評価演算部100が、式評価選択部110、式評価乗算部120、元乗算部130、演算制御部140、未選択乗算部150を備え、式評価にゼロの係数があることを利用してもよい。このように構成すれば、実施例2と同様の効果が得られる。 The expression evaluation calculation unit 100 receives f, L 0 ′, L 1 ′,..., L m−1 ′, and outputs a calculation result of f × L 0 ′ × ... × L m−1 ′ (S100). . As for the expression evaluation operation unit 100, the expression evaluation operation unit 100 includes an expression evaluation selection unit 110, an expression evaluation multiplication unit 120, an original multiplication unit 130, an operation control unit 140, and an unselected multiplication unit 150, as in the second embodiment. The fact that there is a zero coefficient in the expression evaluation may be used. With this configuration, the same effect as in the second embodiment can be obtained.

[プログラム、記録媒体]
上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
[Program, recording medium]
The various processes described above are not only executed in time series according to the description, but may also be executed in parallel or individually as required by the processing capability of the apparatus that executes the processes. Needless to say, other modifications are possible without departing from the spirit of the present invention.

また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。   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.

10 ペアリング演算装置 15、65 入力変換部
20、70 式評価処理手段 30、80 式評価生成部
40、100 式評価演算部 50、90 記録部
60 マルチペアリング演算装置 110 式評価選択部
120 式評価乗算部 130 元乗算部
140 演算制御部 150 未選択乗算部
DESCRIPTION OF SYMBOLS 10 Pairing arithmetic unit 15, 65 Input conversion part 20, 70 Formula evaluation processing means 30, 80 Formula evaluation production | generation part 40, 100 Formula evaluation calculation part 50, 90 Recording part 60 Multi-pairing arithmetic unit 110 Formula evaluation selection part 120 Formula Evaluation multiplier 130 Original multiplier 140 Operation controller 150 Unselected multiplier

Claims (7)

群Gの元Pと群Gの元Qとのペアリングe(P,Q)を求めるペアリング演算装置であって、
pを素数または素数のべき乗、Nをあらかじめ定めた0,1,2のいずれかの整数、kを正の整数、F(p)とF(p)を有限体、Pを有限体F(p)上の楕円曲線の点、Qを有限体F(p12)上の楕円曲線の点であって固定された点、T01とT02をQに対応する有限体F(p12)上の楕円曲線の点、T01=(x01,y01)、T02=(x02,y02)、P=(x0P,y0P)、eを点Pと点Qを入力とし有限体F(p12)上の元を出力するペアリング演算を示す記号、fを有限体F(p12)上の元、Lを点T01と点T02を通る直線をPで評価した式評価、α,β,γ,A,BをF(p)上の元、s0Aとs0Bをあらかじめ定めた定数、dを小整数とし、
F(p12)上の元を、c,c,c,c,c,cはF(p)上の元である係数、v=ξ、w=v、ξは平方非剰余かつ立方非剰余として、
+cv+c+cw+cvw+c
のように表現することとし、
式評価Lが、
=α0P+β0pw+γvw
のときに、
=s0A(α/β)、B=s0B(γ/β)とし、
と所定の関係を持つ値であるaと、Bと所定の関係を持つ値であるbを記録した記録部と、
0P’=1/(s0B・x0P)、y0P’=y0P/(s0A・x0P)を計算する入力変換部と、
前記記録部からaとbを読み出し、aとbを用いて、
’=d(A0P’+w+B0P’vw)
のように式評価L’を生成する式評価生成部と、
f,L’を入力とし、f×L’の演算結果を出力する式評価演算部と、
を備えることを特徴とするペアリング演算装置。
A pairing arithmetic unit for obtaining a pairing e (P 0 , Q 0 ) between an element P 0 of group G 1 and an element Q 0 of group G 2 ,
p is a prime number or a power of a prime number, N is a predetermined integer of 0, 1, 2, k is a positive integer, F (p) and F (p k ) are finite fields, and P 0 is a finite field F (P) The point of the elliptic curve on Q, Q 0 is the point of the elliptic curve on the finite field F (p 12 ) and is fixed, and T 01 and T 02 are the finite field F (p corresponding to Q 0 12 ) The point of the elliptic curve above, T 01 = (x 01 , y 01 ), T 02 = (x 02 , y 02 ), P 0 = (x 0P , y 0P ), e is the point P 0 and the point Q A symbol indicating a pairing operation in which 0 is input and an element on the finite field F (p 12 ) is output, f is an element on the finite field F (p 12 ), L 0 is a straight line passing through the points T 01 and T 02 expression evaluation was evaluated by P 0 a, α 0, β 0, γ 0, a 0, B 0 and F (p 2) on the original, s 0A and s 0B predetermined constant, d It was used as a small integer,
The elements on F (p 12 ) are the coefficients c 0 , c 1 , c 2 , c 3 , c 4 , c 5 are the elements on F (p 2 ), v 3 = ξ, w 2 = v, ξ is a square non-residue and a cubic non-residue,
c 0 + c 1 v + c 2 v 2 + c 3 w + c 4 vw + c 5 v 2 w
And express it as
The expression evaluation L 0 is
L 0 = α 0 y 0P + β 0 x 0p w + γ 0 vw
When
A 0 = s 0A0 / β 0 ), B 0 = s 0B0 / β 0 ),
A recording unit recording a 0 which is a value having a predetermined relationship with A 0 and b 0 which is a value having a predetermined relationship with B 0 ;
x 0P '= 1 / (s 0B · x 0P ), y 0P ' = y 0P / (s 0A · x 0P );
It reads a 0 and b 0 from the recording unit, using a 0 and b 0,
L 0 '= d 0 v N (A 0 y 0P ' + w + B 0 x 0P 'vw)
An expression evaluation generator that generates an expression evaluation L 0 ′,
an expression evaluation operation unit that takes f, L 0 ′ as input and outputs an operation result of f × L 0 ′;
A pairing operation device comprising:
群Gの元Pと群Gの元Qとのペアリングe(P,Q)を求めるペアリング演算装置であって、
pを素数または素数のべき乗、Nをあらかじめ定めた0,1,2のいずれかの整数、kを正の整数、F(p)とF(p)を有限体、Pを有限体F(p)上の楕円曲線の点、Qを有限体F(p12)上の楕円曲線の点であって固定された点、T01とT02をQに対応する有限体F(p12)上の楕円曲線の点、T01=(x01,y01)、T02=(x02,y02)、P=(x0P,y0P)、eを点Pと点Qを入力とし有限体F(p12)上の元を出力するペアリング演算を示す記号、fを有限体F(p12)上の元、点T01と点T02とが異なる場合はλ=(y02−y01)/(x02−x01)、点T01と点T02とが同じ場合はλ=3x01 /2y01、dを小整数とし、
F(p12)上の元を、c,c,c,c,c,cはF(p)上の元である係数、v=ξ、w=v、ξは平方非剰余かつ立方非剰余として、
+cv+c+cw+cvw+c
のように表現することとし、
(−1/λ)と所定の関係を持つ値であるaと、(−(λ01−y01)/λ)と所定の関係を持つ値であるbを記録した記録部と、
0P’=1/x0P、y0P’=y0P/x0Pを計算する入力変換部と、
前記記録部からaとbを読み出し、aとbを用いて、
’=d((−1/λ)y0P’+w+(−(λ01−y01)/λ)x0P’vw)
のように式評価L’を生成する式評価生成部と、
f,L’を入力とし、f×L’の演算結果を出力する式評価演算部と、
を備えることを特徴とするペアリング演算装置。
A pairing arithmetic unit for obtaining a pairing e (P 0 , Q 0 ) between an element P 0 of group G 1 and an element Q 0 of group G 2 ,
p is a prime number or a power of a prime number, N is a predetermined integer of 0, 1, 2, k is a positive integer, F (p) and F (p k ) are finite fields, and P 0 is a finite field F (P) The point of the elliptic curve on Q, Q 0 is the point of the elliptic curve on the finite field F (p 12 ) and is fixed, and T 01 and T 02 are the finite field F (p corresponding to Q 0 12 ) The point of the elliptic curve above, T 01 = (x 01 , y 01 ), T 02 = (x 02 , y 02 ), P 0 = (x 0P , y 0P ), e is the point P 0 and the point Q A symbol indicating a pairing operation in which 0 is input and an element on the finite field F (p 12 ) is output, f is an element on the finite field F (p 12 ), and when the point T 01 and the point T 02 are different, λ 0 = (y 02 −y 01 ) / (x 02 −x 01 ), and when the point T 01 and the point T 02 are the same, λ 0 = 3x 01 2 / 2y 01 , d 0 Is a small integer,
The elements on F (p 12 ) are the coefficients c 0 , c 1 , c 2 , c 3 , c 4 , c 5 are the elements on F (p 2 ), v 3 = ξ, w 2 = v, ξ is a square non-residue and a cubic non-residue,
c 0 + c 1 v + c 2 v 2 + c 3 w + c 4 vw + c 5 v 2 w
And express it as
(-1 / λ 0) and a 0 is a value having a predetermined relationship, (- (λ 0 x 01 -y 01) / λ 0) and recording which records b 0 is a value having a predetermined relation And
x 0P '= 1 / x 0P , y 0P ' = y 0P / x 0P
It reads a 0 and b 0 from the recording unit, using a 0 and b 0,
L 0 ′ = d 0 v N ((−1 / λ 0 ) y 0P ′ + w + (− (λ 0 x 01 −y 01 ) / λ 0 ) x 0P ′ vw)
An expression evaluation generator that generates an expression evaluation L 0 ′,
an expression evaluation operation unit that takes f, L 0 ′ as input and outputs an operation result of f × L 0 ′;
A pairing operation device comprising:
m個の群Gの元P,…,Pm−1と群Gの元Q,…,Qm−1とのマルチペアリングe(P,Q)×e(P,Q)×…×e(Pm−1,Qm−1)を求めるマルチペアリング演算装置であって、
mを2以上の整数、jを0以上m−1以下の整数、pを素数または素数のべき乗、Nを0,1,2のいずれかの整数、kを正の整数、F(p)とF(p)を有限体、Pを有限体F(p)上の楕円曲線の点、Qを有限体F(p12)上の楕円曲線の点であって固定された点、Tj1とTj2をQに対応する有限体F(p12)上の楕円曲線の点、Tj1=(xj1,yj1)、Tj2=(xj2,yj2)、P=(xjP,yjP)、eを点Pと点Qを入力とし有限体F(p12)上の元を出力するペアリング演算を示す記号、fを有限体F(p12)上の元、Lを点Tj1と点Tj2を通る直線をPで評価した式評価、α,β,γ,A,BをF(p)上の元、sjAとsjBをあらかじめ定めた定数、dを小整数とし、
F(p12)上の元を、c,c,c,c,c,cはF(p)上の元である係数、v=ξ、w=v、ξは平方非剰余かつ立方非剰余として、
+cv+c+cw+cvw+c
のように表現することとし、
式評価Lが、
=αjP+βjpw+γvw
のときに、
j=0,…,m−1について、A=sjA(α/β)、B=sjB(γ/β)とし、
j=0,…,m−1について、Aと所定の関係を持つ値であるaと、Bと所定の関係を持つ値であるbを記録した記録部と、
j=0,…,m−1について、xjP’=1/(sjB・xjP)、yjP’=yjP/(sjA・xjP)を計算する入力変換部と、
j=0,…,m−1のすべてについて、記録部からaとbを読み出し、aとbを用いて、
’=d(AjP’+w+BjP’vw)
のように式評価L’を生成する式評価生成部と、
f,L’,L’,…,Lm−1’を入力とし、f×L’×…×Lm−1’の演算結果を出力する式評価演算部と、
を備えることを特徴とするマルチペアリング演算装置。
the m original P 0 of the group G 1 of, ..., P m-1 and the original Q 0 of the group G 2, ..., multi-pairing e (P 0, Q 0) of Q m-1 × e (P 1 , Q 1 ) ×... × e (P m−1 , Q m−1 )
m is an integer of 2 or more, j is an integer of 0 to m−1, p is a prime number or a power of a prime number, N is an integer of 0, 1, 2, k is a positive integer, and F (p) F (p k ) is a finite field, P j is an elliptic curve point on the finite field F (p), Q j is an elliptic curve point on the finite field F (p 12 ), a fixed point, T j1 and T j2 finite F (p 12) corresponding to Q j points of an elliptic curve on, T j1 = (x j1, y j1), T j2 = (x j2, y j2), P j = ( x jP , y jP ), e is a symbol indicating a pairing operation for outputting an element on the finite field F (p 12 ) with the points P j and Q j as inputs, and f is on the finite field F (p 12 ) original, expression evaluation to a straight line was evaluated by P j through L j the point T j1 and the point T j2, α j, β j , γ j, a j, B j and F (p 2) on the original, s jA And s j B is a predetermined constant, dj is a small integer,
The elements on F (p 12 ) are the coefficients c 0 , c 1 , c 2 , c 3 , c 4 , c 5 are the elements on F (p 2 ), v 3 = ξ, w 2 = v, ξ is a square non-residue and a cubic non-residue,
c 0 + c 1 v + c 2 v 2 + c 3 w + c 4 vw + c 5 v 2 w
And express it as
The expression evaluation L j is
L j = α j y jP + β j x jp w + γ j vw
When
For j = 0,..., m−1, A j = s jAj / β j ), B j = s jBj / β j ),
for j = 0,..., m−1, a recording unit recording a j which is a value having a predetermined relationship with A j and b j which is a value having a predetermined relationship with B j ;
an input conversion unit that calculates x jP '= 1 / (s jB · x jP ), y jP ' = y jP / (s jA · x jP ) for j = 0 ,.
For all of j = 0,..., m−1, a j and b j are read from the recording unit, and a j and b j are used.
L j '= d j v N (A j y jP ' + w + B j x jP 'vw)
An expression evaluation generator for generating an expression evaluation L j ′,
f, L 0 ', L 1 ', ..., and expression evaluation calculation unit 'as input, f × L 0' L m -1 outputs an operation result of × ... × L m-1 ' ,
A multi-pairing arithmetic device comprising:
m個の群Gの元P,…,Pm−1と群Gの元Q,…,Qm−1とのマルチペアリングe(P,Q)×e(P,Q)×…×e(Pm−1,Qm−1)を求めるマルチペアリング演算装置であって、
mを2以上の整数、jを0以上m−1以下の整数、pを素数または素数のべき乗、Nを0,1,2のいずれかの整数、kを正の整数、F(p)とF(p)を有限体、Pを有限体F(p)上の楕円曲線の点、Qを有限体F(p12)上の楕円曲線の点であって固定された点、Tj1とTj2をQに対応する有限体F(p12)上の楕円曲線の点、Tj1=(xj1,yj1)、Tj2=(xj2,yj2)、P=(xjP,yjP)、eを点Pと点Qを入力とし有限体F(p12)上の元を出力するペアリング演算を示す記号、fを有限体F(p12)上の元、点Tj1と点Tj2とが異なる場合はλ=(yj2−yj1)/(xj2−xj1)、点Tj1と点Tj2とが同じ場合はλ=3xj1 /2yj1、dを小整数とし、
F(p12)上の元を、c,c,c,c,c,cはF(p)上の元である係数、v=ξ、w=v、ξは平方非剰余かつ立方非剰余として、
+cv+c+cw+cvw+c
のように表現することとし、
j=0,…,m−1について、(−1/λ)と所定の関係を持つ値であるaと、(−(λj1−yj1)/λ)と所定の関係を持つ値であるbを記録した記録部と、
j=0,…,m−1について、xjP’=1/xjP、yjP’=yjP/xjPを計算する入力変換部と、
j=0,…,m−1のすべてについて、記録部からaとbを読み出し、aとbを用いて、
’=d((−1/λ)yjP’+w+(−(λj1−yj1)/λ)xjP’vw)
のように式評価L’を生成する式評価生成部と、
f,L’,L’,…,Lm−1’を入力とし、f×L’×…×Lm−1’の演算結果を出力する式評価演算部と、
を備えることを特徴とするマルチペアリング演算装置。
the m original P 0 of the group G 1 of, ..., P m-1 and the original Q 0 of the group G 2, ..., multi-pairing e (P 0, Q 0) of Q m-1 × e (P 1 , Q 1 ) ×... × e (P m−1 , Q m−1 )
m is an integer of 2 or more, j is an integer of 0 to m−1, p is a prime number or a power of a prime number, N is an integer of 0, 1, 2, k is a positive integer, and F (p) F (p k ) is a finite field, P j is an elliptic curve point on the finite field F (p), Q j is an elliptic curve point on the finite field F (p 12 ), a fixed point, T j1 and T j2 finite F (p 12) corresponding to Q j points of an elliptic curve on, T j1 = (x j1, y j1), T j2 = (x j2, y j2), P j = ( x jP , y jP ), e is a symbol indicating a pairing operation for outputting an element on the finite field F (p 12 ) with the points P j and Q j as inputs, and f is on the finite field F (p 12 ) Originally, when the point T j1 and the point T j2 are different, λ j = (y j2 −y j1 ) / (x j2 −x j1 ), and when the point T j1 and the point T j2 are the same, λ j = 3x j1 2 / 2y j1 , d j is a small integer,
The elements on F (p 12 ) are the coefficients c 0 , c 1 , c 2 , c 3 , c 4 , c 5 are the elements on F (p 2 ), v 3 = ξ, w 2 = v, ξ is a square non-residue and a cubic non-residue,
c 0 + c 1 v + c 2 v 2 + c 3 w + c 4 vw + c 5 v 2 w
And express it as
For j = 0,..., m−1, a j which is a value having a predetermined relationship with (−1 / λ j ), and a predetermined relationship with (− (λ j x j1 −y j1 ) / λ j ) A recording unit that records b j which is a value having
an input conversion unit for calculating x jP '= 1 / x jP , y jP ' = y jP / x jP for j = 0 ,.
For all of j = 0,..., m−1, a j and b j are read from the recording unit, and a j and b j are used.
L j '= d j v N ((-1 / λ j) y jP' + w + (- (λ j x j1 -y j1) / λ j) x jP 'vw)
An expression evaluation generator for generating an expression evaluation L j ′,
f, L 0 ', L 1 ', ..., and expression evaluation calculation unit 'as input, f × L 0' L m -1 outputs an operation result of × ... × L m-1 ' ,
A multi-pairing arithmetic device comprising:
請求項3または4記載のマルチペアリング演算装置であって、
前記式評価演算部は、
選択されていない式評価L’,L’,…,Lm−1’の中から4個を選択し、h,h,h,hとする式評価選択部と、
L”←h×h×h×h を計算する式評価乗算部と、
f←f×L” を計算し、fを更新する元乗算部と、
’,L’,…,Lm−1’の中で、前記式評価選択部で選択されていない式評価の数が4より少なくなるまで、前記式評価選択部と前記式評価乗算部と前記元乗算部の処理を繰り返す演算制御部と、
’,L’,…,Lm−1’の中で、前記式評価選択部で選択されていない式評価がある場合は、選択されていない式評価のすべてをfに乗算し、乗算結果にfを更新する未選択乗算部と、
を備え、fを演算結果として出力する
ことを特徴とするマルチペアリング演算装置。
The multi-pairing arithmetic device according to claim 3 or 4,
The expression evaluation calculation unit is
An expression evaluation selection unit that selects four of unselected expression evaluations L 0 ′, L 1 ′,..., L m−1 ′ and sets them as h 0 , h 1 , h 2 , h 3 ;
An expression evaluation multiplier for calculating L ″ ← h 0 × h 1 × h 2 × h 3 ;
an original multiplier that calculates f ← f × L ″ and updates f;
L 0 ′, L 1 ′,..., L m−1 ′, until the number of expression evaluations not selected by the expression evaluation selection section is less than 4, the expression evaluation selection section and the expression evaluation multiplication And an arithmetic control unit that repeats the processing of the original multiplication unit,
In L 0 ′, L 1 ′,..., L m−1 ′, when there is an expression evaluation not selected by the expression evaluation selection unit, f is multiplied by all the expression evaluations not selected, An unselected multiplier for updating f in the multiplication result;
A multi-pairing arithmetic device characterized in that f is output as an arithmetic result.
請求項5記載のマルチペアリング演算装置であって、
前記式評価乗算部は、
’←h×h, L’←h×h
を計算し、
L”←L’×L
のようにL”を計算する
ことを特徴とするマルチペアリング演算装置。
The multi-pairing arithmetic device according to claim 5,
The expression evaluation multiplication unit
L 0 '← h 0 × h 1 , L 1 ' ← h 2 × h 3
Calculate
L ”← L 0 '× L 1 '
A multi-pairing arithmetic device characterized by calculating L ″ as follows.
請求項1もしくは2記載のペアリング演算装置、請求項3〜6のいずれかに記載されたマルチペアリング演算装置のいずれかの演算装置としてコンピュータを機能させるためのプログラム。   A program for causing a computer to function as the arithmetic device of any one of the pairing arithmetic device according to claim 1 or 2, and the multi-pairing arithmetic device according to any one of claims 3 to 6.
JP2014007518A 2014-01-20 2014-01-20 Pairing arithmetic device, multi-pairing arithmetic device, program Active JP6067596B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014007518A JP6067596B2 (en) 2014-01-20 2014-01-20 Pairing arithmetic device, multi-pairing arithmetic device, program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014007518A JP6067596B2 (en) 2014-01-20 2014-01-20 Pairing arithmetic device, multi-pairing arithmetic device, program

Publications (2)

Publication Number Publication Date
JP2015135452A true JP2015135452A (en) 2015-07-27
JP6067596B2 JP6067596B2 (en) 2017-01-25

Family

ID=53767307

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014007518A Active JP6067596B2 (en) 2014-01-20 2014-01-20 Pairing arithmetic device, multi-pairing arithmetic device, program

Country Status (1)

Country Link
JP (1) JP6067596B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019220531A1 (en) * 2018-05-15 2019-11-21 三菱電機株式会社 Secret search device and secret search method

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6456451B1 (en) 2017-09-25 2019-01-23 エヌ・ティ・ティ・コミュニケーションズ株式会社 COMMUNICATION DEVICE, COMMUNICATION METHOD, AND PROGRAM

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010123117A1 (en) * 2009-04-24 2010-10-28 日本電信電話株式会社 Finite field calculation apparatus, finite filed calculation method, program, and recording medium

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010123117A1 (en) * 2009-04-24 2010-10-28 日本電信電話株式会社 Finite field calculation apparatus, finite filed calculation method, program, and recording medium

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
JPN6016038085; 森佑樹,他: 'BN曲線を用いたペアリングのGMPによるiPhone実装' 2013年 暗号と情報セキュリティシンポジウム , 20130122, 2E3-1 *
JPN6016038088; Diego F. ARANHA et al.: 'The Realm of the Pairings' Cryptology ePrint Archive Report 2013/722,Ver. 20131114:130127, 201311, International Association for Cryptologic Research *
JPN6016038090; Craig COSTELLO and Douglas STEBILA: 'Fixed Argument Pairings' Cryptology ePrint Archive Report 2010/342,Ver. 20100618:183424, 201006, International Association for Cryptologic Research *
JPN6016038091; 酒見由美,他: 'マルチペアリングを用いたTwisted Ateペアリングの改良' 2010年 暗号と情報セキュリティシンポジウム , 20100122, 4C1-2 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019220531A1 (en) * 2018-05-15 2019-11-21 三菱電機株式会社 Secret search device and secret search method
CN112074889A (en) * 2018-05-15 2020-12-11 三菱电机株式会社 Secret search device and secret search method
US11431496B2 (en) 2018-05-15 2022-08-30 Mitsubishi Electric Corporation Secret search device and secret search method
CN112074889B (en) * 2018-05-15 2023-07-04 三菱电机株式会社 Hidden search device and hidden search method

Also Published As

Publication number Publication date
JP6067596B2 (en) 2017-01-25

Similar Documents

Publication Publication Date Title
JP4334582B2 (en) Secret sharing apparatus, method and program
EP3096309B1 (en) Secret calculation method, secret calculation system, sorting device, and program
US11374735B2 (en) Processing apparatus, processing method, storage medium, and encryption processing system
US11373098B2 (en) Processing apparatus, learning apparatus, processing method, and nonvolatile recording medium
JP2017515195A (en) Solve digital logic constraint problems via adiabatic quantum computation
Cao et al. High-speed fully homomorphic encryption over the integers
Frezzatto et al. Robust H2 and H∞ memory filter design for linear uncertain discrete-time delay systems
CN112805768A (en) Secret sigmoid function calculation system, secret logistic regression calculation system, secret sigmoid function calculation device, secret logistic regression calculation device, secret sigmoid function calculation method, secret logistic regression calculation method, and program
JP2021064008A (en) Processing device, inference device, learning device, processing system, processing method, and processing program
CN106464484A (en) Obfuscated performance of a predetermined function
JP7181988B2 (en) Information processing system, information processing method and program
JP6067596B2 (en) Pairing arithmetic device, multi-pairing arithmetic device, program
JP5526284B2 (en) Proxy calculation system, method, request apparatus, and program
JP6585846B2 (en) Secret calculation system, secret calculation device, secret calculation method, and program
JP6825119B2 (en) Secret readers, secret writers, their methods, and programs
CN106796765B (en) Non-subtraction sequence determination device, non-subtraction sequence determination method, and recording medium
US10050775B2 (en) Element replication device, element replication method, and program
KR101925614B1 (en) Method for processing scalar multiplication in elliptic curve cryptosystem, and elliptic curve cryptosystem
JP6023728B2 (en) Multi-pairing calculation device, multi-pairing calculation method, multi-pairing calculation program
JP5840086B2 (en) Reduction device, reduction method, and program
KR100976232B1 (en) Fast bit-parellel polynomial multipier and method thereof
CN114868175A (en) Final power calculation device, pairing operation device, encryption processing device, final power calculation method, and final power calculation program
JP6040052B2 (en) Pairing calculation device, pairing calculation method, and program
JP5427195B2 (en) Proxy calculation system, method, request device, calculation device, program
JP5791562B2 (en) COMPRESSION FUNCTION OPERATION DEVICE, COMPRESSION FUNCTION OPERATION METHOD, AND PROGRAM

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160107

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161004

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161124

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161221

R150 Certificate of patent or registration of utility model

Ref document number: 6067596

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150