module Byron.Spec.Ledger.Core.Omniscient where
import Byron.Spec.Ledger.Core (SKey (SKey), Sig (Sig), VKey (VKey), VKeyGenesis, owner, sign,
unVKeyGenesis)
signatureVKey :: Sig a -> VKey
signatureVKey :: Sig a -> VKey
signatureVKey (Sig a
_someData Owner
someOwner) = Owner -> VKey
VKey Owner
someOwner
signatureData :: Sig a -> a
signatureData :: Sig a -> a
signatureData (Sig a
someData Owner
_someOwner) = a
someData
skey :: VKey -> SKey
skey :: VKey -> SKey
skey = Owner -> SKey
SKey (Owner -> SKey) -> (VKey -> Owner) -> VKey -> SKey
forall b c a. (b -> c) -> (a -> b) -> a -> c
. VKey -> Owner
forall a. HasOwner a => a -> Owner
owner
signWithGenesisKey :: VKeyGenesis -> a -> Sig a
signWithGenesisKey :: VKeyGenesis -> a -> Sig a
signWithGenesisKey VKeyGenesis
vkg = SKey -> a -> Sig a
forall a. SKey -> a -> Sig a
sign (VKey -> SKey
skey (VKeyGenesis -> VKey
unVKeyGenesis VKeyGenesis
vkg))