Taproot and Schnorr Signatures: Improving Bitcoin’s Scalability, Security, and Privacy
- Taproot and Schnorr signatures solutions promise to solve scalability, privacy, and security simultaneously.
- Taproot is a Bitcoin Improvement Proposal (BIP) that aims to make Bitcoin transactions that use multiple signatures indistinguishable from standard transactions, hence improving privacy in the long run.
Privacy, security, and scalability are some of the biggest concerns for crypto enthusiasts. Despite the great strides achieved in blockchain development, Bitcoin only offers pseudo-anonymity and lacks scalability. Security is also a significant concern that, if fully addressed, will boost mainstream trust and adoption.
To solve these problems, Bitcoin developers have proposed techniques that can introduce a higher degree of privacy and improve the scalability and efficiency of transactions. These proposed upgrades are known as the Taproot and Schnorr signatures. The two solutions promise to solve scalability, privacy, and security simultaneously. Here is a quick look at what these solutions entail and the benefits they bring to crypto users.
What is Taproot?
Taproot is a Bitcoin Improvement Proposal (BIP) that aims to make Bitcoin transactions that use multiple signatures indistinguishable from standard transactions, hence improving privacy in the long run.
What is the Taproot Upgrade?
The Taproot upgrade is more like a soft fork improvement on Bitcoin’s blockchain to boost privacy as it aggregates all the multiple signatures of a transaction into one. This makes it easier for participants of a transaction with multiple signatures to obscure the transaction details and pay lower fees.
The move to a Taproot codebase on the Bitcoin network is a welcome reprieve. The lack of privacy and scalability on the Bitcoin network has been a bottleneck for the currency’s mass adoption. However, to get a clear picture of what Taproot entails here is a primer on Bitcoin transactions.
Understanding Bitcoin Transactions
The technical aspects of how Bitcoin transactions are executed is not a popular topic. Unbeknownst to most, transactions on the Bitcoin network are not balance based as you would expect with a traditional bank account system.
Bitcoin transactions are built on a concept called Unspent Transaction Output (UTXOs), which is more like a blockchain-based IOU where unspent transactional data is linked to a particular private key. Therefore when sending Bitcoin, the sender is crediting the recipient with ownership of the UTXOs in his account while debiting his wallet or account. Cryptographic signatures protect the UTXOs.
These UTXOs are wrapped in a Bitcoin Script which is like a smart contract that requires proof of UTXO ownership before allowing anyone to spend Bitcoin. A private key is the proof of ownership and the spending conditions are written within the Bitcoin Script. The Bitcoin Scripts are then staked together in a MAST (Merkelized Abstract Syntax Tree) data structure for easy access.
How Bitcoin Transactions Are Secured
Several security features are used to protect the MAST database, as manipulation of the transactional data can lead to severe consequences. Even though Bitcoin’s network remains public, a level of pseudo-anonymity is achieved with every transaction due to features such as multiple signatures and time locks.
A time lock is a condition that can be programmed into the Bitcoin Script to only allow a transaction to take place at a specified time. On the other hand, multiple signatures (multisigs) are conditions set in the Bitcoin Script to authorize a transaction once multiple signatures are provided. These security techniques somewhat hide the user’s identity; however, they are not the ultimate solution.
Taproot’s Solution to Transaction Speed and Costs
Taproot is an improvement on MAST as it reduces the data load for each transaction and cuts down costs.
Multisigs and time locks require creating multiple transactions on the network to obscure the user’s real identity. However, this leads to higher fees and a heavier data load per transaction, limiting Bitcoin’s capacity to scale to a higher TPS (Transaction per Second).
Taproot solves this lack of privacy and scalability by aggregating all the signatures required for a transaction to execute as one signature. This makes it more difficult to distinguish a mutisig transaction from a regular transaction and reduces the network’s load and fees.
Taproot was first proposed by Greg Maxwell (a Bitcoin core developer) in January 2018 as a functionality designed to improve the scaling, efficiency, and privacy of Bitcoin spending. The proposed upgrade was then merged to bitcoin’s core library in October 2020.
In addition to Taproot, Schnorr is also an interesting BIP implementation for the Bitcoin network as it improves scalability and privacy. Schnorr signatures create an environment that makes it possible to implement techniques such as Taproot.
What is a Schnorr Signature: A New Generation of Signatures
A Schnorr signature is a cryptographic signature based on simple mathematical properties that are easily verifiable without the risks of malleability attacks. Satoshi Nakamoto adopted the Elliptic Curve Digital Signature algorithms (ECDSA) while creating Bitcoin as this was widely used at the time and the most secure and well-understood signature algorithm.
However, compared to Schnorr signatures, ECDSA is more malleable. To understand the malleability of a digital signature, think of them like a fingerprint that helps you distinguish one transaction from the other.
The digital signature is produced as a cryptographic hash of the transaction; therefore, instead of looking into the transaction details, one only has to look at the hash to distinguish one transaction from another.
Every signature is unique; however, transaction malleability allows changing the signature without invalidating the transaction. This can be done in multiple ways depending on the cryptocurrency. The design of the ECDSA makes it possible for anyone to change a signature without invalidating the transaction. This leaves room for detrimental consequences.
For instance, if John sends Alice some Bitcoin through a transaction with an ABC digital signature, a malleability attack can change the ABC signature to ABZ. John will not be able to confirm whether the Bitcoin he sent was received. This leaves a loophole that enables Allice to ask John to re-issue the Bitcoin payment even though a change in the signature did not invalidate the first transaction. Alice gets paid twice, and it often takes time before John realizes that he is under attack.
Schnorr signatures solve this problem by moving the digital signature data to a separate part of the transaction. Therefore to verify the transaction, another outside data-structure is used, eliminating signatures as a malleability source. The mechanism was first developed by Claus Schnorr in 1989 and was proposed as a BIP in July 2018 thanks to its reputation as one of the best signature schemes in cryptography.
Security Privacy and Scalability on The Bitcoin Network
The development of Taproot and Schnorr Digital Signatures marks the beginning of a new era for Bitcoin as well as other cryptocurrencies. The two technologies are complementary. On one hand, Schnorr protects the privacy of Bitcoin transactions with its signature malleability solution. On the other hand, Schnorr also partly improves the network’s scalability with its Segregated Witness (SegWit) foundation, improving the August 2017 soft fork.
Taproot aggregates the signatures of multisig users enabling much more transaction convenience. This allows a user to only sign once for multiple wallet addresses thus speeding up the entire process while cutting costs. Combined, both Taproot and Schnorr are paving the way for further development of the Lightning Network on the road to making Bitcoin transactions faster and safer.