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 e888807dfd
.
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
fd4ec21dcc
Consistently use version 2.1.2 of maven-source-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
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
2324edd03e
Consistently use version 3.1 of maven-compiler-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
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
4ae6349f35
Fix for Android ART vs Dalvik difference.
2014-08-06 16:40:13 +02:00
Mike Hearn
e41e0c4a1d
Allow usage of signMessage for deterministic keys.
2014-08-06 16:26:48 +02:00
Mike Hearn
047c5ccd03
WalletAppKit: configure Orchid/Tor to use the same directory as bitcoinj uses.
2014-08-06 16:12:41 +02:00
Mike Hearn
96e4774e79
Add support for fetching UTXOs from a peer using the getutxo message.
2014-08-06 13:43:51 +02:00
Mike Hearn
bca2f2abac
Make Wallet.queue* methods protected so subclasses can call them.
2014-08-06 13:43:31 +02:00
Kosta Korenkov
5cfdca1c98
Add ability to create scriptSigs with empty signatures
...
For partial scriptSig OP_0 is used as a signature placeholder:
Pay-to-address: OP_0 [pubkey]
Pay-to-pubkey: OP_0
P2SH with 2-of-3 CHECKMULTISIG: OP_0 OP_0 OP_0 [redeem script]
2014-08-05 20:49:40 +02:00
Martin Zachrison
bc97cf977f
Handle creation of non existing parent directories. Improve exception message.
2014-08-05 17:36:04 +02:00
Mike Hearn
0a7fdf35ba
Add some junk to the POM to create a dedicated bundled JAR for the pull tester.
2014-08-05 16:48:58 +02:00
Andreas Schildbach
918665a6e4
Work done can never be negative. Assert for that fact, because we've seen negative values in the wild.
2014-08-05 12:34:57 +02:00
Kosta Korenkov
fa3037a4b2
Fix KeyChainGroup.toString double keys output
2014-08-05 12:34:18 +02:00
Andreas Schildbach
299879c418
Allow fallback URLs for BIP72 payment request fetching. Adds unit tests.
2014-08-04 14:30:59 +02:00
Mike Hearn
e03f184a1f
PaymentProtocol: fix seconds vs milliseconds confusion. Thanks to Adam Mackler for the bug report.
2014-08-03 21:06:15 +02:00
cyberzac
eff9ac2ecc
Support for bundling an optional info Protobuf ByteString with a PaymentAck message
2014-08-03 21:02:40 +02:00
Mike Hearn
f1dd47443f
More hashes for the dependency verifier, also request version divergence detection. Bump JSR350 jar version.
2014-08-03 20:52:22 +02:00
Mike Hearn
fe6f5aff01
Payment channels: ByteString.EMPTY -> null
2014-07-31 16:18:48 +02:00