Questions about bilinear pairing operations and how it works.

23 Views Asked by At

I am a computer science student. I am trying to implement identity-based data integrity using pairing based cryptography, and met with various formulas. I'm new to prime fields and bilinear maps, so I am having difficulties translating this formula into codes. I have several questions about this branch of field.

  1. Is pairing different one to another? I read about Tate pairing, and some of it mentioning elliptical curves, which confuses me even more. What I have right now is $e:G_1 \times G_1 \rightarrow G_2$, what type is this pairing?
  2. Is there any resource that can simply explain what pairing actually do on the pairing operation?
  3. I was stuck with a formula, more or less looks like this (from the journal I'm linking): $\begin{align*} e(s{k^{\prime }_{ID}},g)=({g_{1}},{g_{2}}) \cdot e\left({\mu ^{\prime }\prod \nolimits _{j = 1}^{l} {\mu _{j}^{I{D_{j}}}},s{k^{\prime \prime }_{ID}}}\right).\!\! \\\tag{1}\end{align*}$ I finished the pairing of $e(s{k^{\prime }_{ID}},g)$ and $e\left({\mu ^{\prime }\prod \nolimits _{j = 1}^{l} {\mu _{j}^{I{D_{j}}}},s{k^{\prime \prime }_{ID}}}\right)$, now how to operate the latter with $(g_1, g_2)$ using dot? I was using this library to do the operation by multiplying normally and got an error. Is dot product different from multiplying? What should I do?

Thank you, sorry if this is too much for one question!