Commit Graph

180 Commits

Author SHA1 Message Date
Sean Gilligan
783dd45c4b Wallet: Remove (or reduce visibility of) the deprecated constructors.
Replace usages in unit tests and examples with usage of the static createDeterministic() constructor.
2019-04-08 11:23:41 +02:00
Sean Gilligan
170cc80e45 Update Guava to 27.1-android. 2019-04-05 10:31:35 +02:00
Andreas Schildbach
83b1e44d7d settings.gradle: Prefix project names by 'bitcoinj-'. 2019-03-24 10:34:23 +01:00
Andreas Schildbach
08bb331cc3 Update jopt-simple to 5.0.4. 2019-02-15 04:03:39 +01:00
Andreas Schildbach
f24a4aa19a Update Guava to 27.0.1-android. 2019-02-15 03:34:11 +01:00
Andreas Schildbach
34e8bc217a build.gradle: Configure Eclipse plugin. 2019-02-14 23:03:24 +01:00
Andreas Schildbach
bfe2a195b6 Receive to and send from native segwit addresses
- Hierarchical-deterministic derivation of native segwit addresses.
- Receive payments to native segwit addresses.
- Spend and sign payments from native segwit addresses.
- Watch-only wallets with native segwit addresses (zpub/vpub).
- WalletAppKit, Wallet-tool and Wallet-template are taught to deal with segwit-enabled wallets.

Be aware this adds a new field in the wallet protobuf: output_script_type in Key, which keeps track
of the script type of DeterministicKeyChains. Protobufs will be migrated; old DeterministicKeyChains
are assumed to be of type P2PKH.

Includes some code by Fabrice Drouin.
2019-02-11 16:48:37 +01:00
Andreas Schildbach
53a63c43bb Transaction: Add getTxId() and getWTxId(); deprecate getHash() and getHashAsString(). 2019-02-06 02:15:11 +01:00
Andreas Schildbach
a5fd9c6848 KeyBag: Rename method findKeyFromPubHash() to findKeyFromPubKeyHash(). 2019-02-01 18:02:20 +01:00
Andreas Schildbach
53908d8939 KeyBag, TransactionBag: Rename parameters pubkey to pubKey, pubkeyHash to pubKeyHash. 2019-02-01 18:01:45 +01:00
Andreas Schildbach
0875d4a5b3 ECKey: If DER-encoded signatures cannot be parsed, throw SignatureDecodeException rather than RuntimeException. 2019-01-03 11:55:32 +01:00
Andreas Schildbach
7b0a9c207f Update Guava to 25.1-android. 2018-11-27 13:41:58 +01:00
Andreas Schildbach
2992cc16ff build.gradle: Specify source encodings. 2018-10-31 11:12:49 +01:00
Andreas Schildbach
aaa5262ef4 Migrate from Maven to Gradle 3.4 for building. 2018-05-01 16:49:30 +02:00
Andreas Schildbach
7e9c45ad55 ForwardingService: Fix hardcoded fee by simply emptying the entire wallet to the forwarding address. This will make sure the library is calculating the correct fee. 2018-03-13 23:03:48 +01:00
Andreas Schildbach
7f5b6753f5 Use Address whereever possible in the API, rather than LegacyAddress.
This is a preparation for the remaining segwit changes. LegacyAddress
variables in unit tests are also changed.
2018-03-05 10:35:09 +01:00
Andreas Schildbach
e11119b64f Rename VersionedChecksummedBytes→PrefixedChecksummedBytes, Address→LegacyAddress and AbstractAddress→Address.
This also renames corresponding test classes and mentions in comments.
2018-02-28 16:57:16 +01:00
Andreas Schildbach
dedeb01dac Move ECKey.toAddress() to Address.fromKey().
This is a preparation for supporting native segwit addresses. Keys can't know what
type of address is wanted. In future, there will also be a SegwitAddress.fromKey().
2018-02-26 02:13:18 +01:00
Andreas Schildbach
cb01312395 Update to slf4j 1.7.25. 2018-02-23 12:24:06 +01:00
harryge00
911f6d49c0 SendRequest example: Fix the print info. 2018-02-10 17:43:25 +01:00
Andreas Schildbach
c927f0238b Rename variable peers to peerGroup, as the name can be misleading. 2017-12-21 12:47:13 +01:00
Andreas Schildbach
3c9cb34162 Move ScriptException from .core to .script package. 2017-08-14 09:24:18 +02:00
Bo-Ye
3e62906971 FetchBlock example: Enhance this example to be able to connect DNS discovered peers so that you don't need to install bitcoind locally. 2017-07-24 14:17:48 +02:00
Andreas Schildbach
afc198600a Utils: Inline join(). 2017-06-02 16:55:40 +02:00
Andreas Schildbach
e62275d41b Update to Guava 22.0-android. This raises the Java API requirement to 1.7. 2017-05-31 16:37:04 +02:00
Giuseppe Raveduto
1fd8b90f42 Fix SendRequest package in forwarding.js. 2017-02-16 01:39:26 +01:00
Andreas Schildbach
9cbc45aeea PeerAddress: Require NetworkParameters in constructors. 2017-01-10 11:23:25 +01:00
Giuseppe Raveduto
6669d9032c Fix the "TypeError: Java.extend needs at least one type argument" in the forwarding.js example (wrong package). 2016-12-01 13:25:49 +01:00
Andreas Schildbach
ea4a3ed67a Remove tor.js from examples as Tor support was removed from bitcoinj recently. 2016-12-01 13:22:05 +01:00
cyberzac
2e0e81d3a2 Payment channels: Added ClientChannelProperties and ServerChannelProperties to allow configuration of the channels. 2016-08-12 09:48:59 +02:00
Andreas Schildbach
736fd7dbde Add the generic license header to POMs, shell scripts and JavaScript/Python examples. 2016-06-06 21:32:02 +02:00
Andreas Schildbach
3773a4343c Add a generic copyright statement to all license headers that don't have one.
Note it is not legally necessary to state copyright, but we think it makes things easier.
2016-06-06 21:32:02 +02:00
Matthew Shaylor
0b3cc9c59f Replace URLs to code.google.com by the appropriate GitHub URLs. 2016-04-19 23:15:37 +02:00
Andreas Schildbach
a407f04b56 0.15-SNAPSHOT 2016-04-02 18:04:21 +02:00
Andreas Schildbach
9c83299571 Update to slf4j 1.7.20. 2016-04-02 17:05:24 +02:00
Andreas Schildbach
1e66b9a8e3 Finish moving wallet related classes to .wallet package.
These classes are moved to .wallet:
- Wallet + WalletTest
- WalletExtension + WalletExtensionsTest
- WalletProtobufSerializer
- UnreadableWalletException

These classes are moved to .wallet.listeners:
- WalletEventListener
- WalletChangeEventListener
- WalletCoinsReceivedEventListener
- WalletCoinsSentEventListener
- WalletReorganizeEventListener
- ScriptsChangeEventListener
- AbstractWalletEventListener
- KeyChainEventListener
- AbstractKeyChainEventListener
2016-04-01 21:44:30 +02:00
Andreas Schildbach
840df06b79 RefreshWallet: Comment how to get a test wallet. 2016-03-30 13:11:44 +02:00
Andreas Schildbach
c1938fec75 Harmonize license headers. 2016-03-26 19:55:05 +01:00
Andreas Schildbach
a97f4923b4 Get rid of SendRequest.DEFAULT_FEE_PER_KB "constant".
If you have been reading that field, you probably want to use Transaction.REFERENCE_DEFAULT_MIN_TX_FEE.
If you have been writing to that field to change the SendRequest.feePerKb default, use a Context.feePerKb
instead. There is also a new Context.ensureMinRequiredFee.
2016-03-21 21:55:28 +01:00
Andreas Schildbach
c4ea9c95e5 Use Message.unsafeBitcoinSerialize() whenever it's very clear we won't modify the array. 2016-02-29 22:16:01 +01:00
Will Shackleton
7bb7ab60e1 Added capability to run example payment channels on regtest, test or main nets 2016-02-27 13:00:47 +01:00
Ross Nicoll
ea3713ec85 Split PeerConnectionEventListener
Split PeerConnectionEventListener into individual connect, disconnect
and discovery listeners.
Remove custom listener registration from Peer, as now it's possible to
register a connect listener only, without a disconnect listener.
2016-02-13 18:18:56 +00:00
Ross Nicoll
3d3dd6f721 Split peer event listeners into single method interfaces 2016-02-13 15:10:12 +01:00
Will Shackleton
8af0fa9884 Implemented version 2 of payment channels API
I implemented version 2 of the payment channels API using
OP_CHECKLOCKTIMEVERIFY-style payment channels.
2016-02-10 11:15:35 +01:00
Ross Nicoll
aca39ee9de Split wallet events into single method interfaces 2016-02-06 20:01:38 +01:00
Andreas Schildbach
59fa28ec70 LevelDbFullPrunedBlockStore: Reformat and rename class. It used Windows line endings. 2016-01-25 22:53:51 +01:00
Robin Owens
db74695e43 LevelDb fully pruned block store. 2016-01-16 12:11:01 +01:00
Kirill Vlasov
0ba3f4c2d2 "@Override" annotation should be used on any method overriding (since Java 5) or implementing (since Java 6) another one. 2015-12-08 10:29:40 +01:00
Ross Nicoll
92df23c979 Added LOW_S script flag test case generator 2015-10-31 16:10:40 +01:00
Mike Hearn
fabbb0a9ac Tweak HS integration again to avoid performance regression. 2015-10-08 15:56:44 +02:00