Commit Graph

11706 Commits

Author SHA1 Message Date
Jack Grigg
4a89221ffc Check for unencrypted Sapling keys in CCryptoKeyStore::SetCrypted() 2018-08-03 00:23:08 +01:00
Jack Grigg
0adba6789b Add Sapling decryption check to CCryptoKeyStore::Unlock() 2018-08-03 00:23:08 +01:00
Jack Grigg
e8a949c153 Rename CryptedSpendingKeyMap -> CryptedSproutSpendingKeyMap 2018-08-03 00:23:08 +01:00
Jack Grigg
adf2eadba2 Rename DecryptSpendingKey -> DecryptSproutSpendingKey 2018-08-03 00:23:08 +01:00
Jay Graber
85beb9c9ca Add Sapling keys to CCryptoKeyStore::EncryptKeys 2018-08-03 00:23:08 +01:00
Jay Graber
55f2889396 Add Sapling have/get sk crypter overrides 2018-08-03 00:23:08 +01:00
Homu
871e1726c6 Auto merge of #3340 - Eirik0:rename-merkle-typedefs, r=str4d
Rename merkle tree typedefs to include Sprout

This is to be consistent with the naming convention we have been using to distinguish Sprout/Sapling.
2018-08-01 20:48:17 -07:00
Homu
16117c0d5a Auto merge of #3439 - ebfull:fix-ecc, r=ebfull
Don't call ECC_Start/ECC_Stop outside the test harness.
2018-08-01 17:23:14 -07:00
Sean Bowe
80bd573dc2 Make changes to gtest ECC behavior suggested by @str4d. 2018-08-01 16:53:27 -06:00
Sean Bowe
262d21bcbb Don't call ECC_Start/ECC_Stop outside the test harness. 2018-08-01 16:45:12 -06:00
Homu
0361f789fe Auto merge of #3246 - str4d:checkpoint-304600, r=bitcartel
Add some more checkpoints, up to the 1.1.0 release
2018-08-01 13:55:34 -07:00
Homu
066cc9c6c7 Auto merge of #3429 - str4d:3217-sapling-address-creation, r=str4d
Add Sapling support to z_getnewaddress and z_listaddresses

Closes #3217.
2018-08-01 12:01:39 -07:00
Jack Grigg
40dc060cb0 test: Update rpc_wallet_z_importexport to account for Sapling changes 2018-08-01 19:59:57 +01:00
Jack Grigg
4aabeebc1f test: Fix permissions of wallet_addresses 2018-08-01 19:56:01 +01:00
Eirik Ogilvie-Wigley
7d379f18c5 Rename test objects to include sprout or sapling 2018-08-01 10:52:58 -06:00
Eirik Ogilvie-Wigley
8ea8ef9850 Rename Witnesses to include sprout or sapling 2018-08-01 10:41:36 -06:00
Eirik Ogilvie-Wigley
4fc309f0f5 Rename Merkle Trees to include sprout or sapling 2018-08-01 10:31:09 -06:00
Jack Grigg
4fab49e173 test: Another assert in wallet_zkeys_tests.store_and_load_sapling_zkeys 2018-08-01 09:46:32 +01:00
Jack Grigg
d75e69da5a test: Deduplicate logic in wallet_addresses RPC test 2018-08-01 09:44:31 +01:00
Homu
d84f14ec4a Auto merge of #3417 - str4d:sapling-tx-builder, r=ebfull
TransactionBuilder for Sapling and transparent transactions

This PR includes zcash/librustzcash#24, and will create a testnet chain split once merged into master (and once a Sapling transaction is mined).
2018-07-31 23:44:29 -07:00
Sean Bowe
a310f6c5fa Relocate ECC_Start() to avoid test failures. 2018-08-01 00:42:02 -06:00
Jack Grigg
fbd029d99d Formatting 2018-07-31 23:28:42 +01:00
Homu
ece49a49a5 Auto merge of #3430 - ebfull:check-valuebalance, r=ebfull
Ensure sum of valueBalance and all vpub_new's does not exceed MAX_MONEY

HT to @daira for noticing that we don't check this in `CheckTransactionWithoutProofVerification`. We actually do check it in `GetShieldedValueIn` (by throwing an exception) but these exceptions are not handled by `CheckTxInputs`, which may cause a remote DoS.

Not exploitable assuming our proving system is secure, but definitely worthy of a fix.
2018-07-31 07:34:44 -07:00
Sean Bowe
3d75e8b3e7 Move extern params to beginning of test_checktransaction. 2018-07-31 08:33:33 -06:00
Sean Bowe
291895fac7 Ensure sum of valueBalance and all vpub_new's does not exceed MAX_MONEY inside of CheckTransactionWithoutProofVerification. 2018-07-30 22:35:31 -06:00
Sean Bowe
04ed758e37 Fix bug in return value. 2018-07-30 22:03:40 -06:00
Sean Bowe
b7b088c46b Update librustzcash and sapling-crypto. 2018-07-30 21:59:12 -06:00
Homu
a11e6aaacc Auto merge of #3336 - arcalinea:expiryheight-createrawtransaction, r=bitcartel
Take expiryheight as param to createrawtransaction

Addresses #3333
2018-07-30 13:56:34 -07:00
Simon
f01c11bd0f Add tests for expiryheight parameter of RPC createrawtransaction. 2018-07-30 10:24:10 -07:00
Jack Grigg
3f4ad5967b Fix block hash for checkpoint at height 270000 2018-07-30 17:45:04 +01:00
Jack Grigg
eec85c4388 Add Sapling support to z_getnewaddress and z_listaddresses 2018-07-30 16:24:20 +01:00
Jack Grigg
281b51e567 Raise the 90-character limit on Bech32 encodings
Regtest addresses are 91 characters, and ZIP 32's Bech32 encoding will
be significantly longer.
2018-07-30 16:01:22 +01:00
Jack Grigg
4715b31c76 Implement CKeyStore::GetSaplingPaymentAddresses() 2018-07-30 16:01:22 +01:00
Jack Grigg
54a868cf0a Rename xsk to expsk
xsk will be used for ZIP 32 extended spending keys, so renaming here to
reduce confusion.
2018-07-30 14:26:29 +01:00
Jack Grigg
a8dd4b0cf1 TransactionBuilder: Make fee configurable 2018-07-30 12:52:48 +01:00
Jack Grigg
45c0d1ec84 TransactionBuilder: Add change output to transaction 2018-07-30 12:46:18 +01:00
Homu
6b9c962725 Auto merge of #3410 - LarryRuane:3399-peer-ban, r=bitcartel
don't ban peers when loading pre-overwinter blocks

Addresses #3399. If we see an invalid transaction (from our peers who are up to date, post-overwinter) during initial block download, don't invoke DoS (logging messages, blocking these peers). Instead, simply ignore the transaction.
2018-07-30 03:46:37 -07:00
Jack Grigg
3466b4677e TransactionBuilder: Add support for transparent inputs and outputs 2018-07-30 11:03:29 +01:00
Homu
bb9658c88c Auto merge of #3402 - mdr0id:3401_fix_auto_senescence, r=bitcartel
Fix minor references to auto-senescence in code

Fix references
2018-07-30 01:36:32 -07:00
Homu
28a8d1d1c9 Auto merge of #3392 - arcalinea:sapling_z_importexport_keys, r=bitcartel
Add Sapling support to z_importkey, z_exportkey

Add Sapling support to `z_importkey` and `z_exportkey`
2018-07-29 21:04:14 -07:00
Simon
87d55e1322 Clean up help messages for RPC createrawtransaction.
Also return error if expiryheight used when Overwinter not active.
2018-07-29 20:57:33 -07:00
Jay Graber
76277ad8af Take expiryheight as param to createrawtransaction 2018-07-29 19:13:54 -07:00
Jay Graber
501de644ab Refactor into visitors and throw errors for invalid key or address. 2018-07-29 18:42:41 -07:00
Jay Graber
8dd1dbcfe4 Add Sapling to rpc_wallet_z_importexport test 2018-07-29 16:15:06 -07:00
Jay Graber
dd4c8a3c70 Add Sapling support to z_importkey 2018-07-29 16:15:06 -07:00
Jay Graber
2afc8eb0ec Add Sapling support to z_exportkey 2018-07-29 16:15:06 -07:00
mdr0id
e18f25e352 Fix minor references to auto-senescence in code
Update typo in rc-notes-1.0.13

Fix typo in rc-notes-1.0.13

Fix typo in rc-notes-1.0.13

Fix typo in rc-notes-1.1.0

Fix typo in rc-notes-1.1.0

Fix typo in make-release

Revert prior release note term to original auto-senescence
2018-07-29 06:32:08 -07:00
Jack Grigg
3fd0a269e1 test: Move ECC_Start() call into src/gtest/main.cpp 2018-07-27 17:18:49 +02:00
Jack Grigg
25bb05de23 Formatting 2018-07-27 12:17:14 +02:00
Jack Grigg
e5dc5228ea TransactionBuilder: Check that all anchors in a transaction are identical
This reduces the amount of information that is leaked by the choice of anchor.
In future we will make a protocol change to enforce that all inputs use the
same anchor.
2018-07-27 09:46:38 +02:00