Expand description
Signing scheme implementations for simplex.
§Attributable Schemes and Fault Evidence
Signing schemes differ in whether per-validator activities can be used as evidence of either liveness or of committing a fault:
-
Attributable Schemes (
ed25519,bls12381_multisig): Individual signatures can be presented to some third party as evidence of either liveness or of committing a fault. Certificates contain signer indices alongside individual signatures, enabling secure per-validator activity tracking and conflict detection. -
Non-Attributable schemes (
bls12381_threshold): Individual signatures cannot be presented to some third party as evidence of either liveness or of committing a fault because they can be forged by other players (often after some quorum of partial signatures are collected). Withbls12381_threshold, possession of anytvalid partial signatures can be used to forge a partial signature for any other player. Because peer connections are authenticated, evidence can be used locally (as it must be sent by said participant) but can’t be used by an external observer.
The certificate::Scheme::is_attributable() method signals whether evidence can be safely
exposed. For applications only interested in collecting evidence for liveness/faults, use reporter::AttributableReporter
which automatically handles filtering and verification based on scheme (hiding votes/proofs that are not attributable). If
full observability is desired, process all messages passed through the crate::Reporter interface.
Modules§
- bls12381_
multisig - BLS12-381 multi-signature implementation of the
Schemetrait forsimplex. - bls12381_
threshold - BLS12-381 threshold implementation of the
Schemetrait forsimplex. - ed25519
- Ed25519 implementation of the
Schemetrait forsimplex. - reporter
- Wrapper for scheme-dependent activity filtering and verification.
Traits§
- Scheme
- Marker trait for signing schemes compatible with
simplex.