Class OptimalAtePairing<E1,E2,ET>

java.lang.Object
dk.jonaslindstrom.ruffini.elliptic.algorithms.OptimalAtePairing<E1,E2,ET>

public class OptimalAtePairing<E1,E2,ET> extends Object
Compute the optimal Ate pairing. Methodology is taken from Appendix A in draft-irtf-cfrg-pairing-friendly-curves-11.
  • Constructor Details

    • OptimalAtePairing

      public OptimalAtePairing(java.util.function.Function<E1,E2> g1embedding, ShortWeierstrassCurveAffine<E2,?> curve2, java.util.function.Function<E2,ET> g2embedding, Field<ET> ft, java.util.function.Function<AffinePoint<E1>,SamePair<ET>> twist, BigInteger p, BigInteger r, int k)
      Parameters:
      g1embedding - Embedding from F1 to F2.
      curve2 - Elliptic curve over F2.
      g2embedding - Embedding from F2 to FT.
      ft - The field extension FT = F1k. Note that the target group GT is the multiplicative group of FT.
      twist - A function computing the isomorphism from E1 to the twist E' over FT.
      p - The characteristic of the fields.
      r - The order of the groups G1, G2 and GT.
      k - The embedding degree of the elliptic curve E1 over F1, eg. the smallest k such that r | pk-1.
  • Method Details