cardano-crypto-class-2.5.0.0: Type classes abstracting over cryptography primitives for Cardano
Safe HaskellSafe-Inferred
LanguageHaskell2010

Cardano.Crypto.DSIGN.BLS12381.Internal

Synopsis

Documentation

data BLS12381DSIGN curve Source #

Instances

Instances details
Generic (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Associated Types

type Rep (PossessionProofDSIGN (BLS12381DSIGN curve)) ∷ TypeType #

Generic (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Associated Types

type Rep (SigDSIGN (BLS12381DSIGN curve)) ∷ TypeType #

Methods

fromSigDSIGN (BLS12381DSIGN curve) → Rep (SigDSIGN (BLS12381DSIGN curve)) x #

toRep (SigDSIGN (BLS12381DSIGN curve)) x → SigDSIGN (BLS12381DSIGN curve) #

Generic (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Associated Types

type Rep (SignKeyDSIGN (BLS12381DSIGN curve)) ∷ TypeType #

Generic (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Associated Types

type Rep (VerKeyDSIGN (BLS12381DSIGN curve)) ∷ TypeType #

Methods

fromVerKeyDSIGN (BLS12381DSIGN curve) → Rep (VerKeyDSIGN (BLS12381DSIGN curve)) x #

toRep (VerKeyDSIGN (BLS12381DSIGN curve)) x → VerKeyDSIGN (BLS12381DSIGN curve) #

Show (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Show (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

showsPrecIntSigDSIGN (BLS12381DSIGN curve) → ShowS #

showSigDSIGN (BLS12381DSIGN curve) → String #

showList ∷ [SigDSIGN (BLS12381DSIGN curve)] → ShowS #

Show (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Show (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

(BLS12381CurveConstraints curve, KnownNat (CompressedPointSize (DualCurve curve) + CompressedPointSize (DualCurve curve))) ⇒ FromCBOR (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

BLS12381CurveConstraints curve ⇒ FromCBOR (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

BLS12381CurveConstraints curve ⇒ FromCBOR (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

BLS12381CurveConstraints curve ⇒ FromCBOR (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

(BLS12381CurveConstraints curve, KnownNat (CompressedPointSize (DualCurve curve) + CompressedPointSize (DualCurve curve))) ⇒ ToCBOR (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

BLS12381CurveConstraints curve ⇒ ToCBOR (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

toCBORSigDSIGN (BLS12381DSIGN curve) → Encoding Source #

encodedSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy (SigDSIGN (BLS12381DSIGN curve)) → Size Source #

encodedListSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy [SigDSIGN (BLS12381DSIGN curve)] → Size Source #

BLS12381CurveConstraints curve ⇒ ToCBOR (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

toCBORSignKeyDSIGN (BLS12381DSIGN curve) → Encoding Source #

encodedSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy (SignKeyDSIGN (BLS12381DSIGN curve)) → Size Source #

encodedListSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy [SignKeyDSIGN (BLS12381DSIGN curve)] → Size Source #

BLS12381CurveConstraints curve ⇒ ToCBOR (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

toCBORVerKeyDSIGN (BLS12381DSIGN curve) → Encoding Source #

encodedSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy (VerKeyDSIGN (BLS12381DSIGN curve)) → Size Source #

encodedListSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy [VerKeyDSIGN (BLS12381DSIGN curve)] → Size Source #

(BLS12381CurveConstraints curve, KnownNat (CompressedPointSize (DualCurve curve) + CompressedPointSize (DualCurve curve))) ⇒ DSIGNAggregatable (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

BLS12381CurveConstraints curve ⇒ DSIGNAlgorithm (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

NFData (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

rnfPossessionProofDSIGN (BLS12381DSIGN curve) → () #

NFData (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

rnfSigDSIGN (BLS12381DSIGN curve) → () #

NFData (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

rnfSignKeyDSIGN (BLS12381DSIGN curve) → () #

NFData (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

rnfVerKeyDSIGN (BLS12381DSIGN curve) → () #

BLS (DualCurve curve) ⇒ Eq (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

BLS (DualCurve curve) ⇒ Eq (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

(==)SigDSIGN (BLS12381DSIGN curve) → SigDSIGN (BLS12381DSIGN curve) → Bool #

(/=)SigDSIGN (BLS12381DSIGN curve) → SigDSIGN (BLS12381DSIGN curve) → Bool #

Eq (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

BLS curve ⇒ Eq (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

NoThunks (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

NoThunks (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

NoThunks (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

NoThunks (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type Rep (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type Rep (PossessionProofDSIGN (BLS12381DSIGN curve)) = D1 ('MetaData "PossessionProofDSIGN" "Cardano.Crypto.DSIGN.BLS12381.Internal" "cardano-crypto-class-2.5.0.0-inplace" 'False) (C1 ('MetaCons "PossessionProofBLS12381" 'PrefixI 'True) (S1 ('MetaSel ('Just "mu1") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Point (DualCurve curve))) :*: S1 ('MetaSel ('Just "mu2") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Point (DualCurve curve)))))
type Rep (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type Rep (SigDSIGN (BLS12381DSIGN curve)) = D1 ('MetaData "SigDSIGN" "Cardano.Crypto.DSIGN.BLS12381.Internal" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "SigBLS12381" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Point (DualCurve curve)))))
type Rep (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type Rep (SignKeyDSIGN (BLS12381DSIGN curve)) = D1 ('MetaData "SignKeyDSIGN" "Cardano.Crypto.DSIGN.BLS12381.Internal" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "SignKeyBLS12381" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Scalar)))
type Rep (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type Rep (VerKeyDSIGN (BLS12381DSIGN curve)) = D1 ('MetaData "VerKeyDSIGN" "Cardano.Crypto.DSIGN.BLS12381.Internal" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "VerKeyBLS12381" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Point curve))))
type ContextDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type KeyGenContextDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

data PossessionProofDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type PossessionProofSizeDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type SeedSizeDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type SeedSizeDSIGN (BLS12381DSIGN curve) = 32
newtype SigDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

newtype SigDSIGN (BLS12381DSIGN curve) = SigBLS12381 (Point (DualCurve curve))
type SigSizeDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

newtype SignKeyDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type SignKeySizeDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type Signable (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type SizeSigDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type SizeSignKeyDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type SizeVerKeyDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

newtype VerKeyDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

newtype VerKeyDSIGN (BLS12381DSIGN curve) = VerKeyBLS12381 (Point curve)
type VerKeySizeDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type BLS12381MinVerKeyDSIGN = BLS12381DSIGN Curve1 Source #

The BLS12-381 minimal verification key size variant

type BLS12381MinSigDSIGN = BLS12381DSIGN Curve2 Source #

The BLS12-381 minimal signature size variant

type BLS12381CurveConstraints curve = (BLS curve, BLS (DualCurve curve), KnownSymbol (CurveVariant curve), KnownNat (CompressedPointSize curve), KnownNat (CompressedPointSize (DualCurve curve)), Typeable curve) Source #

data family VerKeyDSIGN v ∷ Type Source #

Instances

Instances details
Generic (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Associated Types

type Rep (VerKeyDSIGN (BLS12381DSIGN curve)) ∷ TypeType #

Methods

fromVerKeyDSIGN (BLS12381DSIGN curve) → Rep (VerKeyDSIGN (BLS12381DSIGN curve)) x #

toRep (VerKeyDSIGN (BLS12381DSIGN curve)) x → VerKeyDSIGN (BLS12381DSIGN curve) #

Generic (VerKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

Associated Types

type Rep (VerKeyDSIGN EcdsaSecp256k1DSIGN) ∷ TypeType #

Generic (VerKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Associated Types

type Rep (VerKeyDSIGN Ed25519DSIGN) ∷ TypeType #

Generic (VerKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

Associated Types

type Rep (VerKeyDSIGN Ed448DSIGN) ∷ TypeType #

Generic (VerKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Associated Types

type Rep (VerKeyDSIGN MockDSIGN) ∷ TypeType #

Generic (VerKeyDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

Associated Types

type Rep (VerKeyDSIGN NeverDSIGN) ∷ TypeType #

Generic (VerKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

Associated Types

type Rep (VerKeyDSIGN SchnorrSecp256k1DSIGN) ∷ TypeType #

Num (VerKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Show (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Show (VerKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

Show (VerKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Show (VerKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

Show (VerKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Show (VerKeyDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

Show (VerKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

BLS12381CurveConstraints curve ⇒ FromCBOR (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

FromCBOR (VerKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

FromCBOR (VerKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

FromCBOR (VerKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

FromCBOR (VerKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

FromCBOR (VerKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

BLS12381CurveConstraints curve ⇒ ToCBOR (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

toCBORVerKeyDSIGN (BLS12381DSIGN curve) → Encoding Source #

encodedSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy (VerKeyDSIGN (BLS12381DSIGN curve)) → Size Source #

encodedListSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy [VerKeyDSIGN (BLS12381DSIGN curve)] → Size Source #

ToCBOR (VerKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

ToCBOR (VerKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

ToCBOR (VerKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

ToCBOR (VerKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

ToCBOR (VerKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

DirectDeserialise (VerKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Methods

directDeserialise ∷ (MonadST m, MonadThrow m) ⇒ (Ptr CCharCSize → m ()) → m (VerKeyDSIGN Ed25519DSIGN) Source #

DirectSerialise (VerKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Methods

directSerialise ∷ (MonadST m, MonadThrow m) ⇒ (Ptr CCharCSize → m ()) → VerKeyDSIGN Ed25519DSIGN → m () Source #

NFData (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

rnfVerKeyDSIGN (BLS12381DSIGN curve) → () #

NFData (VerKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

NFData (VerKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Methods

rnfVerKeyDSIGN Ed25519DSIGN → () #

NFData (VerKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

Methods

rnfVerKeyDSIGN Ed448DSIGN → () #

NFData (VerKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Methods

rnfVerKeyDSIGN MockDSIGN → () #

NFData (VerKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

BLS curve ⇒ Eq (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Eq (VerKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

Eq (VerKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Eq (VerKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

Eq (VerKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Eq (VerKeyDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

Eq (VerKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

(TypeError ('Text "Ord not supported for verification keys, use the hash instead") ∷ Constraint, Eq (VerKeyDSIGN v)) ⇒ Ord (VerKeyDSIGN v) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Class

ByteArrayAccess (VerKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

NoThunks (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

NoThunks (VerKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

NoThunks (VerKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

NoThunks (VerKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

NoThunks (VerKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

NoThunks (VerKeyDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

NoThunks (VerKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

newtype VerKeyDSIGN EcdsaSecp256k1DSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

newtype VerKeyDSIGN Ed25519DSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

newtype VerKeyDSIGN Ed448DSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

newtype VerKeyDSIGN MockDSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

data VerKeyDSIGN NeverDSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

newtype VerKeyDSIGN SchnorrSecp256k1DSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

type Rep (VerKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type Rep (VerKeyDSIGN (BLS12381DSIGN curve)) = D1 ('MetaData "VerKeyDSIGN" "Cardano.Crypto.DSIGN.BLS12381.Internal" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "VerKeyBLS12381" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Point curve))))
type Rep (VerKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

type Rep (VerKeyDSIGN EcdsaSecp256k1DSIGN) = D1 ('MetaData "VerKeyDSIGN" "Cardano.Crypto.DSIGN.EcdsaSecp256k1" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "VerKeyEcdsaSecp256k1" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PinnedSizedBytes SECP256K1_ECDSA_PUBKEY_BYTES_INTERNAL))))
type Rep (VerKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

type Rep (VerKeyDSIGN Ed25519DSIGN) = D1 ('MetaData "VerKeyDSIGN" "Cardano.Crypto.DSIGN.Ed25519" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "VerKeyEd25519DSIGN" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PinnedSizedBytes (VerKeySizeDSIGN Ed25519DSIGN)))))
type Rep (VerKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

type Rep (VerKeyDSIGN Ed448DSIGN) = D1 ('MetaData "VerKeyDSIGN" "Cardano.Crypto.DSIGN.Ed448" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "VerKeyEd448DSIGN" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PublicKey)))
type Rep (VerKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

type Rep (VerKeyDSIGN MockDSIGN) = D1 ('MetaData "VerKeyDSIGN" "Cardano.Crypto.DSIGN.Mock" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "VerKeyMockDSIGN" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)))
type Rep (VerKeyDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

type Rep (VerKeyDSIGN NeverDSIGN) = D1 ('MetaData "VerKeyDSIGN" "Cardano.Crypto.DSIGN.NeverUsed" "cardano-crypto-class-2.5.0.0-inplace" 'False) (C1 ('MetaCons "NeverUsedVerKeyDSIGN" 'PrefixI 'False) (U1TypeType))
type Rep (VerKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

type Rep (VerKeyDSIGN SchnorrSecp256k1DSIGN) = D1 ('MetaData "VerKeyDSIGN" "Cardano.Crypto.DSIGN.SchnorrSecp256k1" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "VerKeySchnorrSecp256k1" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PinnedSizedBytes SECP256K1_SCHNORR_PUBKEY_BYTES_INTERNAL))))
newtype VerKeyDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

newtype VerKeyDSIGN (BLS12381DSIGN curve) = VerKeyBLS12381 (Point curve)

data family SignKeyDSIGN v ∷ Type Source #

Instances

Instances details
Generic (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Associated Types

type Rep (SignKeyDSIGN (BLS12381DSIGN curve)) ∷ TypeType #

Generic (SignKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

Associated Types

type Rep (SignKeyDSIGN EcdsaSecp256k1DSIGN) ∷ TypeType #

Generic (SignKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Associated Types

type Rep (SignKeyDSIGN Ed25519DSIGN) ∷ TypeType #

Generic (SignKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

Associated Types

type Rep (SignKeyDSIGN Ed448DSIGN) ∷ TypeType #

Generic (SignKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Associated Types

type Rep (SignKeyDSIGN MockDSIGN) ∷ TypeType #

Generic (SignKeyDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

Associated Types

type Rep (SignKeyDSIGN NeverDSIGN) ∷ TypeType #

Generic (SignKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

Associated Types

type Rep (SignKeyDSIGN SchnorrSecp256k1DSIGN) ∷ TypeType #

Num (SignKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Show (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Show (SignKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

Show (SignKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Show (SignKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

Show (SignKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Show (SignKeyDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

Show (SignKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

BLS12381CurveConstraints curve ⇒ FromCBOR (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

FromCBOR (SignKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

FromCBOR (SignKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

FromCBOR (SignKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

FromCBOR (SignKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

FromCBOR (SignKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

BLS12381CurveConstraints curve ⇒ ToCBOR (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

toCBORSignKeyDSIGN (BLS12381DSIGN curve) → Encoding Source #

encodedSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy (SignKeyDSIGN (BLS12381DSIGN curve)) → Size Source #

encodedListSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy [SignKeyDSIGN (BLS12381DSIGN curve)] → Size Source #

ToCBOR (SignKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

ToCBOR (SignKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

ToCBOR (SignKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

ToCBOR (SignKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

ToCBOR (SignKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

NFData (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

rnfSignKeyDSIGN (BLS12381DSIGN curve) → () #

NFData (SignKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

NFData (SignKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Methods

rnfSignKeyDSIGN Ed25519DSIGN → () #

NFData (SignKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

Methods

rnfSignKeyDSIGN Ed448DSIGN → () #

NFData (SignKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Methods

rnfSignKeyDSIGN MockDSIGN → () #

NFData (SignKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

Eq (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Eq (SignKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

Eq (SignKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Eq (SignKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

Eq (SignKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Eq (SignKeyDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

Eq (SignKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

(TypeError ('Text "Ord not supported for signing keys, use the hash instead") ∷ Constraint, Eq (SignKeyDSIGN v)) ⇒ Ord (SignKeyDSIGN v) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Class

ByteArrayAccess (SignKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

NoThunks (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

NoThunks (SignKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

NoThunks (SignKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

NoThunks (SignKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

NoThunks (SignKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

NoThunks (SignKeyDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

NoThunks (SignKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

newtype SignKeyDSIGN EcdsaSecp256k1DSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

newtype SignKeyDSIGN Ed25519DSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

newtype SignKeyDSIGN Ed448DSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

newtype SignKeyDSIGN MockDSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

data SignKeyDSIGN NeverDSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

newtype SignKeyDSIGN SchnorrSecp256k1DSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

type Rep (SignKeyDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type Rep (SignKeyDSIGN (BLS12381DSIGN curve)) = D1 ('MetaData "SignKeyDSIGN" "Cardano.Crypto.DSIGN.BLS12381.Internal" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "SignKeyBLS12381" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Scalar)))
type Rep (SignKeyDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

type Rep (SignKeyDSIGN EcdsaSecp256k1DSIGN) = D1 ('MetaData "SignKeyDSIGN" "Cardano.Crypto.DSIGN.EcdsaSecp256k1" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "SignKeyEcdsaSecp256k1" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PinnedSizedBytes SECP256K1_ECDSA_PRIVKEY_BYTES))))
type Rep (SignKeyDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

type Rep (SignKeyDSIGN Ed25519DSIGN) = D1 ('MetaData "SignKeyDSIGN" "Cardano.Crypto.DSIGN.Ed25519" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "SignKeyEd25519DSIGN" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PinnedSizedBytes CRYPTO_SIGN_ED25519_SECRETKEYBYTES))))
type Rep (SignKeyDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

type Rep (SignKeyDSIGN Ed448DSIGN) = D1 ('MetaData "SignKeyDSIGN" "Cardano.Crypto.DSIGN.Ed448" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "SignKeyEd448DSIGN" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SecretKey)))
type Rep (SignKeyDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

type Rep (SignKeyDSIGN MockDSIGN) = D1 ('MetaData "SignKeyDSIGN" "Cardano.Crypto.DSIGN.Mock" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "SignKeyMockDSIGN" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)))
type Rep (SignKeyDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

type Rep (SignKeyDSIGN NeverDSIGN) = D1 ('MetaData "SignKeyDSIGN" "Cardano.Crypto.DSIGN.NeverUsed" "cardano-crypto-class-2.5.0.0-inplace" 'False) (C1 ('MetaCons "NeverUsedSignKeyDSIGN" 'PrefixI 'False) (U1TypeType))
type Rep (SignKeyDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

type Rep (SignKeyDSIGN SchnorrSecp256k1DSIGN) = D1 ('MetaData "SignKeyDSIGN" "Cardano.Crypto.DSIGN.SchnorrSecp256k1" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "SignKeySchnorrSecp256k1" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PinnedSizedBytes (SignKeySizeDSIGN SchnorrSecp256k1DSIGN)))))
newtype SignKeyDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

data family SigDSIGN v ∷ Type Source #

Instances

Instances details
Generic (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Associated Types

type Rep (SigDSIGN (BLS12381DSIGN curve)) ∷ TypeType #

Methods

fromSigDSIGN (BLS12381DSIGN curve) → Rep (SigDSIGN (BLS12381DSIGN curve)) x #

toRep (SigDSIGN (BLS12381DSIGN curve)) x → SigDSIGN (BLS12381DSIGN curve) #

Generic (SigDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

Associated Types

type Rep (SigDSIGN EcdsaSecp256k1DSIGN) ∷ TypeType #

Generic (SigDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Associated Types

type Rep (SigDSIGN Ed25519DSIGN) ∷ TypeType #

Generic (SigDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

Associated Types

type Rep (SigDSIGN Ed448DSIGN) ∷ TypeType #

Generic (SigDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Associated Types

type Rep (SigDSIGN MockDSIGN) ∷ TypeType #

Generic (SigDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

Associated Types

type Rep (SigDSIGN NeverDSIGN) ∷ TypeType #

Generic (SigDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

Associated Types

type Rep (SigDSIGN SchnorrSecp256k1DSIGN) ∷ TypeType #

Show (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

showsPrecIntSigDSIGN (BLS12381DSIGN curve) → ShowS #

showSigDSIGN (BLS12381DSIGN curve) → String #

showList ∷ [SigDSIGN (BLS12381DSIGN curve)] → ShowS #

Show (SigDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

Show (SigDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Show (SigDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

Show (SigDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Show (SigDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

Show (SigDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

BLS12381CurveConstraints curve ⇒ FromCBOR (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

FromCBOR (SigDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

FromCBOR (SigDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

FromCBOR (SigDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

FromCBOR (SigDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

FromCBOR (SigDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

BLS12381CurveConstraints curve ⇒ ToCBOR (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

toCBORSigDSIGN (BLS12381DSIGN curve) → Encoding Source #

encodedSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy (SigDSIGN (BLS12381DSIGN curve)) → Size Source #

encodedListSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy [SigDSIGN (BLS12381DSIGN curve)] → Size Source #

ToCBOR (SigDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

ToCBOR (SigDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

ToCBOR (SigDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

ToCBOR (SigDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

ToCBOR (SigDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

NFData (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

rnfSigDSIGN (BLS12381DSIGN curve) → () #

NFData (SigDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

Methods

rnfSigDSIGN EcdsaSecp256k1DSIGN → () #

NFData (SigDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Methods

rnfSigDSIGN Ed25519DSIGN → () #

NFData (SigDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Methods

rnfSigDSIGN MockDSIGN → () #

NFData (SigDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

BLS (DualCurve curve) ⇒ Eq (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

(==)SigDSIGN (BLS12381DSIGN curve) → SigDSIGN (BLS12381DSIGN curve) → Bool #

(/=)SigDSIGN (BLS12381DSIGN curve) → SigDSIGN (BLS12381DSIGN curve) → Bool #

Eq (SigDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

Eq (SigDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Eq (SigDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

Eq (SigDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

Eq (SigDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

Eq (SigDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

Ord (SigDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

ByteArrayAccess (SigDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

NoThunks (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

NoThunks (SigDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

NoThunks (SigDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

NoThunks (SigDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

NoThunks (SigDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

NoThunks (SigDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

NoThunks (SigDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

newtype SigDSIGN EcdsaSecp256k1DSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

newtype SigDSIGN Ed25519DSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

newtype SigDSIGN Ed448DSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

data SigDSIGN MockDSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

data SigDSIGN NeverDSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

newtype SigDSIGN SchnorrSecp256k1DSIGN Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

type Rep (SigDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type Rep (SigDSIGN (BLS12381DSIGN curve)) = D1 ('MetaData "SigDSIGN" "Cardano.Crypto.DSIGN.BLS12381.Internal" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "SigBLS12381" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Point (DualCurve curve)))))
type Rep (SigDSIGN EcdsaSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

type Rep (SigDSIGN EcdsaSecp256k1DSIGN) = D1 ('MetaData "SigDSIGN" "Cardano.Crypto.DSIGN.EcdsaSecp256k1" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "SigEcdsaSecp256k1" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PinnedSizedBytes SECP256K1_ECDSA_SIGNATURE_BYTES_INTERNAL))))
type Rep (SigDSIGN Ed25519DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

type Rep (SigDSIGN Ed25519DSIGN) = D1 ('MetaData "SigDSIGN" "Cardano.Crypto.DSIGN.Ed25519" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "SigEd25519DSIGN" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PinnedSizedBytes (SigSizeDSIGN Ed25519DSIGN)))))
type Rep (SigDSIGN Ed448DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed448

type Rep (SigDSIGN Ed448DSIGN) = D1 ('MetaData "SigDSIGN" "Cardano.Crypto.DSIGN.Ed448" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "SigEd448DSIGN" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Signature)))
type Rep (SigDSIGN MockDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.Mock

type Rep (SigDSIGN MockDSIGN) = D1 ('MetaData "SigDSIGN" "Cardano.Crypto.DSIGN.Mock" "cardano-crypto-class-2.5.0.0-inplace" 'False) (C1 ('MetaCons "SigMockDSIGN" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Hash ShortHash ())) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word64)))
type Rep (SigDSIGN NeverDSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.NeverUsed

type Rep (SigDSIGN NeverDSIGN) = D1 ('MetaData "SigDSIGN" "Cardano.Crypto.DSIGN.NeverUsed" "cardano-crypto-class-2.5.0.0-inplace" 'False) (C1 ('MetaCons "NeverUsedSigDSIGN" 'PrefixI 'False) (U1TypeType))
type Rep (SigDSIGN SchnorrSecp256k1DSIGN) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

type Rep (SigDSIGN SchnorrSecp256k1DSIGN) = D1 ('MetaData "SigDSIGN" "Cardano.Crypto.DSIGN.SchnorrSecp256k1" "cardano-crypto-class-2.5.0.0-inplace" 'True) (C1 ('MetaCons "SigSchnorrSecp256k1" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PinnedSizedBytes (SigSizeDSIGN SchnorrSecp256k1DSIGN)))))
newtype SigDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

newtype SigDSIGN (BLS12381DSIGN curve) = SigBLS12381 (Point (DualCurve curve))

data family PossessionProofDSIGN v ∷ Type Source #

Instances

Instances details
Generic (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Associated Types

type Rep (PossessionProofDSIGN (BLS12381DSIGN curve)) ∷ TypeType #

Show (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

(BLS12381CurveConstraints curve, KnownNat (CompressedPointSize (DualCurve curve) + CompressedPointSize (DualCurve curve))) ⇒ FromCBOR (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

(BLS12381CurveConstraints curve, KnownNat (CompressedPointSize (DualCurve curve) + CompressedPointSize (DualCurve curve))) ⇒ ToCBOR (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

NFData (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

rnfPossessionProofDSIGN (BLS12381DSIGN curve) → () #

BLS (DualCurve curve) ⇒ Eq (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

NoThunks (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type Rep (PossessionProofDSIGN (BLS12381DSIGN curve)) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type Rep (PossessionProofDSIGN (BLS12381DSIGN curve)) = D1 ('MetaData "PossessionProofDSIGN" "Cardano.Crypto.DSIGN.BLS12381.Internal" "cardano-crypto-class-2.5.0.0-inplace" 'False) (C1 ('MetaCons "PossessionProofBLS12381" 'PrefixI 'True) (S1 ('MetaSel ('Just "mu1") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Point (DualCurve curve))) :*: S1 ('MetaSel ('Just "mu2") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Point (DualCurve curve)))))
data PossessionProofDSIGN (BLS12381DSIGN curve) Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

data BLS12381SignContext Source #

This module provides support only for proof-of-possession (PoP) ciphersuite contexts:

even though the underlying signing and verification primitives can be used to realise the Basic (NUL) and message-augmentation (AUG) schemes as well.

Why only the PoP ciphersuite is exported

The main reason is API clarity and safety.

The IETF BLS draft defines three schemes:

  • Basic (NUL): aggregation is safe only when all messages in an aggregate are distinct.
  • Message augmentation (AUG): aggregation is made safe by signing PK || message instead of just message.
  • Proof of possession (POP): aggregation is made safe by requiring a separate proof that each public key owner knows the corresponding secret key.

In this module, the supported aggregation workflow is the PoP one:

By contrast, this module does not provide the draft's general AggregateVerify((PK_1, ..., PK_n), (message_1, ..., message_n), signature) API for aggregation over different messages. Exporting predefined Basic and AUG contexts would therefore suggest a broader aggregate-signature API than the module actually offers.

Restricting the public ciphersuite exports to PoP makes the intended usage explicit: this module supports ordinary BLS signing and verification, plus a PoP-based aggregation story.

What the exported contexts mean

The exported values are standard BLS ciphersuite DSTs from draft-irtf-cfrg-bls-signature-06, Section 4.2:

  • minSigPoPDST selects the minimal-signature-size variant: signatures live in G1 (48 bytes compressed), public keys in G2 (96 bytes compressed).
  • minVerKeyPoPDST selects the minimal-pubkey-size variant: public keys live in G1 (48 bytes compressed), signatures in G2 (96 bytes compressed).

The draft recommends the minimal-pubkey-size variant for aggregation, because the size of (PK_1, ..., PK_n, signature) is usually dominated by the public keys. Other protocols, like Leios, might favor minimal-signature-size.

Example

A typical same-message aggregation workflow is:

-- Minimal-pubkey-size PoP ciphersuite
let ctx = minVerKeyPoPDST

-- Each participant has a signing key and derived verification key
let vk1 = deriveVerKeyDSIGN sk1
    vk2 = deriveVerKeyDSIGN sk2

-- Each participant proves possession of its secret key
let pop1 = createPossessionProofDSIGN ctx sk1
    pop2 = createPossessionProofDSIGN ctx sk2

verifyPossessionProofDSIGN ctx vk1 pop1
verifyPossessionProofDSIGN ctx vk2 pop2

-- Once the proofs have been checked, it is safe to aggregate keys
Right avk <- uncheckedAggregateVerKeysDSIGN [vk1, vk2]

-- Both participants sign the same message
let sig1 = signDSIGN ctx msg sk1
    sig2 = signDSIGN ctx msg sk2

Right asig <- aggregateSigsDSIGN [sig1, sig2]

-- The aggregate signature can then be checked against the aggregate key
verifyDSIGN ctx avk msg asig

Instances

Instances details
Generic BLS12381SignContext Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Associated Types

type Rep BLS12381SignContextTypeType #

Show BLS12381SignContext Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

NFData BLS12381SignContext Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

Methods

rnfBLS12381SignContext → () #

Eq BLS12381SignContext Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

NoThunks BLS12381SignContext Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type Rep BLS12381SignContext Source # 
Instance details

Defined in Cardano.Crypto.DSIGN.BLS12381.Internal

type Rep BLS12381SignContext = D1 ('MetaData "BLS12381SignContext" "Cardano.Crypto.DSIGN.BLS12381.Internal" "cardano-crypto-class-2.5.0.0-inplace" 'False) (C1 ('MetaCons "BLS12381SignContext" 'PrefixI 'True) (S1 ('MetaSel ('Just "blsSignContextDst") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe ByteString)) :*: S1 ('MetaSel ('Just "blsSignContextAug") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe ByteString))))

minSigPoPDSTBLS12381SignContext Source #

The BLS12381 signing context for the PoP based ciphersuite for the minimal signature size variant of bls signatures

minVerKeyPoPDSTBLS12381SignContext Source #

The BLS12381 signing context for the PoP based ciphersuite for the minimal verification key size variant of bls signatures