Versions in this module Expand all Collapse all v1 v1.3.71 Apr 15, 2024 Changes in this version + var ErrSelector = errors.New("group: selector must be 0 or 1") + var ErrType = errors.New("group: type mismatch") + var ErrUnmarshal = errors.New("group: error unmarshaling") + func HashToField(u []big.Int, b []byte, e expander.Expander, p *big.Int, L uint) + type Element interface + Add func(x, y Element) Element + CMov func(b int, x Element) Element + CSelect func(b int, x, y Element) Element + Copy func() Element + Dbl func(x Element) Element + Group func() Group + IsEqual func(x Element) bool + IsIdentity func() bool + MarshalBinaryCompress func() ([]byte, error) + Mul func(x Element, s Scalar) Element + MulGen func(s Scalar) Element + Neg func(x Element) Element + Set func(x Element) Element + type Group interface + Generator func() Element + HashToElement func(msg, dst []byte) Element + HashToElementNonUniform func(msg, dst []byte) Element + HashToScalar func(msg, dst []byte) Scalar + Identity func() Element + NewElement func() Element + NewScalar func() Scalar + Params func() *Params + RandomElement func(rnd io.Reader) Element + RandomNonZeroScalar func(io.Reader) Scalar + RandomScalar func(rnd io.Reader) Scalar + var P256 Group = wG{ ... } + var P384 Group = wG{ ... } + var P521 Group = wG{ ... } + var Ristretto255 Group = ristrettoGroup{} + type Params struct + CompressedElementLength uint + ElementLength uint + ScalarLength uint + type Scalar interface + Add func(x, y Scalar) Scalar + CMov func(b int, x Scalar) Scalar + CSelect func(b int, x, y Scalar) Scalar + Copy func() Scalar + Group func() Group + Inv func(x Scalar) Scalar + IsEqual func(x Scalar) bool + IsZero func() bool + Mul func(x, y Scalar) Scalar + Neg func(x Scalar) Scalar + Set func(x Scalar) Scalar + SetBigInt func(b *big.Int) Scalar + SetUint64 func(x uint64) Scalar + Sub func(x, y Scalar) Scalar