Cointime

Download App
iOS & Android

What Do Schnorr Signatures Do for Bitcoin?

Repost from River: “What Do Schnorr Signatures Do for Bitcoin?” The full report and all related findings are available on the official website of River.

Digital Signatures

Bitcoin uses digital signatures to enable coins to be transferred on the blockchain. Digital signatures are used to prove ownership of specific coins and to authorize their transfer to a new owner.

We define an electronic coin as a chain of digital signatures. Each owner transfers the coin to the next by digitally signing a hash of the previous transaction and the public key of the next owner.– Satoshi Nakamoto explaining the UTXO model in theBitcoin Whitepaper (2008)

Currently, Bitcoin uses the Elliptic Curve Digital Signature Algorithm (ECDSA). With the Taproot upgrade, Bitcoin will integrate Schnorr, a second type of signature scheme with several advantages.

➤ Learn more about the Taproot upgrade.

ECDSA

Since Bitcoin’s inception, ECDSA has been used to secure bitcoin. ECDSA was chosen for Bitcoin for a few reasons:

  • Open Source. ECDSA was not protected by patents or copyright, so there were no legal issues with using it for Bitcoin.
  • Well Tested. ECDSA was widely known and applied when Bitcoin was first designed, and its security was sufficiently established by years of testing.
  • OpenSSL. ECDSA was implemented in OpenSSL, an open-source cryptography library used by Bitcoin. This made implementing ECDSA for Bitcoin simpler.

However, ECDSA also has several drawbacks which Schnorr improves upon. For this reason, developers have decided that Bitcoin should implement a different signature scheme, Schnorr.

The Advantages of Schnorr Signatures

Like ECDSA, the Schnorr Digital Signature Scheme uses elliptic curve cryptography (ECC). Schnorr signatures offer several advantages over ECDSA in terms of computational efficiency, storage, and privacy.

Key and Signature Aggregation

The most significant advantage offered by Schnorr signatures is key aggregation. A typical digital signature contains a single public key, a message to be signed, and a signature, asserting that the owner of the public key signed the given message. When multiple parties want to sign the same message, such as spending from a multisig address, they must each include their public key and signature. Thus, if three parties want to sign the same message, the proof will include three public keys and three signatures. This is suboptimal for computation and storage reasons, as each node must perform signature verification, an expensive function, three times and store three sets of signatures and public keys.

Key aggregation eliminates the need for multiple public keys and signatures. Schnorr public keys and signature can be aggregated such that, if three parties want to sign a transaction, they can trustlessly combine their three public keys to form a single public key. Then, using each of their three private keys, they can sign the same message. Finally, they can combine their three signatures to form a single signature which is valid for the aggregate public key. A verifier must only verify a single signature and public key in order to be sure that all three parties signed the message.

The privacy implications of key aggregation are significant. Because multiple parties can aggregate keys and signatures, multisig transactions can perfectly resemble singlesig transactions. Thus, all Schnorr spends will resemble each other, making it impossible for chain analysis to differentiate between multisig spends and single signature spends. This will invalidate several heuristics used by chain analysis, including the common input ownership heuristic and the script type heuristic. This privacy benefit will extend to all Bitcoin users who use Schnorr, but not to those who use ECDSA transaction types.

Batch Verification

When a node receives a new block, it normally verifies every transaction and signature in that block one by one. This is a time consuming and resource intensive process.

Key aggregation allows Bitcoin nodes to verify signatures in batches. This method significantly reduces the time and compute power required to verify a transaction with many inputs.

Because Taproot is a soft fork, most Bitcoin users and wallets will continue to use ECDSA even after Schnorr is activated. Blocks will continue to have both Schnorr signatures and ECDSA signatures, limiting the benefits of batch verification in the short term.

Why Did Bitcoin Not Use Schnorr Earlier?

Schnorr Signatures have been protected by patent since their invention in 1990, heavily restricting their use and stifling innovation. Since ECDSA was open source, it was widely utilized, rigorously tested, and trustworthy. Although the Schnorr patent expired in 2008, the same year Bitcoin was invented, it was decided that Schnorr signatures lacked the popularity and testing required to secure a system as critical as Bitcoin.

Schnorr signatures will be introduced to Bitcoin through Taproot upgrade, which will hopefully be activated around 2022. Although developers have added all necessary code to Bitcoin Core, Bitcoin nodes must accept the upgrade in order to consider Schnorr signatures valid.

Key Takeaways

  • Digital signatures are used to move bitcoin on the blockchain. Bitcoin has previously used ECDSA as the digital signature algorithm to do so.
  • In the near future, Bitcoin will enable Schnorr signatures in addition to ECDSA signatures. Schnorr signatures present multiple advantages over ECDSA.
  • Schnorr will improve privacy for all Bitcoin users. Schnorr will also realize fee savings for those using Schnorr and Taproot.
Comments

All Comments

Recommended for you

  • ETH Surpasses $2200

    Market data shows that ETH has surpassed $2200, currently priced at $2201.53, with a 24-hour decline of 3.92%. The market is experiencing significant volatility, so please ensure proper risk management.

  • BTC Surpasses $71,000

    Market data shows that BTC has surpassed $71,000, currently priced at $71,007.05, with a 24-hour decline of 2.81%. The market is experiencing significant volatility, so please ensure proper risk management.

  • BTC Falls Below $71,000

    Market data shows that BTC has fallen below $71,000, currently priced at $70,974.17, with a 24-hour decline of 2.69%. The market is experiencing significant volatility, so please ensure proper risk management.

  • Trump: U.S. Navy to Begin Blockade of Strait of Hormuz

    U.S. President Trump: The talks between the U.S. and Iran are going well, with most topics reaching a consensus, but the only truly important nuclear issue has not been resolved. Effective immediately, the U.S. Navy will begin a blockade of any vessels attempting to enter or exit the Strait of Hormuz. I have also instructed the U.S. Navy to search and seize every ship in international waters that has paid a toll to Iran.

  • U.S. Negotiation Team Members Have All Left Pakistan

    On April 12, a U.S. official stated that after the U.S.-Iran talks concluded, all members of the U.S. negotiation team have left Pakistan. The official noted that personnel, including Witkoff, Kushner, and the technical team, did not remain in the capital of Pakistan, indicating that both sides will not immediately resume direct negotiations. Earlier that day, Vance mentioned at a press conference in Islamabad that the U.S. has not reached a consensus with Iran and will return to the United States. The negotiations between the U.S. and Iran in Islamabad ended on the 12th without any agreement. The Iranian side stated that the talks were conducted in an atmosphere of 'distrust and suspicion,' with both sides having differences on two or three key issues. The U.S. side claimed that it had clearly outlined its 'red lines,' but the Iranian side did not accept the U.S. conditions.

  • ETH Falls Below $2200

    Market data shows that ETH has fallen below $2200, currently priced at $2195.81, with a 24-hour decline of 1.97%. The market is experiencing significant volatility, so please ensure proper risk management.

  • BTC Surpasses $73,000

    Market data shows that BTC has surpassed $73,000, currently priced at $73,010, with a 24-hour increase of 3.3%. The market is experiencing significant volatility, so please ensure proper risk management.

  • Iranian Armed Forces Declare Readiness to Fire at Any Time

    On April 10, a spokesperson for the Central Headquarters of the Iranian Armed Forces, Khatam al-Anbiya, stated that due to the repeated breaches of trust by the United States and Israel, the Iranian Armed Forces remain on full alert and are ready to fire at any time. (Xinhua News Agency)

  • U.S. Core CPI in March Increases 2.6% Year-on-Year, Estimated at 2.7%

    On April 10, it was reported that the U.S. core consumer price index (CPI) increased by 2.6% year-on-year in March, slightly below the estimated 2.7%, and up from the previous value of 2.5%. Month-on-month, it rose by 0.2%, compared to an estimate of 0.3%.

  • US March CPI Increases 3.3% Year-on-Year, Highest Since May 2024

    On April 10, it was reported that the US Consumer Price Index (CPI) for March increased by 3.3% year-on-year, marking the highest level since May 2024. The forecast was 3.4%, while the previous value was 2.4%. The seasonally adjusted CPI for March rose by 0.9% month-on-month, matching expectations of 0.9%, compared to the previous value of 0.30%.