Skip to content

Multipath descriptors support #469

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

Closed
darosior opened this issue Sep 30, 2022 · 3 comments · Fixed by #470
Closed

Multipath descriptors support #469

darosior opened this issue Sep 30, 2022 · 3 comments · Fixed by #470

Comments

@darosior
Copy link
Contributor

Multipath descriptors were proposed as a way to optimize the descriptor backup for the common case of having two derivation chains (one for receiving addresses, one for change).

A BIP was proposed a couple months ago: bitcoin/bips#1354. There is an implementation in Bitcoin Core at bitcoin/bitcoin#22838.

It was previously discussed at length in bitcoin/bitcoin#17190.

I think it would be helpful for us to support them. What do you think?

@apoelstra
Copy link
Member

Yes, I do think we should support them.

@darosior
Copy link
Contributor Author

darosior commented Oct 1, 2022

I'm working on something. It's a quite invasive change, i'm adding a new variant of DescriptorPublicKey that contains a DescriptorMultiXKey. I think i'll have to change some interfaces as some assumptions necessarily don't hold anymore, for instance

/// Full path, from the master key
///
/// For wildcard keys this will return the path up to the wildcard, so you
/// can get full paths by appending one additional derivation step, according
/// to the wildcard type (hardened or normal)
pub fn full_derivation_path(&self) -> bip32::DerivationPath {

@darosior
Copy link
Contributor Author

darosior commented Oct 6, 2022

I've opened a WIP pull request to discuss the approach. #470

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

Successfully merging a pull request may close this issue.

2 participants