public class BasicBilinearMap extends java.lang.Object implements BilinearMap
BilinearMapImpl wrapper where operations are evaluated naively, i.e. operation by operation.| Modifier and Type | Field and Description |
|---|---|
protected BasicGroup |
g1 |
protected BasicGroup |
g2 |
protected BasicGroup |
gt |
protected BilinearMapImpl |
impl |
| Constructor and Description |
|---|
BasicBilinearMap(BasicGroup g1,
BasicGroup g2,
BasicGroup gt,
BilinearMapImpl impl) |
| Modifier and Type | Method and Description |
|---|---|
BasicGroupElement |
apply(GroupElement g1,
GroupElement g2,
java.math.BigInteger exponent)
Computes \(e(g1,g2)^\text{exponent}\).
|
Group |
getG1()
Returns the source group G1 associated with this bilinear map.
|
Group |
getG2()
Returns the source group G2 associated with this bilinear map.
|
Group |
getGT()
Returns the target group GT associated with this bilinear map.
|
boolean |
isSymmetric()
Returns true if
e(g,h).equals(e(h,g)) for all g, h. |
java.lang.String |
toString() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitapply, apply, apply, applyExpr, applyExpr, applyExpr, applyExpr, innerProductprotected BasicGroup g1
protected BasicGroup g2
protected BasicGroup gt
protected BilinearMapImpl impl
public BasicBilinearMap(BasicGroup g1, BasicGroup g2, BasicGroup gt, BilinearMapImpl impl)
public Group getG1()
BilinearMapgetG1 in interface BilinearMappublic Group getG2()
BilinearMapgetG2 in interface BilinearMappublic Group getGT()
BilinearMapgetGT in interface BilinearMappublic BasicGroupElement apply(GroupElement g1, GroupElement g2, java.math.BigInteger exponent)
BilinearMap
Depending on the bilinear map and the involved groups, this may be more efficiently implemented than computing
it directly via apply(g1,g2).pow(exponent).
For example, implementations should do exponentiation in the group with the cheapest group operation.
apply in interface BilinearMapg1 - left hand side argument for the pairing functiong2 - right hand side argument for the pairing functionexponent - the exponent to apply to the result of the pairingpublic boolean isSymmetric()
BilinearMape(g,h).equals(e(h,g)) for all g, h.isSymmetric in interface BilinearMappublic java.lang.String toString()
toString in class java.lang.Object