Pay to Taproot is the native SegWit v1 output format. It commits directly to a public key which in turn can optionally commit to a script tree, thus combining capabilities of previous output formats. P2TR addresses are Bech32m encoded and start with the prefix `bc1p`.
Questions tagged [p2tr]
56 questions
12
votes
1 answer
What is the script assembly and execution in P2TR spend (spend from Taproot)
So I have found and fundamentally understand how P2PKH is assembled from inputs and outputs to create a bitcoin forth-like script for execution.
I looked at the SegWit BIP examples section and I found them easy enough to understand as well.
But…
Dan
- 451
- 2
- 8
9
votes
1 answer
BIP-341: Should key-path-only P2TR be eschewed altogether?
Consider BIP-341 "Constructing and spending Taproot outputs" where it says
If the spending conditions do not require a script path, the output key should commit to an unspendable script path instead of having no script path.
and also the answer…
davidbak
- 261
- 1
- 7
7
votes
2 answers
How can I find samples for P2TR transactions on mainnet?
Can I ask for a P2TR transaction id example past block 709632?
I was trying to debug one of my scripts and something is wrong when searching for witness_v1_keyhash, and couldn't manually find one in the blockchain explorers.
Tony Sanak
- 1,654
- 4
- 22
7
votes
2 answers
Should the Bitcoin Core wallet (or any wallet) prevent users from sending funds to a Taproot address pre activation?
The Bitcoin Core wallet prevents mainnet Taproot descriptors from being imported pre activation (November 2021) as a safeguard. However, you can send mainnet Bitcoin to a Taproot (P2TR) address pre activation. Should the sendtoaddress Core RPC…
Michael Folkson
- 14,337
- 3
- 11
- 45
6
votes
1 answer
Is there an economic incentive to switch from P2WPKH to P2TR?
I have multiple times seen people argue that there is “no economic incentive” to switch from P2WPKH to P2TR. I know that the sum of input and output weight on P2WPKH and P2TR are very similar, but how does that actually work out in detail?
Murch
- 71,155
- 33
- 180
- 600
6
votes
2 answers
Is a P2TR address a compressed public key?
From what I understand, a public key can be compressed from 64 bytes into 32 bytes, but an additional byte is needed for the sign, so it usually winds up being 33 bytes total. But P2TR addresses only do a PUSHBYTES_32. Am I incorrect in my…
Hunter Beast
- 249
- 5
6
votes
1 answer
What is the largest multisig quorum currently possible?
Bitcoin script allows for a UTXO to be (un)encumbered by an N-of-N signature. When N is 1, this is referred to as a single signature.
What are the limits of N for this application?
What is the technical cause of this limitation? Is it blockspace?…
Matthias
- 61
- 3
6
votes
1 answer
How can I create P2TR addresses with Bitcoin Core 22.0?
I'm trying to test P2TR with Bitcoin Core, and I don't know how to get taproot addresses.
How should I create them using 22.0?
Gustavo Chaín
- 163
- 4
6
votes
1 answer
Will P2TR make P2WSH obsolete?
Assuming users have upgraded their wallets to handle P2TR outputs and trust the validation rules of P2TR, would there be any advantage of using P2WSH over P2TR?
Darius
- 779
- 4
- 16
5
votes
1 answer
How do you construct witness stack and controlblock in P2TR Script Path outputs?
I have been documenting how to create different types of Tx outputs here, leveraging the Bitcoin Core Test Framework. Particularly for Taproot, I'm working on a scenario of a P2TR Script Path with a tree of PK scripts like this:
…
Bitcoin_1o1
- 343
- 1
- 12
5
votes
1 answer
XPRIV/XPUB type for P2TR
As far as I understand, there is a standard that describes what address types an extended private key or extended public key is intended to derive and it works as such:
xpriv/xpub => Legacy address (1...)
ypriv/ypub => nested SegWit address…
Dalit Sairio
- 403
- 2
- 5
5
votes
1 answer
How can I spend from a P2TR address on Signet with the Bitcoin Core wallet in 22.0?
Apparently (credit 0xB10C) there are only 20 key-path and 5 script-path spends of P2TR outputs on the Signet blockchain today (July 7th 2021). How can I increase this number today with say the Bitcoin Core wallet in the upcoming 22.0 release? If…
Michael Folkson
- 14,337
- 3
- 11
- 45
4
votes
0 answers
Which wallets are spending P2TR with SIGHASH_ALL?
I noticed there are quite a lot of transactions spending taproot key path inputs that use SIGHASH_ALL instead of SIGHASH_DEFAULT in signatures (around 20% in the last two weeks). Recall that SIGHASH_DEFAULT is a sighash flag introduced in BIP341…
Vojtěch Strnad
- 5,623
- 1
- 8
- 31
4
votes
1 answer
non-mandatory-script-verify-flag (Invalid Schnorr signature) when I try to send a P2TR tx on testnet
I'm learning to create tx from scratch in order to understand better how bitcoin tx works and how they are structured. I learnt to create tx with legacy address, segwit v0 and I am now learning taproot tx.
I read BIP340, BIP341, BIP342, BIP86 and…
alemaz98
- 133
- 8
4
votes
1 answer
How to spend an imported rawtr() descriptor with bitcoin-cli?
I created a transaction that creates a taproot output that can be spent using the private key (KEY) corresponding to the taproot output key. Then I imported the WIF formatted private key into Bitcoin Core with importdescriptors '[{"desc: rawtr(KEY),…
raphjaph
- 61
- 5