Commit graph

18878 commits

Author SHA1 Message Date
Steven Roose
aa0599f304
Merge #714: [0.17] Backport assetlabel fixes and tests
a965d4420 [RPC]Add assetlabel support to some commands (Akio Nakamura)

Pull request description:

Tree-SHA512: 3ce6b244c80f3c6e4062bd5c428f392d881baddb1890bbb5b060dcfd8edb9f1915b12c65313ae26400450ee65f537df9bbb374aebe7e1e9249ef51541db3e4b2
2019-09-17 14:39:28 +01:00
Akio Nakamura
a965d44204 [RPC]Add assetlabel support to some commands
Remain the support of assetlabel parameter that was previously present.

1. sendtoaddress
 Print 'optional' explicitly in the help text.↲
2. getreceivedbyaddress
 Add the 3rd parameter as "assetlabel"
 Print 'optional' explicitly in the help text.↲
3. getreceivedbylabel
 Add the 3rd parameter as "assetlabel"
 Print 'optional' explicitly in the help text.↲
4. getbalance
 Set the name of 4th parameter as "assetlabel".
 Print 'optional' explicitly in the help text.↲
5. listreceivedbyaddress
 Set the name of 5th parameter as "assetlabel".
 Enable assetlabel selection to the result of amounts.
 Print 'optional' explicitly in the help text.↲
6. gettransaction
 Add the 3rd parameter as "assetlabel"

notice) Also getwalletinfo had a parameter to specify "assetlabel".
But no need to add a parameter because the command is a catch-all one.
2019-09-16 10:04:37 -04:00
Steven Roose
7a3c9972d0
Merge #700: [0.17] sendtomainchain pak fix
ef64be681 fix HelpExamplRPC port for liquidv1 vs bitcoin mainnet (Gregory Sanders)
db01a6dc3 Fix sendtomainchain with pak when subtracting fee from output (Gregory Sanders)

Pull request description:

  regression introduced in 0.17 catchup with the convergence of liquid and elements codebases.

Tree-SHA512: 6b3c4d2fbb212180818b4dd86eb4a29913ac7d4ea18bb603d851e6a9966480f46539d1ed79b8637a77101cac6fa6e98483c4b0d21dc665c2f8ab3cc6a25b4b04
2019-09-04 08:56:42 +01:00
Gregory Sanders
ef64be681d fix HelpExamplRPC port for liquidv1 vs bitcoin mainnet 2019-09-03 10:12:35 -04:00
Gregory Sanders
db01a6dc38 Fix sendtomainchain with pak when subtracting fee from output 2019-09-03 10:12:30 -04:00
Steven Roose
da7b8abda6
Merge #680: Fix gitian descriptor major version for yml
ce2a5e743 Fix gitian descriptor major version for yml (Gregory Sanders)

Pull request description:

  Makes the gitian output wrong otherwise:

  ```
  Generating report
  ec40c90d48ea38bb63cf1d36a0695810412ac3676e3359ad62e8ccf5273a0fcf  elements-0.17.0-aarch64-linux-gnu-debug.tar.gz
  ...
  613418e96782c9e7cd5b9427e851a96575b1252fc14a0decad63d9b29bcd515a  src/elements-0.17.0.tar.gz
  ba84ba37eb386b51492247edafa5f23c921cb81ca1a9eea06273d6aadc885f36  elements-linux-0.18-res.yml
  ```

Tree-SHA512: 2e56261fd132d6bf2e9b6d98df0c513ff3657493cbdbf07c66c7e7280721f0f374d4bbb20fc12bcffd5d0a4d738420298a945049c40902ed636835efa78bdbf7
2019-07-18 10:30:31 +02:00
Gregory Sanders
ce2a5e743d Fix gitian descriptor major version for yml 2019-07-17 15:49:40 -07:00
Steven Roose
4b7a1e037b
Merge #676: [backport 0.17] Change default chain to liquidv1
fd52db918 Change default chain to liquidv1 (Gregory Sanders)

Pull request description:

  backport of https://github.com/ElementsProject/elements/pull/675

Tree-SHA512: 9c7ff35ebbf606f75d459c5d40ba5672ec8721b3ff6ca4a52fcbfb1230938c1fde4c407f1ff222838320c129f333c9b4f4ff7c5b33be715fd0dd78efb750b468
2019-07-16 11:47:51 +02:00
Gregory Sanders
fd52db918d Change default chain to liquidv1 2019-07-12 10:51:18 -04:00
Gregory Sanders
9454d33057
Merge #665: [0.17 backport] Do non-depth check for peg-in witness where possible #664
880945d Do non-depth check for peg-in witness where possible (Gregory Sanders)

Pull request description:

  Backport of #664.

Tree-SHA512: 1f88753b167b23ba6a861c97fdab7eb4cdfaec80cbbc472b3918132b93d918e163e269e0f477c640f96c81967c5f8562ef0eb116e63eed3b3e2b78f557f61f97
2019-06-13 13:18:18 -04:00
Gregory Sanders
880945d303
Do non-depth check for peg-in witness where possible 2019-06-13 16:55:47 +01:00
Gregory Sanders
8b93cee2fd
Merge #662: [0.17 backport] FundTransaction: mark all change keys as kept #660
e50cbd7 FundTransaction: mark all change keys as kept (Gregory Sanders)

Pull request description:

  Backport of https://github.com/ElementsProject/elements/pull/660.

Tree-SHA512: 0fdeddc109c8f1f69b5a45c8a23171cebb68db7f21f7125a7769d28a3a7ed090602b28a1ec51b9a89a96becad07051b89951db1fef91fddc53f1f648099196da
2019-06-13 09:33:29 -04:00
Gregory Sanders
e50cbd7afc
FundTransaction: mark all change keys as kept 2019-06-12 16:51:00 +01:00
Gregory Sanders
ba9b83c211
Merge #654: [0.17 backport] Update secp-zkp to 44db4d801fff3cd94105136cb443d603683baad2
479b6ff Squashed 'src/secp256k1/' changes from 43dd1f4fe..44db4d801 (Steven Roose)

Pull request description:

  0.17 backport of #653.

Tree-SHA512: 81271133ab3405745d47665c1f9131edbdd39f09d87a832eb8d02570ee34db6dfc7065b13c2870de15113fe8eaafda2c23ea43d89cbd2fa4ca39fa4dfbfa12f7
2019-06-07 13:24:17 +02:00
Gregory Sanders
856e33b991
Merge #652: [0.17 backport] Properly rename liquid windows binaries
8e5977d Properly rename liquid windows binaries (Gregory Sanders)

Pull request description:

  backport of #648 for 0.17

Tree-SHA512: e531d9cd8a6e0263c778ebb8da87e660bfa6a259b53fa3aa3f4409dca337a5094807547bc13e8f1678e97baf74dbbb57fc9f9f08b34f89b7198ff0f999754006
2019-06-07 09:39:22 +02:00
Steven Roose
1aa3afe238
Update secp256k1-zkp dependency to 44db4d801fff3cd94105136cb443d603683baad2 2019-06-06 15:57:30 +01:00
Steven Roose
479b6ffade Squashed 'src/secp256k1/' changes from 43dd1f4fe..44db4d801
44db4d801 Merge pull request #57 from apoelstra/2019-04-surjectionproof-stack
f7e4d08da surjection proof: Reject proofs with too many used inputs in reduced mode
112edb2c6 allow reducing surjection proof size (to lower generation stack usage)
d512d7865 surjectionproof: introduce `SECP256K1_SURJECTIONPROOF_MAX_USED_INPUTS` constant and set it to 16
a118acc02 surjectionproof: reduce stack usage
e7f4ff4c6 Merge pull request #70 from apoelstra/2019-06-surjection-count
f94d46e65 Merge pull request #71 from real-or-random/fix-trailing-test
49a1e0173 surjectionproof: fix malleability in surjection proof parsing
55311b0e0 Fix read of wrong buffer (and OOB) in surjectionproof tests
290a27bb7 surjectionproof: add test vectors for "set padding bits"
7bc3daa48 surjectionproof: add fixed test vectors
6f3b0c05c Improve comments for surctionproof init+alloc/destroy funcs
250ebb364 work in progress: add _allocate_initialized/destroy funcs
4a7763361 Improve explanation of key cancellation attack in whitelist.md
898c9f05b Clarify how to derive alternative generator H
15d92782d Add bench_generator and bench_rangeproof to .gitignore
86240b207 Clean up ./configure help strings (zkp extensions)
865b76186 Fix a small typo in the generator parameter name
cd5ba5c3b generator: remove `CHECK` abort calls exposed by public API
ff1665127 musig: add user documentation
0ad6b6036 Add 3-of-3 MuSig example
b61a1a9d9 Add MuSig module which allows creating n-of-n multisignatures and adaptor signatures.
5d5374f92 Add schnorrsig module which implements BIP-schnorr [0] compatible signing, verification and batch verification.
a8ae6baff add chacha20 function
9a8a71e8b use proper types for rangeproof min/max
14769b964 rangeproof: reduce iteration count in unit tests
0593861cc Enable more builds with rest of experimental flags
e9fea7427 Add explanation about how BIP32 unhardened derivation can be used to simplify whitelisting
dec1b9ce2 Add comment to explain effect of max_n_iterations in surjectionproof_init
ea62bfe22 add unit test for generator and pedersen commitment roundtripping
e32924f0e rangeproof: fix serialization of pedersen commintments
972d056fa rangeproof: verify correctness of pedersen commitments when parsing
2cc4c6fef generator: verify correctness of point when parsing
65ffea43d rangeproof: check that points deserialize correctly when verifying rangeproof
cb786d6d1 rangeproof: add fixed vector test case
b387ba038 Expose generator in shared library
8da432855 fix spelling in documentation
6f14fe40d Test for rejection of trailing bytes in range proofs
ab4fbc1be Test for rejection of trailing bytes in surjection proofs
c908c97d6 Reject surjection proofs with trailing garbage
f723bf5b3 Minor bugfix. Wrong length due to NUL character.
6872069de Add whitelisting benchmark
6ceccb75b add whitelist_impl.h to include for dist
a3ad4a866 generator: add API tests
e93e886cb generator: remove unnecessary ARG_CHECK from generate()
f1d6e4b83 Fix generator makefile
68be61131 Fix pedersen_blind_generator_blind_sum return value documentation
51fc58ae6 Add n_keys argument to whitelist_verify
36b100c77 Fix checks of whitelist serialize/parse arguments
c8f54e12e whitelist: fix serialize/parse API to take serialized length
56fca5077 Fix include/secp256k1_rangeproof.h function argument documentation.
4617f0478 rangeproof: add API tests
cd4e438a3 surjectionproof: rename unit test functions to be more consistent with other modules
2cc7f1e04 surjectionproof: add API unit tests
c4097f758 surjectionproof: tests_impl.h s/assert/CHECK/g
5ee6bf341 rangeproof: fix memory leak in unit tests
94e81a250 add surjection proof module
a66ea3522 Implement ring-signature based whitelist delegation scheme
2bb513361 rangeproof: several API changes
9b00b61d9 Expose generator in pedersen/rangeproof API
54fa2639e Constant-time generator module
023aa86ac rangeproof: expose sidechannel message field in the signing API
89e7451d4 [RANGEPROOF BREAK] Use quadratic residue for tie break and modularity cleanup
f126331bc Pedersen commitments, borromean ring signatures, and ZK range proofs.
e1fb4af90 Add 64-bit integer utilities
e541a90ef Merge #629: Avoid calling _is_zero when _set_b32 fails.
f34b0c3f3 Merge #630: Note intention of timing sidechannel freeness.
8d1563b0f Note intention of timing sidechannel freeness.
1669bb286 Merge #628: Fix ability to compile tests without -DVERIFY.
ecc94abcc Merge #627: Guard memcmp in tests against mixed size inputs.
544435fc9 Merge #578: Avoid implementation-defined and undefined behavior when dealing with sizes
143dc6e9e Merge #595: Allow to use external default callbacks
e49f7991c Add missing #(un)defines to base-config.h
77defd2c3 Add secp256k1_ prefix to default callback functions
908bdce64 Include stdio.h and stdlib.h explicitly in secp256k1.c
5db782e65 Allow usage of external default callbacks
6095a863f Replace CHECKs for no_precomp ctx by ARG_CHECKs without a return
cd473e02c Avoid calling secp256k1_*_is_zero when secp256k1_*_set_b32 fails.
6c36de7a3 Merge #600: scratch space: use single allocation
98836b11f scratch: replace frames with "checkpoint" system
7623cf2b9 scratch: save a couple bytes of unnecessarily-allocated memory
a7a164f2c scratch: rename `max_size` to `size`, document that extra will actually be allocated
5a4bc0bb9 scratch: unify allocations
c2b028a28 scratch space: thread `error_callback` into all scratch space functions
0be1a4ae6 scratch: add magic bytes to beginning of structure
92a48a764 scratch space: use single allocation
40839e21b Merge #592: Use trivial algorithm in ecmult_multi if scratch space is small
dcf392027 Fix ability to compile tests without -DVERIFY.
a484e0008 Merge #566: Enable context creation in preallocated memory
0522caac8 Explain caller's obligations for preallocated memory
238305fdb Move _preallocated functions to separate header
695feb6fb Export _preallocated functions
814cc78d7 Add tests for contexts in preallocated memory
ba12dd08d Check arguments of _preallocated functions
5feadde46 Support cloning a context into preallocated memory
c4fd5dab4 Switch to a single malloc call
ef020de16 Add size constants for preallocated memory
1bf7c056b Prepare for manual memory management in preallocated memory
248bffb05 Guard memcmp in tests against mixed size inputs.
36698dcfe Merge #596: Make WINDOW_G configurable
a61a93ff5 Clean up ./configure help strings
2842dc523 Make WINDOW_G configurable
1a02d6ce5 Merge #626: Revert "Merge #620: Install headers automatically"
662918cb2 Revert "Merge #620: Install headers automatically"
14c7dbd44 Simplify control flow in DER parsing
ec8f20bab Avoid out-of-bound pointers and integer overflows in size comparisons
01ee1b3b3 Parse DER-enconded length into a size_t instead of an int
912680ed8 Merge #561: Respect LDFLAGS and #undef STATIC_PRECOMPUTATION if using basic config
91fae3ace Merge #620: Install headers automatically
5df77a0ed Merge #533: Make sure we're not using an uninitialized variable in secp256k1_wnaf_const(...)
975e51e0d Merge #617: Pass scalar by reference in secp256k1_wnaf_const()
735fbde04 Merge #619: Clear a copied secret key after negation
16e86150d Install headers automatically
069870d92 Clear a copied secret key after negation
8979ec0d9 Pass scalar by reference in secp256k1_wnaf_const()
84a808598 Merge #612: Allow field_10x26_arm.s to compile for ARMv7 architecture
d4d270a59 Allow field_10x26_arm.s to compile for ARMv7 architecture
b19c00006 Merge #607: Use size_t shifts when computing a size_t
4d01bc2d9 Merge #606: travis: Remove unused sudo:false
e6d01e934 Use size_t shifts when computing a size_t
7667532bd travis: Remove unused sudo:false
248f04661 Make sure we're not using an uninitialized variable in secp256k1_wnaf_const(...)
9ab96f7b1 Use trivial algorithm in ecmult_multi if scratch space is small
ee99f12f3 Merge #599: Switch x86_64 asm to use "i" instead of "n" for immediate values.
d58bc93f2 Switch x86_64 asm to use "i" instead of "n" for immediate values.
05362ee04 Merge #597: Add $(COMMON_LIB) to exhaustive tests to fix ARM asm build
83483869a Add $(COMMON_LIB) to exhaustive tests to fix ARM asm build
aa15154a4 Merge #568: Fix integer overflow in ecmult_multi_var when n is large
2277af5ff Fix integer overflow in ecmult_multi_var when n is large
dbed75d96 Undefine `STATIC_PRECOMPUTATION` if using the basic config
310111e09 Keep LDFLAGS if `--coverage`
85d0e1bcc Merge #591: Make bench_internal obey secp256k1_fe_sqrt's contract wrt aliasing.
14196379e Merge #580: Add trivial ecmult_multi algorithm which does not require a scratch space
a697d82da Add trivial ecmult_multi to the benchmark tool
bade61741 Add trivial ecmult_multi algorithm. It is selected when no scratch space is given and just multiplies and adds the points.
5545e13de Merge #584: configure: Use CFLAGS_FOR_BUILD when checking native compiler
20c5869df Merge #516: improvements to random seed in src/tests.c
b76e45d5d Make bench_internal obey secp256k1_fe_sqrt's contract wrt aliasing.
870a97764 Merge #562: Make use of TAG_PUBKEY constants in secp256k1_eckey_pubkey_parse
be40c4d0b Fixup for C90 mixed declarations.
c71dd2c08 Merge #509: Fix algorithm selection in bench_ecmult
6492bf88c Merge #518: Summarize build options after running configure
0e9ada194 Merge #567: Correct order of libs returned on pkg-config --libs --static libsecp2…
e96901a4b Merge #587: Make randomization of a non-signing context a noop
58df8d03a Merge #511: Portability fix for the configure scripts generated
2ebdad772 Merge #552: Make constants static:
1c131affd Merge #551: secp256k1_fe_sqrt: Verify that the arguments don't alias.
ba698f883 Merge #539: Assorted minor corrections
949e85b00 Merge #550: Optimize secp256k1_fe_normalize_weak calls.
a34bcaadf Actually pass CFLAGS_FOR_BUILD and LDFLAGS_FOR_BUILD to linker
2d5f4cebd configure: Use CFLAGS_FOR_BUILD when checking native compiler
b408c6a8b Merge #579: Use __GNUC_PREREQ for detecting __builtin_expect
619837521 Make randomization of a non-signing context a noop
c663397f4 Use __GNUC_PREREQ for detecting __builtin_expect
3cb057f84 Fix possible integer overflow in DER parsing
89a20a894 Correct order of libs returned on pkg-config --libs --static libsecp256k1 call.
d3cb1f95e Make use of TAG_PUBKEY constants in secp256k1_eckey_pubkey_parse
496c5b43b Make constants static: static const secp256k1_ge secp256k1_ge_const_g; static const int CURVE_B;
bf8b86cc0 secp256k1_fe_sqrt: Verify that the arguments don't alias.
9bd89c836 Optimize secp256k1_fe_normalize_weak calls. Move secp256k1_fe_normalize_weak calls out of ECMULT_TABLE_GET_GE and ECMULT_TABLE_GET_GE_STORAGE and into secp256k1_ge_globalz_set_table_gej instead.
52ab96fed clean dependendies in field_*_impl.h
deff5edd4 Correct math typos in field_*.h
4efb3f8dd Add check that restrict pointers don't alias with all parameters.
3965027c8 Summarize build options in configure script
0f0517369 Fix algorithm selection in bench_ecmult
8b3841c91 fix bug in fread() failure check
cddef0c0b tests: add warning message when /dev/urandom fails
270f6c80d Portability fix for the configure scripts generated
REVERT: 43dd1f4fe Merge pull request #40 from instagibbs/size_t
REVERT: 6532fa0a9 Merge pull request #39 from instagibbs/more_builds
REVERT: 2b2429dfa rangeproof: reduce iteration count in unit tests
REVERT: 12b0e5dda Enable more builds with rest of experimental flags
REVERT: 8c444eef6 use proper types for rangeproof min/max
REVERT: 53ad841ca Add explanation about how BIP32 unhardened derivation can be used to simplify whitelisting
REVERT: 71c5fe0f6 Add comment to explain effect of max_n_iterations in surjectionproof_init
REVERT: 85fd42fb7 add unit test for generator and pedersen commitment roundtripping
REVERT: 2ccf88541 rangeproof: fix serialization of pedersen commintments
REVERT: 60c173b64 rangeproof: verify correctness of pedersen commitments when parsing
REVERT: 32d7526cd generator: verify correctness of point when parsing
REVERT: ae14e8a9d rangeproof: check that points deserialize correctly when verifying rangeproof
REVERT: 44fe43d75 rangeproof: add fixed vector test case
REVERT: e065d7df9 Expose generator in shared library
REVERT: fb1ba329a fix spelling in documentation
REVERT: fb75faa14 Test for rejection of trailing bytes in range proofs
REVERT: 9b2cf1708 Test for rejection of trailing bytes in surjection proofs
REVERT: a3a1800ba Reject surjection proofs with trailing garbage
REVERT: 0c77ae9a7 Minor bugfix. Wrong length due to NUL character.
REVERT: b1f31bc4b Add whitelisting benchmark
REVERT: 52a9f8f8f add whitelist_impl.h to include for dist
REVERT: a707865bc generator: add API tests
REVERT: ec1ef040f generator: remove unnecessary ARG_CHECK from generate()
REVERT: b0e9aa828 Fix generator makefile
REVERT: 526c65499 Fix pedersen_blind_generator_blind_sum return value documentation
REVERT: b51886e72 Add n_keys argument to whitelist_verify
REVERT: 37c57de08 Fix checks of whitelist serialize/parse arguments
REVERT: 9b8a9d91e whitelist: fix serialize/parse API to take serialized length
REVERT: 7f1751560 Fix include/secp256k1_rangeproof.h function argument documentation.
REVERT: 0d817020d rangeproof: add API tests
REVERT: 417bb0643 surjectionproof: rename unit test functions to be more consistent with other modules
REVERT: 1e2d5c1a2 surjectionproof: add API unit tests
REVERT: 7878a298b surjectionproof: tests_impl.h s/assert/CHECK/g
REVERT: e609591b6 rangeproof: fix memory leak in unit tests
REVERT: 0c17f7972 add surjection proof module
REVERT: c174f0c60 Implement ring-signature based whitelist delegation scheme
REVERT: a2bc6604f rangeproof: several API changes
REVERT: 21bfb3c91 Expose generator in pedersen/rangeproof API
REVERT: f4620de04 Constant-time generator module
REVERT: d46fc3c19 rangeproof: expose sidechannel message field in the signing API
REVERT: cf40b1bed [RANGEPROOF BREAK] Use quadratic residue for tie break and modularity cleanup
REVERT: 6d28767c7 Get rid of precomputed H tables (Pieter Wuille)
REVERT: ae1e576f6 Pedersen commitments, borromean ring signatures, and ZK range proofs.
REVERT: efc61dc0c Add 64-bit integer utilities

git-subtree-dir: src/secp256k1
git-subtree-split: 44db4d801fff3cd94105136cb443d603683baad2
2019-06-06 10:58:01 +01:00
Gregory Sanders
8e5977d15b
Properly rename liquid windows binaries 2019-06-06 10:25:33 +01:00
Gregory Sanders
81674d677c
Merge #650: [0.17 backport] Move MainchainRPCCheck to its own schedule to avoid waiting for itself
78e315d Move MainchainRPCCheck to its own schedule, fix resolution (Gregory Sanders)

Pull request description:

  backport of #647 for 0.17

Tree-SHA512: 48bba6d29048c9686aa2a122156e6321a1da1e900d301a8898f4942da076fadc2cb9d29f14622b3c0a6562f7bda3e7a6764c79fdfc0bdbfb272b2041e1124032
2019-06-06 10:16:52 +02:00
Gregory Sanders
58c070a315
Merge #644: [0.17 backport] Fixup some QT-only credit computing code
bc3dc13 Fix qt usages of txout-based GetCredit (Gregory Sanders)
0746330 Delete unused non-CWalletTx GetCredit (Gregory Sanders)

Pull request description:

  backport of #629 for 0.17

Tree-SHA512: 2787b8a2d41c80c50e3d007763737fd3e4edba97270ee98c0b0b8ce36e494f09d6f71823416880bb9bc332bc7533f83fcfe3b9a68eb256f341271f2277f4b9e7
2019-06-06 10:16:12 +02:00
Gregory Sanders
5f6e9e03b4
Merge #646: [0.17 backport] Disallow issuance calls in bitcoin mode
434067a Disallow issuance calls in bitcoin mode (Gregory Sanders)

Pull request description:

  backport of #625 for 0.17

Tree-SHA512: f90fe5ab03554362bd9307d50999061d8ec131886261784e4f44da6af89450743eef474ac23884c3ca3e931c5036980f02b2d7a1f4b8aea860bbb5bb56422bdb
2019-06-06 10:15:01 +02:00
Gregory Sanders
434067a229
Disallow issuance calls in bitcoin mode 2019-06-05 15:29:33 +01:00
Gregory Sanders
bc3dc13b7e
Fix qt usages of txout-based GetCredit 2019-06-05 15:29:09 +01:00
Gregory Sanders
0746330f8f
Delete unused non-CWalletTx GetCredit 2019-06-05 15:29:06 +01:00
Gregory Sanders
78e315d31e
Move MainchainRPCCheck to its own schedule, fix resolution 2019-06-05 15:27:55 +01:00
Steven Roose
427903dd97
Merge #616: Bump elements version to 0.17.0.1
2aac2290a Bump elements version (Gregory Sanders)

Pull request description:

Tree-SHA512: decafb3ed5a456aabbd12ce0e651283f6e2652e41a9b46ebe8c9d679acd000bb15ef0a49861b5d040917b5154f95978876d8aab4b259495fc27399e575b938a2
2019-05-09 16:09:49 +01:00
Gregory Sanders
2aac2290ad Bump elements version 2019-05-09 10:07:53 -04:00
Gregory Sanders
0de7d05d00
Merge #606: [cherry-pick] [macOS] Remove DS_Store WindowBounds bytes object
90926a5 [macOS] Remove DS_Store WindowBounds bytes object (Jonas Schnelli)

Pull request description:

  resolves https://github.com/ElementsProject/elements/issues/605

Tree-SHA512: 6988fd4af40d80e9e2faef2c3f9ebb74e67982a129e72bb67761b0531ba77b9e565427af1c083552adb02560bdf7d27301a260f0d83394fa3b962eee91a6ba48
2019-05-08 14:57:15 -04:00
Gregory Sanders
63bc3e3f02
Merge #614: Improve double pegin claim behavior
52ef283 Improve the fedpeg test with extra double claim tests (Steven Roose)
48a82fa Make claimpegin fail in the case of a double claim (Steven Roose)
af22646 Prevent pegin double spends from entering the mempool (Steven Roose)
50c5570 Report IsValidPeginWitness error message (Steven Roose)

Pull request description:

  Fixes #612 and #613.

  - prevents a double claim from entering mempool
  - makes `claimpegin` throw an exception when trying to double claim a pegin
  - check the last commit message on all the extra cases that are tested.

Tree-SHA512: dd9602cd4bc78a3e8f7a6b566f881ede09dba54900425348c1eb528268a3e869416e3c9ca97c1a8da4d120875ef59c4e21a857256312ce77e06b7b6ae04abf92
2019-05-08 11:10:58 -04:00
Steven Roose
b95c1e08a9
Merge #609: Make MainchainRPCCheck a bit less aggressive
ad43f9c60 Only spin-wait MainchainRPCCheck on initial loading with warmup code (Gregory Sanders)
9d4097dca Only schedule mainchain RPC checks after initial check succeeds (Gregory Sanders)

Pull request description:

  First, only start scheduling checks if the initial check on load succeeds. This initial check is a sanity-check that makes sure all daemons are spun up and communicating correctly. Second, for the initial check only we want to spin-wait for the mainchaind to finish warming up, otherwise elementsd may fail rather than wait a couple seconds for bitcoind to start up, for instance, which can occur when automating the processes.

  Previously we were spin-waiting for all instances of MainchainRPCCheck, which means if your bitcoind falls over mid-run for whatever reason and is in warmup state for a long time(say, updating UTXO db), these checks will pile up on each other, spamming your bitcoind with useless RPC calls. Post-init it's completely fine for the call to simply fail and try again in N minutes.

  resolves https://github.com/ElementsProject/elements/issues/608

Tree-SHA512: 6a02f1b150a8631e36da63a33f9775fbb2cf17aa749e4895b6a947ba605e00ce9fda8349bf7a556e01d9fccaece7387914fb6bb78d7b47c9f272bbcf7f3ff919
2019-05-08 16:14:21 +01:00
Steven Roose
52ef28305f
Improve the fedpeg test with extra double claim tests
- changes the expected behavior of claimpegin to fail on double spend
- adds extra test to make sure a block with a double spend is also not
  accepted:
  1. a tx with two identical pegin inputs (mempool & block)
  2. a tx claiming a pegin that another mempool tx also claims
  3. a tx claiming a pegin that a confirmed tx already claimed (mempool
     & block)
2019-05-08 15:50:03 +01:00
Steven Roose
48a82fa993
Make claimpegin fail in the case of a double claim
Currently it will commit to the transaction without it being able to
enter the mempool. This makes the block creation code include the tx
into the block and create an invalid block.
2019-05-08 15:35:58 +01:00
Steven Roose
af2264665e
Prevent pegin double spends from entering the mempool
This bug got introduced with the 0.17 rebase. In 0.14.1 the double pegin
claim check was done in the beginning of the validation logic, where the
coins view was the actual UTXO set. In 0.17, Core moved several checks
because the intermediate method CheckInputs was removed and some logic
moved to tx_verify.cpp, where we also put the pegin check.  In the
mempool acceptance check, however (as opposed to the ConnectBlock
check), CheckTxInputs is called with only a partial UTXO view for
optimization reasons. This commit adds an extra pegin check in the
beginning of the mempool code where we have a full UTXO view.
2019-05-08 15:34:55 +01:00
Steven Roose
50c557083d
Report IsValidPeginWitness error message 2019-05-07 20:13:42 +01:00
Gregory Sanders
ad43f9c60f Only spin-wait MainchainRPCCheck on initial loading with warmup code 2019-05-06 09:39:29 -04:00
Gregory Sanders
9d4097dca2 Only schedule mainchain RPC checks after initial check succeeds 2019-05-06 09:38:58 -04:00
Steven Roose
bb80fd1602
Merge #604: gitian: Rename liquid windows installer to liquid
f7cc37cb1 Rename liquid windows installer to liquid (Gregory Sanders)

Pull request description:

  resolves https://github.com/ElementsProject/elements/issues/603

Tree-SHA512: b66ebe4ce492658e8e4b40e826084ff49d64736717e1955d61ee986a9aa305cdd8caeb28ba4e4ebfb30b4c798e1c74f9f566ee71cebf5a6bb8c3ee81b052b39d
2019-05-03 14:27:01 +01:00
Steven Roose
2c56e0d2b3
Merge #602: refactor getpeginaddress to not call getnewaddress RPC
b919ca3d9 fedpeg test makes sure claim_script is wpkh (Gregory Sanders)
a9cbe5530 refactor getpeginaddress to not call getnewaddress RPC (Gregory Sanders)
cdb33e521 createrawpegin should look for wpkh addresses, not nested (Gregory Sanders)

Pull request description:

  resolves https://github.com/ElementsProject/elements/issues/599

Tree-SHA512: 37fbcb865df78337827b44fed00e54fcd5c44eea57bf48d66416be00c915129dcc5f5fda613d9f64fdb325303c24fab4a1e8b1c96fd54ee2dcaac90ba841bfb7
2019-05-03 14:24:59 +01:00
Jonas Schnelli
90926a5e57 [macOS] Remove DS_Store WindowBounds bytes object 2019-05-02 11:15:19 -04:00
Gregory Sanders
f7cc37cb11 Rename liquid windows installer to liquid 2019-05-01 16:07:34 -04:00
Gregory Sanders
8c21d415be
Merge #601: Change trusted subkey for Steven Roose
90f669e Change trusted subkey for Steven Roose (Steven Roose)

Pull request description:

  New subkey signed with same master key:

  ```
  -----BEGIN PGP PUBLIC KEY BLOCK-----

  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
  =29Ta
  -----END PGP PUBLIC KEY BLOCK-----
  ```

Tree-SHA512: fbc23d4ea91d20e2ecba110d24b445c8379d2fc7fa92ad16efa6463a6e3202f764204ccfdbe94d32fabb5902b30e2dad854fe2670c358563f20d7b46442f228a
2019-05-01 11:04:43 -04:00
Gregory Sanders
b919ca3d93 fedpeg test makes sure claim_script is wpkh 2019-05-01 10:54:06 -04:00
Gregory Sanders
a9cbe55309 refactor getpeginaddress to not call getnewaddress RPC 2019-05-01 10:54:06 -04:00
Gregory Sanders
cdb33e5214 createrawpegin should look for wpkh addresses, not nested 2019-05-01 10:54:06 -04:00
Steven Roose
90f669ed38
Change trusted subkey for Steven Roose
New subkey signed with same master key:

-----BEGIN PGP PUBLIC KEY BLOCK-----

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
=29Ta
-----END PGP PUBLIC KEY BLOCK-----
2019-05-01 14:15:58 +01:00
Gregory Sanders
551483eae5
Merge #595: Add unit test for the PolyMod method in b(l)ech32
4a218cd Fix linter by exporting b(l)ech32 internals (Steven Roose)
99b047c Add additional blech32 unit test (Steven Roose)
6412970 Fix bug in blech32 (Steven Roose)
0de2b05 Add unit test for the PolyMod method in b(l)ech32 (Steven Roose)

Pull request description:

Tree-SHA512: 9d574376b6471742283d0d145359d8d674b7e95fd40f52396c6fc5f671dc262526624d1d15cb8ab7b4517a8b2501405dd0f680f69dfc41dabb0eb11d7bbbfe88
2019-04-23 17:43:44 -04:00
Steven Roose
4a218cd0ef
Fix linter by exporting b(l)ech32 internals 2019-04-23 21:11:30 +01:00
Steven Roose
99b047c305
Add additional blech32 unit test 2019-04-23 20:38:39 +01:00
Steven Roose
64129703a8
Fix bug in blech32 2019-04-23 20:38:28 +01:00
Steven Roose
0de2b056d1
Add unit test for the PolyMod method in b(l)ech32 2019-04-23 16:36:15 +01:00