13 unsigned char msg[32];
14 unsigned char key[32];
21 for (i = 0; i < 32; i++) {
24 for (i = 0; i < 32; i++) {
25 data->key[i] = i + 65;
33 unsigned char sig[74];
34 for (i = 0; i < 20000; i++) {
40 for (j = 0; j < 32; j++) {
41 data->msg[j] = sig[j];
42 data->key[j] = sig[j + 32];
#define SECP256K1_CONTEXT_SIGN
SECP256K1_API void secp256k1_context_destroy(secp256k1_context *ctx)
void run_benchmark(char *name, void(*benchmark)(void *), void(*setup)(void *), void(*teardown)(void *), void *data, int count, int iter)
static void bench_sign_setup(void *arg)
SECP256K1_API int secp256k1_ecdsa_sign(const secp256k1_context *ctx, secp256k1_ecdsa_signature *sig, const unsigned char *msg32, const unsigned char *seckey, secp256k1_nonce_function noncefp, const void *ndata) SECP256K1_ARG_NONNULL(1) SECP256K1_ARG_NONNULL(2) SECP256K1_ARG_NONNULL(3) SECP256K1_ARG_NONNULL(4)
static void bench_sign(void *arg)
SECP256K1_API int secp256k1_ecdsa_signature_serialize_der(const secp256k1_context *ctx, unsigned char *output, size_t *outputlen, const secp256k1_ecdsa_signature *sig) SECP256K1_ARG_NONNULL(1) SECP256K1_ARG_NONNULL(2) SECP256K1_ARG_NONNULL(3) SECP256K1_ARG_NONNULL(4)
SECP256K1_API secp256k1_context * secp256k1_context_create(unsigned int flags) SECP256K1_WARN_UNUSED_RESULT