Categorygithub.com/multiversx/mx-chain-crypto-go
modulepackage
1.2.12
Repository: https://github.com/multiversx/mx-chain-crypto-go.git
Documentation: pkg.go.dev

# README

mx-chain-crypto-go

mx-chain crypto packages and high level definitions

# Packages

No description provided by the author
No description provided by the author
No description provided by the author

# Variables

ErrAggSigNotValid is raised when an aggregate signature is invalid.
ErrBLSInvalidSignature will be returned when the provided BLS signature is invalid.
ErrEd25519InvalidSignature will be returned when ed25519 signature verification fails.
ErrEmptyPubKey is raised when an empty public key is used.
ErrFailedAuthentication is returned when a ciphertext could not be decrypted by a given private key.
ErrGeneratingPubFromPriv signals that there was an error generating a public key corresponding to a provided private key.
ErrInvalidParam is raised for invalid parameters.
ErrInvalidPoint is raised when an invalid point is used.
ErrInvalidPrivateKey is raised when an invalid private key is used.
ErrInvalidPublicKey is raised when an invalid public key is used.
ErrInvalidScalar is raised when an invalid scalar is used.
ErrInvalidSuite is raised when an invalid crypto suite is used.
ErrNilHasher is raised when a valid hasher is expected but used nil.
ErrNilKeyGenerator is raised when a valid key generator is expected but nil used.
ErrNilLowLevelSigner signals a nil low level signer.
ErrNilMessage is raised when trying to verify a nil signed message or trying to sign a nil message.
ErrNilParam is raised for nil parameters.
ErrNilPrivateKey is raised when a private key was expected but received nil.
ErrNilPrivateKeyScalar is raised when a private key with nil scalar is used.
ErrNilPublicKey is raised when public key is expected but received nil.
ErrNilPublicKeyPoint is raised when a public key with nil point is used.
ErrNilPublicKeys is raised when public keys are expected but received nil.
ErrNilSignature is raised for a nil signature.
ErrNilSignaturesList is raised when a nil list of signatures is provided.
ErrNilSuite is raised when a nil crypto suite is used.
ErrNotImplemented signals that a method is not implemented for an interface implementation.
ErrSigNotValid is raised when a signature verification fails due to invalid signature.
ErrWrongPrivateKeySize signals that the length of the provided private key is not the expected one.
ErrWrongPrivateKeyStructure signals that the structure of the private key is incorrect.
ErrWrongSizeHasher is raised when a hasher with a wrong output size is used.

# Interfaces

Group defines a mathematical group used for Diffie-Hellmann operations.
Key represents a crypto key - can be either private or public.
KeyGenerator is an interface for generating different types of cryptographic keys.
LowLevelSignerBLS provides functionality to sign and verify BLS single/multi-signatures Implementations act as a wrapper over a specific crypto library, such that changing the library requires only writing a new implementation of this LowLevelSigner.
MultiSigner provides functionality for multi-signing a message and verifying a multi-signed message.
MultiSigVerifier provides functionality for verifying a multi-signature.
PeerSignatureHandler is a wrapper over SingleSigner that buffers the peer signatures.
Point represents an element of a public-key cryptographic Group.
PrivateKey represents a private key that can sign data or decrypt messages encrypted with a public key.
PublicKey can be used to encrypt messages.
Random is an interface that can be mixed in to local suite definitions.
A Scalar represents a scalar value by which a Point (group element) may be encrypted to produce another Point.
SingleSigner provides functionality for signing a message and verifying a single signed message.
Suite represents the list of functionalities needed by this package.