Skip to content

Support P2WPKH to single-sig P2TR wallet #189

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

Open
Tracked by #63
notmandatory opened this issue Jul 14, 2021 · 5 comments
Open
Tracked by #63

Support P2WPKH to single-sig P2TR wallet #189

notmandatory opened this issue Jul 14, 2021 · 5 comments
Labels
new feature New feature or request

Comments

@notmandatory
Copy link
Member

As suggested by @moneyball on Discord, this feature could be a transitional step to full TR adoption and valuable to projects building single signature P2WPKH wallets. The idea is described in more detail in bullet 4 of Bitcoin Optech "Preparing for taproot".

The way I believe this would work for BDK is the user would create a wallet with a wpkh() descriptor, and then have an option to use this wallet to derive new P2TR addresses, scan the blockchain for transactions with their P2TR addresses, and create and sign transactions that spend their P2TR outputs. All other BDK wallet features would also need to be updated such as for determining balances, and listing wallet transaction and unspent utxos.

@notmandatory notmandatory added the new feature New feature or request label Jul 14, 2021
@afilini
Copy link
Member

afilini commented Jul 16, 2021

I think this could be a bit out of scope for BDK but maybe we can provide examples to help our users do that themselves. I think this connects back to the discussion we had a while back about having wallets with multiple descriptors: doing it internally basically means having a special case for the wpkh descriptor and offering the user the option to treat the wallet as a multi-descriptor wallet, with the original wpkh and the new tr one.

I think it would overcomplicate things a bit.

@moneyball
Copy link

moneyball commented Jul 16, 2021 via email

@afilini
Copy link
Member

afilini commented Jul 16, 2021

Yeah conceptually I'd like to have something similar. It could be both, maybe a component that works with BDK as a module or sometimes some kind of wrapper on our wallet.

But I like the idea of providing bits of code that people can take and adapt for their use-case.

@notmandatory
Copy link
Member Author

Track via bitcoindevkit/bdk#63

@notmandatory
Copy link
Member Author

Will require #188

@notmandatory notmandatory moved this to Todo in BDK Wallet Mar 27, 2025
@notmandatory notmandatory transferred this issue from bitcoindevkit/bdk Apr 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new feature New feature or request
Projects
Status: Todo
Development

No branches or pull requests

3 participants