Jonas Nick
6a57be09e3
Require message in musig protocol in an earlier state. In particular,
...
remove the set_msg function and require the message in get_public_nonce
at the latest.
2019-07-09 11:33:13 +00:00
Jonas Nick
57ce5882ad
Fix my_index in musig state machine tests
2019-07-09 09:47:56 +00:00
Andrew Poelstra
e3a10f4677
Merge pull request #74 from jonasnick/sig_combine_tweak
...
Add tweak32 parameter to musig_partial_sig_combine
2019-07-03 22:02:15 +00:00
Tim Ruffing
8df2c952f1
Merge pull request #75 from jonasnick/musig-travis
...
Add musig module to travis
2019-07-03 01:21:06 +02:00
Jonas Nick
a0a4b4212c
Add tweak32 parameter to musig_partial_sig_combine which allows to sign for p2c/taproot commitments
2019-07-02 18:31:12 +00:00
Jonas Nick
996e84c4cd
Add musig module tests to travis
2019-06-25 12:35:24 +00:00
Tim Ruffing
11af7015de
Merge pull request #58 from jonasnick/schnorrsig-fix
...
Add fixups from upstream schnorrsig PR
2019-06-25 14:31:15 +02:00
Jonas Nick
cb8f059724
Add fixups from upstream schnorrsig PR
...
f make helper functions static
f hash noncedata into nonce in nonce_function_bipschnorr
f expose nonce_function_bipschnorr
f fix undefined behavior when shifting an int 31 places
f add cplusplus ifdef to schnorrsig include file
f hash complete pubkey into batch seed
f chacha20 for bigendians
f add schnorrsig to travis
f show in configure if schnorrsig is enabled
2019-06-25 12:20:06 +00:00
Jonas Nick
2f6c3353ab
Merge pull request #72 from jonasnick/fix-upstream-rebase
...
Fix schnorrsig and musig modules after rebase
2019-06-21 12:28:15 +00:00
Jonas Nick
99e1fb271c
Fix musig module after rebase on upstream e541a90e
2019-06-21 09:11:57 +00:00
Jonas Nick
6303e3b0ca
Fix schnorrsig module after rebase on upstream e541a90e
2019-06-21 09:11:54 +00:00
Andrew Poelstra
44db4d801f
Merge pull request #57 from apoelstra/2019-04-surjectionproof-stack
...
surjectionproof: reduce stack usage and limit proofs to anonymity set of 16
2019-06-06 09:29:39 +00:00
Tim Ruffing
f7e4d08dae
surjection proof: Reject proofs with too many used inputs in reduced mode
2019-06-05 12:25:34 +02:00
Roman Zeyde
112edb2c6a
allow reducing surjection proof size (to lower generation stack usage)
2019-06-04 16:37:48 +00:00
Andrew Poelstra
d512d78653
surjectionproof: introduce SECP256K1_SURJECTIONPROOF_MAX_USED_INPUTS
constant and set it to 16
2019-06-04 16:37:48 +00:00
Andrew Poelstra
a118acc02b
surjectionproof: reduce stack usage
2019-06-04 16:37:48 +00:00
Andrew Poelstra
e7f4ff4c62
Merge pull request #70 from apoelstra/2019-06-surjection-count
...
surjectionproof: fix malleability in surjection proof parsing
2019-06-04 16:35:35 +00:00
Andrew Poelstra
f94d46e652
Merge pull request #71 from real-or-random/fix-trailing-test
...
Fix read of wrong buffer (and OOB) in surjectionproof tests
2019-06-04 15:46:56 +00:00
Andrew Poelstra
49a1e01731
surjectionproof: fix malleability in surjection proof parsing
2019-06-04 15:44:47 +00:00
Tim Ruffing
55311b0e03
Fix read of wrong buffer (and OOB) in surjectionproof tests
2019-06-04 14:33:08 +02:00
Andrew Poelstra
290a27bb75
surjectionproof: add test vectors for "set padding bits"
2019-06-03 21:45:48 +00:00
Andrew Poelstra
7bc3daa482
surjectionproof: add fixed test vectors
2019-06-03 21:20:21 +00:00
Dmitry Petukhov
6f3b0c05c2
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'.
2019-05-30 14:08:30 +00:00
Dmitry Petukhov
250ebb364e
work in progress: add _allocate_initialized/destroy funcs
2019-05-30 14:08:30 +00:00
Jonas Nick
4a7763361d
Improve explanation of key cancellation attack in whitelist.md
2019-05-30 14:08:30 +00:00
Jonas Nick
898c9f05bb
Clarify how to derive alternative generator H
2019-05-30 14:08:30 +00:00
Roman Zeyde
15d92782d3
Add bench_generator and bench_rangeproof to .gitignore
2019-05-30 14:08:30 +00:00
Tim Ruffing
86240b207d
Clean up ./configure help strings (zkp extensions)
2019-05-30 14:08:30 +00:00
Roman Zeyde
865b76186c
Fix a small typo in the generator parameter name
2019-05-30 14:08:30 +00:00
Andrew Poelstra
cd5ba5c3b9
generator: remove CHECK
abort calls exposed by public API
2019-05-30 14:08:30 +00:00
Andrew Poelstra
ff16651273
musig: add user documentation
2019-05-30 14:08:21 +00:00
Jonas Nick
0ad6b6036f
Add 3-of-3 MuSig example
2019-05-30 14:04:38 +00:00
Jonas Nick
b61a1a9d98
Add MuSig module which allows creating n-of-n multisignatures and adaptor signatures.
2019-05-30 14:04:38 +00:00
Andrew Poelstra
5d5374f92c
Add schnorrsig module which implements BIP-schnorr [0] compatible signing, verification and batch verification.
...
[0] https://github.com/sipa/bips/blob/bip-schnorr/bip-schnorr.mediawiki
2019-05-30 14:04:38 +00:00
Andrew Poelstra
a8ae6baff3
add chacha20 function
2019-05-30 14:04:38 +00:00
Gregory Sanders
9a8a71e8bb
use proper types for rangeproof min/max
2019-05-30 14:04:38 +00:00
Andrew Poelstra
14769b9648
rangeproof: reduce iteration count in unit tests
2019-05-30 14:04:38 +00:00
Gregory Sanders
0593861cc5
Enable more builds with rest of experimental flags
2019-05-30 14:04:38 +00:00
Jonas Nick
e9fea74278
Add explanation about how BIP32 unhardened derivation can be used to simplify whitelisting
2019-05-30 14:04:38 +00:00
Jonas Nick
dec1b9ce27
Add comment to explain effect of max_n_iterations in surjectionproof_init
2019-05-30 14:04:38 +00:00
Andrew Poelstra
ea62bfe221
add unit test for generator and pedersen commitment roundtripping
2019-05-30 14:04:38 +00:00
Andrew Poelstra
e32924f0ee
rangeproof: fix serialization of pedersen commintments
2019-05-30 14:04:38 +00:00
Andrew Poelstra
972d056fac
rangeproof: verify correctness of pedersen commitments when parsing
2019-05-30 14:04:38 +00:00
Andrew Poelstra
2cc4c6fef1
generator: verify correctness of point when parsing
2019-05-30 14:04:38 +00:00
Andrew Poelstra
65ffea43d5
rangeproof: check that points deserialize correctly when verifying rangeproof
2019-05-30 14:04:38 +00:00
Andrew Poelstra
cb786d6d1a
rangeproof: add fixed vector test case
2019-05-30 14:04:38 +00:00
Frank V. Castellucci
b387ba0389
Expose generator in shared library
...
Was failing linking to `*.so` library
2019-05-30 14:04:38 +00:00
Gregory Sanders
8da432855c
fix spelling in documentation
2019-05-30 14:04:38 +00:00
Tim Ruffing
6f14fe40d9
Test for rejection of trailing bytes in range proofs
2019-05-30 14:04:38 +00:00
Tim Ruffing
ab4fbc1be8
Test for rejection of trailing bytes in surjection proofs
2019-05-30 14:04:38 +00:00