DarkWindman
baac08d207
modules, tests: Port bitcoin-core/secp256k1#1777 and bitcoin-core/secp256k1#1824 to zkp-specific code
2026-04-20 15:39:54 +03:00
Tim Ruffing
78999f3a9a
surjection: Fix leading whitespace
2026-03-05 21:12:46 +01:00
mllwchrry
126501f58b
modules: Port bitcoin-core/secp256k1#1815 to zkp-specific code
2026-03-03 15:16:04 +02:00
DarkWindman
e3bddfa750
modules: Port bitcoin-core/secp256k1#1579 to zkp-specific code
2026-02-19 10:24:07 +02:00
Jon Griffiths
fcc0299fa5
surjectionproof: remove unused include
...
Following the merge of b627ba7050 from
upstream, this include should have been deleted as well.
2023-10-31 16:53:26 +13:00
Tim Ruffing
e444d24bca
Fix include guards: No _ prefix/suffix but _H suffix (as in upstream)
2023-04-21 12:02:28 +02:00
Tim Ruffing
4eca406f4c
Use relative #include paths in library (as in upstream)
2023-04-21 11:50:24 +02:00
Jonas Nick
0202d839fb
Merge elementsproject/secp256k1-zkp#199 : surjectionproof: make sure that n_used_pubkeys > 0 in generate
...
5ac8fb035e surjectionproof: make sure that n_used_pubkeys > 0 in generate (Jonas Nick)
Pull request description:
ACKs for top commit:
apoelstra:
utACK 5ac8fb035e
Tree-SHA512: 915f7181e69e2c4e1f830d6c2620a2d9b0af4d2ae8a63709b489b01ed9e13ccfeeaedebd4680cf2d927cd473a6ae88602cf29e2fdd116cb597fba6c0ab77720d
2022-08-18 19:54:00 +00:00
Jonas Nick
5ac8fb035e
surjectionproof: make sure that n_used_pubkeys > 0 in generate
...
If the proof was generated with surjectionproof_initialize (as mandated by the
API docs), then n_used_pubkeys can never be 0. Without this commit, compilers
will (rightfully) warn that borromean_s[ring_input_index] is not initialized in
surjectionproof_generate. Therefore, this commit makes sure that n_used_pubkeys
is greater than 0 which ensures that the array is initialized at
ring_input_index.
2022-08-15 20:01:39 +00:00
Andrew Poelstra
5a40f3d99b
replace memcmp with secp256k1_memcmp_var throughout the codebase
...
memcmp only appears in -zkp-specific modules. Fix those.
2022-08-10 22:14:31 +00:00
Andrew Poelstra
347f96d94a
fix include paths in all the -zkp modules
...
This is causing out-of-tree build failures in Elements.
2022-08-05 14:56:10 +00:00
Andrew Poelstra
d1175d265d
surjectionproof: use secp256k1_memcmp_var rather than bare memcmp
...
Co-authored-by: Tim Ruffing <crypto@timruffing.de >
2022-07-29 21:04:04 +00:00
Andrew Poelstra
bf18ff5a8c
surjectionproof: fix generation to fail when any input == the output
...
Verification will fail in this case, so don't "succeed" in generating a bad proof.
2022-07-26 17:14:49 +00:00
Jonas Nick
938725c1c9
Merge commits 'd7ec49a6 9a5a87e0 aa5d34a8 2a3a97c6 ' into temp-merge-976
...
Also remove remaining uses of ecmult context in secp-zkp and update API tests
accordingly.
2021-09-16 15:21:11 +00:00
Tim Ruffing
d6738e890e
surjection proof: Reject proofs with too many used inputs in reduced mode
2020-07-24 14:59:36 +02:00
Roman Zeyde
bd70820123
allow reducing surjection proof size (to lower generation stack usage)
2020-07-24 14:59:36 +02:00
Andrew Poelstra
56f69d979f
surjectionproof: introduce SECP256K1_SURJECTIONPROOF_MAX_USED_INPUTS constant and set it to 16
2020-07-24 14:59:36 +02:00
Andrew Poelstra
b8a3ff5f3b
surjectionproof: reduce stack usage
2020-07-24 14:59:36 +02:00
Andrew Poelstra
68d937fe11
surjectionproof: fix malleability in surjection proof parsing
2020-07-24 14:59:36 +02:00
Dmitry Petukhov
00fffeb172
Improve comments for surctionproof init+alloc/destroy funcs
...
The comments with 'XXX' was intended to indicate that the listed
concerns was subject to review and change, but the code with these
comments was merged straight away. This commit replaces comments
with more complete text describing the issues.
This also signifies that the commit that this code was introduced in is
not anymore 'work in progress'.
2020-07-24 14:59:36 +02:00
Dmitry Petukhov
2dc868f35b
work in progress: add _allocate_initialized/destroy funcs
2020-07-24 14:59:36 +02:00
Tim Ruffing
949e994cb3
Reject surjection proofs with trailing garbage
2020-07-24 14:50:48 +02:00
Andrew Poelstra
5f1ad03d00
surjectionproof: add API unit tests
2020-07-24 14:49:33 +02:00
Andrew Poelstra
ba8b4f53ef
add surjection proof module
...
Includes fix and tests by Jonas Nick.
2020-07-24 14:49:33 +02:00