1#ifndef SECP256K1_SCHNORRSIG_H
2#define SECP256K1_SCHNORRSIG_H
42 unsigned char *nonce32,
43 const unsigned char *msg,
45 const unsigned char *key32,
46 const unsigned char *xonly_pk32,
47 const unsigned char *algo,
83 unsigned char magic[4];
88#define SECP256K1_SCHNORRSIG_EXTRAPARAMS_MAGIC { 0xda, 0x6f, 0xb3, 0x8c }
89#define SECP256K1_SCHNORRSIG_EXTRAPARAMS_INIT {\
90 SECP256K1_SCHNORRSIG_EXTRAPARAMS_MAGIC,\
121 unsigned char *sig64,
122 const unsigned char *msg32,
124 const unsigned char *aux_rand32
131 unsigned char *sig64,
132 const
unsigned char *msg32,
134 const
unsigned char *aux_rand32
153 unsigned char *sig64,
154 const
unsigned char *msg,
172 const
unsigned char *sig64,
173 const
unsigned char *msg,
#define SECP256K1_ARG_NONNULL(_x)
#define SECP256K1_DEPRECATED(_msg)
#define SECP256K1_WARN_UNUSED_RESULT
int(* secp256k1_nonce_function_hardened)(unsigned char *nonce32, const unsigned char *msg, size_t msglen, const unsigned char *key32, const unsigned char *xonly_pk32, const unsigned char *algo, size_t algolen, void *data)
SECP256K1_API int secp256k1_schnorrsig_sign32(const secp256k1_context *ctx, unsigned char *sig64, const unsigned char *msg32, const secp256k1_keypair *keypair, const unsigned char *aux_rand32) SECP256K1_ARG_NONNULL(1) SECP256K1_ARG_NONNULL(2) SECP256K1_ARG_NONNULL(3) SECP256K1_ARG_NONNULL(4)
SECP256K1_API int secp256k1_schnorrsig_sign(const secp256k1_context *ctx, unsigned char *sig64, const unsigned char *msg32, const secp256k1_keypair *keypair, const unsigned char *aux_rand32) SECP256K1_ARG_NONNULL(1) SECP256K1_ARG_NONNULL(2) SECP256K1_ARG_NONNULL(3) SECP256K1_ARG_NONNULL(4) SECP256K1_DEPRECATED("Use secp256k1_schnorrsig_sign32 instead")
SECP256K1_API const secp256k1_nonce_function_hardened secp256k1_nonce_function_bip340
SECP256K1_API int secp256k1_schnorrsig_sign_custom(const secp256k1_context *ctx, unsigned char *sig64, const unsigned char *msg, size_t msglen, const secp256k1_keypair *keypair, secp256k1_schnorrsig_extraparams *extraparams) SECP256K1_ARG_NONNULL(1) SECP256K1_ARG_NONNULL(2) SECP256K1_ARG_NONNULL(5)
SECP256K1_API SECP256K1_WARN_UNUSED_RESULT int secp256k1_schnorrsig_verify(const secp256k1_context *ctx, const unsigned char *sig64, const unsigned char *msg, size_t msglen, const secp256k1_xonly_pubkey *pubkey) SECP256K1_ARG_NONNULL(1) SECP256K1_ARG_NONNULL(2) SECP256K1_ARG_NONNULL(5)