Pairing

From Wikipedia, the free encyclopedia
(Redirected from Perfect pairing)
Jump to navigation Jump to search

In mathematics, a pairing is an R-bilinear map from the Cartesian product of two R-modules, where the underlying ring R is commutative.

Definition

[edit | edit source]

Let R be a commutative ring with unit, and let M, N and L be R-modules.

A pairing is any R-bilinear map e:M×NL. That is, it satisfies

e(rm,n)=e(m,rn)=re(m,n),
e(m1+m2,n)=e(m1,n)+e(m2,n) and e(m,n1+n2)=e(m,n1)+e(m,n2)

for any rR and any m,m1,m2M and any n,n1,n2N. Equivalently, a pairing is an R-linear map

MRNL

where MRN denotes the tensor product of M and N.

A pairing can also be considered as an R-linear map Φ:MHomR(N,L), which matches the first definition by setting Φ(m)(n):=e(m,n).

A pairing is called perfect if the above map Φ is an isomorphism of R-modules and the other evaluation map Φ:NHomR(M,L) is an isomorphism also. In nice cases, it suffices that just one of these be an isomorphism, e.g. when R is a field, M,N are finite dimensional vector spaces and L=R.

A pairing is called non-degenerate on the right if for the above map we have that e(m,n)=0 for all m implies n=0; similarly, e is called non-degenerate on the left if e(m,n)=0 for all n implies m=0.

A pairing is called alternating if N=M and e(m,m)=0 for all m. In particular, this implies e(m+n,m+n)=0, while bilinearity shows e(m+n,m+n)=e(m,m)+e(m,n)+e(n,m)+e(n,n)=e(m,n)+e(n,m). Thus, for an alternating pairing, e(m,n)=e(n,m).

Examples

[edit | edit source]

Any scalar product on a real vector space V is a pairing (set M = N = V, R = R in the above definitions).

The determinant map (2 × 2 matrices over k) → k can be seen as a pairing k2×k2k.

The Hopf map S3S2 written as h:S2×S2S2 is an example of a pairing. For instance, Hardie et al.[1] present an explicit construction of the map using poset models.

Pairings in cryptography

[edit | edit source]

In cryptography, often the following specialized definition is used:[2]

Let G1,G2 be additive groups and GT a multiplicative group, all of prime order p. Let PG1,QG2 be generators of G1 and G2 respectively.

A pairing is a map: e:G1×G2GT

for which the following holds:

  1. Bilinearity: a,b: e(aP,bQ)=e(P,Q)ab
  2. Non-degeneracy: e(P,Q)1
  3. For practical purposes, e has to be computable in an efficient manner

Note that it is also common in cryptographic literature for all groups to be written in multiplicative notation.

In cases when G1=G2=G, the pairing is called symmetric. As G is cyclic, the map e will be commutative; that is, for any P,QG, we have e(P,Q)=e(Q,P). This is because for a generator gG, there exist integers p, q such that P=gp and Q=gq. Therefore e(P,Q)=e(gp,gq)=e(g,g)pq=e(gq,gp)=e(Q,P).

The Weil pairing is an important concept in elliptic curve cryptography; e.g., it may be used to attack certain elliptic curves (see MOV attack). It and other pairings have been used to develop identity-based encryption schemes.

Slightly different usages of the notion of pairing

[edit | edit source]

Scalar products on complex vector spaces are sometimes called pairings, although they are not bilinear. For example, in representation theory, one has a scalar product on the characters of complex representations of a finite group which is frequently called character pairing.

See also

[edit | edit source]

References

[edit | edit source]
  1. ^ Hardie K.A.1; Vermeulen J.J.C.; Witbooi P.J., A nontrivial pairing of finite T0 spaces, Topology and its Applications, Volume 125, Number 3, 20 November 2002 , pp. 533–542.
  2. ^ Dan Boneh, Matthew K. Franklin, Identity-Based Encryption from the Weil Pairing, SIAM J. of Computing, Vol. 32, No. 3, pp. 586–615, 2003.
[edit | edit source]