#1 Schnorr Signatures - Superior Privacy, Lower Fees and More Flexibility With Multisig Transactions
This is the main component of Taproot and seeks to address privacy and block space concerns introduced by SegWit referenced earlier.
Bitcoin uses what is known as an elliptic curve digital signature algorithm to generate public and private keys. When a user signs a transaction with a private key, a public key is revealed in the process. When multiple signatures (as is the case with multisig wallets), multiple public keys are revealed. This also results in larger transactions. The downside to all this is privacy is compromised and fees are higher than necessary.
Schnorr signatures are intended to address these problems by introducing a smaller, more secure and flexible type of cryptographic signature. It introduces a feature known as “key aggregation” which in brief enables multi-signature transactions to appear indistinguishable from regular transactions. With Schnorr signatures, a single aggregated public key and a single aggregated signature are both recorded, rather than all of the public keys and signatures involved.
The consequence is that the transaction size is smaller, resulting in lower fees and privacy is enhanced as third parties are unable to distinguish between single or multi-signature transactions.
#2 Taproot – More Private and Secure Smart Contracts
Taproot is best viewed as building on the privacy innovations of SegWit by introducing a structure known as Merkelised Abstract Syntax Trees (MASTs) which are intended to make smart contracts on Bitcoin more private and secure.
MASTs are used in cryptography to prove data exists without having to reveal the entire set. In this instance, Taproot allows for only executed conditions of a smart contract to be committed to the blockchain, rather than all conditions that may have failed. Since anyone trying to audit the Bitcoin blockchain would be unable to view unexecuted transaction conditions or outcomes, Taproot offers users greater privacy. It also provides greater scalability as unexecuted transaction information won’t be recorded on the blockchain.
In addition, Taproot also introduces a new way of spending bitcoin called Pay-to-Taproot (P2TR) which allows users to pay to either a Schnorr public key or the Merkle root of a variety of other scripts. As a result, a user can create a UTXO (unspent transaction output ) which can be unlocked and spent by either the owner of the private key or anyone who satisfies the requirements of the Merkle tree. This design boost users’ privacy as all Taproot outputs will look similar, such that a fair amount of chain analysis done today will be unusable.
#3 Tapscript –Improves Future Upgrades and Brings More Smart Contract Flexibility
Lastly, this component of the update introduces a new scripting language called Tapscript which made it possible to accommodate the other two BIPs and makes future upgrades a lot easier to implement.
In addition, it will provide Bitcoin smart contracts with more flexibility through the removal of the 10,000-byte size limit. This is said to enable developers to do more exciting things using Bitcoin smart contracts in the future.
And that's pretty much it! So next time someone talks about Bitcoin's Taproot, you could chime in and enrich the conversation.
Dale is a reformed solicitor and Bitcoin writer, editor and consultant known as the Bitcoin Shepherd. He loves to orange pill normies and help people understand, buy and securely store their own bitcoin. You can follow his musings on Twitter.