| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Test.Cardano.Protocol.TPraos.Create
Synopsis
- data AllIssuerKeys c (r ∷ KeyRole) = AllIssuerKeys {
- aikCold ∷ KeyPair r
- aikVrf ∷ VRFKeyPair c
- aikHot ∷ NonEmpty (KESPeriod, KESKeyPair c)
- aikColdKeyHash ∷ KeyHash r
- genAllIssuerKeys ∷ Crypto c ⇒ Int → Word64 → Word64 → Gen (AllIssuerKeys c r)
- data KESKeyPair c = KESKeyPair {
- kesSignKey ∷ !(UnsoundPureSignKeyKES (KES c))
- kesVerKey ∷ !(VerKeyKES (KES c))
- data VRFKeyPair c = VRFKeyPair {
- vrfSignKey ∷ !(SignKeyVRF (VRF c))
- vrfVerKey ∷ !(VerKeyVRF (VRF c))
- mkOCert ∷ ∀ c r. Crypto c ⇒ AllIssuerKeys c r → Word64 → KESPeriod → OCert c
- mkBHBody ∷ (ContextVRF (VRF c) ~ (), Signable (VRF c) Seed, VRFAlgorithm (VRF c)) ⇒ ProtVer → HashHeader → AllIssuerKeys c r → SlotNo → BlockNo → Nonce → OCert c → Word32 → Hash HASH EraIndependentBlockBody → BHBody c
- mkBHBodyFakeVRF ∷ (ContextVRF (VRF c) ~ (), Signable (VRF c) (WithResult Seed), VRFAlgorithm (VRF c)) ⇒ NatNonce → UnitInterval → ProtVer → HashHeader → AllIssuerKeys c r → SlotNo → BlockNo → Nonce → OCert c → Word32 → Hash HASH EraIndependentBlockBody → BHBody c
- mkBHeader ∷ (Crypto c, Signable (KES c) (BHBody c)) ⇒ AllIssuerKeys c r → Word → Word → BHBody c → BHeader c
- mkBlock ∷ ∀ era r c. (Crypto c, EraBlockBody era, Signable (VRF c) Seed, Signable (KES c) (BHBody c)) ⇒ HashHeader → AllIssuerKeys c r → [Tx era] → SlotNo → BlockNo → Nonce → Word → Word → OCert c → Block (BHeader c) era
- mkBlockFakeVRF ∷ ∀ era r c. (Crypto c, EraBlockBody era, Signable (VRF c) (WithResult Seed), Signable (KES c) (BHBody c)) ⇒ HashHeader → AllIssuerKeys c r → [Tx era] → SlotNo → BlockNo → Nonce → NatNonce → UnitInterval → Word → Word → OCert c → Block (BHeader c) era
- evolveKESUntil ∷ (UnsoundPureKESAlgorithm c, ContextKES c ~ ()) ⇒ UnsoundPureSignKeyKES c → KESPeriod → KESPeriod → Maybe (UnsoundPureSignKeyKES c)
Documentation
data AllIssuerKeys c (r ∷ KeyRole) Source #
Constructors
| AllIssuerKeys | |
Fields
| |
Instances
| (Show (SignKeyVRF (VRF c)), Show (VerKeyVRF (VRF c)), Show (VerKeyKES (KES c))) ⇒ Show (AllIssuerKeys c r) Source # | |
Defined in Test.Cardano.Protocol.TPraos.Create Methods showsPrec ∷ Int → AllIssuerKeys c r → ShowS # show ∷ AllIssuerKeys c r → String # showList ∷ [AllIssuerKeys c r] → ShowS # | |
Arguments
| ∷ Crypto c | |
| ⇒ Int | Maxium slot number |
| → Word64 | This corresponds to number of KES evolutions |
| → Word64 | This corresponds to number of KES evolutions |
| → Gen (AllIssuerKeys c r) |
data KESKeyPair c Source #
Constructors
| KESKeyPair | |
Fields
| |
Instances
| Crypto c ⇒ Arbitrary (KESKeyPair c) Source # | |
Defined in Test.Cardano.Protocol.Crypto.KES | |
| Show (VerKeyKES (KES c)) ⇒ Show (KESKeyPair c) Source # | |
Defined in Test.Cardano.Protocol.Crypto.KES Methods showsPrec ∷ Int → KESKeyPair c → ShowS # show ∷ KESKeyPair c → String # showList ∷ [KESKeyPair c] → ShowS # | |
data VRFKeyPair c Source #
Constructors
| VRFKeyPair | |
Fields
| |
Instances
| (Crypto c, Arbitrary (SignKeyVRF (VRF c))) ⇒ Arbitrary (VRFKeyPair c) Source # | |
Defined in Test.Cardano.Protocol.Crypto.VRF | |
| (Show (SignKeyVRF (VRF c)), Show (VerKeyVRF (VRF c))) ⇒ Show (VRFKeyPair c) Source # | |
Defined in Test.Cardano.Protocol.Crypto.VRF Methods showsPrec ∷ Int → VRFKeyPair c → ShowS # show ∷ VRFKeyPair c → String # showList ∷ [VRFKeyPair c] → ShowS # | |
mkBHBody ∷ (ContextVRF (VRF c) ~ (), Signable (VRF c) Seed, VRFAlgorithm (VRF c)) ⇒ ProtVer → HashHeader → AllIssuerKeys c r → SlotNo → BlockNo → Nonce → OCert c → Word32 → Hash HASH EraIndependentBlockBody → BHBody c Source #
mkBHBodyFakeVRF ∷ (ContextVRF (VRF c) ~ (), Signable (VRF c) (WithResult Seed), VRFAlgorithm (VRF c)) ⇒ NatNonce → UnitInterval → ProtVer → HashHeader → AllIssuerKeys c r → SlotNo → BlockNo → Nonce → OCert c → Word32 → Hash HASH EraIndependentBlockBody → BHBody c Source #
Arguments
| ∷ ∀ era r c. (Crypto c, EraBlockBody era, Signable (VRF c) Seed, Signable (KES c) (BHBody c)) | |
| ⇒ HashHeader | Hash of previous block |
| → AllIssuerKeys c 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 c | Operational certificate |
| → Block (BHeader c) era |
Arguments
| ∷ ∀ era r c. (Crypto c, EraBlockBody era, Signable (VRF c) (WithResult Seed), Signable (KES c) (BHBody c)) | |
| ⇒ HashHeader | Hash of previous block |
| → AllIssuerKeys c 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 c | Operational certificate |
| → Block (BHeader c) era |
Create a block with a faked VRF result.
Arguments
| ∷ (UnsoundPureKESAlgorithm c, ContextKES c ~ ()) | |
| ⇒ UnsoundPureSignKeyKES c | |
| → KESPeriod | Current KES period |
| → KESPeriod | Target KES period |
| → Maybe (UnsoundPureSignKeyKES c) |
Try to evolve KES key until specific KES period is reached, given the current KES period.