3
0
mirror of https://github.com/Qortal/altcoinj.git synced 2025-02-07 14:54:15 +00:00

2098 Commits

Author SHA1 Message Date
Matt Corallo
d3003622f2 Handle getting a null from getNewParser gracefully 2014-08-17 14:24:59 -07:00
Kosta Korenkov
e2dbd2a3f7 Fix DeterministicKeyChainTest failing on Windows
Git changes line endings in files to CR+LF on Windows by default, while
protobuf always uses LF. That makes serialization tests fail.
2014-08-17 22:50:29 +07:00
Andreas Schildbach
4834fe6eb6 Remove TransactionConfidence.workDone. It doesn't seem useful and was somehow buggy. 2014-08-16 15:16:11 +02:00
Mike Hearn
9f8e09c5b4 HDUtils: less insistence on immutable params 2014-08-15 18:46:19 +02:00
Mike Hearn
1b92abe294 HDW: Add an AUTHENTICATION key purpose that's mapped to the internal chain. 2014-08-15 18:22:57 +02:00
Mike Hearn
f00aef2048 HDW: Add a getKeyByPath() method to wallet, and (experimental) sanity check precomputed keys before they're returned by the wallet API to guard against the potential of a bitflip in either the stored pubkey bytes, or the ECC precomputed tables. The chance of such a bit flip is small but such flips HAVE been seen in the wild against other bitcoin implementations, so it could happen to a bitcoinj user too. The consequences can be catastrophic (destroyed money) so best to try and do what we can. 2014-08-15 18:06:06 +02:00
Mike Hearn
f8bc4d544e HDW: Create/activate a new HD chain when a wallet is constructed if the passed KeyChainGroup is empty. This means you can back up a wallet immediately after construction even before you request a key. Thanks to Andreas for the suggestion. 2014-08-15 17:04:27 +02:00
Kosta Korenkov
e893894f50 Make RedeemData to sort keys.
So that these keys are stored in the same order they appear in redeem script. That would make easier for signers to locate signature position in scriptSig.
2014-08-15 11:35:15 +07:00
Mike Hearn
7ec75b3483 Fix typo in comment. 2014-08-13 16:11:13 +02:00
Mike Hearn
014438b456 Take out the redundant SigHashType parameter to wallet.signTransaction.
In the end the API evolved in such a way that changing this param isn't that useful. To do contracts you tend to work with transactions directly, and a Wallet subclass that needs to do special signing by default can override the signing engine used.
2014-08-13 14:57:43 +02:00
Mike Hearn
c1e79b442c Fix some thread safety issues with Bloom filtering.
This hasn't shown up in any bug reports, I just spotted them through reading the code.
2014-08-13 14:55:54 +02:00
Mike Hearn
e1f270f726 Revert "PeerFilterProvider methods are called with the lock already held, so just assert on that instead of locking again."
This reverts commit e888807dfd233f3500755a7aeb1f263c9ae65e4b.
2014-08-13 14:47:15 +02:00
Kosta Korenkov
1ba5909687 Add method to derive new keys when queried by path
Added DeterministicKeyChain.getKeyByPath(List, boolean) allowing to
specify whether to create non-existing key or not
2014-08-13 11:09:36 +02:00
Mike Hearn
e888807dfd PeerFilterProvider methods are called with the lock already held, so just assert on that instead of locking again. 2014-08-12 18:32:51 +02:00
Kosta Korenkov
f6b2fa5a2b Pluggable signers: simple local KeyBag signer
Introduced pluggable signers notion. Instances of
TransactionSigner could be added into the wallet, so that they subsequently
applied to transaction to complete it.
Existing signing code (Transaction.signInputs) was refactored into
LocalTransactionSigner, which is always implicitly added to any wallet.

Related pull request: #157
2014-08-12 17:58:29 +02:00
Mike Hearn
4a9295ccde Fix duplicateDetached 2014-08-12 16:32:52 +02:00
Mike Hearn
a30cdfed0c Eliminate the duplicated parentTransaction field from TransactionInput/Output. 2014-08-12 15:44:59 +02:00
Matt Corallo
20447bc340 Fix error when using Block.verify() after the Block constructor
...which takes all the elements of the block as paramters.
2014-08-11 15:27:48 -07:00
Mike Hearn
5220fb5141 Hide some fields in PartialMerkleTree 2014-08-11 19:21:25 +02:00
Andreas Schildbach
19b73600c8 Remove comment. I could not find any divergence in the getResourceAsStream error handling. 2014-08-11 18:45:35 +02:00
ollekullberg
fe91dc9110 Payment channel extension should be able to be initialized in two steps:
* A constructor that only takes the wallet as an argument

* A setTransactionBroadcaster() which should be called when the Bitcoin network is ready

Motivation: Some wallets (MultiBitHD) does not use WalletAppKit, and starts with reading the wallet before initializing the bitcoin network.
Now these wallets can create the wallet (and the wallet file is read), and call the setter after the bitcoin network is up.
2014-08-11 18:43:18 +02:00
Mike Hearn
90492b61f7 Change printed format of the wallet to be less verbose and make wallet-tool not dump privkeys by default. 2014-08-11 18:26:23 +02:00
Mike Hearn
e8ba287029 HD wallets: experimental change to not trigger full lookahead when deriving keys. This allows a savvy app to get keys/addresses at startup fast, if they do so before starting up the peergroup (which wants all keys in the zone so it can calculate a Bloom filter). May be reverted if it causes trouble. 2014-08-11 17:53:33 +02:00
Mike Hearn
d824666c2f HD Wallets: fix a lookahead bug.
We were not previously triggering lookahead before calculating a Bloom filter, which means we might have missed transactions in some edge cases. Add a test to catch this and then fix up various unit tests to have fewer magic numbers and be more robust to changes.
2014-08-11 16:37:31 +02:00
Mike Hearn
54a543bf77 HDW: Fix the case of wallet upgrades where the aesKey is provided. 2014-08-11 15:03:07 +02:00
Mike Hearn
00a276f906 HDW: Simplify an unusual for loop in DKC 2014-08-11 14:17:21 +02:00
Mike Hearn
53aa33c2e8 HDW: Clear some static analysis warnings from DKC. 2014-08-11 14:15:06 +02:00
Kosta Korenkov
0d2fb93536 Introduce MultisigKeyBag to expose P2SH redeem data
For married wallets KeyChainGroup now keeps redeem scripts together with keys
2014-08-11 11:34:20 +02:00
Devrandom
588e314b06 Fix failed precondition in maybeLookaheadScripts 2014-08-11 11:22:06 +02:00
Devrandom
2d3bfc07c7 Fix issue with deserialization and currentAddresses 2014-08-11 11:22:06 +02:00
Andreas Schildbach
a3ced5fe5d Consistently use version 2.8 of maven-dependency-plugin. 2014-08-11 11:18:09 +02:00
Andreas Schildbach
165b0cfbf7 Consistently use version 2.6 of cobertura-maven-plugin. 2014-08-11 11:18:09 +02:00
Andreas Schildbach
4eabf08250 Consistently use version 2.12.4 of maven-surefire-plugin. 2014-08-11 11:18:09 +02:00
Andreas Schildbach
fd4ec21dcc Consistently use version 2.1.2 of maven-source-plugin. 2014-08-11 11:18:09 +02:00
Andreas Schildbach
a5042222ac Consistently use version 3.3 of maven-site-plugin. 2014-08-11 11:18:09 +02:00
Andreas Schildbach
415e43885c Consistently use version 2.3 of maven-shade-plugin. 2014-08-11 11:18:09 +02:00
Andreas Schildbach
31ea0f406b Consistently use version 2.6 of maven-resources-plugin. 2014-08-11 11:18:09 +02:00
Andreas Schildbach
8e24ee865f Update to and consistently use version 2.5 of maven-jar-plugin. 2014-08-11 11:18:09 +02:00
Andreas Schildbach
80e2d46ed0 Update to and consistently use version 2.5.1 of maven-install-plugin. 2014-08-11 11:18:08 +02:00
Andreas Schildbach
43a6a60bea Consistently use version 1.2 of maven-enforcer-plugin. 2014-08-11 11:18:08 +02:00
Andreas Schildbach
e3dca2a268 Consistently use version 2.7 of maven-deploy-plugin. 2014-08-11 11:18:08 +02:00
Andreas Schildbach
2324edd03e Consistently use version 3.1 of maven-compiler-plugin. 2014-08-11 11:18:08 +02:00
Andreas Schildbach
99ca1c497f Consistently use version 2.5 of maven-clean-plugin. 2014-08-11 11:18:08 +02:00
Andreas Schildbach
549f228d29 Assume wordlist will be 2048 words in size. 2014-08-06 19:10:14 +02:00
Andreas Schildbach
761b06fb8a Fix handling of mnemonic class resource not found. It was falsely assumed that Class.getResourceAsStream() would throw. 2014-08-06 19:10:14 +02:00
Mike Hearn
32a5ed3f21 Don't roll back progress measurement when download peer changes in DownloadListener. 2014-08-06 19:04:28 +02:00
Mike Hearn
b7a83f960c Another Tor typo fix. 2014-08-06 19:03:03 +02:00
Mike Hearn
249d547ee3 Check for loading wallet of wrong params in deserializer (in another way so people who use the API at a lower level also get checked) 2014-08-06 18:21:31 +02:00
Mike Hearn
925338b4fc Bump Tor timeout to 60 seconds. 2014-08-06 18:21:08 +02:00
Mike Hearn
8dbdb0a6f3 Orchid: fix typo in init string 2014-08-06 18:00:40 +02:00