Summary
Update doc/multisig-tutorial.md to use multipath descriptor format
instead of separate external/internal descriptors. The tutorial now:
- extracts a single
xpub_nper participant - constructs a multipath
wsh(sortedmulti(...))descriptor with<0;1>
change index semantics - uses
getdescriptorinfoto compute descriptor checksum - explains that
importdescriptorsexpands the multipath descriptor
into internal and external descriptors - update
/test/functional/wallet_multisig_descriptor_psbt.pyfunctional test / documentation to use multi-path descriptors
Motivation
A single multipath descriptor is the most convenient pattern for multisig; our documentation should use it.
What changed
- replaced extraction of
external_xpub_nandinternal_xpub_nwith
extraction of a singlexpub_n - removed instructions to create and import separate external/internal
descriptors - added instructions to build a multipath
wsh(sortedmulti(...))
descriptor and derive checksum withgetdescriptorinfo - checksum field is parsed and appended as the multipath descriptor is not the canonical “desc” output
- clarified that
importdescriptorsautomatically expands multipath
descriptors into internal and external forms - similar changes to the functional test: wallet_multisig_descriptor_psbt.
Testing
I have run the updated shell snippets and confirmed the multipath descriptor produces the same listdescriptors output after importing as the two descriptor method in bitcoin:master.
Related issues / PRs
This tutorial change references the multipath descriptor consolidation (see commit / PR referenced in the change). The commit message points to bitcoin#22838 as the upstream change that enables this behavior.
Release note (for changelog)
Documentation: update multisig tutorial and multisig functional test to use multipath descriptors