Commit graph

9969 commits

Author SHA1 Message Date
Daniel Kraft
35f7227a86 Clean up wallet encryption code.
Add a new method DecryptKey in crypter.cpp, that combines the logic for
decrypting, initialising and validating a CKey object.  This was
previously duplicated.
2014-12-04 21:37:26 +01:00
Pieter Wuille
87bddb7a3a Squashed 'src/secp256k1/' changes from ad2028f..b0210a9
b0210a9 Merge pull request #135
ee3eb4b Fix a memory leak and add a number of small tests.
4d879a3 Merge pull request #134
d5e8362 Merge pull request #127
7b92cf6 Merge pull request #132
0bf70a5 Merge pull request #133
29ae131 Make scalar_add_bit test's overflow detection exact
9048def Avoid undefined shift behaviour
efb7d4b Use constant-time conditional moves instead of byte slicing
d220062 Merge pull request #131
82f9254 Fix typo
601ca04 Merge pull request #129
35399e0 Bugfix: b is restricted, not r
c35ff1e Convert lambda splitter to pure scalar code.
cc604e9 Avoid division when decomposing scalars
ff8746d Add secp256k1_scalar_mul_shift_var
bd313f7 Merge pull request #119
276f987 Merge pull request #124
25d125e Merge pull request #126
24b3c65 Add a test case for ECDSA recomputing infinity
32600e5 Add a test for r >= order signature handling
4d4eeea Make secp256k1_fe_mul_inner use the r != property
be82e92 Require that r and b are different for field multiplication.
597128d Make num optional
659b554 Make constant initializers independent from num
0af5b47 Merge pull request #120
e2e8a36 Merge pull request #117
c76be9e Remove unused num functions
4285a98 Move lambda-splitting code to scalar.
f24041d Switch all EC/ECDSA logic from num to scalar
6794be6 Add scalar splitting functions
d1502eb Add secp256k1_scalar_inverse_var which delegates to GMP
b5c9ee7 Make test_point_times_order test meaningful again
0b73059 Switch wnaf splitting from num-based to scalar-based
1e6c77c Generalize secp256k1_scalar_get_bits
5213207 Add secp256k1_scalar_add_bit
3c0ae43 Merge pull request #122
6e05287 Do signature recovery/verification with 4 possible recid case
e3d692f Explain why no y=0 check is necessary for doubling
f7dc1c6 Optimize doubling: secp256k1 has no y=0 point
666d3b5 Merge pull request #121
2a54f9b Correct typo in comment
9d64145 Merge pull request #114
99f0728 Fix secp256k1_num_set_bin handling of 0
d907ebc Add bounds checking to field element setters
bb2cd94 Merge pull request #116
665775b Don't split the g factor when not using endomorphism
9431d6b Merge pull request #115
e2274c5 build: osx: attempt to work with homebrew keg-only packages

git-subtree-dir: src/secp256k1
git-subtree-split: b0210a95da433e048a11d298efbcc14eb423c95f
2014-12-04 19:17:07 +01:00
Pieter Wuille
0dcfb91d56 Update libsecp256k1 2014-12-04 19:17:07 +01:00
Pieter Wuille
ffe3291466 Remove gmp dependency and doc mentions 2014-12-04 19:17:02 +01:00
Wladimir J. van der Laan
9ddc8c63ab
Merge pull request #5394
307f7d4 Report script evaluation failures in log and reject messages (Pieter Wuille)
2014-12-04 16:43:35 +01:00
Wladimir J. van der Laan
4d2ecc4f94
Merge pull request #5417
be7b0bf Package libqt5core5 replaced with libqt5core5a (LongShao007)
2014-12-04 16:25:16 +01:00
Pieter Wuille
12a49cac0a Limit the number of new addressses to accumulate 2014-12-04 13:19:16 +01:00
Peter Todd
cac15bedb1
Test unexecuted OP_CODESEPARATOR
OP_CODESEPARATOR is an actual executed instruction, not a declarative
thing, so if it's wrapped in an OP_IF it can be turned off.

Using this to implement Rivest's Paywords is left as an exercise for the
reader.
2014-12-04 00:53:16 -05:00
LongShao007
be7b0bff5a Package libqt5core5 replaced with libqt5core5a
libqt5core5 installs failed.
Package libqt5core5 has replaced with libqt5core5a in ubuntu and debian. 
The website is:
http://packages.ubuntu.com/trusty/libqt5core5a
https://packages.debian.org/sid/libqt5core5a
2014-12-03 19:48:17 +08:00
Wladimir J. van der Laan
a0417b8cc8 Merge pull request #5306
d227011 MOVEONLY: core/ -> primitives/ (Luke Dashjr)
2014-12-03 12:05:43 +01:00
Luke Dashjr
d227011184 MOVEONLY: core/ -> primitives/ 2014-12-03 10:52:58 +00:00
Wladimir J. van der Laan
c2d7c6134e
Merge pull request #5407
9e56532 Coinbases-in-mempool regression test (Gavin Andresen)
2014-12-03 10:51:36 +01:00
Wladimir J. van der Laan
7eb0667384
Merge pull request #5403
c5b390b Make comments in main an init doxygen compatible (Michael Ford)
2014-12-03 10:48:53 +01:00
Wladimir J. van der Laan
133344208c
Merge pull request #5400
32b93a1 Extra explanation for getchaintips (Pieter Wuille)
2014-12-03 10:17:13 +01:00
Wladimir J. van der Laan
1863deae5f
Merge pull request #5406
5fdbe67 Add 0.10 release notes on improvement to signing security. (Gregory Maxwell)
2014-12-03 10:03:57 +01:00
Gavin Andresen
9e56532959
Coinbases-in-mempool regression test
Immature coinbase spends are allowed in the memory pool if they can be mined in the next block.
They are not allowed in the memory pool if they cannot be mined in the next block.

This regression test tests those edge cases.
2014-12-02 19:07:39 -05:00
Pieter Wuille
307f7d48d4 Report script evaluation failures in log and reject messages 2014-12-02 22:05:03 +01:00
Ryan X. Charles
65b03282c9
newlines in strings are invalid JSON
Although script_valid.json and script_invalid.json are loaded correctly by the
JSON interpreter used by bitcoin core, these same files are often used by other
libraries and do not necessarily load correctly due to the fact that newlines
contained inside strings are not valid and must instead use the escape
character \n. The files tx_valid.json and tx_invalid.json handle this
correctly, so I've changed the formatting in script_valid.json and
script_invalid.json to mirror those files.
2014-12-02 10:02:44 -08:00
Pieter Wuille
0286fe5b3b
Merge pull request #5401
362001c Move CHECKMULTISIG order tests out of automatically generated block (Pieter Wuille)
f67a9ce Use deterministically generated script tests (Pieter Wuille)
2014-12-02 18:55:51 +01:00
Gregory Maxwell
5fdbe67ad9 Add 0.10 release notes on improvement to signing security.
I dropped mention of libgmp that I had in my first draft because
it looks like we'll be able to get that out prior to release.
2014-12-02 09:42:05 -08:00
Gavin Andresen
1c7e09f0b9
Merge pull request #5369
b2d0162 Test resurrecting memory pool transactions during chain re-org (Gavin Andresen)
3dd8ed7 Delay writing block indexes in invalidate/reconsider (Pieter Wuille)
798faec Add 'invalidateblock' and 'reconsiderblock' RPC commands. (Pieter Wuille)
2014-12-02 11:59:41 -05:00
Wladimir J. van der Laan
35e408f8a4 Regard connection failures as attempt for addrman
This avoids connecting to them again too soon in ThreadOpenConnections.

Make an exception for connection failures to the proxy as these
shouldn't affect the status of specific nodes.
2014-12-02 17:54:16 +01:00
Gavin Andresen
b2d0162ba4
Test resurrecting memory pool transactions during chain re-org
Builds on #5316.
2014-12-02 11:09:25 -05:00
Wladimir J. van der Laan
90f7aa7778
Fix rest.py test after #5376 2014-12-02 15:57:20 +01:00
Wladimir J. van der Laan
fec0d100d5
Merge pull request #5376
8a5c951 [REST] make selection of output-format mandatory, support dot url syntax (Jonas Schnelli)
2014-12-02 15:34:43 +01:00
Philip Kaufmann
4709160b50 [Qt] fix a translation that occurs 2 times but was a little different 2014-12-02 15:06:55 +01:00
Philip Kaufmann
50db7d9f09 [Qt] change some strings to reflect name change to Bitcoin Core 2014-12-02 15:06:15 +01:00
Philip Kaufmann
2747f7cf77 [Qt] fix missing plural form for a string in sendcoinsdialog
- this was reported on Transifex by pryds (Thank you!)
2014-12-02 15:06:15 +01:00
Michael Ford
c5b390b6b9 Make comments in main an init doxygen compatible
Fix typos where appropriate
Update license/copyright
2014-12-02 15:50:58 +08:00
Pavel Janík
b93173dee9 Move SendMoney() to rpcwallet.cpp. 2014-12-02 08:32:10 +01:00
Pieter Wuille
362001c19f Move CHECKMULTISIG order tests out of automatically generated block 2014-12-01 21:37:20 +01:00
Pieter Wuille
f67a9ce0dc Use deterministically generated script tests
Now that signing is deterministic, we can require exact correspondence between the
automatically generated tests and the ones read from JSON. Do this, and update
the tests to those deterministic versions. Note that some flag changes weren't
correctly applied before.
2014-12-01 21:29:02 +01:00
Pieter Wuille
32b93a1bc2 Extra explanation for getchaintips 2014-12-01 20:48:50 +01:00
Wladimir J. van der Laan
7026cbd6db
Merge pull request #5379
01dc2d8 [REST] add REST interface tests in rpc-test section (Jonas Schnelli)
2014-12-01 20:24:50 +01:00
Luke Dashjr
8a20cd3c51 prioritisetransaction RPC: Restore compatibility with existing implementations by using satoshis for fee offset rather than BTC 2014-12-01 14:18:07 +00:00
Wladimir J. van der Laan
f0877f8b62
Merge pull request #5227
4cdaa95 Resize after succesful result (Pieter Wuille)
9d8604f Header define style cleanups (Pieter Wuille)
a53fd41 Deterministic signing (Pieter Wuille)
3060e36 Add the RFC6979 PRNG (Pieter Wuille)
a8f5087 Add HMAC-SHA256 (Pieter Wuille)
36fa4a7 Split up crypto/sha2 (Pieter Wuille)
2014-12-01 14:57:58 +01:00
Jonas Schnelli
01dc2d83f8 [REST] add REST interface tests in rpc-test section 2014-12-01 12:52:21 +01:00
Wladimir J. van der Laan
89151d9f29
Merge pull request #5390
43422a0 [Qt] Fix wallet-lock in CWallet::GetAccountAddresses(..) (Cozz Lovan)
2014-12-01 12:44:26 +01:00
Wladimir J. van der Laan
0ddf4416cc
Merge pull request #5386
1b91be4 Report status of chain tips (Pieter Wuille)
2014-12-01 11:49:35 +01:00
Wladimir J. van der Laan
b248a38aa5
Merge pull request #5388
1cf23f6 Update the intent on SI-style separators. (21E14)
2014-12-01 10:17:58 +01:00
Pavel Janík
4c69ebed44 Add /opt/local/include/db48 only if it exists. 2014-11-30 09:56:20 +01:00
Cozz Lovan
43422a0121 [Qt] Fix wallet-lock in CWallet::GetAccountAddresses(..) 2014-11-29 12:51:36 +01:00
Pieter Wuille
4cdaa95a20 Resize after succesful result 2014-11-28 21:16:51 +01:00
21E14
1cf23f6c50 Update the intent on SI-style separators. 2014-11-28 10:34:25 -05:00
Pieter Wuille
5270817180
Merge pull request #5365
3a05ba1 Fix typo in doxygen comment. (Pavel Janík)
2014-11-28 16:22:25 +01:00
Wladimir J. van der Laan
d7c8a830c4
Merge pull request #5316
f86a24b Move `setmocktime` to hidden category (Wladimir J. van der Laan)
bd9aebf Introduce a hidden category (Pieter Wuille)
0dd06b2 Delay writing block indexes in invalidate/reconsider (Pieter Wuille)
9b0a8d3 Add 'invalidateblock' and 'reconsiderblock' RPC commands. (Pieter Wuille)
2014-11-28 11:19:15 +01:00
Wladimir J. van der Laan
f86a24b368
Move setmocktime to hidden category
Another testing-only potential footgun command.
2014-11-28 10:57:14 +01:00
Wladimir J. van der Laan
631e698bb7
Merge pull request #5374
a53d16a Use complete path to include bitcoin-config.h. (Pavel Janík)
2014-11-28 09:46:39 +01:00
Jonas Schnelli
8a5c9513ba [REST] make selection of output-format mandatory, support dot url syntax
1. Remove the default format (binary) because `rest/block/<hash>/Hex` would end up delivering binary data.
2. List available formats when chosen format was not found (reduces need for documentation)
3. Change url syntax to dot extension like format chosing (like `rest/tx/<hash>.json`
2014-11-27 14:06:45 +01:00
Wladimir J. van der Laan
2adce1f716
Merge pull request #5385
57be955 Remove -printblock, -printblocktree, and -printblockindex (Pieter Wuille)
2014-11-27 13:26:36 +01:00