Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
This module implements VRF range extension as described in https://iohk.io/en/research/library/papers/on-uc-secure-range-extension-and-batch-verification-for-ecvrf/
Synopsis
- data InputVRF
- data VRFUsage
- mkInputVRF ∷ SlotNo → Nonce → InputVRF
- vrfLeaderValue ∷ ∀ c proxy. Crypto c ⇒ proxy c → CertifiedVRF (VRF c) InputVRF → BoundedNatural
- vrfNonceValue ∷ ∀ c proxy. Crypto c ⇒ proxy c → CertifiedVRF (VRF c) InputVRF → Nonce
Documentation
Input to the verifiable random function. Consists of the hash of the slot and the epoch nonce.
Instances
Generic InputVRF Source # | |
Show InputVRF Source # | |
ToCBOR InputVRF Source # | |
SignableRepresentation InputVRF Source # | |
Eq InputVRF Source # | |
Ord InputVRF Source # | |
Defined in Ouroboros.Consensus.Protocol.Praos.VRF | |
NoThunks InputVRF Source # | |
type Rep InputVRF Source # | |
Defined in Ouroboros.Consensus.Protocol.Praos.VRF type Rep InputVRF = D1 ('MetaData "InputVRF" "Ouroboros.Consensus.Protocol.Praos.VRF" "ouroboros-consensus-protocol-0.9.0.2-inplace" 'True) (C1 ('MetaCons "InputVRF" 'PrefixI 'True) (S1 ('MetaSel ('Just "unInputVRF") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Hash Blake2b_256 InputVRF)))) |
Indicate the usage of the VRF result.
vrfLeaderValue ∷ ∀ c proxy. Crypto c ⇒ proxy c → CertifiedVRF (VRF c) InputVRF → BoundedNatural Source #
Range-extend a VRF output to be used for leader checks from the relevant hash. See section 4.1 of the linked paper for details.
vrfNonceValue ∷ ∀ c proxy. Crypto c ⇒ proxy c → CertifiedVRF (VRF c) InputVRF → Nonce Source #
Range-extend a VRF output to be used for the evolving nonce. See section 4.1 of the linked paper for details.