Documentation ¶
Overview ¶
Package bls implements a go-wrapper around a library implementing the the BLS12-381 curve and signature scheme. This package exposes a public API for verifying and aggregating BLS signatures used by Ethereum.
Index ¶
- func AggregateCompressedSignatures(multiSigs [][]byte) (common.Signature, error)
- func AggregateSignatures(sigs []common.Signature) common.Signature
- func NewAggregateSignature() common.Signature
- func RandKey() (common.SecretKey, error)
- func VerifyMultipleSignatures(sigs [][]byte, msgs [][32]byte, pubKeys []common.PublicKey) (bool, error)
- type PublicKey
- type SecretKey
- type Signature
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AggregateCompressedSignatures ¶
AggregateCompressedSignatures converts a list of compressed signatures into a single, aggregated sig.
func AggregateSignatures ¶
AggregateSignatures converts a list of signatures into a single, aggregated sig.
func NewAggregateSignature ¶
NewAggregateSignature creates a blank aggregate signature.
Types ¶
type PublicKey ¶
PublicKey represents a BLS public key.
func AggregateMultiplePubkeys ¶
AggregateMultiplePubkeys aggregates the provided decompressed keys into a single key.
func AggregatePublicKeys ¶
AggregatePublicKeys aggregates the provided raw public keys into a single key.
func PublicKeyFromBytes ¶
PublicKeyFromBytes creates a BLS public key from a BigEndian byte slice.
type SecretKey ¶
SecretKey represents a BLS secret or private key.
func SecretKeyFromBytes ¶
SecretKeyFromBytes creates a BLS private key from a BigEndian byte slice.
type Signature ¶
Signature represents a BLS signature.
func MultipleSignaturesFromBytes ¶
MultipleSignaturesFromBytes creates a slice of BLS signatures from a LittleEndian 2d-byte slice.
func SignatureFromBytes ¶
SignatureFromBytes creates a BLS signature from a LittleEndian byte slice.
Directories ¶
Path | Synopsis |
---|---|
Package blst implements a go-wrapper around a library implementing the the BLS12-381 curve and signature scheme.
|
Package blst implements a go-wrapper around a library implementing the the BLS12-381 curve and signature scheme. |
Package common provides the BLS interfaces that are implemented by the various BLS wrappers.
|
Package common provides the BLS interfaces that are implemented by the various BLS wrappers. |