title | tags | ||||||
---|---|---|---|---|---|---|---|
39. Weil Pairing over Extension Fields |
|
In this tutorial, we will discuss the Weil pairing over extension fields. This concept involves two important ideas: embedding degree and the MOV algorithm. Understanding these concepts will deepen your understanding of bilinear pairings and elliptic curves.
When constructing pairings, we rely on torsion groups that have a special property. For an elliptic curve
In other words, we need to find a suitable value for
Let's say the order of the elliptic curve
According to Fermat's Little Theorem, we have
Let's take the elliptic curve
Now let's calculate the embedding degree
Therefore, for the elliptic curve
The MOV algorithm is a method to transform the elliptic curve discrete logarithm problem (ECDLP) on an elliptic curve into the discrete logarithm problem (DLP) on a finite field. Its purpose is to leverage the relative ease of solving the discrete logarithm problem on finite fields to attack the more challenging discrete logarithm problem on elliptic curves.
The core idea of the MOV algorithm is to use pairings on elliptic curves to transform the discrete logarithm problem
Given a base point
-
Compute the Rank of the Group: Calculate the number of group elements
$N$ on the elliptic curve$E(F_p)$ . -
Compute the Order of the Point: Calculate the order
$m$ of the point$P$ , where$m | N$ . Since$Q = xP$ , the order of$Q$ is also$m$ . -
Compute the Embedding Degree: Find the smallest positive integer
$k$ that satisfies$m | (p^k - 1)$ , which is the embedding degree. -
Choose Points T and T': Select a random point
$T \in F_{p^k}$ such that$T \notin F_{p}$ . Then compute the point$T' = (N/m)T$ , where the order of$T'$ is$m$ . - Construct the Pairing: Use the Weil pairing (or Tate pairing) to construct a bilinear map $e: E[m] \times E[m] \rightarrow \mathbb{F}{p^k}^*$ on the elliptic curve $E(\mathbb{F}{p^k})$.
- Transform the Problem: Compute the pairings
-
Solve the DLP: Solve the DLP problem
$\beta = \alpha^x$ in$\mathbb{F}_{p^k}^*$ . -
Solve the ECDLP: Based on the bilinearity property, the obtained value of
$x$ from the previous step is the solution to$Q = xP$ . In other words,$\beta = e_m(Q, T') = e_m(xP, T') = e_m(P, T')^x = \alpha ^x$ .
The MOV algorithm reveals that if the embedding degree
However, if the embedding degree alt_bn128
and bls12_381
, used for pairing in Ethereum, have embedding degrees of 12, which provide a good balance between security and pairing efficiency.
In this tutorial, we have discussed the Weil pairing over extension fields and related concepts. The embedding degree is an important parameter that specifies the extension field required for the Weil pairing, and it affects the security and efficiency of elliptic curve applications. The MOV algorithm provides a way to exploit the weakness of elliptic curves with low embedding degrees by transforming the elliptic curve discrete logarithm problem (ECDLP) into the relatively easier discrete logarithm problem (DLP) on a finite field. When selecting elliptic curves, we need to consider both security and pairing efficiency, and choose elliptic curves with moderate embedding degrees.