You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Let define a group $(\mathbb{G}, \circ, O, G, q)$ where:
$\circ$ is the binary group operation,
$O$ is the identity element,
$G$ is the group generator,
$q$ is the group order.
Given $\mathbb{G_i}, i \in \{1, \dots, n\}$, each denoting the group $(\mathbb{G}_i, \circ_i, O_i, G_i, q)$ and the target group $(\mathbb{G}_t, \circ_t, O_t, G_t, q)$, all groups in which the discrete log problem is hard, a multilinear map is a function $f: \mathbb{G_1} \times \dots \times \mathbb{G_n} \rightarrow \mathbb{G}_t$ where:
for any integers $(a_1, \dots, a_n) \in \mathbb{Z^n_q}$,
$f$ Does Not Degenerate
The generator of the target group is the application of the function $f$ to all generators of the source groups and is not the identity element:
$f$ is efficient to compute. This is the most difficult condition to fulfill. Intensive research is going on for a special form of multilinear maps where $n=2$ is called bilinear maps or pairings.
Bilinear Maps
Given $(\mathbb{G}_1, \circ_1, O_1, G_1, q)$ and $(\mathbb{G}_2, \circ_2, O_2, G_2, q)$ in which the discrete log problem is hard, and the target group $(\mathbb{G}_t, \circ_t, O_t, G_t, q)$, a bilinear map is a function $f: \mathbb{G_1} \times \mathbb{G_2} \rightarrow \mathbb{G}_t$ where:
for any pair integers ($a_1, a_2) \in \mathbb{Z_q}^2$,
The DLP is hard in $\mathbb{G_1}$ if knowing $A_1$, it is hard to find $a_1$ such that $A_1 = a_1G_1$.
Let $A_1=a_1G_1$ and $f(A_1, G_2) = a_1G_t$, if we can compute $a_1$ knowing $a_1G_t$ then we can compute $a_1$ knowing $A_1$. This means if we solve DLP in the target group, we can solve DLP in any of the source groups.
Bilinear DHP (BDHP)
Recall that with only two secret scalars $(a, b)$ and the public images $aG_1, bG_1, aG_2, bG_2$, we can not define DHP on $\mathbb{G_t}$, as we $have $f(aG_1, bG2) = (a \times b)G_t = (b \times a)G_t = f(bG_1, aG_2)$.
If we add another secret scalar scalar $c$, so that we also publish $cG_1$ and $cG_2$, then we can make it challenging to compute $(a \times b \times c)G_t$. Recall that using $f$, we can compute $(a \times b)G_t, (a \times c)G_t \text{ and } (b \times c)G_t$.
Only the owners of any of the secret scalars $a, b \text{ or } c$ can compute the common secret element $(a \times b \times c)G_t$.
Decisional DHP
Given secret scalars $a, b, c$, and public images $aG_1, bG_1, cG_1$, the DDHP wants to decide if $cG_1 = (a \times b)G_1$ meaning if $c = a \times b$.
This is, even though we can not compute $(a \times b)G_1$, we can assume that $cG_1 = (a \times b)G_1$ if we can verify that $f(aG_1 \circ_1 bG_1, G_2) \equiv f(cG_1, G_2)$.
Therefore, the decisional DHP can be efficiently solved using multilinear maps.
Pairings on Elliptic Curves
Bilinear maps are also known as pairings. Practically:
Let $p$ be a prime, $n$ be an integer and $(\mathbb{F}_{p^n}, +, \times)$ be :
a field over integer $\mathbb{F}{p^n} == \mathbb{Z}{p^n}$
with characteristic $p$, generally a prime,
with extension $n \in \mathbb{Z}$,
where $p^n$ is the field order.
Let $(\mathbb{E_{(\mathbb{F}_{p^n})}}, \circ, O, G, q)$ be the definition of an elliptic curve group where:
$\circ$ is the points addition operation defined above, including the additive inverse and the identity element at $O$,
$G$ is the generator point,
$q$ is the order of the group generator $G$, or the number of points on curve $\mathbb{E}$ that can be generated from $G$,
meaning that $qG = O$
meaning that all operations on the scalar $n$ such that $nG \in \mathbb{E}$ are performed modulo $q$
Coordinates of point $P = (x_p, y_p)$ are elements of $\mathbb{F_{p^n}}$. This means all operations on $x_p, y_p$ are done modulo $p^n$.
Recall that $q \le p^n$
Let
The elliptic curve group $(\mathbb{G_{1(\mathbb{F}_{p^n})}}, +, O_1, G_1, q_1)$ be the first source group,
The elliptic curve group $(\mathbb{G_{2(\mathbb{F}_{p^n})}}, +, O_2, G_2, q_2)$ be the second source group,
The integer field $\mathbb{F_{p^n}}$ be the target group $\mathbb{G_{t(\mathbb{F_{p^n})}}}$
If $a, b, c \in \mathbb{F_{p^n}}$ are secret numbers with corresponding public images $aG_1, bG_1, cG_1$, then we can leverage those public information to check if $c = a \times b$, using a pairings function $f: \mathbb{G_1} \times \mathbb{G_2} \rightarrow G_t$.
This is, even though we can not compute $(a \times b)G_1$, we can conclude that $cG_1 = (a \times b)G_1$ if we can verify that $f(aG_1 \circ_1 bG_1, G_2) \equiv f(cG_1, G_2)$. Reducing the problem to 1 point operation and 2 pairings operations.
Therefore, if we can define a computable pairing function on a curve, then we solve the DDHP on that curve. Note that the Computational DHP and the DLP remain hard.
Pairing for Constraint Systems
Checking Linear Constraints
When DLP is hard solve on a curve $(\mathbb{G_{(\mathbb{F}_{p^n})}}, \circ, O, G, q)$, we can use it to check linear constraints between undisclosed numbers.
If $a, b, c \in \mathbb{F_{p^n}}$ are secret numbers with corresponding public images $A=aG_, B=bG, C=cG$,
then given three know integer $n,m,k$, we can check the constraint
$$
(n \times a) + (m \times b) = k \times c
$$
by just verifying
$$
nA \circ mB = kC
$$
and without having to disclose the secret scalars $a, b, c$.
Quadratic Constraints
When DLP is hard solve on a curve $(\mathbb{G_{(\mathbb{F_{p^n}})}}, \circ, O, G, q)$, we can use it to check linear constraints between undisclosed numbers, but not quadratic constraints.
If $a, b, c \in \mathbb{F_{p^n}}$ are secret numbers with corresponding public images $A=aG_, B=bG, C=cG$, it is difficult to check
$$
(a \times b) = c
$$
Using a pairing function like $f$ defined above, open room for the validation of quadratic constraints.
Cryptographic Applications
The ability to use elliptic curves and pairings to check linear and quadratic constraints on integers open room for the construction of cryptographic signature schemes, zero knowledge quadratic arithmetic programs and many more.