haskoin-core-0.20.5: Bitcoin & Bitcoin Cash library for Haskell
CopyrightNo rights reserved
LicenseMIT
Maintainerjprupp@protonmail.ch
Stabilityexperimental
PortabilityPOSIX
Safe HaskellNone
LanguageHaskell2010

Haskoin.Crypto.Signature

Contents

Description

ECDSA signatures using secp256k1 curve. Uses functions from upstream secp256k1 library.

Synopsis

Signatures

putSig :: MonadPut m => Sig -> m () Source #

Serialize an ECDSA signature for Bitcoin use.

getSig :: MonadGet m => m Sig Source #

Deserialize an ECDSA signature as commonly encoded in Bitcoin.

signHash :: SecKey -> Hash256 -> Sig Source #

Sign a 256-bit hash using secp256k1 elliptic curve.

verifyHashSig :: Hash256 -> Sig -> PubKey -> Bool Source #

Verify an ECDSA signature for a 256-bit hash.

isCanonicalHalfOrder :: Sig -> Bool Source #

Is canonical half order.

decodeStrictSig :: ByteString -> Maybe Sig Source #

Decode signature strictly.

exportSig :: Sig -> ByteString #

Encode signature as strict DER.