secp256k1-haskell-1.3.0: Bindings for secp256k1
LicenseUNLICENSE
MaintainerJean-Pierre Rupp <jprupp@protonmail.ch>
Stabilityexperimental
PortabilityPOSIX
Safe HaskellSafe-Inferred
LanguageHaskell2010

Crypto.Secp256k1.Internal.BaseOps

Description

The API for this module may change at any time. This is an internal module only exposed for hacking and experimentation.

Documentation

ecPubKeyParse Source #

Arguments

:: Ptr LCtx 
-> Ptr PubKey64 
-> Ptr CUChar

encoded public key array

-> CSize

size of encoded public key array

-> IO Ret 

ecPubKeySerialize Source #

Arguments

:: Ptr LCtx 
-> Ptr CUChar

array for encoded public key, must be large enough

-> Ptr CSize

size of encoded public key, will be updated

-> Ptr PubKey64 
-> SerFlags 
-> IO Ret 

ecdsaSignatureParseDer Source #

Arguments

:: Ptr LCtx 
-> Ptr Sig64 
-> Ptr CUChar

encoded DER signature

-> CSize

size of encoded signature

-> IO Ret 

ecdsaSignatureSerializeDer Source #

Arguments

:: Ptr LCtx 
-> Ptr CUChar

array for encoded signature, must be large enough

-> Ptr CSize

size of encoded signature, will be updated

-> Ptr Sig64 
-> IO Ret 

ecdsaSignatureNormalize Source #

Arguments

:: Ptr LCtx 
-> Ptr Sig64

output

-> Ptr Sig64

input

-> IO Ret 

ecdsaSign Source #

Arguments

:: Ptr LCtx 
-> Ptr Sig64 
-> Ptr Msg32 
-> Ptr SecKey32 
-> FunPtr (NonceFun a) 
-> Ptr a

nonce data

-> IO Ret 

ecPubKeyCombine Source #

Arguments

:: Ptr LCtx 
-> Ptr PubKey64

pointer to public key storage

-> Ptr (Ptr PubKey64)

pointer to array of public keys

-> CInt

number of public keys

-> IO Ret 

schnorrSign Source #

Arguments

:: Ptr LCtx 
-> Ptr Sig64

Signature

-> Ptr Msg32

Message

-> Ptr KeyPair

Keypair

-> Ptr CUChar

Randomness

-> IO CInt 

schnorrVerify Source #

Arguments

:: Ptr LCtx 
-> Ptr Sig64

Signature

-> Ptr Msg32

Message

-> CSize

Message length

-> Ptr XOPubKey32

X-Only pubkey

-> IO CInt 

keyPairCreate Source #

Arguments

:: Ptr LCtx 
-> Ptr KeyPair

Keypair

-> Ptr SecKey32

Secret key

-> IO CInt 

xOnlyPubKeyParse Source #

Arguments

:: Ptr LCtx 
-> Ptr XOPubKey32

Parsed X-Only pubkey

-> Ptr CUChar

Input buffer

-> IO CInt 

xOnlyPubKeySerialize Source #

Arguments

:: Ptr LCtx 
-> Ptr CUChar

Output buffer

-> Ptr XOPubKey32

X-Only pubkey

-> IO CInt 

xOnlyPubKeyFromPubKey Source #

Arguments

:: Ptr LCtx 
-> Ptr XOPubKey32

X-only pubkey

-> Ptr CInt

Parity

-> Ptr PubKey64

Pubkey

-> IO CInt