# Pairings

Pairings, or bilinear pairings or Weil pairings, are mathematical operations defined on certain types of elliptic curves. Pairings have important applications in modern cryptography and enable various cryptographic protocols and constructions. Generally, a pairing is a bilinear map that takes two points from different groups and maps them to a target group. The bilinearity property means that the pairing operation satisfies specific algebraic properties, such as linearity and distributivity. Pairings are typically defined on elliptic curves with special properties, such as those that are pairing-friendly or provide a suitable algebraic structure for efficient computation of pairings. Pairing-friendly curves are carefully chosen curves that allow for efficient and secure implementation of pairings.
Some key properties and applications of pairings include:
1. 1.
Bilinearity: Pairings exhibit a bilinear property, meaning they preserve the properties of addition and scalar multiplication in the groups involved. This property allows for computations involving pairings to be distributed across different groups and enables the construction of complex cryptographic protocols.
2. 2.
Cryptographic Constructions: Pairings are used in various cryptographic constructions and protocols, including identity-based encryption, attribute-based encryption, cryptographic accumulators, and non-interactive zero-knowledge proofs. Pairings provide the necessary mathematical operations to achieve desired security properties in these applications.
3. 3.
Homomorphic Properties: Some pairings, such as those on specific curves like the BLS12-381 curve, exhibit homomorphic properties. Homomorphic pairings enable computation on encrypted or encoded data without decrypting or revealing the underlying values. This property is particularly useful in privacy-preserving computations and protocols.
4. 4.
Efficiency and Security: Pairings can be efficiently computed on pairing-friendly curves, which enables the practical implementation of cryptographic protocols. Pairings are based on hard mathematical problems, such as the decisional Diffie-Hellman problem or the bilinear Diffie-Hellman problem, providing a foundation for cryptographic security. Pairings have revolutionized many areas of modern cryptography by enabling advanced cryptographic primitives and protocols. They provide a versatile and powerful toolset for achieving security, privacy, and efficient computation in various cryptographic applications.
Mathematically speaking, a pairing is a bilinear mapping as follows:
$e : G_1 × G_2 → G_T .$
It is this bilinearity property that makes pairings such a powerful primitive in cryptography. Let
$\mathbb{F}_{q^k}$
be a finite extension of
$\mathbb{F}p$
with
$k \geq 1$
. The groups
$\mathbb{G}_1$
and
$\mathbb{G}2$
are defined in
$E(\mathbb{F}_{q^k})$
and the target group
$\mathbb{G}_T$
is defined in the multiplicative group
$\mathbb{F}^*_{q^k}$
, so we usually write
$\mathbb{G}_1$
and
$\mathbb{G}_2$
$\mathbb{G}_T$
$P, P^{\prime} ;\in \mathbb{G}_1$
$Q,Q^{\prime} ;\in \mathbb{G}_2$
$e$
$e(P + P^{\prime},Q) = e(P,Q) · e(P^{\prime},Q),$
$e(P,Q + Q^{\prime}) = e(P,Q) · e(P,Q^{\prime})$