Module pallet_session::historical
source · Expand description
An opt-in utility for tracking historical sessions in FRAME-session.
This is generally useful when implementing blockchains that require accountable safety where validators from some amount f prior sessions must remain slashable.
Rather than store the full session data for any given session, we instead commit to the roots of merkle tries containing the session data.
These roots and proofs of inclusion can be generated at any time during the current session. Afterwards, the proofs can be fed to a consensus module when reporting misbehavior.
Re-exports§
pub use pallet::*;
Modules§
- Off-chain logic for creating a proof based data provided by on-chain logic.
- On-chain logic to store a validator-set for deferred validation using an off-chain worker.
- The
palletmodule in each FRAME pallet hosts the most important items needed to construct this pallet. - shared 🔒Shared logic between on-chain and off-chain components used for slashing using an off-chain worker.
Structs§
- An
SessionManagerimplementation that wraps an innerIand also sets the historical trie root of the ending session. - A trie instance for checking and generating proofs.
Traits§
- Specialization of the crate-level
SessionManagerwhich returns the set of full identification when creating a new session.
Type Aliases§
- A tuple of the validator’s ID and their full identification.