Commit Graph

11762 Commits

Author SHA1 Message Date
Simon
a5ca7967a4 Add new wallet test: SetSaplingNoteAddrsInCWalletTx. 2018-08-08 12:03:10 -07:00
Simon
3afc6ce219 Update CWallet::GetConflicts for Sapling. 2018-08-08 12:03:10 -07:00
Simon
6d8ea4fa82 Fix typo in parameter name. 2018-08-08 12:03:10 -07:00
Simon
9fe34549b1 Fix inaccurate comments in test. 2018-08-08 12:03:10 -07:00
Simon
668ca2974a Fix typo in variable name in test. 2018-08-08 12:03:10 -07:00
Simon
992a82c649 Rename wallet tests for clarity between Sprout and Sapling. 2018-08-08 12:03:10 -07:00
Simon
f13387486e Add new wallet tests: SpentSaplingNoteIsFromMe. 2018-08-08 12:03:10 -07:00
Simon
fba4168049 Add new wallet test: UpdatedSaplingNoteData. 2018-08-08 12:03:10 -07:00
Simon
e5df6ec5cc Add new wallet test: NavigateFromSaplingNullifierToNote
Checks caching of Sapling nullifier and mapping to its SaplingOutPoint.
2018-08-08 12:03:10 -07:00
Simon
2f6481f835 Add two new wallet tests: FindMySaplingNotes, SaplingNullifierIsSpent. 2018-08-08 12:03:10 -07:00
Simon
c343e2db9a Fix code review nits. 2018-08-08 12:03:10 -07:00
Simon
3b6dd486b4 Refactor IsSpent(nullifier) for Sprout and Sapling domain separation.
We need separate functions for checking Sprout and Sapling nullifiers,
because they are in separate domains and aren't guaranteed to be
collision-resistant (otherwise there is a possibility of a nullifier
collision, however remote, between Sprout and Sapling causing the spend
of one to prevent the spend of the other).
2018-08-08 12:03:10 -07:00
Simon
ec064abbdf Iterate over mapSaplingFullViewingKeys with ivk->fvk mapping (1:1).
When diversified addresses are supported, iterating over
mapSaplingIncomingViewingKeys will be inefficient as the mapping will
be addresses->ivk (n:1).
2018-08-08 12:03:10 -07:00
Simon
28d3dc8532 Add test for CWalletTx::SetSaplingNoteData() 2018-08-08 12:03:10 -07:00
Simon
f12daeb44a Clean up names of unit tests in gtest/test_wallet.cpp. 2018-08-08 12:03:10 -07:00
Simon
edfc6a787f Update CWallet::IsSpent() to check Sapling nullifiers. 2018-08-08 12:03:10 -07:00
Simon
ad1e90dd34 Add caching and updating of Sapling note nullifier. 2018-08-08 12:03:10 -07:00
Simon
f9816408b2 Update CWalletTx::GetAmounts() to return COutputEntry for Sapling valueBalance. 2018-08-08 12:03:10 -07:00
Simon
f686388991 Cleanup CWalletTx::GetAmounts() for clarity. No-op. 2018-08-08 12:03:10 -07:00
Simon
c47c1e9363 Remove dead code in CWalletTx::GetAmounts() as filed in issue #3434. 2018-08-08 12:03:10 -07:00
Simon
d7cf640bbf Create CWallet::IsSaplingNullifierFromMe() 2018-08-08 12:03:10 -07:00
Simon
037cacf2ce Rename IsFromMe(nullifier) to IsSproutNullifierFromMe(nullifier). 2018-08-08 12:03:10 -07:00
Simon
78584ef794 Create CWallet::FindMySaplingNotes() 2018-08-08 12:03:09 -07:00
Simon
d4d0ec7e95 Update test to pass in required cm to SaplingNotePlaintext::decrypt(). 2018-08-08 12:03:09 -07:00
Sean Bowe
69c4391b0f Check commitment validity within the decryption API for Sapling note plaintexts. 2018-08-08 12:03:09 -07:00
Simon
52332fb417 Create CWallet::AddToSaplingSpends() to track Sapling nullifiers. 2018-08-08 12:03:09 -07:00
Simon
3a83e7c9a4 Update CWallet::UpdatedNoteData() for Sapling. 2018-08-08 12:03:09 -07:00
Simon
dae1c4204a Update CWallet::MarkAffectedTransactionsDirty() for Sapling. 2018-08-08 12:03:09 -07:00
Simon
a132719da5 Add ivk member variable and equality comparators to SaplingNoteData class. 2018-08-08 12:02:27 -07:00
Simon
3438e26cc3 Rename mapTxNullifiers to mapTxSproutNullifiers. 2018-08-08 11:37:38 -07:00
Simon
d5e490d9f2 Rename CWallet::AddToSpends methods for clarity. 2018-08-08 11:37:38 -07:00
Simon
f41bf503e1 Rename mapNullifiersToNotes to mapSproutNullifiersToNotes. 2018-08-08 11:37:38 -07:00
Simon
618206c7d5 Rename GetNoteNullifier to GetSproutNoteNullifier. 2018-08-08 11:37:38 -07:00
Simon
57faf44e61 Rename FindMyNotes to FindMySproutNotes. 2018-08-08 11:37:38 -07:00
Homu
40f320e0ee Auto merge of #3443 - daira:testnet-rollback, r=str4d
Support testnet rollback.

Part of #1302. Closes #2905.
2018-08-08 05:28:08 -07:00
Jack Grigg
13751895c7 Move RewindBlockIndex log message inside rewindLength check 2018-08-08 12:08:29 +01:00
Homu
0c5733fc22 Auto merge of #3448 - ebfull:sapling-params, r=bitcartel
Switch to use the official Sapling parameters
2018-08-07 11:20:10 -07:00
Homu
8df048b1de Auto merge of #3447 - str4d:zip32-prep, r=str4d
ZIP 32 preparations

Includes Makefile changes cherry-picked from the following upstream PRs:

- bitcoin/bitcoin#7689
- bitcoin/bitcoin#10849

Part of #3380.
2018-08-05 05:26:10 -07:00
Jack Grigg
d0372cff5e Adjust Makefile so that common can be used by the wallet 2018-08-05 10:41:06 +01:00
Jack Grigg
e188723823 Upgrade Rust to 1.28.0 stable 2018-08-05 10:41:06 +01:00
Jack Grigg
0ecdd0f30a chainparams: Add BIP 44 coin type (as registered in SLIP 44) 2018-08-05 10:41:06 +01:00
Jonas Schnelli
4922d1c19a Fix test_bitcoin circular dependency issue 2018-08-05 10:41:06 +01:00
Cory Fields
6a753e4f9c crypter: shuffle Makefile so that crypto can be used by the wallet
Wallet must come before crypto, otherwise linking fails on some platforms.

Includes a tangentially-related general cleanup rather than making the Makefile
sloppier.
2018-08-05 10:41:07 +01:00
Sean Bowe
198dfd3c36 Switch to use the official Sapling parameters. 2018-08-04 16:28:39 -06:00
Homu
aa32786576 Auto merge of #3396 - arcalinea:3389_sapling_crypter, r=str4d
Update CCryptoKeyStore with Sapling support

Sapling crypter overrides for various `CCryptoKeyStore` functions such as:
- `HaveSaplingSpendingKey()`
- `GetSaplingSpendingKey()`

Also includes some changes to prepare for diversified addresses and ZIP 32.

Closes #3389
2018-08-03 09:48:22 -07:00
Homu
4b27d2efcd Auto merge of #3441 - ebfull:check-param-hash, r=str4d
Check the hash of the zk-SNARK parameters during initialization

**Please also review https://github.com/zcash/librustzcash/pull/28.**
2018-08-03 07:52:09 -07:00
Jack Grigg
25d5e80cbe Rename *SpendingKey -> *SproutSpendingKey
Also GetPaymentAddresses -> GetSproutPaymentAddresses
2018-08-03 10:10:26 +01:00
Jack Grigg
f84cf5f817 Formatting nits 2018-08-03 02:25:51 +01:00
Jack Grigg
4c77517772 Rename *ViewingKey* -> *SproutViewingKey* 2018-08-03 02:23:38 +01:00
Jack Grigg
74f5b010df Rename Serialized*Size -> SerializedSprout*Size 2018-08-03 01:57:40 +01:00