Documentation ¶
Index ¶
- type BlsMultiSigner
- func (bms *BlsMultiSigner) AggregateSignatures(suite crypto.Suite, signatures [][]byte, pubKeysSigners []crypto.PublicKey) ([]byte, error)
- func (bms *BlsMultiSigner) IsInterfaceNil() bool
- func (bms *BlsMultiSigner) SignShare(privKey crypto.PrivateKey, message []byte) ([]byte, error)
- func (bms *BlsMultiSigner) VerifyAggregatedSig(suite crypto.Suite, pubKeys []crypto.PublicKey, aggSigBytes []byte, msg []byte) error
- func (bms *BlsMultiSigner) VerifySigBytes(_ crypto.Suite, sig []byte) error
- func (bms *BlsMultiSigner) VerifySigShare(pubKey crypto.PublicKey, message []byte, sig []byte) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BlsMultiSigner ¶
type BlsMultiSigner struct { singlesig.BlsSingleSigner Hasher hashing.Hasher }
BlsMultiSigner provides an implements of the crypto.LowLevelSignerBLS interface
func (*BlsMultiSigner) AggregateSignatures ¶
func (bms *BlsMultiSigner) AggregateSignatures( suite crypto.Suite, signatures [][]byte, pubKeysSigners []crypto.PublicKey, ) ([]byte, error)
AggregateSignatures produces an aggregation of single BLS signatures over the same message
func (*BlsMultiSigner) IsInterfaceNil ¶
func (bms *BlsMultiSigner) IsInterfaceNil() bool
IsInterfaceNil returns true if there is no value under the interface
func (*BlsMultiSigner) SignShare ¶
func (bms *BlsMultiSigner) SignShare(privKey crypto.PrivateKey, message []byte) ([]byte, error)
SignShare produces a BLS signature share (single BLS signature) over a given message
func (*BlsMultiSigner) VerifyAggregatedSig ¶
func (bms *BlsMultiSigner) VerifyAggregatedSig( suite crypto.Suite, pubKeys []crypto.PublicKey, aggSigBytes []byte, msg []byte, ) error
VerifyAggregatedSig verifies if a BLS aggregated signature is valid over a given message
func (*BlsMultiSigner) VerifySigBytes ¶
func (bms *BlsMultiSigner) VerifySigBytes(_ crypto.Suite, sig []byte) error
VerifySigBytes provides an "cheap" integrity check of a signature given as a byte array It does not validate the signature over a message, only verifies that it is a signature
func (*BlsMultiSigner) VerifySigShare ¶
func (bms *BlsMultiSigner) VerifySigShare(pubKey crypto.PublicKey, message []byte, sig []byte) error
VerifySigShare verifies a BLS signature share (single BLS signature) over a given message