This website uses cookies
We use cookies to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners who may combine it with other information that you’ve provided to them or that they’ve collected from your use of their services.
Consent Selection
Details
  • Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

    • Learn more about this provideropens in a new window
      CookieConsentStores the user's cookie consent state for the current domain
      Maximum Storage Duration: 1 yearType: HTTP Cookie
    • Learn more about this provideropens in a new window
      bcookieUsed in order to detect spam and improve the website's security.
      Maximum Storage Duration: 1 yearType: HTTP Cookie
      li_gcStores the user's cookie consent state for the current domain
      Maximum Storage Duration: 180 daysType: HTTP Cookie
    • Learn more about this provideropens in a new window
      datadomeUsed in context with the website's BotManager. The BotManager detects, categorizes and compiles reports on potential bots trying to access the website.
      Maximum Storage Duration: 1 yearType: HTTP Cookie
    • _pk_testcookie_domainThis cookie determines whether the browser accepts cookies.
      Maximum Storage Duration: 1 dayType: HTTP Cookie
    • __cf_bm [x3]This cookie is used to distinguish between humans and bots. This is beneficial for the website, in order to make valid reports on the use of their website.
      Maximum Storage Duration: 1 dayType: HTTP Cookie
  • Preference cookies enable a website to remember information that changes the way the website behaves or looks, like your preferred language or the region that you are in.
    • Learn more about this provideropens in a new window
      lidcRegisters which server-cluster is serving the visitor. This is used in context with load balancing, in order to optimize user experience.
      Maximum Storage Duration: 1 dayType: HTTP Cookie
  • Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.
    • Learn more about this provideropens in a new window
      guestRegisters data on visitors' website-behaviour. This is used for internal analysis and website optimization.
      Maximum Storage Duration: 1 monthType: HTTP Cookie
    • Learn more about this provideropens in a new window
      personalization_idThis cookie is set by Twitter - The cookie allows the visitor to share content from the website onto their Twitter profile.
      Maximum Storage Duration: 400 daysType: HTTP Cookie
    • _pk_uidUsed by Piwik Analytics Platform to identify the visitor on repeat visits to the website.
      Maximum Storage Duration: 1 yearType: HTTP Cookie
      _pk_id#Collects statistics on the user's visits to the website, such as the number of visits, average time spent on the website and what pages have been read.
      Maximum Storage Duration: 1 yearType: HTTP Cookie
      _pk_ses#Used by Piwik Analytics Platform to track page requests from the visitor during the session.
      Maximum Storage Duration: 1 dayType: HTTP Cookie
    • FPGSIDRegisters statistical data on users' behaviour on the website. Used for internal analytics by the website operator.
      Maximum Storage Duration: 1 dayType: HTTP Cookie
      FPIDRegisters statistical data on users' behaviour on the website. Used for internal analytics by the website operator.
      Maximum Storage Duration: 400 daysType: HTTP Cookie
      FPLCRegisters a unique ID that is used to generate statistical data on how the visitor uses the website.
      Maximum Storage Duration: 1 dayType: HTTP Cookie
    • _gaRegisters a unique ID that is used to generate statistical data on how the visitor uses the website.
      Maximum Storage Duration: 2 yearsType: HTTP Cookie
      _ga_#Used by Google Analytics to collect data on the number of times a user has visited the website as well as dates for the first and most recent visit.
      Maximum Storage Duration: 2 yearsType: HTTP Cookie
  • Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.
    • Learn more about this provideropens in a new window

      Some of the data collected by this provider is for the purposes of personalization and measuring advertising effectiveness. The provider may use the IP Addresses for ads measurement and ads personalization.

      ads/ga-audiencesUsed by Google AdWords to re-engage visitors that are likely to convert to customers based on the visitor's online behaviour across websites.
      Maximum Storage Duration: SessionType: Pixel Tracker
    • Learn more about this provideropens in a new window
      userRefererDetermines how the user accessed the website. This information is used by the website operator in order to measure the efficiency of their marketing.
      Maximum Storage Duration: 1 monthType: HTTP Cookie
    • Learn more about this provideropens in a new window
      #:session-dataTracks the individual sessions on the website, allowing the website to compile statistical data from multiple visits. This data can also be used to create leads for marketing purposes.
      Maximum Storage Duration: PersistentType: HTML Local Storage
      eng_mtTracks the conversion rate between the user and the advertisement banners on the website - This serves to optimise the relevance of the advertisements on the website.
      Maximum Storage Duration: PersistentType: HTML Local Storage
      t_gidThis cookie assigns a specific visitor ID, when the visitor interacts with ads or content from the website - this allows the website to target the visitor with similar ads or content.
      Maximum Storage Duration: 1 yearType: HTTP Cookie
      t_pt_gidCollects information on user preferences and/or interaction with web-campaign content - This is used on CRM-campaign-platform used by website owners for promoting events or products.
      Maximum Storage Duration: 1 yearType: HTTP Cookie
      taboola global:user-idSets a unique ID for the visitor, that allows third party advertisers to target the visitor with relevant advertisement. This pairing service is provided by third party advertisement hubs, which facilitates real-time bidding for advertisers.
      Maximum Storage Duration: PersistentType: HTML Local Storage
      taboola_session_idThis cookie is used to collect information on a visitor. This information will become an ID string with information on a specific visitor – ID information strings can be used to target groups with similar preferences, or can be used by third-party domains or ad-exchanges.
      Maximum Storage Duration: SessionType: HTTP Cookie
    • Learn more about this provideropens in a new window
      1/i/adsct [x2]Collects data on user behaviour and interaction in order to optimize the website and make advertisement on the website more relevant.
      Maximum Storage Duration: SessionType: Pixel Tracker
      muc_adsCollects data on user behaviour and interaction in order to optimize the website and make advertisement on the website more relevant.
      Maximum Storage Duration: 400 daysType: HTTP Cookie
      guest_idCollects data related to the user's visits to the website, such as the number of visits, average time spent on the website and which pages have been loaded, with the purpose of personalising and improving the Twitter service.
      Maximum Storage Duration: 400 daysType: HTTP Cookie
      guest_id_adsCollects information on user behaviour on multiple websites. This information is used in order to optimize the relevance of advertisement on the website.
      Maximum Storage Duration: 400 daysType: HTTP Cookie
      guest_id_marketingCollects information on user behaviour on multiple websites. This information is used in order to optimize the relevance of advertisement on the website.
      Maximum Storage Duration: 400 daysType: HTTP Cookie
    • _gcl_auUsed by Google AdSense for experimenting with advertisement efficiency across websites using their services.
      Maximum Storage Duration: 3 monthsType: HTTP Cookie
      _gcl_lsTracks the conversion rate between the user and the advertisement banners on the website - This serves to optimise the relevance of the advertisements on the website.
      Maximum Storage Duration: PersistentType: HTML Local Storage
    • pardot [x2]Used in context with Account-Based-Marketing (ABM). The cookie registers data such as IP-addresses, time spent on the website and page requests for the visit. This is used for retargeting of multiple users rooting from the same IP-addresses. ABM usually facilitates B2B marketing purposes.
      Maximum Storage Duration: SessionType: HTTP Cookie
  • Unclassified cookies are cookies that we are in the process of classifying, together with the providers of individual cookies.
    • cs_analytics_ip_blockedPending
      Maximum Storage Duration: SessionType: HTTP Cookie
      user_tokenPending
      Maximum Storage Duration: 1 yearType: HTTP Cookie
    • _twpidPending
      Maximum Storage Duration: SessionType: HTTP Cookie
Cookie declaration last updated on 8/20/26 by Cookiebot
[#IABV2_TITLE#]
[#IABV2_BODY_INTRO#]
[#IABV2_BODY_LEGITIMATE_INTEREST_INTRO#]
[#IABV2_BODY_PREFERENCE_INTRO#]
[#IABV2_BODY_PURPOSES_INTRO#]
[#IABV2_BODY_PURPOSES#]
[#IABV2_BODY_FEATURES_INTRO#]
[#IABV2_BODY_FEATURES#]
[#IABV2_BODY_PARTNERS_INTRO#]
[#IABV2_BODY_PARTNERS#]
About
Cookies are small text files that can be used by websites to make a user's experience more efficient.

The law states that we can store cookies on your device if they are strictly necessary for the operation of this site. For all other types of cookies we need your permission.

This site uses different types of cookies. Some cookies are placed by third party services that appear on our pages.

You can at any time change or withdraw your consent from the Cookie Declaration on our website.

Learn more about who we are, how you can contact us and how we process personal data in our Privacy Policy.

Please state your consent ID and date when you contact us regarding your consent.
Image Taproot: Bitcoin's Major Protocol Upgrade

Taproot: Bitcoin's Major Protocol Upgrade

Timer10 minuti di lettura

  • Finanza
  • Bitcoin

Taproot is the first major Bitcoin software upgrade since SegWit was implemented in 2017. In short, it is a package of voluntary upgrades to the Bitcoin protocol designed to:

  • Increase network efficiency

  • Lower costs of complex transactions

  • Introduce new developer capabilities

  • Improve user privacy, and

  • Allow for less intrusive future upgrades

Bitcoin is open-source software, meaning the codebase exists in many different versions and is maintained by a widespread group of loosely coordinated people. Open-source software has no centralised line of command, roadmap or specific targets — the community of developers and users determine how the codebase evolves.

The somewhat standardised codebase for Bitcoin, Bitcoin Core (referred to as the reference implementation), is maintained on Github[1] by a set of nominated or appointed developers responsible for general moderation and addition of proposed contributions. However, in terms of structure, there are no specially privileged participants in Bitcoin development as anyone is welcome to contribute, test, and review its codebase.

To date, there have been over 800 contributors to the main Github version of Bitcoin Core, and many more have contributed to other alternative and compatible implementations available for users to deploy as they wish.[2]

In the Bitcoin user and developer communities there is a rough consensus regarding how Bitcoin should evolve. The general philosophy of Bitcoin development is one of security over speed. Any proposed changes undergo an arduous proposal, review, and testing cycle before being considered by a broader community of network participants.

Unless there are immediate and entirely uncontroversial dangers to the well-being of the system, upgrades are always made voluntary and backwards compatible. This ensures that users operating with older versions of the software are capable of making payments to users operating with newer versions, and that no one is left behind against their will.

Importantly, all users maintain the same copy of the transaction record (the blockchain) regardless of their version, this is even true of the original early 2009 release of Bitcoin by anonymous founder Satoshi Nakamoto.

Now let’s have a closer look at the upgrade itself:

Network Efficiency

Taproot is expected to slightly increase the processing speed of transactions, lower fees, and enable a faster onboarding experience for those looking to participate in the network (shorter block download)[3]. Some of these benefits stem from a reduction in the average data size of transactions, which increases the amount of transactions able to fit in each block, as well as decreasing the amount of computation required to verify them.

These improvements are made possible by introducing another signature scheme (Schnorr) and a new transaction type (Pay-to-Taproot, or P2TR for short), which together can help decrease the data requirements of both simple peer-to-peer transactions and more complex financial or business logic (smart contracts).

Schnorr also allows users to verify transactions in batches rather than on an individual basis (batch verification), which is expected to provide marginal efficiency gains for regular network participants and significant efficiency gains for participants joining for the first time.

While these changes may seem like minor improvements, the marginal reduction of data in these transactions has ongoing effects that impact both fees and application development -- more on this later.

The new signature scheme allows for more compact transactions by shrinking the data size of two components common to any Bitcoin transfer: public keys and signatures. Meanwhile, in tandem with other aspects of Taproot[4], it’s expected to also reduce the data size of transactions with intricate spending conditions (discrete log contracts) or multiple steps of execution (multisignature transactions).

For multisignature transactions the benefit is particularly large. Schnorr signatures allow the keys in a multisignature setup to be combined into a single key, resulting in a single signature instead of many. A multisignature transaction, no matter how many keys are involved, will therefore only take up the same data size as a single transaction in a block, and it will not be possible to tell from the blockchain how many keys were involved in signing the transaction.

Importantly, it is also anticipated that this additional signature scheme can be implemented without trading off Bitcoin’s security. This has been explained[5] through the new security proof requiring less assumptions compared to the existing one (ECDSA), and without introducing any new assumptions. Throughout Taproot’s proposal process, it has been widely considered that this new signature scheme is just as secure, if not more secure, than the existing digital signature encryption applied to Bitcoin transactions.[6][7][8]

Given its superior qualities, it is likely that the reason Bitcoin didn’t use Schnorr signatures from the beginning is that it had only recently been released from patent in 2009, and very few people had any experience implementing the scheme.[9] The existing ECDSA signature scheme was a part of OpenSSL[10], a set of open-source encryption tools that were mostly developed by computer scientists and mathematicians, many of whom were on the mailing list where Bitcoin was originally shared. This made it a natural choice for maximising interest and competence among early development contributors.

Application Functionality

Many of Bitcoin’s applications and second-layer networks rely on more complicated multisignature transactions that will now become more efficient in terms of computation and privacy because of several upgrades packaged into Taproot[11]. As mentioned above, the improvements are expected to allow these complex transactions to appear indistinguishable to simple everyday transactions, as well as enable new capabilities[12] for the applications and second layer networks (e.g. Lightning and Liquid) built on Bitcoin. In a way, it’s expected to allow developers to do more (functionality), for less (data required).

Some expect this may result in Bitcoin-based applications that are similar to existing Decentralised Finance (DeFi) projects, which are generally more closely associated with alternative blockchain systems.[13][14] This remains to be seen, however, Taproot’s ability to reduce the cost and increase the functionality of more intricate and complicated transactions may indeed offer room for more creativity outside of Bitcoin’s base layer.

To be clear, Taproot will not enable the same fully expressive and recursive smart contracts that exist in alternative blockchain systems (Ethereum, Solana etc.) and this will almost certainly never happen as recursive smart contracts are widely considered to be unacceptably risky for Bitcoin. That said, with Taproot the programmability of Bitcoin transactions will increase to a higher level than what was previously possible, all with the expectation that the improvements will not introduce any security vulnerabilities.

As previously mentioned, Bitcoin’s base layer system is based on a philosophy that generally prioritises security over speedy experimentation. Given that Taproot’s improvements are mostly expected to benefit development outside of Bitcoin’s base layer, we don’t think it's an unreasonable possibility that Taproot could lead to an increase in financial applications for users in its broader ecosystem (in the long-term).

These financial applications are however likely to differ considerably from existing DeFi projects, rely heavily on the expected benefits of Taproot actually coming to fruition, and ultimately depend on the success of newer technologies in Bitcoin’s broader ecosystem (layer two and sidechains).

By minimising the information published to the blockchain regarding these complex transactions, Taproot is further expected to make it more difficult to distinguish them from generic user transactions and identify the conditions by which they were spent. This is considered to make transactions more fungible as well as enable better and cheaper privacy techniques for users, especially users deploying complex business logic using Bitcoin smart contracts.

Upgradability

Lastly, Taproot adds several new paths to upgrade Bitcoin[15] that may have the potential to be less intrusive than other techniques that have resulted in extensive development and review periods.

We find these upgrade paths are highly technical and outside of the scope of this paper (and likely also the average user of Bitcoin). For this reason, a takeaway may be that Taproot paves the way for new upgrades, and potentially, introduces the ability to add powerful capabilities with relatively smaller and less involved changes.

Briefly and for those interested, this potential is based on how Taproot (specifically, TapScript) implements something called OP_Success. This takes all currently disabled and unused OP codes, which are just functions that operate on data[16], and replaces them with an operation called OP_Success[17]. This could allow the community to add valuable capabilities to Bitcoin by simply introducing new OP codes in the future.[18][19]

In Conclusion

Taproot has the potential to increase the efficiency of the Bitcoin network, improve user privacy, and introduce new applications on Bitcoin’s second layer. However, for these improvements to fully meet their expectations and challenge some existing application platforms, time and development will be required.

Bitcoin users retain the option to not participate in these new changes, and many of the benefits of Taproot depend on widespread deployment of the upgrade by users. It may also be that a significant threshold of network participation is necessary for these dynamics to have any noticeable effects at all.

Nonetheless, Taproot has successfully been activated at block height 709,632, or sometime on 13-14 November 2021 depending on your timezone. For those interested in participating or supporting this change, you can upgrade to Bitcoin Core version 0.21.1 (or later release) to enforce these rules. However, users who choose not to upgrade will continue to participate in the network and interact with others who opt for Taproot without any disturbance to their Bitcoin node. At the time of writing (November 15th), roughly 54% of Bitcoin’s network participants are enforcing Taproot.[20]

Lastly, we’d like to give a special thanks to Gregory Maxwell, Pieter Wuille, Marco Falke, Aj Towns, and Jonas Nick, along with all other developers and reviewers — too many to name — that have participated in the development and review of Taproot, ever since it was first proposed more than three years ago in early 2018.

 

[1] https://github.com/bitcoin

[2] https://luke.dashjr.org/programs/bitcoin/files/cha...

[3] This assumes a significant amount of users and businesses are using Taproot to a threshold where intended benefits are realised

[4] For more on this, see key aggregation, scriptless scripts and MAST structures

[5] https://twitter.com/benthecarman/status/1330638129...

[6] https://reyify.com/blog/liars-cheats-scammers-and-...

[7] https://bitcoin.stackexchange.com/questions/77234/...

[8] https://suredbits.com/introduction-to-schnorr-sign...

[9] https://en.wikipedia.org/wiki/Schnorr_signature

[10] https://en.wikipedia.org/wiki/OpenSSL

[11] Schnorr Signatures and Merklized Abstract Syntax Trees (MAST)

[12] MuSig (1, 2, DN) & Point Time-Locked Contracts (PTLCs)

[13] https://blog.kraken.com/post/10939/taproot-primer-...

[14] https://cryptobriefing.com/taproot-explained-bring...

[15] key versions, leaf versions, OP_Success, and the annex value

[16] https://en.bitcoin.it/wiki/Script#Opcodes

[17] https://github.com/bitcoin/bips/blob/master/bip-03...

[18] https://twitter.com/benthecarman/status/1332882923...

[19] https://bitcoin.stackexchange.com/questions/97258/...

[20] https://luke.dashjr.org/programs/bitcoin/files/cha...


Pubblicato ilNov 17th, 2021

Scrittore
Laureato presso l’Università del Texas, dove ha avviato il primo corso introduttivo sulle tecnologie delle criptovalute.

Benvenuto to CoinShares

Dati personali

0102

Quando visiti il sito web di CoinShares, i cookie migliorano la tua esperienza. Ci aiutano a mostrarti contenuti più pertinenti. Alcuni cookie sono necessari per il funzionamento del sito e saranno sempre attivi. Bloccare alcuni tipi di cookie potrebbe influire sulla tua esperienza del sito web e sui servizi che offriamo sul nostro sito.

Utilizziamo i cookie sul nostro sito per ottimizzare i nostri servizi. Scopri di più sulla nostra politica sui cookie per l’UE o sulla nostra politica sui cookie per gli Stati Uniti.

  • Necessari
    Question circle icon
  • Preferences
    Question circle icon
  • Statistici
    Question circle icon
  • Marketing
    Question circle icon
I cookie necessari aiutano a rendere un sito web utilizzabile abilitando funzioni di base come la navigazione tra le pagine e l'accesso alle aree protette del sito. Il sito web non può funzionare correttamente senza questi cookie.
I cookie di preferenza permettono a un sito web di ricordare informazioni che modificano il modo in cui il sito si comporta o appare, come la lingua preferita o la regione in cui ti trovi.
I cookie statistici aiutano i proprietari del sito web a capire come i visitatori interagiscono con i siti raccogliendo e riportando informazioni in modo anonimo.
I cookie di marketing vengono utilizzati per tracciare i visitatori attraverso i siti web. L'intento è di mostrare annunci pertinenti e coinvolgenti per l'utente individuale, rendendoli così più preziosi per gli editori e gli inserzionisti di terze parti.