# Efficient Algorithm for bilinear pairing on ECC

Bilinear Pairing in the elliptic curves is a wonderful mathematical mapping which is usually defined by the map $e:G_{1} \times G_{1} \rightarrow G_2$ for some groups of $G_{1}$ and $G_{2}$. For better understanding of pairing and its properties see the wikipedia.

Question1: Are there any efficient bilinear pairing or efficient pairing algorithms? If so, is this algorithm applicable to all kind of pairings, I mean is it a general approach for efficiently computing any pairing or just an algorithm specific pairing? Meanwhile, I am familiar with Weil and Tate pairing, but efficiency of implementation and performance is my concern.

Question2: Is there any article in which the efficient computability of pairing-based approaches are discussed? Or may be an article in which a comparison between pairing based approaches and discrete logarithm based approaches is discussed.

I have read some pairing-based approaches for group key exchange in which there is no clue on how efficient they are and also there is no comparison of this kind with their previous algorithms. So I doubted may be there is a nice article on this which has paved the way.

I realize this does not do justice to the breadth of your questions but as a starting reference, you may be interested in the benchmark times for various pairings implemented in the pairing-based cryptography (PBC) library:

http://crypto.stanford.edu/pbc/times.html

They reference RSA decryption to give a sense of time relative to a standard operation (although it isn't as useful as knowing a DL or ECC-DL operation). The main developer, Ben Lynn, also did his PhD on PBC implementations—the dissertation may answer some of your questions.