Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide a wallet upgrade path that moves funds held by legacy keys into a unified account. #6

Open
nuttycom opened this issue Mar 3, 2023 · 1 comment

Comments

@nuttycom
Copy link

nuttycom commented Mar 3, 2023

For historical reasons (to be documented in zcash/zips#675), a zcashd wallet may hold funds in a fashion where the keys that control these funds may not be able to be reproduced via standard BIP 44 derivation from a mnemonic seed. In the interest of making it possible to migrate uses to depending exclusively upon the standard key derivation mechanism, we should provide an API that does the following:

(1) Migrates funds such that they are held by keys that are derived using standard BIP 44 / ZIP 32 derivation.
(2) Once a wallet has had its funds migrated, methods such as listaddresses should be default no longer display addresses associated with the legacy-derived keys by default; instead, a special show_legacy_addrs argument should be required in order to reveal such addresses to the user.

@nuttycom nuttycom transferred this issue from zcash/zcash Sep 30, 2024
@daira
Copy link

daira commented Oct 1, 2024

After zcash/librustzcash#1552, it would be possible to do this as a completely automatic operation. However, it is not blocked by zcash/librustzcash#1552 because technically it is not necessary for the legacy-derived keys to be held by the wallet; they could be provided temporarily.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants