20 / 736BIP341

Taproot

Simple everyday spending with hidden fallback conditions

A Bitcoin improvement that lets key holders spend by agreement and reveal alternative rules only when they use them.

Taproot is a way to set and prove the right to spend bitcoin funds. It supports ordinary spending with a single signature alongside optional alternative conditions prepared in advance. When the signature path is used, the network need not see whether one person or several cooperating people authorized the payment, or whether other unused rules existed.

Imagine Alice and Bob managing shared funds. While they agree, they want to authorize payments together. They can also arrange an alternative in advance: once a specified block height is reached, Alice may spend alone. Taproot can encode this arrangement without publishing the whole fallback plan during an ordinary joint payment. This example is not an automatic feature of every wallet. The software must support the chosen conditions, and the participants must prepare them correctly before receiving funds; Alice really does gain the agreed independent spending right. [1] [3]

The simpler option is called key path: the network checks one valid Schnorr signature for the key specified in the output’s spending conditions. An output is a particular amount created by an earlier transaction that you are now spending. The signature alone does not reveal how many people cooperated or whether a fallback script existed. The other option, script path, supplies the script used—the actual rules—and data satisfying them. It also provides a proof called the control block showing that these rules belonged to the original arrangement. Other scripts can remain hidden, but the script used and its proof still reveal information. [1]

Schnorr Signature is a type of digital signature: mathematical proof that the relevant key authorized a payment. A suitable protocol, such as MuSig2, lets several key holders create a joint key and then a joint signature. Alice and Bob need not hand each other their private keys. Their wallets must, however, support the protocol and cooperate during signing. Taproot itself neither combines signatures across every input nor turns any Multisig wallet into a single signature. Implementation matters: incorrectly reusing secret values called nonces in the signing protocol can expose a private key. [2] [5]

On Bitcoin’s main network, Taproot addresses normally begin with bc1p and use Bech32m encoding. Before sending, check that the wallet or service supports this format and verify the entire address. Taproot can reduce the rules revealed and the data needed to spend. It does not hide amounts or break the public links between spent outputs. The chosen path and proof size also affect the fee, so a newer format does not automatically mean the cheapest payment. If your wallet uses Taproot for an ordinary single-key payment, you do not have to invent a fallback script. [1] [4]

P2TR means Pay to Taproot. In the rules, it is native SegWit version 1 with a 32-byte witness program representing the output public key. Optional scripts are arranged in a tree, whose cryptographic fingerprint is incorporated into that key. Using one branch allows its membership to be proved without revealing the whole tree. BIP 340 describes Schnorr signatures, BIP 341 the Taproot rules, and BIP 342 the Tapscript language for script-path spending. An ordinary Schnorr signature is 64 bytes; explicitly choosing a different mode for which transaction parts are signed adds another byte. The wallet handles these details; manually changing an address does not. [1] [2] [3]

For the clearest picture, read this entry together with SegWit, Private Key, Transaction, Lightning Network. The reverse links also lead from SegWit, Lightning Network, Hash, SHA-256.

DOC · 001BIP 341: TaprootPrimary DOC · 002BIP 340: Schnorr signaturesPrimary DOC · 003BIP 342: TapscriptPrimary DOC · 004BIP 350: Bech32mPrimary DOC · 005BIP 327: MuSig2Primary
Revised: Source-first · No investment advice