Chapter status: 👷 in progress 👷

TODO:

Pairings

Pairings have allowed a great number of new applications in cryptography. They were first used by Menezes, Okamoto, and Vanstone [MOV91] to break the discrete logarithm problem in supersingular elliptic curves (this is the so-called MOV attack). Later, they were used constructively by Joux [Jou00] to obtain a tripartite Diffie-Hellman protocol and by Boneh and Franklin [BF03] to obtain an identity-based encryption scheme. This got the three of them the Gödel prize in 2013.

We will start with the abstract definition of pairing groups and then we will see how to construct such groups from specific elliptic curves.

Contents

Abstract Definition

Let and be three cyclic groups of prime order For reasons that will become clear later, we will denote and additively and multiplicatively (in particular, and 's identity elements are denoted while 's identity element is denoted A pairing is an efficiently computable function which satisfies two properties:

  • non-degeneracy: and implies
  • bilinearity: for every and and for every and

Note that bilinearity implies the (more useful in practice) property that for every and

Non-degeneracy has many other definitions (all equivalent assuming bilinearity), such as:

  • is not the constant function
  • if and are generators of respectively and then is a generator of

Constructing groups admitting a pairing is not very hard. For example, take (the group of integers mod equipped with addition), take for any cyclic group of order let be a generator of and define

However, for being useful from a cryptographic point of view, we need the discrete logarithm problem to be hard in the three groups and (In the example above, while it may be hard in it is certainly not in and ) This is where elliptic curves come to the rescue.

Some more vocabulary: A pairing is said symmetric when and asymmetric when As we will see, both types can be constructed from elliptic curves. Historically, the first proposed constructions were symmetric, but nowadays the asymmetric type prevails for efficiency reasons. It is an open problem to construct a pairing such that and the discrete logarithm problem is (conjectured) hard in

Further Resources

Here are some good resources about pairing-friendly elliptic curves: