Commit Graph

15440 Commits

Author SHA1 Message Date
Kris Nuttycombe cd01b2d9bf Fix transparent BIP-44 keypaths. 2021-11-01 21:06:32 -06:00
Kris Nuttycombe b54d4cac7d Restore FindAddress comment 2021-11-01 10:13:19 -06:00
Kris Nuttycombe e4e77eb389 Fix diversifier_index_t less than operator. 2021-10-30 08:26:59 -06:00
Kris Nuttycombe 0951fe22d8 Apply suggestions from code review
Co-authored-by: str4d <jack@electriccoin.co>
2021-10-30 08:26:59 -06:00
Kris Nuttycombe 67557df165 Use SecureString for mnemonic phrase. 2021-10-30 08:26:59 -06:00
Kris Nuttycombe d09a0c44f3 Clean up format of recovery information in the wallet dump. 2021-10-29 13:38:36 -06:00
Kris Nuttycombe 30517a002b Move CKeyMetadata back to wallet.h 2021-10-29 13:38:36 -06:00
Kris Nuttycombe dbcdc560de Fix spurious test passage. 2021-10-29 13:38:36 -06:00
Kris Nuttycombe 22fa6b22ea Restore legacy HD seed storage & retrieval tests. 2021-10-29 13:38:36 -06:00
Kris Nuttycombe b67e62d977 Address comments from code review. 2021-10-29 13:38:36 -06:00
Kris Nuttycombe 477a166565 Use hardened derivation for the legacy Sapling key at the address index level. 2021-10-29 13:38:36 -06:00
Kris Nuttycombe 8bf4ec3b4a Require backup of the emergency recovery phrase.
After 4.5.2, all wallets will be populated with an emergency
recovery phrase, and all future addresses will be derived from
the associated seed. To prevent potential loss of funds, we
require that the user explicitly invoke the `walletconfirmbackup`
RPC method to verify that they have backed up this seed.
2021-10-29 13:38:36 -06:00
Kris Nuttycombe 5760a639d2 Use 0x7FFFFFFF for the legacy account ID. 2021-10-25 14:09:21 -06:00
Kris Nuttycombe d6984dbf78 Fix wallet import/export test 2021-10-21 11:44:08 -06:00
Kris Nuttycombe e0ae5362c9 Revert change to the type of GenerateNewKey 2021-10-21 08:21:13 -06:00
Kris Nuttycombe d8d9cd129e Use legacy address for Sapling migration until UA functionality is available to the RPC tests. 2021-10-20 17:13:52 -06:00
Kris Nuttycombe ebab190fdf Replace account ID with ZIP-0032 key path in listaddresses output.
Account ID information is insufficiently granular to identify separate
pools of spend authority.
2021-10-20 13:33:47 -06:00
Kris Nuttycombe dc2c07bbde Generate legacy Sapling addresses from the mnemonic seed.
This further deprecates the legacy seed, by no longer using it
as a source of randomness. Instead of continuing to rely on
successive account identifiers for the legacy seed, it now
takes advantage of the `m/32'/coin_type'/account'/addressIndex'`
keypath scheme defined by ZIP 32. For the purpose of the zcashd
wallet, the account identifier used in generation of Sapling
addresses associated with the legacy address generation code
path is fixed to 0x7FFFFFFE, the same as the account used for
all future transparent address generation.
2021-10-20 13:33:47 -06:00
Kris Nuttycombe 2885ae7643 Derive transparent keys from mnemonic seed. 2021-10-19 17:51:14 -06:00
Kris Nuttycombe 666d135e2e Apply suggestions from code review
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2021-10-19 11:48:02 -06:00
Kris Nuttycombe daf443c9e6 Update librustzcash dependency version. 2021-10-19 11:48:02 -06:00
Kris Nuttycombe 8f1d58f16f Remove unused forward declaration. 2021-10-19 11:48:02 -06:00
Kris Nuttycombe f99f2e4b3f Fix tests for wallet operations on legacy Sapling keys. 2021-10-19 11:48:02 -06:00
Kris Nuttycombe 290b2e4e39 Use the default UA-based Sapling address for the saplingmigration tool. 2021-10-19 11:48:02 -06:00
Kris Nuttycombe f6ad523ccb Add unified full viewing keys and Zcash-internal unified addresses. 2021-10-19 11:48:02 -06:00
Kris Nuttycombe 83dee7e886 Adds basic unified spending key derivation.
Also, begin pruning Sapling key derivation down to the
minimal amount required to support the legacy Sapling
key derivation process.
2021-10-19 11:48:02 -06:00
Kris Nuttycombe 8883ae8b9e Add support for externally searching for valid Sapling diversifiers.
In order to support generation of unified addresses, it needs
to be possible for the code generating a unified address to search
the space of Sapling diversifiers to obtain a valid diversifier.

Historically, invalid diviersifiers were simply skipped, so we retain
this behavior when obtaining a Sapling address from the legacy HD seed.
2021-10-19 11:48:02 -06:00
Kris Nuttycombe 5677649af1 Derive random HD seeds from ZIP-339 seed phrases.
Add support for dump of legacy HD seeds & persistence of mnemonic-based seeds.
2021-10-19 11:48:02 -06:00
Marshall Gaucher d6fc064018
Merge pull request #5342 from LarryRuane/2021-10-wallet-network-info-error
better wallet network info error handling
2021-10-15 18:12:44 -07:00
Kris Nuttycombe 3329b26374
Merge pull request #5339 from git-sgmoore/patch-1
Update reduce-traffic.md - add one word
2021-10-14 18:41:57 -06:00
Kris Nuttycombe 0e685b67da
Fix wallet-related wording in doc/reduce-traffic.md 2021-10-13 13:20:40 -06:00
Steven 1a7c2a3b04
Merge pull request #5337 from LarryRuane/2021-09-testIBD
Fix two boost tests that require post-IBD
2021-10-13 08:16:58 -07:00
Larry Ruane 58e4a76e60 better wallet network info error handling 2021-10-11 12:15:07 -06:00
Kris Nuttycombe 78ee3d7357
Merge pull request #5354 from zcash/hotfix-v4.5.1-1
Merge v4.5.1-1 hotfix branch
2021-10-11 08:58:20 -06:00
str4d 3ac39a56e4
Merge pull request #5349 from str4d/release-v4.5.1-1
Release v4.5.1-1
2021-10-09 08:51:38 +13:00
Jack Grigg d397f4e36d Update v4.5.1-1 release notes with bugfix 2021-10-08 17:07:24 +00:00
Jack Grigg e2abf34cc9 make-release.py: Updated release notes and changelog for 4.5.1-1. 2021-10-08 17:03:31 +00:00
Jack Grigg 3a20ade75d make-release.py: Updated manpages for 4.5.1-1. 2021-10-08 17:03:31 +00:00
Jack Grigg a4419b5f85 make-release.py: Versioning changes for 4.5.1-1. 2021-10-08 17:00:27 +00:00
str4d 5860151e35
Merge pull request #5347 from str4d/dep-bumps-hotfix-v4.5.1-1
Dependency bumps for v4.5.1-1
2021-10-09 06:00:08 +13:00
Jack Grigg 0263185a65 depends: Postpone dependency updates
We aren't going to move to Clang 13 in a hotfix release. The other
dependencies passed their postponement re-evaluation date, but also
won't be updated just yet.
2021-10-08 16:54:36 +00:00
Jack Grigg 8f0f8b6687 cargo update 2021-10-08 16:53:00 +00:00
str4d 59a75f9007
Merge pull request #5343 from nuttycom/feature/listaddresses
Add `listaddresses` RPC method.
2021-10-09 05:35:59 +13:00
Kris Nuttycombe d867a8dc67 Use lowerCamelCase for listaddresses JSON 2021-10-08 10:30:39 -06:00
Kris Nuttycombe 23507899a3 Consistently group Sapling addresses by IVK for every source. 2021-10-07 19:58:31 -06:00
Kris Nuttycombe 2221bf5484 Add listaddresses check to wallet_addresses.py 2021-10-07 18:12:13 -06:00
Kris Nuttycombe 9e83d28afb Include `ImportedWatchOnly` as a PaymentAddressSource result. 2021-10-07 17:43:56 -06:00
str4d 609373f205
Merge pull request #5346 from nuttycom/fix/remove_dead_code
Remove unused `AddDestData` method.
2021-10-08 10:47:09 +13:00
Kris Nuttycombe 7b40f87404 Update release notes for v4.5.1-1 to reflect the addition of `listaddresses` 2021-10-07 14:25:50 -06:00
Kris Nuttycombe 6b1d290789 Group legacy_hdseed Sapling addresses by account ID. 2021-10-07 13:48:55 -06:00