Versions in this module Expand all Collapse all v0 v0.3.2 Apr 28, 2020 v0.3.1 Apr 27, 2020 v0.3.0 Apr 27, 2020 Changes in this version + var Domain = []byte("BLS_SIG_BLS12381G2_XMD:SHA-256_SSWU_RO_NUL_") type G1 + func (g *G1) EncodeToPoint(msg, domain []byte) (*PointG1, error) + func (g *G1) HashToCurve(msg, domain []byte) (*PointG1, error) + func (g *G1) MapToCurve(in []byte) (*PointG1, error) type G2 + func (g *G2) EncodeToCurve(msg, domain []byte) (*PointG2, error) + func (g *G2) HashToCurve(msg, domain []byte) (*PointG2, error) v0.2.0 Apr 9, 2020 Changes in this version + type E = fe12 + 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 + func (g *G1) ClearCofactor(p *PointG1) + func (g *G1) FromBytes(in []byte) (*PointG1, error) + func (g *G1) InCorrectSubgroup(p *PointG1) bool + func (g *G1) MapToPointSWU(in []byte) (*PointG1, error) + func (g *G1) MapToPointTI(in []byte) (*PointG1, error) + func (g *G1) MultiExp(r *PointG1, points []*PointG1, powers []*big.Int) (*PointG1, error) + func (g *G1) New() *PointG1 + func (g *G1) Q() *big.Int + func (g *G1) ToBytes(p *PointG1) []byte type G2 + func (g *G2) ClearCofactor(p *PointG2) + func (g *G2) FromBytes(in []byte) (*PointG2, error) + func (g *G2) InCorrectSubgroup(p *PointG2) bool + func (g *G2) MapToPointSWU(in []byte) (*PointG2, error) + func (g *G2) MapToPointTI(in []byte) (*PointG2, error) + func (g *G2) MultiExp(r *PointG2, points []*PointG2, powers []*big.Int) (*PointG2, error) + func (g *G2) New() *PointG2 + func (g *G2) Q() *big.Int + func (g *G2) ToBytes(p *PointG2) []byte + type GT struct + func NewGT() *GT + func (g *GT) Add(c, a, b *E) + func (g *GT) Copy(a, b *E) + func (g *GT) Equal(a, b *E) bool + 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) IsOne(e *E) bool + func (g *GT) IsValid(e *E) bool + func (g *GT) Mul(c, a, b *E) + func (g *GT) New() *E + func (g *GT) One() *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 v0.1.0 Mar 26, 2020 Changes in this version + var G1One = g1One + var G2One = g2One + func NewBLS12381Suite() pairing.Suite + func NewGroupG1() kyber.Group + func NewGroupG2() kyber.Group + func NewGroupGT() kyber.Group + func NewKyberScalar() kyber.Scalar + type BLSPairingEngine struct + G1 *G1 + G2 *G2 + func NewBLSPairingEngine() *BLSPairingEngine + func (e *BLSPairingEngine) PairingCheck(points []PointG1, twistPoints []PointG2) bool + type G1 struct + func NewG1(f *fp) *G1 + func (g *G1) Add(r, p1, p2 *PointG1) *PointG1 + func (g *G1) Affine(p *PointG1) + func (g *G1) Copy(dst *PointG1, src *PointG1) *PointG1 + func (g *G1) Double(r, p *PointG1) *PointG1 + func (g *G1) Equal(p1, p2 *PointG1) bool + func (g *G1) FromCompressed(compressed []byte) (*PointG1, error) + func (g *G1) FromUncompressed(uncompressed []byte) (*PointG1, error) + func (g *G1) IsAffine(p *PointG1) bool + func (g *G1) IsOnCurve(p *PointG1) bool + func (g *G1) IsZero(p *PointG1) bool + func (g *G1) MapToPoint(in []byte) *PointG1 + func (g *G1) MulByCofactor(c, p *PointG1) + func (g *G1) MulScalar(c, p *PointG1, e *big.Int) *PointG1 + func (g *G1) Neg(r, p *PointG1) *PointG1 + func (g *G1) NegativeOne() *PointG1 + func (g *G1) One() *PointG1 + func (g *G1) Sub(c, a, b *PointG1) *PointG1 + func (g *G1) SubUnsafe(c, a, b *PointG1) *PointG1 + func (g *G1) ToCompressed(p *PointG1) []byte + func (g *G1) ToUncompressed(p *PointG1) []byte + func (g *G1) Zero() *PointG1 + type G2 struct + func NewG2(f *fp2) *G2 + func (g *G2) Add(r, p1, p2 *PointG2) *PointG2 + func (g *G2) Affine(p *PointG2) + func (g *G2) Copy(dst *PointG2, src *PointG2) *PointG2 + func (g *G2) Double(r, p *PointG2) *PointG2 + func (g *G2) Equal(p1, p2 *PointG2) bool + func (g *G2) FromCompressed(compressed []byte) (*PointG2, error) + func (g *G2) FromUncompressed(uncompressed []byte) (*PointG2, error) + func (g *G2) IsAffine(p *PointG2) bool + func (g *G2) IsOnCurve(p *PointG2) bool + func (g *G2) IsZero(p *PointG2) bool + func (g *G2) MapToPoint(in []byte) *PointG2 + func (g *G2) MulByCofactor(c, p *PointG2) + func (g *G2) MulScalar(c, p *PointG2, e *big.Int) *PointG2 + func (g *G2) Neg(r, p *PointG2) *PointG2 + func (g *G2) One() *PointG2 + func (g *G2) Sub(c, a, b *PointG2) *PointG2 + func (g *G2) SubUnsafe(c, a, b *PointG2) *PointG2 + func (g *G2) ToCompressed(p *PointG2) []byte + func (g *G2) ToUncompressed(p *PointG2) []byte + func (g *G2) Zero() *PointG2 + type KyberG1 struct + func (k *KyberG1) Add(a, b kyber.Point) kyber.Point + func (k *KyberG1) Base() kyber.Point + func (k *KyberG1) Clone() kyber.Point + func (k *KyberG1) Data() ([]byte, error) + func (k *KyberG1) Embed(data []byte, rand cipher.Stream) kyber.Point + func (k *KyberG1) EmbedLen() int + func (k *KyberG1) Equal(k2 kyber.Point) bool + func (k *KyberG1) Hash(m []byte) kyber.Point + func (k *KyberG1) MarshalBinary() ([]byte, error) + func (k *KyberG1) MarshalSize() int + func (k *KyberG1) MarshalTo(w io.Writer) (int, error) + func (k *KyberG1) Mul(s kyber.Scalar, q kyber.Point) kyber.Point + func (k *KyberG1) Neg(a kyber.Point) kyber.Point + func (k *KyberG1) Null() kyber.Point + func (k *KyberG1) Pick(rand cipher.Stream) kyber.Point + func (k *KyberG1) Set(q kyber.Point) kyber.Point + func (k *KyberG1) String() string + func (k *KyberG1) Sub(a, b kyber.Point) kyber.Point + func (k *KyberG1) UnmarshalBinary(buff []byte) error + func (k *KyberG1) UnmarshalFrom(r io.Reader) (int, error) + type KyberG2 struct + func (k *KyberG2) Add(a, b kyber.Point) kyber.Point + func (k *KyberG2) Base() kyber.Point + func (k *KyberG2) Clone() kyber.Point + func (k *KyberG2) Data() ([]byte, error) + func (k *KyberG2) Embed(data []byte, rand cipher.Stream) kyber.Point + func (k *KyberG2) EmbedLen() int + func (k *KyberG2) Equal(k2 kyber.Point) bool + func (k *KyberG2) Hash(m []byte) kyber.Point + func (k *KyberG2) MarshalBinary() ([]byte, error) + func (k *KyberG2) MarshalSize() int + func (k *KyberG2) MarshalTo(w io.Writer) (int, error) + func (k *KyberG2) Mul(s kyber.Scalar, q kyber.Point) kyber.Point + func (k *KyberG2) Neg(a kyber.Point) kyber.Point + func (k *KyberG2) Null() kyber.Point + func (k *KyberG2) Pick(rand cipher.Stream) kyber.Point + func (k *KyberG2) Set(q kyber.Point) kyber.Point + func (k *KyberG2) String() string + func (k *KyberG2) Sub(a, b kyber.Point) kyber.Point + func (k *KyberG2) UnmarshalBinary(buff []byte) error + func (k *KyberG2) UnmarshalFrom(r io.Reader) (int, error) + type KyberGT struct + func (k *KyberGT) Add(a, b kyber.Point) kyber.Point + func (k *KyberGT) Base() kyber.Point + func (k *KyberGT) Clone() kyber.Point + func (k *KyberGT) Data() ([]byte, error) + func (k *KyberGT) Embed(data []byte, rand cipher.Stream) kyber.Point + func (k *KyberGT) EmbedLen() int + func (k *KyberGT) Equal(kk kyber.Point) bool + func (k *KyberGT) MarshalBinary() ([]byte, error) + func (k *KyberGT) MarshalSize() int + func (k *KyberGT) MarshalTo(w io.Writer) (int, error) + func (k *KyberGT) Mul(s kyber.Scalar, q kyber.Point) kyber.Point + func (k *KyberGT) Neg(q kyber.Point) kyber.Point + func (k *KyberGT) Null() kyber.Point + func (k *KyberGT) Pick(rand cipher.Stream) kyber.Point + func (k *KyberGT) Set(q kyber.Point) kyber.Point + func (k *KyberGT) String() string + func (k *KyberGT) Sub(a, b kyber.Point) kyber.Point + func (k *KyberGT) UnmarshalBinary(buf []byte) error + func (k *KyberGT) UnmarshalFrom(r io.Reader) (int, error) + type PointG1 [3]fe + func (p *PointG1) Set(p2 *PointG1) *PointG1 + type PointG2 [3]fe2 + func (p *PointG2) Set(p2 *PointG2) *PointG2 + type Suite struct + func (s *Suite) G1() kyber.Group + func (s *Suite) G2() kyber.Group + func (s *Suite) GT() kyber.Group + func (s *Suite) Hash() hash.Hash + func (s *Suite) New(t reflect.Type) interface{} + func (s *Suite) Pair(p1, p2 kyber.Point) kyber.Point + func (s *Suite) RandomStream() cipher.Stream + func (s *Suite) Read(r io.Reader, objs ...interface{}) error + func (s *Suite) Write(w io.Writer, objs ...interface{}) error + func (s *Suite) XOF(seed []byte) kyber.XOF