Documentation ¶
Index ¶
- Variables
- func NewBLS12381Suite() pairing.Suite
- func NewGroupG1() kyber.Group
- func NewGroupG2() kyber.Group
- func NewGroupGT() kyber.Group
- func NewKyberScalar() kyber.Scalar
- type GroupChecker
- type KyberG1
- 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) IsInCorrectGroup() bool
- 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
- 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) IsInCorrectGroup() bool
- 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
- 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 Suite
- 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) ValidatePairing(p1, p2, p3, p4 kyber.Point) bool
- func (s *Suite) Write(w io.Writer, objs ...interface{}) error
- func (s *Suite) XOF(seed []byte) kyber.XOF
Constants ¶
This section is empty.
Variables ¶
View Source
var Domain = []byte("BLS_SIG_BLS12381G2_XMD:SHA-256_SSWU_RO_NUL_")
Domain comes from the ciphersuite used by the RFC of this name compatible with the paired library > v18
Functions ¶
func NewBLS12381Suite ¶
func NewGroupG1 ¶
func NewGroupG2 ¶
func NewGroupGT ¶
func NewKyberScalar ¶
Types ¶
type GroupChecker ¶
GroupChecker allows to verify if a Point is in the correct group or not. For curves which don't have a prime order, we need to only consider the points lying in the subgroup of prime order. That check returns true if the point is correct or not.
type KyberG1 ¶
type KyberG1 struct {
// contains filtered or unexported fields
}
KyberG1 is a kyber.Point holding a G1 point on BLS12-381 curve
func NullKyberG1 ¶
func NullKyberG1() *KyberG1
func (*KyberG1) IsInCorrectGroup ¶
func (*KyberG1) MarshalBinary ¶
func (*KyberG1) MarshalSize ¶
func (*KyberG1) UnmarshalBinary ¶
type KyberG2 ¶
type KyberG2 struct {
// contains filtered or unexported fields
}
KyberG2 is a kyber.Point holding a G2 point on BLS12-381 curve
func NullKyberG2 ¶
func NullKyberG2() *KyberG2
func (*KyberG2) IsInCorrectGroup ¶
func (*KyberG2) MarshalBinary ¶
func (*KyberG2) MarshalSize ¶
func (*KyberG2) UnmarshalBinary ¶
type KyberGT ¶
type KyberGT struct {
// contains filtered or unexported fields
}
func (*KyberGT) MarshalBinary ¶
func (*KyberGT) MarshalSize ¶
func (*KyberGT) UnmarshalBinary ¶
type Suite ¶
type Suite struct{}
func (*Suite) RandomStream ¶
RandomStream returns a cipher.Stream which corresponds to a key stream from crypto/rand.
func (*Suite) ValidatePairing ¶
ValidatePairing implements the `pairing.Suite` interface
Source Files ¶
Click to show internal directories.
Click to hide internal directories.