Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- data AllIssuerKeys v (r ∷ KeyRole) = AllIssuerKeys {
- aikCold ∷ KeyPair r v
- aikVrf ∷ VRFKeyPair v
- aikHot ∷ NonEmpty (KESPeriod, KESKeyPair v)
- aikColdKeyHash ∷ KeyHash r v
- data KESKeyPair c = KESKeyPair {
- kesSignKey ∷ !(SignKeyKES c)
- kesVerKey ∷ !(VerKeyKES c)
- data VRFKeyPair c = VRFKeyPair {
- vrfSignKey ∷ !(SignKeyVRF c)
- vrfVerKey ∷ !(VerKeyVRF c)
- mkOCert ∷ ∀ c r. (Crypto c, Signable (DSIGN c) (OCertSignable c)) ⇒ AllIssuerKeys c r → Word64 → KESPeriod → OCert c
- mkBHBody ∷ (ContextVRF (VRF v) ~ (), Signable (VRF v) Seed, VRFAlgorithm (VRF v)) ⇒ ProtVer → HashHeader v → AllIssuerKeys v r → SlotNo → BlockNo → Nonce → OCert v → Word32 → Hash v EraIndependentBlockBody → BHBody v
- mkBHBodyFakeVRF ∷ (ContextVRF (VRF v) ~ (), Signable (VRF v) (WithResult Seed), VRFAlgorithm (VRF v)) ⇒ NatNonce → UnitInterval → ProtVer → HashHeader v → AllIssuerKeys v r → SlotNo → BlockNo → Nonce → OCert v → Word32 → Hash v EraIndependentBlockBody → BHBody v
- mkBHeader ∷ (Crypto c, Signable (KES c) (BHBody c)) ⇒ AllIssuerKeys c r → Word → Word → BHBody c → BHeader c
- mkBlock ∷ ∀ era r. (EraSegWits era, Signable (VRF (EraCrypto era)) Seed, Signable (KES (EraCrypto era)) (BHBody (EraCrypto era))) ⇒ HashHeader (EraCrypto era) → AllIssuerKeys (EraCrypto era) r → [Tx era] → SlotNo → BlockNo → Nonce → Word → Word → OCert (EraCrypto era) → Block (BHeader (EraCrypto era)) era
- mkBlockFakeVRF ∷ ∀ era r. (EraSegWits era, Signable (VRF (EraCrypto era)) (WithResult Seed), Signable (KES (EraCrypto era)) (BHBody (EraCrypto era))) ⇒ HashHeader (EraCrypto era) → AllIssuerKeys (EraCrypto era) r → [Tx era] → SlotNo → BlockNo → Nonce → NatNonce → UnitInterval → Word → Word → OCert (EraCrypto era) → Block (BHeader (EraCrypto era)) era
- evolveKESUntil ∷ (KESAlgorithm v, ContextKES v ~ ()) ⇒ SignKeyKES v → KESPeriod → KESPeriod → Maybe (SignKeyKES v)
Documentation
data AllIssuerKeys v (r ∷ KeyRole) Source #
AllIssuerKeys | |
|
Instances
Crypto v ⇒ Show (AllIssuerKeys v r) Source # | |
Defined in Test.Cardano.Protocol.TPraos.Create |
data KESKeyPair c Source #
KESKeyPair | |
|
Instances
(Show (SignKeyKES (KES c)), Show (VerKeyKES (KES c))) ⇒ Show (KESKeyPair c) Source # | |
Defined in Test.Cardano.Protocol.Crypto.KES |
data VRFKeyPair c Source #
VRFKeyPair | |
|
Instances
(Show (SignKeyVRF (VRF c)), Show (VerKeyVRF (VRF c))) ⇒ Show (VRFKeyPair c) Source # | |
Defined in Test.Cardano.Protocol.Crypto.VRF |
mkOCert ∷ ∀ c r. (Crypto c, Signable (DSIGN c) (OCertSignable c)) ⇒ AllIssuerKeys c r → Word64 → KESPeriod → OCert c Source #
mkBHBody ∷ (ContextVRF (VRF v) ~ (), Signable (VRF v) Seed, VRFAlgorithm (VRF v)) ⇒ ProtVer → HashHeader v → AllIssuerKeys v r → SlotNo → BlockNo → Nonce → OCert v → Word32 → Hash v EraIndependentBlockBody → BHBody v Source #
mkBHBodyFakeVRF ∷ (ContextVRF (VRF v) ~ (), Signable (VRF v) (WithResult Seed), VRFAlgorithm (VRF v)) ⇒ NatNonce → UnitInterval → ProtVer → HashHeader v → AllIssuerKeys v r → SlotNo → BlockNo → Nonce → OCert v → Word32 → Hash v EraIndependentBlockBody → BHBody v Source #
∷ ∀ era r. (EraSegWits era, Signable (VRF (EraCrypto era)) Seed, Signable (KES (EraCrypto era)) (BHBody (EraCrypto era))) | |
⇒ HashHeader (EraCrypto era) | Hash of previous block |
→ AllIssuerKeys (EraCrypto era) r | All keys in the stake pool |
→ [Tx era] | Transactions to record |
→ SlotNo | Current slot |
→ BlockNo | Block numberchain lengthchain "difficulty" |
→ Nonce | EpochNo nonce |
→ Word | Period of KES (key evolving signature scheme) |
→ Word | KES period of key registration |
→ OCert (EraCrypto era) | Operational certificate |
→ Block (BHeader (EraCrypto era)) era |
∷ ∀ era r. (EraSegWits era, Signable (VRF (EraCrypto era)) (WithResult Seed), Signable (KES (EraCrypto era)) (BHBody (EraCrypto era))) | |
⇒ HashHeader (EraCrypto era) | Hash of previous block |
→ AllIssuerKeys (EraCrypto era) r | All keys in the stake pool |
→ [Tx era] | Transactions to record |
→ SlotNo | Current slot |
→ BlockNo | Block number/chain length/chain "difficulty" |
→ Nonce | EpochNo nonce |
→ NatNonce | Block nonce |
→ UnitInterval | Praos leader value |
→ Word | Period of KES (key evolving signature scheme) |
→ Word | KES period of key registration |
→ OCert (EraCrypto era) | Operational certificate |
→ Block (BHeader (EraCrypto era)) era |
Create a block with a faked VRF result.
∷ (KESAlgorithm v, ContextKES v ~ ()) | |
⇒ SignKeyKES v | |
→ KESPeriod | Current KES period |
→ KESPeriod | Target KES period |
→ Maybe (SignKeyKES v) |
Try to evolve KES key until specific KES period is reached, given the current KES period.