The Bitcoin network uses unique digital signatures to verify the ownership of the tokens as they exchange hands on the blockchain. Digital signatures prove the ownership of specific digital tokens and authorize their transfer to a new owner. Schnorr signature is an alternative algorithm to Bitcoin’s original ECDSA. Unlike other implementations, schnorr signatures did not change the original protocol. However, many people do not understand what schnorr signatures are and their role on the Bitcoin cryptocurrency platform.
What are Schnorr Signatures?
Satoshi Nakamoto defined Bitcoin in its whitepaper as a chain of digital signatures. Every owner transfers the coins to the next by virtually signing a hash of the previous transaction and the new owner’s public key. Bitcoin initially used the Elliptic Curve Digital Signature Algorithm (ECDSA). The protocol facilitated the security of the network and transactions. However, it had some setbacks, such as the lack of patent protection.
Schnorr signatures are the second type of signatures scheme introduced with the Taproot upgrade to address some of the flaws of the ECDSA protocol. Thus, the Schnorr digital signature scheme relies on the ECDSA cryptography to promote the Bitcoin network’s efficiency, privacy, and storage.
The Roles of Schnorr Signatures on Bitcoin
One of the critical merits of the schnorr signature is the key aggregation. A digital signature typically comprises a single public key, a message the user must sign, and a signature asserting that the public key’s owner signed that message. That means each party must include their public key and signature in case multiple parties want to sign the same statement, such as spending from a multi-signature address.
The above protocol is suboptimal for computation and storage reasons. It means each node must verify signatures multiple times and store multiple sets of signatures and public keys. The key aggregation eliminates the need for verifying and storing multiple signatures and keys. Schnorr signatures offer that advantage, allowing the Bitcoin network to optimize payment processing and data storage. For example, three parties that want to sign a transaction can combine their three public keys into a single public key. Then, they can each use their private keys to sign the same message.
The three parties can aggregate their signatures into a single signature, valid for the chosen public key. One must only verify a single signature and public key to ascertain that all three parties signed the message.
The key aggregation has significant privacy implications for Bitcoin users. Multi-sig transactions can look like single-sign transactions since multiple parties can combine keys and signatures. That makes it impossible for chain analysis to distinguish between multi-sig and single-sign Bitcoin transactions with Schnorr signatures, ensuring enhanced privacy. While the advantage extends to all Bitcoin users using Schnorr signatures, it does not apply to transactions based on the ECDSA protocol.
Batch Transactions Verification
A Bitcoin node usually verifies each transaction and signature once whenever it receives a new block. However, that process is resource-intensive and time-consuming. Schnorr signatures facilitate key aggregation, allowing Bitcoin nodes to verify signatures in batches. That significantly cuts the time and computational power required for proving a transaction that bears multiple inputs.
The official Bitcoin website says they will introduce and activate Schnorr signatures through the Taproot upgrade in 2022. While developers have implemented all the necessary codes to the Bitcoin Core, all the nodes on the network must accept the improvement to ensure the validity of Schnorr signatures. Schnorr signatures will play a critical role in boosting the Bitcoin network’s privacy, storage, and efficiency.