• 検索結果がありません。

of Pairings Using Elliptic Nets

N/A
N/A
Protected

Academic year: 2021

シェア "of Pairings Using Elliptic Nets"

Copied!
60
0
0

読み込み中.... (全文を見る)

全文

(1)

Faster Explicit Formulae and Parallelization for Computation

of Pairings Using Elliptic Nets

Presented by

Hiroshi Onuki

A dissertation submitted in partial fulfillment of the requirements for the degree of

Doctor of Philosophy in Science

Department of Mathematics and Information Sciences Graduate School of Science and Engineering

Tokyo Metropolitan University

March 2017

(2)
(3)

Abstract

In this paper, we discuss computation of optimal pairings over some pairing- friendly curves and a symmetric pairing over supersingular elliptic curves via elliptic nets.

A standard algorithm for computing pairings is Miller’s algorithm, which inductively constructs a function that has a desired divisor. On the other hand, there is an alternative method for computing pairings. That is based on elliptic nets and proposed by Stange in 2007. Elliptic nets are defined by Stange as a generalization of elliptic divisibility sequences.

In many cases, the method based on elliptic nets is less efficient than Miller’s algorithm. However there are few researches for the method based on elliptic nets, while there are many studies to improve the efficiency of Miller’s algorithm. In particular, it is well-known that using twists of elliptic curves accelerates the calculation of some pairings in Miller s algorithm. We show that using twists of elliptic curves can be also applied to the method based on elliptic nets. We also give the necessary conditions that using twists of elliptic curves is effective.

Furthermore, we focused on the fact that the calculation of elliptic nets is suitable for the parallel computation. We constructed parallel algorithms for computing pairings based on elliptic nets and evaluate the efficiency of these algorithms.

We estimated the efficiency of our algorithms based on the number of mul- tiplications on a field over which the pairing is defined. We also implemented our algorithms on some pairings. Our estimation and experimental results show that our methods are effective theoretically and on a real machine.

i

(4)
(5)

Acknowledgements

The author would like to express my sincere gratitude to my supervisor Professor Shigenori Uchiyama for his enormous comments and invaluable support throughout my doctoral course. I also thank Dr. Naoki Kanayama and Dr. Tadanori Teruya for advising my research.

iii

(6)
(7)

Contents

Abstract i

Acknowledgements iii

1 Introduction 1

2 Pairings 3

2.1 The Embedding Degree . . . 3

2.2 The Tate Pairing . . . 4

2.3 The Miller Function . . . 4

2.4 Optimal Pairings . . . 6

2.5 Symmetric Pairings . . . 7

3 Elliptic Nets 9 3.1 The Definition and Properties . . . 9

3.2 Pairings via Elliptic Nets . . . 10

3.3 Calculating Elliptic Nets . . . 11

4 Our Improvement 15 4.1 Twists . . . 15

4.2 Twists for Optimal Pairings . . . 17

4.3 Elliptic Nets of Twist Curves . . . 19

4.4 Modified Elliptic Nets . . . 20

5 Parallelization 23 5.1 Extending the Block . . . 23

5.2 Algorithms . . . 26

6 Estimations 31 6.1 Field Operations . . . 31

6.2 Twists . . . 33

6.3 Parallel Algorithms . . . 36 v

(8)

vi CONTENTS

7 Implementation 37

7.1 Curves and Pairings . . . 37 7.2 Results . . . 40

8 Conclusion 43

(9)

List of Algorithms

1 Double and DoubleAdd [12] . . . 12

2 Double and DoubleAdd for Extended Block . . . 25

3 Multiplication in Fq2 (cost : 3m+ ˜m) . . . . 32

4 Squaring in Fq2 with D=1∈/ Fq2 (cost : 2m) . . . 32

5 Multiplication in Fq3 (cost : 6m+ 2 ˜m) . . . . 33

6 Squaring in Fq3 with −D∈Fq2 (cost : 5m+ ˜m+ 2 ˜m) . . . . 33

vii

(10)
(11)

List of Tables

5.1 The limit number of processor . . . 26

5.2 Modified or extended . . . 26

5.3 Parallel algorithm for 4 processors (d= 2) . . . 27

5.4 Parallel algorithm for 8 processors (d= 2) . . . 27

5.5 Parallel algorithm for 16 processor (d= 2) . . . 27

5.6 Parallel algorithm for 4 processors (d= 3) . . . 27

5.7 Parallel algorithm for 8 processors (d= 3) . . . 28

5.8 Parallel algorithm for 14 processors (d= 3) . . . 28

5.9 Parallel algorithm for 4 processors (d= 4) . . . 28

5.10 Parallel algorithm for 8 processors (d= 4) . . . 28

5.11 Parallel algorithm for 14 processor (d= 4) . . . 28

5.12 Parallel algorithm for 4 processors (d= 6) . . . 29

5.13 Parallel algorithm for 8 processors (d= 6) . . . 29

5.14 Parallel algorithm for 10 processors (d= 6) . . . 29

6.1 Estimation of costs of multiplications . . . 33

6.2 Cost of Double . . . 35

6.3 Cost of DoubleAdd . . . 35

6.4 Cost of Double by parallel algorithms . . . 36

6.5 Cost of DoubleAdd by parallel algorithms . . . 36

7.1 Environment . . . 40

7.2 Experimental results . . . 41

ix

(12)
(13)

List of Figures

3.1 Block centred on i . . . 11 5.1 Extended block centred oni . . . 24

xi

(14)
(15)

Chapter 1 Introduction

For computing pairings on elliptic curves, Miller’s algorithm [7] has been widely used. But there is an alternative method for computing pairings.

That is based on elliptic nets and proposed by Stange [12] in 2007. Elliptic nets are defined by Stange as a generalization of elliptic divisibility sequences, which were studied by Ward [15]. Stange showed that the Tate pairing can be calculated by using an elliptic net. In 2011, Ogura et al. [8] gave formu- lae based on elliptic nets for computing some variants of the Tate pairing, including optimal pairings.

Both Miller’s algorithm and the method based on elliptic nets require O(log(m)) field operations for computing a pairing over an m-torsion sub- group, but in many cases, the coefficient hiding behind the O notation of Miller’s algorithm is less than the method based on elliptic nets. Therefore Miller’s algorithm is faster than the method based on elliptic nets. But there are many studies to improve the efficiency of Miller’s algorithms, for example [1, 2, 5], on the other hand there are few studies on the method based on elliptic nets. So I thought that there is plenty of scope for improvement on the method based on elliptic nets and studied to improve this method.

For Miller’s algorithm, it is known that there is a method to improve the efficiency of calculating an optimal pairing by using a twist of an elliptic curve over which a pairing is defined. Leta:G2×G1 →µrbe an optimal paring on an elliptic curveE/Fq, whereG1, G2 are subgroups ofE[r] andµr is ther-th torsion subgroup of ¯Fq. To calculatea(Q, P) by using Miller’s algorithm, one needs to calculate a scalar multiplication of Q. This calculation is a main part of Miller’s algorithm. In the method using a twist, one calculate a scalar multiplication of Q, that is a point that corresponds to Q in the twits. If one can take a twist in which coordinates of Q is in smaller field than that of Q, the scalar multiplication can be calculated more efficiently. Of course, one needs to adjust a gap betweenQand Q. But the cost of this adjustment

(16)

2 CHAPTER 1. INTRODUCTION is often much less than a benefit from using the twist.

Our first achievement is an analogy of this method on the method based on elliptic nets. We showed that an elliptic net derived from a twist can be more efficiently calculated than that derived from the original curve, and that an optimal pairing can be calculated by using the elliptic net derive derived from a twist. In this paper, we will introduce this and other methods to improve the efficiency of the method based on elliptic nets. Our new method are as follows:

The method using a twist (for optimal pairings)

Modified elliptic nets (for optimal pairings and asymmetric parings over supersingular curves)

Parallel computation for elliptic nets

The extended block (for parallel computation)

The rest of this paper is organized as follows. In Chapter 2, we will give a brief overview of pairings and Miller’s algorithm. In Chapter 3, we will recall the definition of an elliptic net and introduce formulae for computing a pair- ing by using an elliptic net. In Chapter 4, we will describe the method using a twist and modified elliptic nets. In Chapter 5, we give parallel algorithm for computing an elliptic net. Our parallel algorithms are oriented toward pairing computation. We will also propose the extended block method for parallel computation. In Chapter 6, we will estimate the efficiency of our methods defined in Chapter 4 and 5. In Chapter 7, we will give an experi- mental results for some pairings. Finally, we conclude this paper in Chapter 8.

(17)

Chapter 2 Pairings

In this chapter, we recall definitions and basic properties of pairings over elliptic curves. We also give the definition and some properties of the Miller function, which was introduced by Miller [7] for calculating pairings.

Throughout this paper, we use the following notation.

O the point at infinity of an elliptic curve µn the set of n-th roots of unity

G[n] n-torsion subgroup of G

2.1 The Embedding Degree

In this paper, a pairing is a map from two additive groups to a multiplicative cyclic group G1 ×G2 GT. If G1 = G2, we call the pairing symmetric, otherwise asymmetric. In particular, we consider pairings over an elliptic curve defined over a finite field, which are maps from subgroups of torsion points on the elliptic curve to the subgroup of roots of unity in an extension of the field of definition. Therefore we need to find a extension field in which the torsion points can be defined. To do this, it is convenient to define the embedding degree.

Definition 2.1.1. Letqbe a prime power,r an integer prime toq. Then the smallest positive integer k that satisfies r |qk1 is called the embedding degree of r with respect to q.

In other words, the embedding degree is the smallest integer k such that Fqk contains the set of r-th roots of unity µr.

The following two propositions state the relation between the embedding degree and a torsion subgroup of an elliptic curve defined over a finite field.

(18)

4 CHAPTER 2. PAIRINGS Proposition 2.1.2 ([11, Corollary III.8.1.1]). Let E be an elliptic curve defined over a field K and m∈N. Then

E[m]⊆E(K)⇒µm ⊆K.

Proposition 2.1.3 ([14, Proposition 5.5]). Let E be an elliptic curve define over a finite field Fq, r a prime which is prime to q and k the embedding degree of r with respect to q. If r|#E(Fq) and k >1 then k is the smallest integer such that E[r]⊆E(Fqk).

2.2 The Tate Pairing

The following theorem claims the existence of the Tate pairing.

Theorem 2.2.1 ([14, Theorem 11.8]). Let E be an elliptic curve defined over a finite field Fq and n an integer such that n | q−1. Then there are non-degenerate bilinear pairings:

⟨· , ·⟩n:E(Fq)[n]×E(Fq)/nE(Fq)Fq/Fqn, τn :E(Fq)[n]×E(Fq)/nE(Fq)→µn, where for P ∈E(Fq)[n], Q∈E(Fq),

τn(P, QmodnE(Fq)) =⟨P, QmodnE(Fq)nqn1.

Definition 2.2.2. We call⟨·,·⟩n of Theorem 2.2.1 the Tate pairing andτn the reduced Tate pairing.

We denote⟨P, QmodnE(Fq)nandτn(P, QmodnE(Fq)) by⟨P, Q⟩nand τn(P, Q) for short, respectively.

2.3 The Miller Function

The Miller function is a rational function on an elliptic curve which was defined by Miller [7] to calculate the Weil pairing. This function can be used to calculate the Tate pairing. And variants of the Tate pairing are defined by using this function.

First, for describing the definition of the Miller function, we recall the notation for divisors.

(19)

2.3. THE MILLER FUNCTION 5 Definition 2.3.1. Let E be an elliptic curve, D = ∑

PnP(P) a divisor on E and f a non-zero rational function onE. Then the degree of D is defined by deg(D) = ∑

P nP. The support of D is defined by supp(D) = {P E | nP ̸= 0}. The divisor of f is define by div(f) =∑

P ordP(f)(P).

Furthermore, if supp(D) supp(div(f)) = , then we define f(D) =

f(P)nP.

Proposition 2.3.2 ([11, Corolloary III.3.5]). Let E be an elliptic curve and D=∑

PnP(P)a divisor on E. Then there is a rational function on E such that div(f) = D if and only if deg(D) = 0 and

P[nP]P =O.

For calculating pairings, we need a rational function whose divisor is n((P)(O)), where P ∈E[n]. Miller [7] constructed such a function induc- tively by using the Miller functionfm,P whose divisor ism(P)([m]P)(m 1)O for m < n. Proposition 2.3.2 assures us that fm,P exists. Furthermore fm,P is unique up to multiplication by a non-zero constant. To resolve an ambiguity from multiplication by a nonzero constant, we define a normalized function in a certain sense.

Definition 2.3.3. Let E be an elliptic curve, P E and uP a uniformizer at P. A non-zero function f on an elliptic curve is normalized in uP if uPordP(f)f(P) = 1.

From now on, we assume all functions on an elliptic curve are normalized in a same uniformizer. For example, when the elliptic curve has Weierstrass form we may take uniformizer at O uO=−y/x.

Now, we explain how to construct the Miller function.

Definition 2.3.4. Let E be an elliptic curve and P, Q E. LP,Q is the function such that LP,Q = 0 is the equation of the line passing through P and Q or the equation of the tangent line to the curve if P =Q.

Definition 2.3.5. LetE be an elliptic curve and P, Q∈E, then define gP,Q:= LP,Q

LP+Q,(P+Q) .

Lemma 2.3.6 ([7]).

div(LP,Q) = (P) + (Q) + ((P +Q))−3(O), (2.1) div(gP,Q) = (P) + (Q)(P +Q)−(O). (2.2)

(20)

6 CHAPTER 2. PAIRINGS Definition 2.3.7. Let E be an elliptic curve and P E. Define f0,P = f1,P = 1. Inductively, for n >0, define

fn+1,P :=fn,PgP,[n]P, (2.3)

fn,P := 1

fn,PgP,[n]P. (2.4)

Lemma 2.3.8 ([7]).

div(fn,P) = n(P) + ([n]P)(n1)(O), (2.5)

fm+n = fm,Pfn,Pg[m]P,[n]P, (2.6)

fmn = fm,Pn fn,[m]P = fn,Pm fm,[m]P. (2.7) It is known that one can represent the Tate pairing by the Miller function.

Theorem 2.3.9 ([14, Proof of Theorem 11.8]). Let E be an elliptic curve defined over a finite field Fq, n an integer such that n|q−1 and π the q-th power Frobenius map on E. For P ∈E(Fq)[n], Q∈E(Fq)/nE(Fq), let D be a divisor of degree 0 such that sum(D) =Q and P, O ̸∈supp(D). Then

⟨P, Q⟩n = fn,P(D) modFqn, (2.8) τn(P, Q) = fn,P(D)q−1n . (2.9) If the Miller function has its coefficients in the field in which coefficients of P and Q are, the Tate pairing can be represented more simply.

Proposition 2.3.10 ([11, Proposition XI.9.2]). In Theorem 2.3.9, assume that P ̸= Q and the Miller function fn,P K(E), where K is a subfield of Fq which contains coefficients of P and Q. Then

⟨P, Q⟩n=fn,P(Q) modFqn. (2.10)

2.4 Optimal Pairings

Optimal pairings are variants of the Tate pairing and were proposed by Ver- cauteren [13]. These can be computed more efficiently than the Tate pairing.

In this subsection, let E be an elliptic curve over a finite field Fq, π the q-th power Frobenius map on E, r a prime that is prime to q and that divides #E(Fq), and k the embedding degree of r with respect to q. And we assume k 2. Then, from Proposition 2.1.3, E[r] E(Fqk) and it is well-known that as a linear map on E[r], eigenvalues of π are 1 and q. We defineG1 =E[r]∩ker(π[1]) andG2 =E[r]∩ker(π[q]).

Let f be the Miller function. And we assume these are normalized at O in a uniformizer which does not have zero or pole at points inG1 except O.

(21)

2.5. SYMMETRIC PAIRINGS 7 Theorem 2.4.1 ([13]). λ=mr with rm and write λ =∑l

i=0ciqi then

a[c0,...,cl]:G2×G1 →µr, (Q, P)7→

( l

i=0

fci,Q(P)qi

l1

i=0

g[si]Q,[ciqi]Q(P) )qk−1r

with si =∑l

j=icjqj, defines a bilinear pairing. Furthermore, if mkpk1 ̸≡ qk1

r

l i=0

iciqi1 modr.

then the pairing is non-degenerate.

Definition 2.4.2. The pairing in Theorem 2.4.1 is called optimal if it is non-degenerate and maxi{log2ci} ≤ logφ(k)2r+ log2k, where φis Euler’s totient function.

Vercauteren constructed some examples of optimal pairings. For the de- tial, see [13].

2.5 Symmetric Pairings

In this section, we define a symmetric pairing over a supersingular elliptic curve.

At the beginning, we recall the definition and properties of a supersingular elliptic curve.

Definition 2.5.1. Let K be a field of characteristic p >0 and E an elliptic curve defined over K. We say that E is supersingular if

E[pr] ={O} for all r 1.

Proposition 2.5.2([14, Proposition 4.31]).LetEbe an elliptic curve defined over a finite field K of characteristic p. Then E is supersingular if and only if #E(K)1 mod p.

Corollary 2.5.3 ([14, Corollary 4.32]). Let p 5 be an prime number and E an elliptic curve defined over Fp. Then Then E is supersingular if and only if #E(Fp) =p+ 1.

Let p 5 be a prime number, E a supersingular elliptic curve defined overFp and r a prime number such thatr |E(Fp). Since p≡ −1 modr, the

(22)

8 CHAPTER 2. PAIRINGS embedding degree ofr with respect topis 2. Therefore, from Theorem 2.2.1, there is the modified Tate pairing

τr :E(Fp2)[r]×E(Fp2)/rE(Fp2)→µr.

Now we construct a symmetric pairing from the above pairing. The j- invariant of E is 0 if p 2 mod 3 or 1728 if p≡ 3 mod 4 (see [11, Theorem V.4.1]). In the both cases, E has automorphisms which are not [±1]. We call these automorphisms distortion maps. The Weierstrass equation of E and its distortion maps can be written as follows.

p≡2 mod 3

j-invariant : 0

Weierstrass equation : E :y2 =x3+B, B Fp

Distortion maps : {±δ,±δ2}, δ: (x, y)7→(ωx, y) where ω∈Fp2 is a primitive cube root of unity.

p≡3 mod 4

j-invariant : 1728

Weierstrass equation : E :y2 =x3+Ax, A∈Fp

Distortion maps : {±δ}, δ: (x, y)7→(−x, iy) where i∈Fp2 is a square root of 1.

Notice that distortion maps cannot be defined over Fp because ω /∈Fp if p≡2 mod 3 and i /∈Fp if p≡3 mod 4.

It is well-known that the following map defines a symmetric pairing over E(Fp)[r].

Fact 2.5.4. Let δ be a distortion map onE. Then the symmetric paring er

overE(Fp)[r] defined in the following is non-degenerate and bilinear:

er :E(Fp)[r]×E(Fp)[r]→µr, (P, Q)7→τr(P, δ(Q)).

(23)

Chapter 3 Elliptic Nets

Elliptic nets are generalization of elliptic divisibility sequences and were de- fined by Stange [12]. She proposed an alternative method for computing the Tate pairing based on them.

In this chapter, we give a brief review of pairing computation based on elliptic nets.

3.1 The Definition and Properties

In this section, we recall the definition of elliptic nets and their properties from [12].

Definition 3.1.1. Let A be a finitely generated free abelian group, R an integral domain. An elliptic net is a map W : A R satisfying the following recurrence relation for p, q, r, s∈A:

W(p+q+s)W(p−q)W(r+s)W(r) +W(q+r+s)W(q−r)W(p+s)W(p)

+W(r+p+s)W(r−q)W(q+s)W(q) = 0. (3.1) Stange constructed an elliptic net associated to an elliptic curve E over K which is a subfield ofCor a finite field and P1, . . . , Pn which are points of E with Pi ̸=O for all iand Pi ̸=±Pj for all=j. This elliptic net is a map Zn→K(P1, . . . , Pn), whereK(P1, . . . , Pn) is the field generated by adjoining the coordinates of P1, . . . , Pn to K. For the details of the construction, see [12]. We denote an elliptic net associated to an elliptic curveE and its points P1, . . . , Pn by WP1,...,Pn;E.

One important property of elliptic nets is their relation with division polynomials.

(24)

10 CHAPTER 3. ELLIPTIC NETS Proposition 3.1.2 ([12]). Let E be an elliptic curve over a subfield of C or a finite field and P1, . . . , Pn∈E. Let ψm be the m-th division polynomial of E. Then

WP1,...,Pn;E(m,0, . . . ,0) =WP1;E(m) = ψm(P1). (3.2) In particular, forP = (x, y)∈E, [m]P = (xm, ym)is represented as follows:

xm = xWP;E(m)2−WP;E(m+ 1)WP;E(m1)

WP;E(m)2 , (3.3)

ym = WP;E(m+ 2)WP;E(m1)2−WP;E(m2)WP;E(m+ 1)2

4yWP;E(m)3 .(3.4)

3.2 Pairings via Elliptic Nets

Stange showed that the Tate pairing can be represented by an elliptic net.

And Ogura et al. [8] proposed formulae for variants of the Tate pairing using an elliptic net. Here we introduce formulae for the Tate pairing and the pairing defined in Theorem 2.4.1.

Theorem 3.2.1 ([12]). Let E be an elliptic net defined over a finite field Fq and m a positive integer such that µm Fq. For P E(Fq)[m] and Q∈E(Fq) with P ̸=±Q,

⟨P, P⟩m = WP;E(m+ 2)WP;E(1)

WP;E(m+ 1)WP;E(2) modFqm, (3.5)

⟨P, Q⟩m = WP,Q;E(m+ 1,1)WP,Q;E(1,0)

WP,Q;E(m+ 1,0)WP,Q;E(1,1) modFqm. (3.6) Theorem 3.2.2 ([8]). Let a[c0,...,cl] be a bilinear pairing in Theorem 2.4.1.

Then

a[c0,...,cl](Q, P) = ( l

i=0

(WQ,P;E(ci,1) WQ,P;E(ci,0)

)qil1 i=0

g[si+1]Q,[ciqi]Q(P)1 )qkr1

.

Remark 3.2.3. From Proposition 3.1.2 and the fact that [ciqi]Q=πi([ci]Q), if blocks ofWQ,P;E centred onci fori= 1, . . . , lare given (a block of an ellptic net will be defined in the next section), g[si]Q,[ciqi]Q(P) in Theorem 3.2.2 can be computed by operations of Fq and the Frobenius map on Fq and the number of these operations does not depend onq or r, ci.

(25)

3.3. CALCULATING ELLIPTIC NETS 11

3.3 Calculating Elliptic Nets

In the following, we state the method to compute an elliptic net WP,Q;E proposed by Stange [12].

First we define a block of an elliptic net.

Definition 3.3.1. For an elliptic net W :Z2 R, a block of W centred on i is a set

{W(i3,0), . . . , W(i+ 4,0), W(i1,1), W(i,1), W(i+ 1,1)}. (See Figure 3.1.)

Figure 3.1: Block centred on i

The following proposition allows us to compute a block of an elliptic net inductively.

Proposition 3.3.2 ([12]). Let W : Z2 R be an elliptic net such that W(0,1) = W(1,0) = 1 and W(2,0), W(1,1), W(1,1), W(2,1) R. Then

W(2i1,0) =W(i+ 1,0)W(i1,0)3

−W(i2,0)W(i,0)3 , (3.7)

W(2i,0) = (W(i,0)W(i+ 2,0)W(i1,0)2

−W(i,0)W(i2,0)W(i+ 1,0)2)/W(2,0) , (3.8) W(2i1,1) = (W(i+ 1,1)W(i1,1)W(i1,0)2

−W(i,0)W(i2,0)W(i,1)2)/W(1,1), (3.9) W(2i,1) =W(i1,1)W(i+ 1,1)W(i,0)2

−W(i1,0)W(i+ 1,0)W(i,1)2 , (3.10) W(2i+ 1,1) = (W(i1,1)W(i+ 1,1)W(i+ 1,0)2

−W(i,0)W(i+ 2,0)W(i,1)2)/W(1,1) , (3.11) W(2i+ 2,1) = (W(i+ 1,0)W(i+ 3,0)W(i,1)2

−W(i1,1)W(i+ 1,1)W(i+ 2,0)2)/W(2,1). (3.12)

(26)

12 CHAPTER 3. ELLIPTIC NETS Given a block centred oni, we can compute a block centred on 2ior 2i+1 by using this proposition. We call these algorithms Double and DoubleAdd respectively. For the detail of algorithms see Algorithm 1.

Algorithm 1Double and DoubleAdd [12]

Require: Block V centred at k of an elliptic net satisfying W(1,0) = W(0,1) = 1, values A = W(2,0)1, E = W(1,1)1, F = W(2,1)1, G=W(1,1)1 and booleanadd

Ensure: Block centred at 2k if add== 0 and centred at 2k+ 1 if add== 1

1: S0 ←V[1,1]2

2: P0 ←V[1,0]V[1,2]

3: for i= 0 to 5do

4: S[i]←V[0, i+ 1]2

5: P[i]←V[0, i]V[0, i+ 2]

6: end for

7: if add== 0 then

8: for i= 0 to 3 do

9: V[0,2i]←S[i]P[i+ 1]−S[i+ 1]P[i]

10: V[0,2i+ 1](S[i]P[i+ 2]−S[i+ 2]P[i])A

11: end for

12: V[1,0](P0S[1]−S0P[1])G

13: V[1,1]←P0S[2]−S0P[2]

14: V[1,2](P0S[3]−S0P[3])E

15: else

16: for i= 0 to 3 do

17: V[0,2i](S[i]P[i+ 2]−S[i+ 2]P[i])A

18: V[0,2i+ 1]←S[i+ 1]P[i+ 2]−S[i+ 2]P[i+ 1]

19: end for

20: V[1,0]←P0S[2]−S0P[2]

21: V[1,1](P0S[3]−S0P[3])E

22: V[1,2](S0S[4]−P0S[4])F

23: end if

24: return V

If characteristic of Fq is not 2 or 3 and E is given by a Weierstrass form y2 =x3+Ax+B, then elements in a block of an elliptic netWP,Q;E centred on 1 and the constants in recurrences of Proposition 3.3.2 are as follows: (See

(27)

3.3. CALCULATING ELLIPTIC NETS 13 [12].)

W(0,0) = 0 , (3.13)

W(1,0) = 1 , (3.14)

W(2,0) = 2y1 , (3.15)

W(3,0) = 3x41+ 6Ax21+ 12Bx1−A2 , (3.16) W(4,0) = 4y1(x61+ 5Ax41+ 20Bx315A2x214ABx18B2−A3) ,

(3.17) W(5,0) =W(4,0)W(2,0)3 −W(1,0)W(3,0)3 , (3.18) W(−i,−j) =−W(i, j) for all i, j Z, (3.19)

W(0,1) =W(1,1) = 1 , (3.20)

W(2,1) = 2x1+x2

(y2−y1

x2−x1 )2

, (3.21)

W(1,1) =x1−x2 , (3.22)

W(2,1) = (y2+y1)2(2x1 +x2)(x1−x2)2 . (3.23)

(28)
(29)

Chapter 4

Our Improvement

In this chapter, we introduce two methods improving the computation of elliptic nets, which are proposed in [9] and [10]. The first is a method using a twist of an elliptic curve. This method is an analogy of a method using a twist for Miller’s algorithm (for the detail of a method for Miller’s algorithm, see [2, 5]). The second is a method that modify an elliptic net by multiplying a certain field element. This modification reduce the cost of DoubleAdd while that of Double is not changed.

4.1 Twists

In this section, we recall the definition of a twist of an elliptic curve and introduce the basic facts related to the twist which we need for our method improving the computation of an elliptic net.

Definition 4.1.1. Let E be an elliptic curve define over a field K. Atwist of E/K is an elliptic curve E/K that is isomorphic to E over ¯K. The set of twists ofE/K, modulo K-isomorphism, is denoted by Twist(E/K).

Definition 4.1.2. LetEbe an elliptic curve over a fieldK andE/K a twist ofE/K. Thedegree of a twistEis min{[L:K]|there is an isomorphism : E →E defined over L}.

Twist(E/K) has a group structure (see [11, X.2]). The following propo- sition give the structure of Twist(E/K).

Proposition 4.1.3 ([11, Proposition X.5.4]). Let K be a field of character-

(30)

16 CHAPTER 4. OUR IMPROVEMENT istic not 2 or 3, E an elliptic curve over K, and let

n=





2 if j(E)̸= 0,1728 4 if j(E) = 1728 6 if j(E) = 0

Then Twist(E/K) is canonically isomorphic to K/Kn. More precisely, choose a Weierstrass equation

E :y2 =x3+Ax+B

for E/K, and let D K. Then the elliptic curve ED Twist(E/K) corresponding to DmodKn has Weierstrass equation

(i) ED :y2 =x3+D2Ax+D3B if j(E)̸= 0,1728,

(ii) ED :y2 =x3+DAx if j(E) = 1728 (so B = 0), (iii) ED :y2 =x3+DB if j(E) = 0 (so A = 0).

Let Fq be a finite field of characteristic not 2 or 3, E an elliptic curve over Fq, n the natural number that is defined in Proposition 4.1.3 and d = gcd(n, q1). Then Fq/Fqn is a cyclic group of order d. Let D Fq be a representative for a generator ofFq/Fqn and ξ a d-th root ofD. Proposition 4.1.3 says that if we choose a Weierstrass equation

E :y2 =x3 +Ax+B, A, B Fq

for E, a complete set of representatives for Twist(E/K) is given by Ei :y2 =x3+A/ξ4ix+B/ξ6i, i= 0, . . . , d1.

Notice that for any n, A/ξ4i and B/ξ6i are in Fq because A = 0 in the case ξ4 ∈/ Fq and B = 0 in the case ξ6 ∈/ Fq. Therefore Ei is defined over Fq. An Fqd-isomorphism ϕi : Ei E is given by (x, y) 7→2ix, ξ3iy). The degree of the twits Ei is [Fq2i, ξ3i) : Fq] = [Fqi) :Fq] = gcd(d, i). Hess et al. [5]

showed that the structure of E(Fqd) can be expressed by twists Ei(Fq).

Theorem 4.1.4 ([5]). Let Fq be a finite field of characteristic not 2 or 3, E an ordinary elliptic curve over Fq admitting a twist of degree d, and (Ei, ϕi) fori= 0, . . . , d1defined above. Assumegcd(#E(Fq), d) = 1, then the map

d1

i=0

Ei(Fq)→E(Fqd), (Pi)7→

d1

i=0

ϕi(Pi) is an isomorphism.

Remark 4.1.5. Theorem 4.1.4 is also true for not ordinary elliptic curves.

The assumption that E is ordinary is to use commutativity of End(E), but we need only the commutativity for an automorphism on E of order d and q-th power Frobenius map. This follows from d|q−1.

(31)

4.2. TWISTS FOR OPTIMAL PAIRINGS 17

4.2 Twists for Optimal Pairings

In this section, we consider computing optimal pairing on an elliptic curve defined over a finite field via an elliptic net associated to a twist of the elliptic curve. Throughout this section, Fq is a finite field with q elements of characteristic not 2 or 3, E is an elliptic curve defined over Fq, and π is the q-th power Frobenius map on E.

AssumeE has an optimal pairinga[c1,...,cl]:G1×G2 →µr. From Theorem 3.2.2, we can compute the optimal pairing by computing blocks centred onci for i= 1, . . . , lof the elliptic net WQ,P;E. Therefore, we focus on computing the block centred on ci.

First, we explain why we use a twist of a curve instead of an original curve. G1 = E[r]∩ker(π [1]), so G1 E(Fq). While from the fact that E[r] is generated by G1 and G2 and Proposition 4.1.3, G2 E(Fqk) and k is the smallest integer satisfying this condition. Our aim is to calculate a block of WQ,P;E centred on ci. From Proposition 3.3.2 and the values of a block centred on 1 (see (3.13)–(3.23)), for any n Z, WQ,P;E(n,0) does not depend on the coordinates ofP andWQ,P;E(n,1) depends on the coordinates of P and Q. Because P G1 and Q G2, all elements in the block of WQ,P;E are in Fqk. The cost of computing operations in a large field is more expensive than that of a smaller field. Therefore ifQhas its coordinates in a smaller field, the calculation of the elliptic net would be more efficient. This is achieved by using a twist. We need the following theorem.

Theorem 4.2.1. Let r be a prime which is prime toq and dividing #E(Fq) and k the embedding degree of r with respect to q. Let n be defined in Proposition 4.1.3, d = gcd(q1, n), d = gcd(k, d) and e = k/d. Assume gcd(#E(Fqe), d) = 1 and k 2.

Then E/Fqe has the twist E of degree d such that

r|#E(Fqe),

ϕ(E(Fqe)∩E[r]) = E[r]∩ker(π[q]), where ϕ is the isomorphism : E →E.

Furthermore E is unique up to Fqe-isomorphism.

Proof. As we stated in 2.4, E[r] = E[r] ker(π [1]) E[r]∩ ker(π [q]). Proposition 4.1.3 shows E/Fqe has a twist of degree d, therefore from Theorem 4.1.4,

E(Fqk)=

d1

i=0

Ei(Fqe)

(32)

18 CHAPTER 4. OUR IMPROVEMENT whereEi fori= 0, . . . , d1 are twists of E/Fqe defined in 4.1. Then there is a twist Ei s.t. ϕi(E(Fqe)) contains a non-zero element ofE[r]∩ker(π[q]).

We show that such a twist Ei satisfies the conditions of the theorem.

Since E[r]∩ker(π[q]) is a cyclic group that has a prime order, it follows E[r]∩ker(π[q]) ϕi(Ei(Fqe)). From Theorem 4.1.4, ϕi is an inclusion.

Therefore Ei(Fqe) contains a subgroup of order r. This imply r |#Ei(Fqe).

Next we showEiis a twist of degreed. Letd0be the degree of the twist. Then ϕi can be defined overFqed0. SoE[r]∩ker(π[q])⊆ϕi(Ei(Fqe))⊆E(Fqed0)).

Since E[r]∩ker(π[1]) = E(Fq)[r], E[r] E(Fqed0)). From Proposition 2.1.2,µr Fqed0. This means ed0 divides the embedding degreek =ed. But d0 ≤d sod0 =d.

It remains to prove uniqueness. This immediately follows from injectivity of di=01Ei(Fq)→E(Fqd).

LetE be the twist in the above theorem and ϕthe isomorphismE →E.

Then ϕ1(G1) E(Fqk) and ϕ1(G2)⊆E(Fqe). Therefore elements in the block of the elliptic net of E which are depending only on ϕ1(Q) are in Fqe, which is smaller thanFqk if d≥2. For the relation between the original curve and the twist, see below.

original twist

E(Fq)⊇G1 ←→ ϕ1(G1)⊆E(Fqk) E(Fqk)⊇G2 ←→ ϕ1(G2)⊆E(Fqe) W(i,0)Fqk W(i,0)Fqe

W(i,1)Fqk W(i,1)Fqk

From this, it follows that the cost of calculating the elliptic net of E is less than that ofE. What we should do is to express the optimal pairing by using the elliptic net of E. We will do this in the next section. We will estimate the efficiency of using the twist in 6.2.

The remainder of this section, we summarize the condition that the above twist exists. Let r be a prime that is prime to q. We define integers (k, n, d, d, e) as follows:

k : the embedding degree ofr with respect toq, n =





2 if j(E)̸= 0,1728, 4 if j(E) = 1728, 6 if j(E) = 0, d = gcd(q1, n),

d = gcd(k, d), e = k/d.

(33)

4.3. ELLIPTIC NETS OF TWIST CURVES 19 Then we require the following conditions:

r|#E(Fq), (4.1)

k 2, (4.2)

d≥2, (4.3)

r ̸= 2 or 3. (4.4)

(4.1) and (4.2) are required for the existence of the pairing defined in Theorem 2.4.1 and that of the twist defined in Theorem 4.2.1. In addition, when (4.3) is satisfied, Fqe is a proper subfield of Fqk. Therefore, an elliptic net of E can be computed more easily than that of E. (4.4) is need for computing an optimal pairing by using elliptic net of the twist. This is described in the next section.

4.3 Elliptic Nets of Twist Curves

Our goal in this section is to express the optimal pairing by using the twist defined in Theorem 4.2.1. Let E be an elliptic curve over a finite field Fq

of characteristic not 2 or 3, r a prime that is prime to q and (k, n, d, d, e) integers defined in 4.2. Assume E, r, k, n, d, d, e satisfy (4.1)–(4.4). Then there is a twist E that satisfy the condition in Theorem 4.2.1. Let ϕ be an isomorphism : E →E andξ a element inFqk such thatϕ(x, y) = (ξ2x, ξ3y).

First we show a relation between elliptic nets of E and E. Proposition 4.3.1. Let P, Q ∈E and i∈Z. Then

WQ,P;E(i,0) = ξi21Wϕ(Q),ϕ(P);E(i,0) , (4.5) WQ,P;E(i,1) = ξi2iWϕ(Q),ϕ(P);E(i,1) . (4.6) Proof. (3.13)–(3.17) shows that (4.5) holds for 0 i 4. For i 5, using (3.7) and (3.8), we can prove (4.5) by induction on i. Similarly, (3.20) – (3.22) shows that (4.6) holds for 1 i 2. (3.10), (3.11) and (4.5) for i 0 allows us to prove (4.6) by induction on i. Finally (3.19) proves the proposition for i <0.

This proposition allows us to replace fractions of the elliptic net of E in the formula in Theorem 3.2.2 by those of the elliptic net ofE multiplied by a certain power ofξ. However we can replace those by a simpler form of the elliptic net of E because of a so-called final exponentiation.

(34)

20 CHAPTER 4. OUR IMPROVEMENT Theorem 4.3.2. Let P, Q ∈E and i∈Z. Then

(Wϕ(Q),ϕ(P);E(i,1) Wϕ(Q),ϕ(P);E(i,0)

)qk1

r

=WQ,P;E(i,1)qkr1. (4.7) Proof. From Proposition 4.3.1,

(Wϕ(Q),ϕ(P);E(i,1) Wϕ(Q),ϕ(P);E(i,0)

)qk−1r

= (

ξi1WQ,P;E(i,1) WQ,P;E(i,0)

)qkr1

. (4.8)

Since qk1 = (qe(d1)+· · ·+ 1)(qe1) and rqe1,qe1 divides qkr1. From d|q−1,qe(d1)+· · ·+ 10 modd. Sincer ̸= 2 or 3, and d= 2, 3, 4 or 6,d divides (qe(d1)+· · ·+ 1)/r. Therefore (qe1)d| qkr1. From this and the fact WQ,P;E(i,0) and ξd Fqe, it follows that WQ,P;E(i,0)qkr1 = 1 and ξqk−1r = 1. This completes the proof of the theorem.

Remark 4.3.3. Theorem 4.3.2 allow us to replace WQ,P;E(ci,1) WQ,P;E(ci,0) In Theorem 3.2.2 by Wϕ1(Q),ϕ1(P);E(ci,1). Furthermore we can compute g[si+1]Q,[ciqi]Q(P) from blocks of Wϕ−1(Q),ϕ−1(P);E centred on ci by using Proposition 4.3.1.

4.4 Modified Elliptic Nets

In this section, we define a modified elliptic net for promoting the efficiency of computation of Double and DoubleAdd.

Definition 4.4.1. Let W : Z2 R be an elliptic net satisfying W(0,1) = W(1,0) = 1, W(1,1) R. Then we define a modified elliptic net W˜ of W as follows:

W˜(s, t) = W(1,1)stW(s, t). (4.9) Proposition 4.4.2. A modified elliptic net is an elliptic net.

Proof. It follows from substituting (4.9) into (3.1).

Let E be an elliptic curve and P = (x1, y1), Q = (x2, y2) E and both are not O, P ̸= ±Q, and 2P −Q ̸= O. In the computation of Double or DoubleAdd, this modification changes W(1,1) from (x1−x2) to 1 and W(1,1) from 1 to (x1−x2). After this modification, the cost of computing Double for a modified elliptic net is the same as that for an original elliptic

Figure 3.1: Block centred on i
Figure 5.1: Extended block centred on i
Table 5.2: Modified or extended
Table 5.3: Parallel algorithm for 4 processors (d = 2)
+7

参照

関連したドキュメント

where it does not matter). 10.4] for a discussion of the relation between sequences of this form and elliptic divisibility sequences defined via a bilinear recurrence or the sequence

Given the topological group Π X , is it possible to determine the reduction type of the elliptic curve E over K.. Using the terminology introduced in previous talks, this is a

We list in Table 1 examples of elliptic curves with minimal discriminant achieving growth to each possible torsion group over Q

It is well known that an elliptic curve over a finite field has a group structure which is the product of at most two cyclic groups.. Here L k is the kth Lucas number and F k is the

Using the proposed lower-upper solution method, we proved an existence theorem for a semilinear nonlocal elliptic boundary value problem under corresponding restrictions over

The Goal of Hodge theaters: Roughly speaking, Hodge theater (at least, the ´ etale part) is a virtual “GMS” for an arbitrary elliptic curve over a number field which manages.. Θ

The aim of this paper is to show that it is possible to tackle the problem of quantizing an extension of the PU oscillator within a Lagrangian and a canonical ormulation, using

In this case, the extension from a local solution u to a solution in an arbitrary interval [0, T ] is carried out by keeping control of the norm ku(T )k sN with the use of