The highly-anticipated upgrade is set to roll out over the weekend, changing Bitcoin for the better.
Understanding exactly what about the Bitcoin network implementing Taproot changes is necessary for understanding why the changes were needed. Taproot is the combination of many Bitcoin Improvement Proposals (BIPs) resulting in a soft fork of Bitcoin’s blockchain. A soft fork is a proposed upgrade that over time is adopted as the only blockchain, meaning the old one will cease to operate once the new one (in this case, Taproot) is fully adopted.
What Does Taproot Do?
The improvements can be broken down into three categories, each affecting the other, and each necessary to the final construct. Taproot successfully increases security, and also allows flexibility and scalability with the introduction of a new language that is ever expanding. The three categories of changes to summarize are as follows:
1. Schnorr Signatures (BIP 340)
This new form of signature allows for superior security, lower fees, and flexible multi-signature transactions. How?
· SigHash (Signature Hash) is applied to the transactions, meaning that once a SigHash is applied, the information becomes immutable (unchangeable). If the information is changed, the transaction loses validity. Nothing can be changed without destroying the SigHash. Previously, a small amount of information could be changed through “malleability” that would not result in the transaction losing its validity. Speaking of signatures …
· Key and Signature Aggregation allows for the aggregation of public keys and signatures. This means if you have a transaction with 10 people, previously you would need 10 public keys, 10 signatures, and a verifier would have to verify each key and signature. With key and signature aggregation, we can make all 10 public keys into one key, and all 10 signatures, into one signature. The verifier now only has to do this once, instead of 10 times. This is where a lot of computational processing occurs.
· Superior Security is achieved in the aggregation process because on-chain heuristics (data tracked) will not be able to discern the difference between a multisignature and single-signature transaction, allowing for more privacy.
· Batch Verification is added on from the aggregation mentioned above, as now we can “batch” together multiple transactions, to verify them together, as opposed to one at a time. Basically, this is just “bulk verification,” and also leads to fewer resources being spent.
2. Taproot (BIP 341)
The entire update is named after this portion because this is how the new system integrates with the old one.
· Bitcoin Script Update allows the scripting language to use Schnorr signatures and integrates the Merkelized Alternative Script Trees (MAST).
· Pay-To-Taproot (P2TR) gives the freedom of choice. You can use either Schnorr signatures or the Merkle root provided in MAST. Satisfy the requirements of your choosing, which allows for cleaner transaction processing when the Merkle tree may not be needed.
(MAST) summarizes the possible scripts that are needed to unlock a bitcoin, instead of requiring all the possible scripts for the transaction. The single-script hash provided by MAST actually represents several scripts. To spend a bitcoin, you need only provide your script, and provide proof that your script is held in the Merkle root. Previously, it would have taken far more scripts and extended verification.
3. Tapscript is a collection of “opcodes,” which are essentially just lines of codes that execute commands on the Bitcoin protocol that have been updated to make way for the new changes installed by Taproot. It can be referred to as a language, but it is more like an update to Bitcoin Script.
· Bitcoin Script has a 10,000-byte script size limit which will be removed, allowing for vastly larger scripts, or Taproot contracts. It also removes the cap for “opcodes,” which allows for more flexibility for increased features and coding in the future.
· This removal of script size and unfettered growth available in scripting allows a clear path to smart contracts.
Why Is It Important?
Security is the lifeblood of every Bitcoiner. Unwilling to shake their core beliefs of hard, sound money, the Bitcoin community paced themselves to make sure the Layer 1 (Bitcoin protocol) was immutable, efficient, and proven to be 100% secure before “upgrading.” Other platforms rushed to Layer 2 (open applications built on the original protocol) while Bitcoin held off on further developments until base-layer security was an undeniable certainty. Because of this, some argue that Bitcoin had lost the race to developing smart contract capability, and products like Ethereum emerged as first to market, changing the way we look at decentralized applications.
Taproot has evened the playing field. Bitcoin now has a clear path to deployment of smart contracts, decentralized autonomous organizations, and more. Products like the Lightning Network have already shown that fast and reliable transactions can still be backed with an immutable ledger, even without the access that Taproot will give developers of the future.
Bitcoin is stepping into a broader world with applications that we cannot imagine in a way that it simply could not before. This newfound developer freedom and systemic efficiency for the miners will drive more great minds to the protocol, fostering new ideas which will help the network continue to flourish.
This is a guest post by Shawn Amick. Opinions expressed are entirely their own and do not necessarily reflect those of BTC Inc or BitcoinLinux.