Bitcoin is upgrading.

Taproot, the Bitcoin protocol upgrade that makes smart contracts more private and compact, has locked in. As of just now, more than 90 percent of all blocks that will be mined in the current difficulty period have signaled support for the upgrade, which means that Bitcoin Core versions 0.21.1 and newer will start enforcing the new rules in November of this year, as will the alternative Taproot activation client.

Taproot

Taproot is the first Bitcoin protocol upgrade to go live since Segregated Witness activated in 2017. First proposed by former Blockstream CTO Gregory Maxwell and developed by Bitcoin Core contributors including Pieter Wuille, Anthony Towns, Johnson Lau, Jonas Nick, Andrew Poelstra, Tim Ruffing, Rusty Russell and Maxwell himself, Taproot will make Bitcoin’s smart contract features more compact, potentially more private, and in some cases a bit more flexible. As a soft fork, the upgrade is backwards compatible as long as a majority of miners enforce the new rules.

Taproot really consists of two big upgrades rolled into one. The first is the introduction of Schnorr signatures. Many cryptographers consider the Schnorr signature scheme to be the best in the field, as its mathematical properties offer a strong level of correctness, it doesn’t suffer from malleability and it is relatively fast to verify. The most notable benefit in the context of Bitcoin, however, is that Schnorr’s “linear math” enables a new class of smart contracts, where tweaks to a signature can be used to embed various spending conditions.

This tweaking of signatures is used for the second part of the upgrade, which is the part that’s really called Taproot itself. Leveraging cryptographic tricks like Merkle trees, Taproot lets users cryptographically combine several spending conditions in a single output (simplified, in a single “address”). The funds in this address can be spent in multiple ways, for example by different people depending on which other conditions are met.

To a large extent this is already possible on Bitcoin, but Taproot lets these different people cooperate to make the transaction that spends the funds indistinguishable from regular (single user) transactions. This is more efficient because not all potential spending conditions need to be revealed when the funds are spent (translating into lower fees), and it is more private because such transactions better blend in with other transactions. (As a notable example, Lightning channel closing transactions can be made to look like regular payments.)

Taproot Activation

Activating upgrades on the Bitcoin network has in the past sometimes proven difficult. The Segregated Witness activation process, in particular, turned into a bit of a battleground, where (some) miners refused to activate the upgrade, until (some) users presented them with a somewhat controversial ultimatum in the form of a user activated soft fork (UASF), defined in BIP148.

For some time, this controversy appeared to carry through into the discussion around Taproot activation. Some developers and users argued that a similar UASF-style activation should be built into the activation mechanism from the start, while other developers and users objected to such a solution as they considered it too risky and/or aggressive.

A compromise was ultimately found between the two main camps in the form of “Speedy Trial” (although some proponents of a built-in UASF did still release their own client). The Speedy Trial activation mechanism would give miners three months to signal support for the Taproot upgrade. If miners would signal support for the upgrade in 90% of all blocks within a single two-week difficulty period (1,815 or more blocks out of 2,016), Taproot would activate on block 709,632, estimated to be mined this November.

The 1,815th signaling block of this two-week difficulty period (the third difficulty period since Speedy Trial’s signaling period started) was just mined. This means that the Bitcoin ecosystem — users, miners, businesses, projects — have about five months to get ready for the upgrade, by upgrading to compatible software, or perhaps by taking alternative security precautions.

Since Taproot is a soft fork upgrade and miners have indicated that they are ready for the upgrade, even non-upgraded software should remain compatible with the Taproot rules, however; this non-upgraded software just won’t enforce or benefit from these new rules.

For more information on what Taproot is exactly, also see this explainer.