Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Ouroboros.Consensus.Mock.Ledger.Block.PBFT
Synopsis
- data SignedSimplePBft c c' = SignedSimplePBft {
- signedSimplePBft ∷ SimpleStdHeader c (SimplePBftExt c c')
- type SimplePBftBlock c c' = SimpleBlock c (SimplePBftExt c c')
- newtype SimplePBftExt c c' = SimplePBftExt {
- simplePBftExt ∷ PBftFields c' (SignedSimplePBft c c')
- type SimplePBftHeader c c' = SimpleHeader c (SimplePBftExt c c')
- forgePBftExt ∷ ∀ c c'. (SimpleCrypto c, PBftCrypto c', Signable (PBftDSIGN c') (SignedSimplePBft c c'), ContextDSIGN (PBftDSIGN c') ~ ()) ⇒ ForgeExt c (SimplePBftExt c c')
Documentation
data SignedSimplePBft c c' Source #
Part of the block that gets signed
We just sign the standard header, i.e., without the PBFT extensions. In particular, the signature does not cover the issuer.
The signature does not cover the body explicitly, but since the standard header includes a hash of the body, the signature covers the body implicitly.
Constructors
SignedSimplePBft | |
Fields
|
Instances
type SimplePBftBlock c c' = SimpleBlock c (SimplePBftExt c c') Source #
Simple block extended with the fields required for PBFT
c
is crypto used for the block itself
c'
is crypto used for the consensus protocol
newtype SimplePBftExt c c' Source #
Block extension required for PBFT
Constructors
SimplePBftExt | |
Fields
|
Instances
type SimplePBftHeader c c' = SimpleHeader c (SimplePBftExt c c') Source #
Header for PBFT
forgePBftExt ∷ ∀ c c'. (SimpleCrypto c, PBftCrypto c', Signable (PBftDSIGN c') (SignedSimplePBft c c'), ContextDSIGN (PBftDSIGN c') ~ ()) ⇒ ForgeExt c (SimplePBftExt c c') Source #