Crate informalsystems_malachitebft_core_types

Crate informalsystems_malachitebft_core_types 

Source
Expand description

Common data types and abstractions for the consensus engine.

Structs§

CommitCertificate
Represents a certificate containing the message (height, round, value_id) and the commit signatures.
CommitSignature
Represents a signature for a commit certificate, with the address of the validator that produced it.
EnterRoundCertificate
Represents a local certificate that triggered or will trigger the start of a new round.
PolkaCertificate
Represents a certificate witnessing a Polka at a given height and round.
PolkaSignature
Represents a signature for a polka certificate, with the address of the validator that produced it.
RoundCertificate
Represents a certificate used to justify entering a new round at a given height.
RoundSignature
Represents a signature for a round certificate, with the address of the validator that produced it.
SignedMessage
A signed message, ie. a message emitted by a validator and signed by its private key.
ThresholdParam
Represents the different quorum thresholds.
ThresholdParams
Represents the different quorum thresholds.
Timeout
A timeout for a round step.
ValueResponse
Represents a response to a value request.
VoteExtensions
A set of vote extensions.

Enums§

CertificateError
Represents an error that can occur when verifying a certificate.
NilOrVal
Represents either Nil or a value of type Value.
Round
A round number.
RoundCertificateType
Describes the type of a RoundCertificate.
Threshold
Represents the different quorum thresholds.
TimeoutKind
The timeout type. There may be multiple timeouts running in a given step.
Validity
Whether or not a proposal is valid.
ValueOrigin
Protocols that diseminate Value
ValuePayload
The possible messages used to deliver proposals
VoteType
A type of vote.

Traits§

Address
Defines the requirements for an address.
Context
This trait allows to abstract over the various datatypes that are used in the consensus engine.
Extension
Vote extensions allows applications to extend the pre-commit vote with arbitrary data. This allows applications to force their validators to do more than just validate blocks within consensus.
Height
Defines the requirements for a height type.
Proposal
Defines the requirements for a proposal type.
ProposalPart
Defines the requirements for a proposal part type.
SigningProvider
A provider of signing functionality for the consensus engine.
SigningProviderExt
Extension trait providing additional certificate verification functionality for signing providers.
SigningScheme
A signing scheme that can be used to sign votes and verify such signatures.
Validator
Defines the requirements for a validator.
ValidatorSet
Defines the requirements for a validator set.
Value
The Value type denotes the value v carried by the Proposal consensus message broadcast by the proposer of a round of consensus.
Vote
Defines the requirements for a vote.

Type Aliases§

PrivateKey
Type alias to make it easier to refer the PrivateKey type.
PublicKey
Type alias to make it easier to refer the PublicKey type.
Signature
Type alias to make it easier to refer the Signature type.
SignedExtension
A signed vote extension
SignedProposal
A signed proposal
SignedProposalPart
A signed proposal part
SignedVote
A signed vote
ValueId
Type alias to make it easier to refer the ValueId type.
VotingPower
Voting power held by a validator.