You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Merge dashpay#6570: feat: mnemonic support for descriptor wallets
42e80f1 refactor: add prefix crypted_ for arguments related to crypted mnemonic (Konstantin Akimov)
c89e181 feat: improve wording for errors, RPC and logs (Konstantin Akimov)
b3a7475 refactor: removed dead commented code from serialize.h (Konstantin Akimov)
c8a6f69 refactor: use args instead gArgs in new mnemonic code (Konstantin Akimov)
d093506 fix: compilation errors due to advancing develop branch (Konstantin Akimov)
e636d19 test: multiple fixes in wallet_mnemonics to fix review comments (Konstantin Akimov)
3a8ab80 fix: intermittent error in wallet_mnemonic.py due to different order of descriptors (Konstantin Akimov)
4bd214e test: adjust commentary, ensure cb private key is "inactive" descriptor (Konstantin Akimov)
8eb5d4a fix: do not reset seed / mnemonic for descriptor wallets in case of encryption (Konstantin Akimov)
e27f95c fix: text message for HD wallets (both descriptors and non-descriptors) (Konstantin Akimov)
4f6be3d test: make functional test wallet_mnemonicbits.py works for descriptor wallets (Konstantin Akimov)
979ed95 feat: implement mnemonic for descriptor wallets (Konstantin Akimov)
267693f fix: expand text commentary for RPC encryptwallet (Konstantin Akimov)
d287f09 refactor: drop -usehd=1 from some functional tests so far as it is default option (Konstantin Akimov)
Pull request description:
## Issue being fixed or feature implemented
Descriptor wallets doesn't support yet mnemonics (BIP39), which are supported only by legacy (non-descriptor) wallet.
## What was done?
This PR adds basic support BIP39 to descriptor wallets:
- newly created descriptor wallets will have mnemonic
- RPC `upgradetohd` now support descriptor wallets and let to set specifict mnemonic with passphrase to newly created wallet
- mnemonic is shown when calling RPC `listdescriptors` if exists
## How Has This Been Tested?
Functional test `wallet_mnemonicbits.py` support `--descriptors` now
Functional test `wallet_upgradetohd.py` is updated also
## Breaking Changes
N/A
## Checklist:
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [x] I have added or updated relevant unit/integration/functional/e2e tests
- [ ] I have made corresponding changes to the documentation
- [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_
ACKs for top commit:
UdjinM6:
utACK 42e80f1
kwvg:
utACK 42e80f1
Tree-SHA512: 2f55dd291356da8bfca31bd270c1a22056e7d2977e5f91761970cfaa6ccf5038cc930d59b6a572a2fcc6198ac9031ab177ca86d63155a6b3bd86bd92d3dbb4ee
{RPCResult::Type::STR, "mnemonic", "The mnemonic for this descriptor wallet (BIP39, english words). Presented only if private=true and created with a mnemonic"},
1973
+
{RPCResult::Type::STR, "mnemonicpassphrase", "The mnemonic passphrase for this descriptor wallet (BIP39). Presented only if private=true and created with a mnemonic"},
1972
1974
{RPCResult::Type::NUM, "timestamp", "The creation time of the descriptor"},
1973
1975
{RPCResult::Type::BOOL, "active", "Whether this descriptor is currently used to generate new addresses"},
1974
1976
{RPCResult::Type::BOOL, "internal", /*optional=*/true, "True if this descriptor is used to generate change addresses. False if this descriptor is used to generate receiving addresses; defined only for active descriptors"},
0 commit comments