pub trait KeyOwnerProofSystem<Key> {
type Proof: Codec;
type IdentificationTuple: Codec;
fn prove(key: Key) -> Option<Self::Proof>;
fn check_proof(
key: Key,
proof: Self::Proof
) -> Option<Self::IdentificationTuple>;
}
Expand description
Something which can compute and check proofs of a historical key owner and return full identification data of that key owner.
Associated Types
The full identification of a key owner and the stash account.
Required methods
Prove membership of a key owner in the current block-state.
This should typically only be called off-chain, since it may be computationally heavy.
Returns Some
iff the key owner referred to by the given key
is a
member of the current set.
fn check_proof(
key: Key,
proof: Self::Proof
) -> Option<Self::IdentificationTuple>
fn check_proof(
key: Key,
proof: Self::Proof
) -> Option<Self::IdentificationTuple>
Check a proof of membership on-chain. Return Some
iff the proof is
valid and recent enough to check.