bulletproofs: add new empty module

This commit is contained in:
Andrew Poelstra
2022-08-27 15:02:44 +00:00
committed by sanket1729
parent 6162d577fe
commit 048f9f8642
11 changed files with 128 additions and 1 deletions

38
src/bench_bulletproofs.c Normal file
View File

@@ -0,0 +1,38 @@
/**********************************************************************
* Copyright (c) 2020 Andrew Poelstra *
* Distributed under the MIT software license, see the accompanying *
* file COPYING or http://www.opensource.org/licenses/mit-license.php.*
**********************************************************************/
#include <stdint.h>
#include "include/secp256k1_bulletproofs.h"
#include "util.h"
#include "bench.h"
typedef struct {
secp256k1_context* ctx;
} bench_bulletproofs_data;
static void bench_bulletproofs_setup(void* arg) {
(void) arg;
}
static void bench_bulletproofs(void* arg, int iters) {
bench_bulletproofs_data *data = (bench_bulletproofs_data*)arg;
(void) data;
(void) iters;
}
int main(void) {
bench_bulletproofs_data data;
int iters = get_iters(32);
data.ctx = secp256k1_context_create(SECP256K1_CONTEXT_SIGN | SECP256K1_CONTEXT_VERIFY);
run_benchmark("bulletproofs_verify_bit", bench_bulletproofs, bench_bulletproofs_setup, NULL, &data, 10, iters);
secp256k1_context_destroy(data.ctx);
return 0;
}

View File

@@ -0,0 +1,10 @@
include_HEADERS += include/secp256k1_bulletproofs.h
noinst_HEADERS += src/modules/bulletproofs/tests_impl.h
noinst_HEADERS += src/modules/bulletproofs/main_impl.h
if USE_BENCHMARK
noinst_PROGRAMS += bench_bulletproofs
bench_bulletproofs_SOURCES = src/bench_bulletproofs.c
bench_bulletproofs_LDADD = libsecp256k1.la $(SECP_LIBS)
bench_bulletproofs_LDFLAGS = -static
endif

View File

@@ -0,0 +1,12 @@
/**********************************************************************
* Copyright (c) 2020 Andrew Poelstra *
* Distributed under the MIT software license, see the accompanying *
* file COPYING or http://www.opensource.org/licenses/mit-license.php.*
**********************************************************************/
#ifndef _SECP256K1_MODULE_BULLETPROOFS_MAIN_
#define _SECP256K1_MODULE_BULLETPROOFS_MAIN_
/* TODO */
#endif

View File

@@ -0,0 +1,14 @@
/**********************************************************************
* Copyright (c) 2020 Andrew Poelstra *
* Distributed under the MIT software license, see the accompanying *
* file COPYING or http://www.opensource.org/licenses/mit-license.php.*
**********************************************************************/
#ifndef _SECP256K1_MODULE_BULLETPROOFS_TEST_
#define _SECP256K1_MODULE_BULLETPROOFS_TEST_
void run_bulletproofs_tests(void) {
/* TODO */
}
#endif

View File

@@ -800,6 +800,10 @@ int secp256k1_tagged_sha256(const secp256k1_context* ctx, unsigned char *hash32,
return 1;
}
#ifdef ENABLE_MODULE_BULLETPROOFS
# include "modules/bulletproofs/main_impl.h"
#endif
#ifdef ENABLE_MODULE_ECDH
# include "modules/ecdh/main_impl.h"
#endif

View File

@@ -7132,6 +7132,10 @@ void run_ecdsa_edge_cases(void) {
test_ecdsa_edge_cases();
}
#ifdef ENABLE_MODULE_BULLETPROOFS
# include "modules/bulletproofs/tests_impl.h"
#endif
#ifdef ENABLE_MODULE_ECDH
# include "modules/ecdh/tests_impl.h"
#endif
@@ -7452,6 +7456,10 @@ int main(int argc, char **argv) {
/* EC key arithmetic test */
run_eckey_negate_test();
#ifdef ENABLE_MODULE_BULLETPROOFS
run_bulletproofs_tests();
#endif
#ifdef ENABLE_MODULE_ECDH
/* ecdh tests */
run_ecdh_tests();