Abstract
In pairing-based cryptography, the computation of asymmetric pairings \(e: {\mathbb {G}}_{1}\times {\mathbb {G}}_{2}\longrightarrow {\mathbb {G}}_{T}\) requires input points of prime order r. The process of getting those r-torsion point is known as hashing into \({\mathbb {G}}_{1}\) or \({\mathbb {G}}_{2}\) and is in general costly. Few recent works have considered the Scott et al.’s method and Fuentes et al.’s method for hashing on specific families of pairing-friendly curves. In this work, we apply those two methods on the recently discovered Scott–Guillevic Aurifeuillean curves with embedding degree \(k=6,9,15,18,27\) and 54. The results obtained show that the Fuentes et al.’s method is at least twice faster than the Scott et al.’s method in terms of group operations. In addition, the computational cost of hashing into \({\mathbb {G}}_{2}\) studied in this work is higher compared to the previous work done with BN curves, KSS curves and BLS curves at comparable embedding degrees.
Similar content being viewed by others
Avoid common mistakes on your manuscript.
Introduction
A cryptographic pairing is a non-degenerate bilinear map from certain pairs of points of elliptic curves to a multiplicative subgroup of appropriate order of finite fields. Whereas some research papers such as Boneh and Franklin’s identity-based encryption scheme [1], Lynn and Shacham’s short signature scheme [2] used pairings in a constructive manner to implement novel protocols, and Joux’s one round tripartite key exchange [3] used pairing to improve existing protocol which was in two rounds. There are several types of pairings such as the Weil pairing [4, 5], the Tate pairing [6], and its variants: the ate pairing [7], the R-ate pairing [8].
The original algorithm for computing pairings is due to Miller and is named the Miller algorithm. What the algorithm does is the efficient evaluation of a rational function associated with an r-torsion point of the elliptic curve.
Let \(E(F_{p})\) denote the set of rational points of an elliptic curve E over a finite field \(F_{p}\). Let r be the large prime divisor of \(\# E({\mathbb {F}}_{p})\) and c the integer, such that \(\# E({\mathbb {F}}_{p}) = c\cdot r\). For the Tate pairing for example, the group \({\mathbb {G}}_{1}\) is the subgroup \(E({\mathbb {F}}_{p})[r]\) of r-torsion points in \(E({\mathbb {F}}_{p})\), so that a point in \({\mathbb {G}}_{1}\) can be obtained by the scalar multiplication by c. The group \({\mathbb {G}}_{2}\) appears as the r-torsion subgroup of \({\tilde{E}}({\mathbb {F}}_{p^{k/d}})\), where \({\tilde{E}}\) is the degree-d twist of the elliptic curve E. Hashing can be done exactly as in the case of \({\mathbb {G}}_{1}\), but the cofactor c in this case is quite large making the scalar multiplication costly, and it is thus a major concern to make it as fast as possible.
Two methods are used for efficient hashing into \({\mathbb {G}}_{2}\): the Scott et al.’s method [9] and Fuentes et al.’s method [10]. Those methods have been applied to BN curves and BLS curves [11] and other curves [9]. This work continues the same line of research in which we consider hashing into \({\mathbb {G}}_{2}\) on the newly constructed pairing-friendly curves introduced by Scott and Guillevic [12]. For the case study with both methods, our results show that the Fuentes et al.’s method is at least twice faster than the Scott et al.’s method in terms of group operations. In addition, the computational cost of Hashing into \({\mathbb {G}}_{2}\) studied in this work is higher compared to the previous work done with BN curves, KSS curves, and BLS curves at comparable embedding degrees.
The rest of this paper is organised as follows: in the next section, we bring out some preliminary on elliptic curves and pairings useful for the understanding of this work. The following section describes and applies hashing into \({\mathbb {G}}_{2}\) with Scott et al. method to Aurifeuillean curves with embedding degree \(k\in \{6,9,15,18,27,54\} ,\) as well as hashing into \({\mathbb {G}}_{2}\) with Fuentes et al.’s method to the same elliptic curves, but not for \(k=15,\) since a certain condition was not satisfy. We also bring up a comparison between computational cost of hashing with Aurifeuillean curves and other pairing-friendly elliptic curves in this section. The last section concludes the work.
Preliminary on Elliptic Curves and Pairings
This section recalls some preliminaries on elliptic curves useful to understand the remainder of this work. We refer the reader to the book [4] for more details.
Elliptic Curves
Let \({\mathbb {F}}_{p}\) denote the finite field with p elements. \(\overline{{\mathbb {F}}}_{p}\) denotes its algebraic closure, \(\overline{{\mathbb {F}}}_{p}=\cup _{m\ge 1}^{} {\mathbb {F}}_{p^m}\). When the characteristic of \({\mathbb {F}}_p\) is different from 2 and 3 the Weierstrass elliptic curve is the set of points in \((x,y)\in \overline{{\mathbb {F}}}_{p}\times \overline{{\mathbb {F}}}_{p}\) satisfying the equation:
where \(a,b \in \overline{{\mathbb {F}}}_{p}\) together with an extra point at infinity \({\mathcal {O}}.\) If \(a,b \in {\mathbb {F}}_{p} ,\) then E is said to be defined over \({\mathbb {F}}_{p}\) and we denote this by \(E/{\mathbb {F}}_{p}.\) If E is defined over \({\mathbb {F}}_{p}\), then the set of \({\mathbb {F}}_{p}\)-rational points of E, denoted \(E({\mathbb {F}}_{p})\) is the set of points with coordinates in \({\mathbb {F}}_{p}\).
Group Law
Let E be the elliptic curve given by the Weierstrass Eq. (1). The addition rule is given below. For any point \(P_{1}\) and \(P_{2}\) of the curve where \(P_{i}(x_{i},y_{i})\) for \(i=1,2 .\)
- (i)
\(P_{1}+{\mathcal {O}}={\mathcal {O}}+P_{1}=P_{1} .\)
- (ii)
\(-{\mathcal {O}}={\mathcal {O}},\)
- (iii)
Let \(P_{1}(x_{1},y_{1})\ne {\mathcal {O}},\) \(- P_{1}\) has as coordinates \(-P_{1}(x_{1},-y_{1})\) and \(P_{1}+(-P_{1})={\mathcal {O}}.\)
- (iv)
\(P_{1}+P_{2}\) is of coordinates \((x_{3},y_{3})\) with
$$\begin{aligned} x_{3}=\lambda ^2-x_{1}-x_{2} \quad y_{3}=\lambda (x_{1}-x_{3})-y_{1} \end{aligned}$$where
$$\begin{aligned} \lambda = \left\{ \begin{array}{r c l} \dfrac{y_{1}-y_{2}}{x_{1}-x_{2}} ,\quad si \quad P_{1}\ne \pm P_{2}\\ \dfrac{3x_{1}^{2}+a}{2y_{1}} \quad si\quad P_{1}=P_{2}. \end{array} \right. \end{aligned}$$
Theorem 1
The set \((E({\mathbb {F}}_{p}),+)\) consisting of the elliptic curve given by the Weierstrass Eq. (1) together with addition defined above is an abelian group with identity element \({\mathcal {O}}.\)
The Frobenius endomorphism on the elliptic curve is defined by \(\pi : E(\overline{{\mathbb {F}}}_{p}) \longrightarrow E(\overline{{\mathbb {F}}}_{p}): (x,y) \longmapsto (x^p,y^p)\) and \({\mathcal {O}} \longmapsto {\mathcal {O}} .\) The following theorem gives a bound of the number of points of an elliptic curve.
Theorem 2
(Hasse) Let E the elliptic curve on finite field \({\mathbb {F}}_{q} ,\) with \(q=p^n\) then
Theorem 3
Let E the elliptic curve on finite field \({\mathbb {F}}_{q} ,\) then
where t is the unique integer equal to \(q+1-\# E({\mathbb {F}}_{q})\), called the trace of the Frobenius map on the elliptic curve.
There are two categories of elliptic curves: supersingular elliptic curves and ordinary elliptic curves. If \(t=0\) or \(\# E({\mathbb {F}}_{q})\equiv 1 \mod p,\) the curve is said to be supersingular otherwise it is an ordinary curve.
Definition 1
Let E and Ẽ be two elliptic curves defined over the finite field \({\mathbb {F}}_{q}\). then, Ẽ is called the twist of degree d of E if there exists an isomorphism \(\psi _{d}\) from Ẽ to E over \({\mathbb {F}}_{q^d}\) such that d is minimal.
r-Torsion Points
Definition 2
For \(P\in E(\overline{{\mathbb {F}}}_{p}), P\) is a r-torsion point if \([r]P={\mathcal {O}}.\)
The set of r-torsion points of \(E(\overline{{\mathbb {F}}}_{p})\) is denoted
Definition 3
Let r be a large prime number dividing \(\#E({{\mathbb {F}}_{q}}) ,\) the embedding degree of the elliptic curve E relatively to r is the least integer k, such that \(r/q^k-1\).
Remark 1
The embedding degree k is the minimal degree of extension field \({\mathbb {F}}_{q}\) such that \(E[r]\subset E({{\mathbb {F}}_{q^k}})\).
Pairings
Let \({\mathbb {G}}_{1}, {\mathbb {G}}_{2}\) and \({\mathbb {G}}_{3}\) be three groups of order r, a pairing is non-degenerate bilinear map
Consequence
On an elliptic curve E over \({\mathbb {F}}_{q}\), the following groups are defined:
\({\mathbb {G}}_{1}\) is the group \(E({\mathbb {F}}_{p})[r]\) of r-torsion points in \(E({\mathbb {F}}_{p}),\)
\({\mathbb {G}}_{2}\) is a group \({\tilde{E}}({\mathbb {F}}_{p^{k/d}})\) of r-torsion points, where \({\tilde{E}}\) is the degree d twist of E over a lower degree extension \({\mathbb {F}}_{p^{k/d}}.\)
\({\mathbb {G}}_{3}\) the group of rth roots of unity in \({\mathbb {F}}_{q^k}.\)
The Tate pairing is the map
where \(f_{r;P}\) is the Miller function, the rational function \(f_{r;P}\) verifying \(div( f_{r;R})=s(R)-([s]R)-(s-1){\mathcal {O}}\).
Order of Elliptic Curves and Its Twist
Consider an elliptic curve E defined over \({\mathbb {F}}_{p}\). The number of points of E is defined as \(\# E({\mathbb {F}}_{p})=p+1-t,\) where t is the trace of the p-power Frobenius of E, which obeys the Hasse bound \(t\leqslant 2\sqrt{p}.\) The trace \(t_{m}\) of the \(p^m\)-power Frobenius on E for an arbitrary m can be determined using the recursion:
for all \(i\geqslant 1.\)
Therefore, the number of points of an elliptic curve E over \({\mathbb {F}}_{p^m}\) is defined as
If E admits a twist \({\tilde{E}}\) of degree d dividing k and \(q=p^{k/d},\) then for \(d=2 ,\)
For \(d=3\)
with \(t^2-4q=-3f^2\).
For \(d=4\)
with \(t^2-4q=-f^2\).
For \(d=6\)
with \(t^2-4q=-3f^2\) (see [9] for more explanation).
Addition Chain
Definition 4
(Basic definition) An addition chain for positive integer n is a sequence of positive integers \(\{e_{0}, e_{1}, e_{2},\ldots ,e_{s}\}\), such that
- (i)
\(e_{0}=1, e_{1} =2\) and \(e_{s}=n\)
- (ii)
for each i, \(1<i<s,\) there exist \(k,j<i\) such that \(e_{i}=e_{j}+e_{k}\)
A generalisation of the following definition take into consideration several integers.
Definition 5
(Generalisation) A generalisation of an addition chain of length l for a set of positive integers \(\{ n_{1}, n_{2},\ldots ,n_{s}\}\) is a sequence of positive integers \(\{e_{0}, e_{1}, e_{2},\ldots ,e_{l}\}\) which include \(\{ n_{1}, n_{2},\ldots ,n_{s}\}\), such that
- (i)
\(e_{0}=1, e_{1} =2\) and \(e_{s}=n_{s}\)
- (ii)
for each i, \(1<i<l,\) there exist \(k,j<i\) such that \(e_{i}=e_{j}+e_{k}\)
Such a chain defines a correct sequence of additions/substraction and doublings required for performing a scalar multiplication operation, [c]P; with P an element of an arbitrary Abelian group.
By means of Olivos theorem [13], group operations with the addition chain of length l can be accomplished with \(l+s-1\) operations in the group including squaring and addition of element of the group. However, it has been shown that finding a minimal length addition sequence is an NP-hard problem.
Hashing into \({\mathbb {G}}_{2}\)
Real protocols such as Franklin’s identity-based encryption scheme require hashing of identities to \({\mathbb {G}}_{1}\) or \({\mathbb {G}}_{2}.\) The general approach to construct secure hash functions for hashing an identity to the group G of order r on an elliptic curve \(E({\mathbb {F}}_{p})\) consists to: first step to transform an arbitrary binary message (the identity) to an element x of \({\mathbb {F}}_{p} .\) Second step solves the quadratic curve equation on \({\mathbb {F}}_{p}\) to find a y coordinate (change x if y does not exist) and finally carry the point P of coordinate (x, y) to some elliptic curve subgroup \({\mathbb {G}}_{1}=E({\mathbb {F}}_{p})[r]\) or \({\mathbb {G}}_{2}={\tilde{E}}({\mathbb {F}}_{p^{k/d}})[r]\) by multiplying the point P by cofactor c, where \(\#{\tilde{E}}( {\mathbb {F}}_{p} )=c.r.\)
When hashing to \({\mathbb {G}}_{1}\), the cofactor c and p / r have almost the same size and the hashing is considered to be easier than when hashing to \({\mathbb {G}}_{2}\) . In fact, in \({\mathbb {G}}_{2}\), the length of c increases and it is of the same size with \(p^{k/d}/r,\) so that the scalar multiplication becomes really costly. Therefore, it is of great interest to make hashing into \({\mathbb {G}}_{2}\) fast.
Hashing into \({\mathbb {G}}_{2}\) with Scott et al. Method
Let \(\phi : {\tilde{E}}\rightarrow E\) be the twist isomorphism from \({\tilde{E}}\) to E and \(\pi\) be the pth power Frobenius on E. Scott et al. realized that the endomorphism \(\psi =\phi ^{-1}\circ \pi \circ \phi\) can be used to quicken the computation of \(c\cdot P\) (this was noted in [14]).
The endomorphism \(\psi\) satisfies
The idea of Scott is to first express c to the base p as
and then use the identity \([p]P=[t]\psi (P)-\psi ^2(P) ,\) so
where every \(g_{i}\) is a polynomial in x with degree smaller than the degree of p.
For a parameterized family of curves, the method requires first to pre-calculate the cardinality \({\tilde{n}}\in {\mathbb {Q}}[x]\) of \({\tilde{E}}({\mathbb {F}}_{q^{k/d}})\), where d is from the set of possible twist degrees \(\{1; 2; 3; 4; 6\}\), and is usually the maximum from this set that divides k. The application ends by the execution of the algorithm 2 in [9] which determine the coefficients of the polynomial [c(x)]P in \(\psi (P)\) where \(c(x) =\frac{{\tilde{n}}}{r(x)}\).
In what follows the Scott et al. hashing method is applied to Aurifeuillean curves [12] having embedding degree k equal to 6, 9, 15, 27 and 54.
Aurifeuillean Curves-6
The Aurifeuillean pairing-friendly curves-6 has an embedding degree of \(k = 6\). We consider the zero j-invariant curves having twist curves \({\tilde{E}}\) with degree \(d = 6\). This defines the group \({\mathbb {G}}_{2}\) as \({\mathbb {G}}_{2}= {\tilde{E}}({\mathbb {F}}_{p^{k/d}})(r)= {\tilde{E}}({\mathbb {F}}_{p})(r)\). The curve is parametrized by the polynomials:
The order of the group \({\tilde{E}}( {\mathbb {F}}_{p} )\) is c(x)r(x) , where c(x)
for some rational point \(P\in {\tilde{E}}( {\mathbb {F}}_{p} ),\)
To evaluate the cost of the operations [c(x)]P, we first calculate \([2]P+P=[3]P\) then \([x]([3]P)=[3x]P\) and \([x]([3x]P)=[3x^2]P .\) It is made of three point additions, one point doubling and two scalar multiplications by x.
Aurifeuillean Curves-9
The Aurifeuillean curves-9 family of elliptic curves has an embedding degree of \(k = 9,\) and an associated twist curve \({\tilde{E}}\) with degree \(d = 3\). This defines the group \({\mathbb {G}}_{2}\) as \({\mathbb {G}}_{2}= {\tilde{E}}({\mathbb {F}}_{p^{k/d}})(r)= {\tilde{E}}({\mathbb {F}}_{p^{3}})(r)\). The curve is parametrized by the polynomials:
The cofactor of \(\#{\tilde{E}}({\mathbb {F}}_{p^{3}})\) relatively to r(x) yields,
Applying Scott et al. method (algorithm 2 in [9]), the scalar multiplication [c(x)]P, for some rational point \(P\in {\tilde{E}}( {\mathbb {F}}_{p^3} ),\) is reduced to
In addition, we put into factor the common coefficients:
There are 11 point additions inside the brackets. Then, extracting all the \(s=11\) coefficients below and constructing the addition chain:
of length \(l=10 .\) The numbers in box are results of adding a number that comes before by itself. By Olivos theorem [13], the number of group operations is \(l+s-1=10+11-1=20\), which includes 3 point doubling (number of elements in box) and 17 extra point additions. To evaluate the rest of cost operations, we first calculate [x]P, \([x^2]P=[x].([x]P),\) \([x^3]P=[x].([x^2]P),\) \([x^4]P=[x].([x^3]P),\) \([x^5]P=[x].([x^4]P),\) \([x^6]P=[x].([x^5]P).\) For \(i=1\) to 4 we evaluate \(\psi ^i(P),\) \(\psi ^i([x]P),\) \(\psi ^i([x^2]P),\) \(\psi ^i([x^3]P),\) \(\psi ^i([x^4]P),\) \(\psi ^i([x^5]P)\) and \(\psi ^i([x^6]P) .\) Just the values which appeared in the decomposition of [c(x)]P are needed.
In total, hashing to \({\mathbb {G}}_{2}\) in this family of curves has a cost of twenty eight point additions, three point doubling, six scalar multiplications by the parameter x and twenty \(\psi\) maps.
Aurifeuillean Curves-18
This family of curves has embedding degree \(k=18\) and is parameterised by the polynomials:
The zero j-invariant curves have twists of order 6. In this case, the group \({\mathbb {G}}_{2}\) is expressed as a subgroup of \({\tilde{E}}( {\mathbb {F}}_{p^3} ) .\) Then, c(x) is of degree 24. Applying Scott et al. method, [c(x)]P, for \(P\in {\tilde{E}}( {\mathbb {F}}_{p^3} ),\) is reduced to
The construction of addition chain yields, \(\{1,\fbox {2},3,\fbox {6},9,\fbox {18},27,45,\fbox {54},81, \underline{\fbox {162}},243 \}\) of length \(l=11 .\) The underline number is not among coefficients of the expression of [c(x)]P, but added to build addition chain. By Olivos theorem, the number of group operations is \(l+s-1=11+11-1=21\) plus 12 extra operations which from the number of additions of points of the same coefficient. The final cost is made by 5 point doublings, 28 point additions, 9 scalar multiplications by the parameter x, and 20 applications of \(\psi .\)
Aurifeuillean Curves-15
This family of curves has embedding degree \(k=15\) and is parametrized by the polynomials:
In this case, the group \({\mathbb {G}}_{2}\) is expressed as a subgroup of \({\tilde{E}}( {\mathbb {F}}_{p^5} ) .\) Then, c(x) is of degree 52. Applying Scott et al. method, [c(x)]P, for \(P\in {\tilde{\mathbf{E }}}( {\mathbb {F}}_{p^5} ),\) is reduced to
where \(\lambda _{0},\lambda _{1},\lambda _{2},\lambda _{3},\lambda _{4},\lambda _{5},\lambda _{6}\) and \(\lambda _{7}\) are polynomials of \({\mathbb {Z}}[x]\) of degree less than or equal to 11. To ease the readability, these polynomials are fully reported in Appendix A. The scalar multiplication [c(x)]P can be calculated at the cost of 11 scalar multiplications by x and 83 applications of \(\psi .\)
Aurifeuillean Curves-27
The Aurifeuillean curves-27 has embedding degree \(k=27\) and twists of degree \(d=3\) The curve is giving by the following polynomial parametrization:
The group \({\mathbb {G}}_{2}\) is expressed as a subgroup of \({\tilde{E}}( {\mathbb {F}}_{p^9} ) .\) Then, c(x) is of degree 180. Applying Scott et al method, [c(x)]P, for \(P\in {\tilde{E}}( {\mathbb {F}}_{p^9} ),\) is reduced to
where \(\lambda _{i},\) for \(i=0,1,\ldots ,16\) are polynomials of \({\mathbb {Z}}[x]\) of degree less than or equal to 21 (see Appendix B for their complete expressions). The multiplication [c(x)]P can be calculated at the cost of 21 scalar multiplications by x and 240 applications of \(\psi .\)
Aurifeuillean Curves-54
The Aurifeuillean curves-54 has embedding degree \(k=54\) and is parametrized by the polynomials:
The corresponding zero j-invariant curve has twist of degree \(d=6 ,\) and the group \({\mathbb {G}}_{2}\) is expressed as a subgroup of \({\tilde{E}}( {\mathbb {F}}_{p^9} ) ,\) then the cofactor is c(x) of degree 162. Applying Scott et al method, [c(x)]P, for \(P\in {\tilde{\mathbf{E }}}( {\mathbb {F}}_{p^9} ),\) is reduced to
where \(\lambda _{0},\lambda _{1},\lambda _{2},\lambda _{3},\lambda _{4},\lambda _{5},\lambda _{6},\lambda _{7},\lambda _{8},\lambda _{9}\) and \(\lambda _{10}\) are polynomials of \({\mathbb {Z}}[x]\) of degree less than or equal to 19 (see Appendix C for their complete forms). The multiplication [c(x)]P can be calculated at the cost 19 scalar multiplications by x and 159 applications of \(\psi .\)
Comparison with Others Pairing-Friendly Elliptic Curves
Previous works [9, 11] on hashing into \({\mathbb {G}}_{2}\) using the Scott et al.’s method with BLS curves, MNT curves, KSS curves, and Freeman curves provided some computational costs that we confront to the results obtained in this work. We consider the notations A for point addition, D for point doubling, X for a scalar multiplication by the parameter x and \(\psi\) an application of the endomorphism \(\psi (.) .\) The endomorphism \(\psi\) can be efficiently calculated, whereas the multiplication by x, is most costly, since x is large and the algorithm to compute large scalar multiplications require many point additions and doubling. The comparison is given in Table 1.
Hashing into \({\mathbb {G}}_{2}\) with Fuentes et al. Method
Fuentes et al. discovered that instead of multiplying the polynomial c(x) by the point P of elliptic curve as in the Scott et al. method, and it is sufficient to multiply P by \(c'\) a multiple of c, such that \(c'\) do not vanish modulo r.
Indeed, let f and \({\tilde{f}}\) be such that \(t^2-4p=Df^2\) and \({\tilde{t}}^2-4q=D{\tilde{f}}^2\), where D is the discriminant, \(n+t=p+1\) and \({\tilde{n}} + {\tilde{t}}=q+1\) where \(n=\# E({\mathbb {F}}_{p})\), \({\tilde{n}}=\# {\tilde{E}}({\mathbb {F}}_{q})\) and q a power of p. The Lemma 1 shows that \({\tilde{E}}({\mathbb {F}}_{q})\) is stable by \(\psi ,\) and the Lemma 2 illustrates the effect of \(\psi\) on the element of twisted curve \({\tilde{E}}({\mathbb {F}}_{q}) .\) (see [10] for evidence)
Lemma 1
If \(p\equiv 1 \mod d ,\) then \(\psi (Q) \in {\tilde{E}}({\mathbb {F}}_{q})\) for all \(Q\in {\tilde{E}}({\mathbb {F}}_{q}).\)
Lemma 2
If \(p\equiv 1 \mod d ,\) \(gcd({\tilde{f}},{\tilde{n}})=1\) and \({\tilde{E}}({\mathbb {F}}_{q})\) is a cyclic group, then \(\psi (Q)=aQ\) for all \(Q\in {\tilde{E}}({\mathbb {F}}_{q}),\) where a is
Theorem 4
[10] Suppose that \({\tilde{E}} ({\mathbb {F}}_{q})\) is cyclic and \(p\equiv 1 \mod d\).
Then, there exists a polynomial
in \({\mathbb {Z}}[z]\) such that \([h(\psi )]Q\) is a multiple of [c]Q for all \(Q\in {\tilde{E}}({\mathbb {F}}_{q})\) and \(|h_{i}|^{\varphi (k)}\le \#{\tilde{E}}({\mathbb {F}}_{q})/r\) for all i.
Fuentes noticed that polynomials \(h\in {\mathbb {Z}}[z]\), such that \(h(a)\equiv 0 \mod c\) correspond to points in the integer lattice generated by the matrix:
where A is a column vector with ith entry \(-a^i\mod c ,\) \(i=1,2,\ldots ,\varphi (k)-1 .\)
The method begins as the Scott et al. method for obtaining \({\tilde{n}}\) the order of twisted curve \({\tilde{E}}\) and c(x) its cofactor relatively to r(x). We also find a(x) as defined in Lemma 2 and set the matrix M. Then used LLL algorithm [15] to reduce the coefficients of the matrix M. The linear combination of the rows of the reduced matrix obtained yields
and the final step of hashing into \({\mathbb {G}}_{2}\) with Fuentes et al. method is
The pre-computation is done using the software Maple and the LLL reduction is done using Magma V2.24-1 calculator
We applied Fuentes et al. hashing method to Aurifeuillean curves having embedding degree k equal to 6, 9, 18, 27 and 54. But we does not applied the method for \(k=15\), because the condition that the cyclotomic polynomial map to a (see Eq. 6) modulo the order of the twisted curve does not hold.
Aurifeuillean Curves-6
For the Aurifeuillean curves with \(k=6,\), the parameter a from Lemma2 is the following polynomial in x.
We set
and the LLL reduction of M yields
By multiplying the last row by 4 and setting \(h(z)=(4x+3)+z,\) \(h(a(x))=2(x+1)c(x) \mod {\tilde{n}}(x),\) with \(gcd(2x+2, r(x))=1.\) Hence, if \(P\in {E}( {\mathbb {F}}_{p(x)} ),\) then [h(a)]P is a multiple of [c]P and \([h(a)]P=[h(\psi )]P,\) so
\([3]P=[2]P+P,\) \([4x]P=[x]([2]([2]P)) ,\) then \([h(\psi )]P\) can be computed at the cost of 3 point additions, 2 point doubling, 1 scalar multiplication by the parameter x and 1 applications of \(\psi .\)
Aurifeuillean Curves-9
For the Aurifeuillean curves with \(k=9\), the parameter a is given by
Setting
and using LLL algorithm, we obtain the matrix with small coefficients:
Taking the 6th row of the above matrix when multiplied by 9 we defined the polynomial:
\(h(a(x))\equiv (9x^3+1)c(x) \mod \tilde{n}(x),\) with \(\gcd (r(x),9x^3+1)=1 .\) Hence if \(P\in {\tilde{E}}( {\mathbb {F}}_{p(x)^2} ),\) then [h(a)]P is a multiple of [c]P and \([h(a)]P=[h(\psi )]P.\)
That can be computed at the cost of 12 point additions,2 point doublings, 3 scalar multiplications by the parameter x and 11 applications of \(\psi\).
Aurifeuillean Curves-18
For Aurifeuillean curves with \(k=18,\) we follow the same process as above and obtain the polynomial:
with \(h(a(x))\equiv -3(9x^3+2)c(x) \mod \tilde{n}(x)\) and \(\gcd (r(x),-3(9x^3+2))=1 .\)
For every \(P\in {\tilde{E}}( {\mathbb {F}}_{p(x)^3} ) ,\)
That can be computed at the cost of 14 point additions, 2 point doublings, 4 scalar multiplications by the parameter x and 13 applications of \(\psi\).
Aurifeuillean Curves-27
For Aurifeuillean curves with \(k=27,\) the polynomial yields
with \(h(a(x))\equiv 81x^9c(x) \mod \tilde{n}(x)\) and \(\gcd (r(x),81x^9)=1 .\) For every \(P\in {\tilde{E}}( {\mathbb {F}}_{p(x)^9} ),\)
That can be computed at the cost of 33 point additions, 5 point doublings, 10 scalar multiplications by the parameter x and 94 applications of \(\psi\).
Aurifeuillean Curves-54
For Aurifeuillean curves with \(k=54,\) we obtain the following polynomial:
with \(h(a(x))\equiv 3x(81x^9+1)c(x) \mod \tilde{n}(x)\) and \(\gcd (r(x),3x(81x^9+1))=1.\) For every \(P\in {\tilde{E}}( {\mathbb {F}}_{p(x)^9} ),\)
That can be computed at the cost of 33A point additions, 4 point doublings, 9 scalar multiplications by the parameter x and 126 applications of \(\psi\).
Comparison with Others Pairing Friendly Elliptic Curves
In Table 2, we recapitulate the computational costs of hashing into \({\mathbb {G}}_{2}\) using Fuentes et al. method with Aurifeuillean curves, KSS curves, Freeman curve and BN curves. As with Scott et al.’s method for \(k=18\) hashing with KSS curve is more efficient than with Aurifeuillean curve as far as group operations is concerned.
In Table 3, we carry out the computational costs of hashing into \({\mathbb {G}}_{2}\) using the Scott et al.’s and Fuentes et al.’s methods with Aurifeuillean curves with embedding degrees \(k=6,9,18,27\) and \(k=54 .\) We observe that for the two first cases, the Fuentes et al.’s method is twice as fast than the one of Scott et al. method. For \(k=18,27\) and 54, the Fuentes et al.’s method determines a 9/4, 21/10 and 19/8-fold improvement respectively. Previous works show that is it more efficient to hashing into \({\mathbb {G}}_{2}\) using the Fuentes et al.’s method with BLS, BN, and KSS curves. Our results on Aurifeuillean curve also confirm this assertion.
Conclusion
This work investigated on an efficient hashing into \({\mathbb {G}}_{2}\) to on the recent Scott–Guillevic Aurifeuillean curves. We applied the two existing hashing methods namely the Scott et al. and Fuentes et al. methods. Our results show that hashing on Auriffeuillean curves with embedding degree \(k=6,9, 18, 27\) and 54 is more costly than hashing on the well known BLS curves, KSS curves, or BN curves for comparable embedding degrees. Our results also confirm that hashing into \({\mathbb {G}}_{2}\) using the Fuentes et al.’s method is more efficient that using the Scott et al. method as reported in the previous work on the literature.
References
Boneh D, Franklin MK. Identity-based encryption from the weil pairing. In: Advances in cryptology. 2001. p. 213–29. https://doi.org/10.1007/3-540-44647-8_13.
Boneh D, Lynn B, Shacham H. Short signatures from the weil pairing. J Cryptol. 2004;17(4):297–319. https://doi.org/10.1007/s00145-004-0314-9.
Joux A. A one round protocol for tripartite Diffie–Hellman. In: Algorithmic number theory. 2000. p. 385–94. https://doi.org/10.1007/10722028_23.
Silvermann JH. The Arithmetic of Elliptic Curves, Graduate Texts in Mathematics, vol. 106. New York: Springer; 1986.
Miller VS. The weil pairing, and its efficient calculation. J Cryptol. 2004;17(4):235–61. https://doi.org/10.1007/s00145-004-0315-8.
Blake IF, Murty VK, Xu G. Refinements of miller’s algorithm for computing the weil/tate pairing. J Algorithms 2006;58(2):134–149 . https://doi.org/10.1016/j.jalgor.2005.01.009. http://www.sciencedirect.com/science/article/pii/S0196677405000271.
Hess F, Smart NP, Vercauteren F. The eta pairing revisited. IEEE Trans Inf Theory. 2006;52(10):4595–602.https://doi.org/10.1109/TIT.2006.881709.
Lee E, Lee H, Park C. Efficient and generalized pairing computation on abelian varieties. IEEE Trans Inf Theory. 2009;55(4):1793–803.
Scott M, Benger N, Charlemagne M, Dominguez LJ, Kachisa EJ. Fast hashing to \({\mathbb{G}} _{2}\) on pairing-friendly curves. In: Pairing-based cryptography—pairing. 2009. p. 102–13. https://doi.org/10.1007/978-3-642-03298-1_8.
Castañeda LF, Knapp E, Rodríguez-Henríquez F. Faster hashing to \({\mathbb{G}}_{2}\). In: Selected areas in cryptography. 2011. p. 412–30. https://doi.org/10.1007/978-3-642-28496-0_25.
Budroni A, Pintore F. Hashing to G2 on BLS pairing-friendly curves. ACM Commun Comput Algebra. 2018;52(3):63–6. https://doi.org/10.1145/3313880.3313884.
Scott M, Guillevic A. A new family of pairing-friendly elliptic curves. 2018. p. 43–57. https://doi.org/10.1007/978-3-030-05153-2_2.
Olivos J. On vectorial addition chains. J Algorithms. 1981;2:13–21.
Galbraith S, Scott M. Exponentiation in pairing-friendly groups using homomorphisms. In: Pairing-based cryptography—pairing. Berlin: Springer; 2008. p. 211–24.
Paulus S. Lattice basis reduction in function fields. In: Buhler JP, editor. Algorithmic number theory. Berlin: Springer; 1998. p. 567–75.
Mrabet NE, Joye M. Guide to pairing-based cryptography. Chapman and Hall/CRC cryptography and network security 2016.
Acknowledgements
The authors deeply thank Aurore Guillevic who provided a magma code for obtaining the coefficient matrix representation of the polynomial matrix in Theorem 4. Indeed She helped to obtain matrices with rational coefficients instead of polynomial coefficients to which the application of the LLL algorithm was infeasible for high embedding degrees 27 and 54. The authors also thank the reviewers for their comments which helped to improve the work.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
On behalf of all authors, the corresponding author states that there is no conflict of interest.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendices
Appendix A: Aurifeuillean Curves-15
For any rational \(P\in {\tilde{E}}( {\mathbb {F}}_{p^5} ),\) the hash map obtained in (3) yields \([c(x)]P=[\lambda _{0}]P+\sum _{i=1}^{7}[\lambda _{i}]\psi ^i(P)\) where:
Appendix B: Aurifeuillean Curves-27
For any rational \(P\in {\tilde{E}}( {\mathbb {F}}_{p^9} ),\) the hash map obtained in (4) yields \([c(x)]P=[\lambda _{0}]P+\sum _{i=1}^{16}[\lambda _{i}]\psi ^i(P)\) where:
Appendix C: Aurifeuillean Curves-54
The application [c(x)] map \(P\in {\tilde{E}}( {\mathbb {F}}_{p^9} ),\) to (5) which is \([\lambda _{0}]P+\sum _{i=1}^{10}[\lambda _{i}]\psi ^i(P)\) an element of \({\mathbb {G}}_{2} ,\) where:
Rights and permissions
About this article
Cite this article
Fouotsa, E., Azebaze Guimagang, L. Fast Hashing to \({\mathbb {G}}_{2}\) on Aurifeuillean Pairing-Friendly Elliptic Curves. SN COMPUT. SCI. 1, 51 (2020). https://doi.org/10.1007/s42979-019-0053-5
Received:
Accepted:
Published:
DOI: https://doi.org/10.1007/s42979-019-0053-5