1057 Commits

Author SHA1 Message Date
Andrew Poelstra
cad7cc8f34
Merge pull request #73 from jonasnick/fix-musig-message
Require message in musig protocol in an earlier state
2019-10-18 20:42:30 +00:00
Jonas Nick
85bcb7c951
Merge #84: port of secp256k1#566 "jni: Use only Guava for hex encoding and decoding"
682a821759a436f63457780e4cca7fe83cab3a52 jni: Use only Guava for hex encoding and decoding (Tim Ruffing)

Pull request description:

  This removes a dependency on javax.xml.bind, which is no longer
  available in JDK >= 11, see
  https://openjdk.java.net/jeps/320#Java-EE-modules .

  This fixes Travis, whose Java builds were failing recently.

ACKs for top commit:
  jonasnick:
    ACK 682a821759a436f63457780e4cca7fe83cab3a52

Tree-SHA512: 16f7e6cd47c77973c66c2dc26ad3b75399f4d161f127f8f6d7ee31863c101f1a50222209710948f53d36ca60a9364912cd1d1dc88147dd418e42a133cec39869
2019-08-21 08:31:19 +00:00
Tim Ruffing
682a821759 jni: Use only Guava for hex encoding and decoding
This removes a dependency on javax.xml.bind, which is no longer
available in JDK >= 11, see
https://openjdk.java.net/jeps/320#Java-EE-modules .
2019-08-20 15:40:28 +02:00
Tim Ruffing
1a1a803b7f
Merge pull request #83 from jonasnick/fixder
Remove mentions of DER in H derivation.
2019-08-19 16:02:27 +02:00
Jonas Nick
48089ce788 Remove mentions of DER in H derivation. 2019-08-19 14:02:29 +00:00
Tim Ruffing
cfb14a5d0f
Merge pull request #82 from jonasnick/fixes
Musig: add cplusplus directive and fix ARG_NONNULL macro
2019-08-19 15:51:00 +02:00
Tim Ruffing
13aa54e3af
Merge pull request #80 from jonasnick/f-H
Fix explanation of H derivation. It doesn't use DER encoding.
2019-08-19 15:50:08 +02:00
Jonas Nick
217151df1c Fix ARG_NONNULL macro usage in musig include 2019-08-19 08:35:28 +00:00
Jonas Nick
6ba31b8cee Add cplusplus directive to musig include 2019-08-19 08:29:11 +00:00
Jonas Nick
b1fb2ce625 Fix explanation of H derivation. It doesn't use DER encoding. 2019-08-18 15:56:44 +00:00
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