Versions in this module Expand all Collapse all v0 v0.10.4 Mar 3, 2023 v0.10.3 Dec 14, 2022 v0.10.2 Oct 19, 2022 v0.10.1 Aug 10, 2022 v0.10.0 Aug 2, 2022 Changes in this version type G1 + func (g *G1) ToCompressed(p *PointG1) []byte type G2 + func (g *G2) ToCompressed(p *PointG2) []byte v0.9.0 Jun 15, 2021 v0.8.8 Mar 18, 2021 v0.8.7 Jan 5, 2021 v0.8.6 Dec 28, 2020 v0.8.5 Dec 16, 2020 v0.8.4 Dec 4, 2020 v0.8.3 Dec 2, 2020 v0.8.2 Nov 25, 2020 v0.8.1 Oct 20, 2020 v0.8.0 Oct 12, 2020 Changes in this version + var Order = q + type E = fe12 + func (e *E) IsOne() bool + func (e *E) One() *E + func (e *E) Set(e2 *E) *E + func (g *E) Equal(g2 *E) bool + type Engine struct + G1 *G1 + G2 *G2 + func NewEngine() *Engine + func (e *Engine) AddPair(g1 *PointG1, g2 *PointG2) *Engine + func (e *Engine) AddPairInv(g1 *PointG1, g2 *PointG2) *Engine + func (e *Engine) Check() bool + func (e *Engine) GT() *GT + func (e *Engine) Reset() *Engine + func (e *Engine) Result() *E + type G1 struct + func NewG1() *G1 + func (g *G1) Add(r, p1, p2 *PointG1) *PointG1 + func (g *G1) Affine(p *PointG1) *PointG1 + func (g *G1) Double(r, p *PointG1) *PointG1 + func (g *G1) Equal(p1, p2 *PointG1) bool + func (g *G1) FromBytes(in []byte) (*PointG1, error) + func (g *G1) FromCompressed(compressed []byte) (*PointG1, error) + func (g *G1) HashToCurveFT(msg, domain []byte) (*PointG1, error) + func (g *G1) InCorrectSubgroup(p *PointG1) bool + func (g *G1) IsAffine(p *PointG1) bool + func (g *G1) IsOnCurve(p *PointG1) bool + func (g *G1) IsZero(p *PointG1) bool + func (g *G1) MapToPointFT(in []byte) (*PointG1, error) + func (g *G1) MapToPointTI(in []byte) (*PointG1, error) + func (g *G1) MulScalar(c, p *PointG1, e *big.Int) *PointG1 + func (g *G1) MultiExp(r *PointG1, points []*PointG1, powers []*big.Int) (*PointG1, error) + func (g *G1) Neg(r, p *PointG1) *PointG1 + func (g *G1) New() *PointG1 + func (g *G1) One() *PointG1 + func (g *G1) Q() *big.Int + func (g *G1) Sub(c, a, b *PointG1) *PointG1 + func (g *G1) ToBytes(p *PointG1) []byte + func (g *G1) Zero() *PointG1 + type G2 struct + func NewG2() *G2 + func (g *G2) Add(r, p1, p2 *PointG2) *PointG2 + func (g *G2) Affine(p *PointG2) *PointG2 + func (g *G2) Double(r, p *PointG2) *PointG2 + func (g *G2) Equal(p1, p2 *PointG2) bool + func (g *G2) FromBytes(in []byte) (*PointG2, error) + func (g *G2) FromCompressed(compressed []byte) (*PointG2, error) + func (g *G2) InCorrectSubgroup(p *PointG2) bool + func (g *G2) IsAffine(p *PointG2) bool + func (g *G2) IsOnCurve(p *PointG2) bool + func (g *G2) IsZero(p *PointG2) bool + func (g *G2) MapToPointTI(in []byte) (*PointG2, error) + func (g *G2) MulScalar(c, p *PointG2, e *big.Int) *PointG2 + func (g *G2) MultiExp(r *PointG2, points []*PointG2, powers []*big.Int) (*PointG2, error) + func (g *G2) Neg(r, p *PointG2) *PointG2 + func (g *G2) New() *PointG2 + func (g *G2) One() *PointG2 + func (g *G2) Q() *big.Int + func (g *G2) Sub(c, a, b *PointG2) *PointG2 + func (g *G2) ToBytes(p *PointG2) []byte + func (g *G2) Zero() *PointG2 + type GT struct + func NewGT() *GT + func (g *GT) Add(c, a, b *E) + func (g *GT) Exp(c, a *E, s *big.Int) + func (g *GT) FromBytes(in []byte) (*E, error) + func (g *GT) Inverse(c, a *E) + func (g *GT) Mul(c, a, b *E) + func (g *GT) New() *E + func (g *GT) Q() *big.Int + func (g *GT) Square(c, a *E) + func (g *GT) Sub(c, a, b *E) + func (g *GT) ToBytes(e *E) []byte + type PointG1 [3]fe + func (p *PointG1) Set(p2 *PointG1) *PointG1 + func (p *PointG1) Zero() *PointG1 + type PointG2 [3]fe2 + func (p *PointG2) Set(p2 *PointG2) *PointG2 + func (p *PointG2) Zero() *PointG2