[−][src]Trait pallet_babe::Trait
Associated Types
type EpochDuration: Get<SlotNumber>
The amount of time, in slots, that each epoch should last.
type ExpectedBlockTime: Get<Self::Moment>
The expected average block time at which BABE should be creating
blocks. Since BABE is probabilistic it is not trivial to figure out
what the expected average block time should be based on the slot
duration and the security parameter c
(where 1 - c
represents
the probability of a slot being empty).
type EpochChangeTrigger: EpochChangeTrigger
BABE requires some logic to be triggered on every block to query for whether an epoch has ended and to perform the transition to the next epoch.
Typically, the ExternalTrigger
type should be used. An internal trigger should only be used
when no other module is responsible for changing authority set.
type KeyOwnerProof: Parameter + GetSessionNumber + GetValidatorCount
The proof of key ownership, used for validating equivocation reports. The proof must include the session index and validator count of the session at which the equivocation occurred.
type KeyOwnerIdentification: Parameter
The identification of a key owner, used when reporting equivocations.
type KeyOwnerProofSystem: KeyOwnerProofSystem<(KeyTypeId, AuthorityId), Proof = Self::KeyOwnerProof, IdentificationTuple = Self::KeyOwnerIdentification>
A system for proving ownership of keys, i.e. that a given key was part of a validator set, needed for validating equivocation reports.
type HandleEquivocation: HandleEquivocation<Self>
The equivocation handling subsystem, defines methods to report an
offence (after the equivocation has been validated) and for submitting a
transaction to report an equivocation (from an offchain context).
NOTE: when enabling equivocation handling (i.e. this type isn't set to
()
) you must use this pallet's ValidateUnsigned
in the runtime
definition.