La mise à jour Taproot de Bitcoin expliquée

La mise à jour Taproot de Bitcoin constitue l’une des améliorations les plus importantes du réseau Bitcoin depuis l’introduction de SegWit en 2017. Cette mise à jour a été activée le 14 novembre 2021 au bloc numéro 709.632. Taproot est un soft fork, c’est à dire une modification du protocole qui demeure compatible avec les versions antérieures. Taproot a rendu les transactions Bitcoin plus efficaces et a permis aux développeurs de concevoir des applications complexes telles que des contrats intelligents sur le réseau Bitcoin.
Grâce à Taproot l’exécution de transactions complexes comme une construction multifirme ou un contrat comportant plusieurs conditions apparaît sur la blockchain presque de la même manière qu’une transaction simple telle que l’envoi ou la réception de BTC. Cela rend les transactions moins coûteuses et plus difficiles à distinguer des transactions simples.
À retenir
-
Bitcoin Taproot est une mise à jour de protocole active depuis novembre 2021 qui rend les transactions plus efficaces, moins coûteuses et plus discrètes.
-
Grâce aux signatures Schnorr, plusieurs signatures peuvent être combinées en une seule, ce qui économise de l’espace et renforce la confidentialité.
-
Avec Pay-to-Taproot (P2TR) et MAST, seule la condition de dépense effectivement utilisée doit être révélée, ce qui rend les transactions plus compactes et plus flexibles.
-
Tapscript introduit de nouvelles possibilités pour créer des smart contracts et prépare le réseau pour l’avenir.
-
Taproot pose les bases d’applications plus complexes sur Bitcoin, telles que le multisig avancé, les améliorations du Lightning Network et potentiellement des constructions DeFi.
Qu’est-ce que Bitcoin Taproot ?
Bitcoin Taproot est une mise à jour intelligente de la blockchain Bitcoin qui a rendu l’exécution de transactions complexes moins coûteuse et plus discrète. Grâce à l’introduction d’un nouveau format d’adresse (bc1p…), les utilisateurs peuvent bénéficier de Taproot sans rien avoir à faire eux-mêmes. Cela signifie des frais réduits et plus de confidentialité.
Cela est rendu possible grâce à l’introduction de Pay-to-Taproot (P2TR). Ce système donne à chaque transaction deux chemins possibles : via un key-path (une signature simple) ou via un script-path (une structure arborescente de conditions). Grâce à une technique appelée Merkelized Abstract Syntax Trees (MAST), seule la condition réellement utilisée doit être révélée.
Concrètement, cela signifie que les transactions utilisent moins de données et paraissent moins chères sur la blockchain. Pour les utilisateurs, cela se traduit souvent par des frais de transaction plus faibles et moins d’informations à divulguer. Pour les développeurs, cela ouvre la porte à des applications plus complexes (comme le multisig ou les smart contracts).
Enfin, Taproot utilise les signatures Schnorr (BIP340). L’astuce est que plusieurs personnes qui signent ensemble une transaction peuvent combiner leurs signatures en une seule signature agrégée. Sur la blockchain, cela ressemble à une seule signature. Cela rend les transactions plus petites, moins coûteuses et plus difficiles à distinguer des paiements classiques.
Comment la mise à jour Taproot de Bitcoin a-t-elle vu le jour ?
Taproot a été proposé en 2018 par le cryptographe Greg Maxwell. Le développement ultérieur a été assuré par des développeurs comme Pieter Wuille, qui ont rédigé les BIP (Bitcoin Improvement Proposals) nécessaires pour intégrer Taproot. Ces BIP décrivaient ce qu’il fallait faire pour rendre une mise à jour comme Taproot possible. La communauté Bitcoin a débattu pendant des années des détails, jusqu’à ce qu’un consensus soit atteint en...
Pour l’activation, une méthode appelée Speedy Trial a été utilisée pour mesurer le soutien à Taproot. Avec cette méthode, les mineurs disposaient d’une période de 2016 blocs (environ deux semaines) pour indiquer s’ils acceptaient la mise à jour. Une fois 90 % de soutien atteint, Taproot a été « verrouillé », c’est-à-dire préparé pour l’implémentation. Cela s’est produit en juin 2021. Le 14 novembre 2021, la mise à jour a été officiellement mise en p...
L’implémentation s’est faite via un soft fork, ce qui a maintenu la compatibilité avec les anciens nœuds. Ainsi, la blockchain a continué à fonctionner normalement et les nœuds non mis à jour pouvaient toujours accepter les blocs. Le risque de scission de la blockchain a donc été minimisé.
Le rôle de SegWit
Taproot n’aurait jamais pu être implémenté sans Segregated Witness (SegWit), une mise à jour introduite en 2017. Grâce à SegWit, les signatures, également appelées données witness, ont pu être séparées des données principales de la transaction. Cela a apporté plusieurs avantages :
-
Nouvelle structure pour les transactions : SegWit a introduit des programmes witness permettant d’ajouter de nouveaux types de sorties.
-
Blocs plus efficaces : En retirant les signatures de la structure principale, il y a eu plus d’espace dans les blocs et les frais ont diminué.
-
Compatibilité : SegWit a créé un cadre qui a permis l’introduction de mises à jour comme Taproot en soft fork sans diviser le réseau.
En résumé, SegWit a posé les bases sur lesquelles Taproot a été construit. Sans SegWit, l’introduction des signatures Schnorr, MAST et Tapscript n’aurait pas été possible.
Composants de la mise à jour Taproot de Bitcoin
La mise à jour Taproot est composée de différents éléments, chacun ayant son propre rôle. Ensemble, ils rendent les transactions plus efficaces et apportent plus de flexibilité au protocole Bitcoin.
Signatures Schnorr (BIP340)
Depuis sa création, Bitcoin utilisait des signatures ECDSA. Taproot a introduit les signatures Schnorr. Ces signatures sont plus petites : 64 octets contre 71–73 octets en moyenne pour ECDSA. Cela les rend plus faciles à traiter et offre plusieurs avantages :
-
Agrégation : Avec les signatures Schnorr, plusieurs signatures peuvent être combinées en une seule signature. Ainsi, une transaction multisig ressemble sur la blockchain à une transaction simple avec un seul signataire. Pour les utilisateurs, cela signifie plus de confidentialité (il n’est pas visible combien de personnes ont signé) et pour le réseau plus d’efficacité, car moins de données sont traitées.
-
Vérification en lot : Les nœuds peuvent vérifier plusieurs signatures en même temps, ce qui accélère et rend le réseau plus évolutif.
-
Propriétés linéaires : Cela rend les protocoles avancés comme MuSig ou les signatures de seuil plus faciles à mettre en œuvre, car les clés publiques et les signatures peuvent être additionnées. Ainsi, un groupe de participants peut présenter une seule clé et une seule signature au lieu de plusieurs.
Pay-to-Taproot (P2TR) et MAST (BIP341)
Grâce à Pay-to-Taproot (P2TR), le traitement de la transaction est lié à une seule clé publique. Derrière cette clé peut se trouver un Merkelized Abstract Syntax Tree (MAST), une structure dans laquelle plusieurs conditions de dépense possibles sont stockées. Le grand avantage est que seule la condition effectivement utilisée doit être révélée. Cela signifie :
-
Moins de données sur la blockchain : Économie d’espace et réduction des frais.
-
Meilleure confidentialité : Les tiers ne voient pas quelles autres conditions existaient, seulement celle utilisée.
-
Flexibilité : Des smart contracts et scripts plus complexes peuvent être intégrés efficacement.
Tapscript (BIP342)
Tapscript est un environnement de script renouvelé qui prend en charge l’utilisation de Taproot. Il introduit :
-
OP_CHECKSIGADD : Un nouvel opcode qui facilite la mise en place de constructions multisig sans les limites de CHECKMULTISIG.
-
OP_SUCCESSx : Des opcodes qui n’ont actuellement aucune fonction mais qui pourront être utilisés plus tard. Cela offre un mécanisme pour ajouter de nouvelles fonctionnalités de manière sécurisée.
-
Limites claires : Des limites de ressources et des budgets de signatures adaptés garantissent que les scripts complexes peuvent être exécutés de manière sûre et efficace.
Adresses Bech32m (BIP350)
Taproot utilise un nouveau format d’adresse : Bech32m. C’est une version améliorée de Bech32, reconnaissable aux adresses commençant par bc1p…. Les avantages sont :
-
Meilleure détection des erreurs : La somme de contrôle dans Bech32m a été modifiée pour détecter et corriger plus rapidement les erreurs courantes de saisie.
-
Conception plus robuste : Bech32m a été spécialement conçu pour prendre en charge correctement SegWit v1 et les futures mises à jour. Il empêche certaines adresses valides d’être considérées à tort comme invalides, ce qui était une faiblesse du Bech32 original.
-
Frais réduits et efficacité : Comme les adresses SegWit précédentes (bc1q…), les adresses Bech32m utilisent l’espace des blocs de manière plus compacte, réduisant ainsi les frais.
Pourquoi était-ce nécessaire ? Les adresses plus anciennes avaient plusieurs limites :
-
Adresses Legacy (1… et 3…) : Elles occupent plus d’espace et sont donc plus coûteuses à utiliser. De plus, les erreurs lors de la copie ou de la saisie sont plus difficiles à détecter.
-
Bech32 (bc1q…) : Un grand pas en avant, mais qui s’est révélé avoir une faiblesse dans la gestion des erreurs pour SegWit v1. Une nouvelle variante était donc nécessaire : Bech32m.
Impact de Taproot
Taproot a eu un impact majeur sur le réseau Bitcoin. D’une part, les transactions sont devenues moins coûteuses, plus efficaces et plus discrètes. D’autre part, Taproot a considérablement élargi les possibilités de développement du réseau. Des solutions multisig plus efficaces et des smart contracts peuvent désormais être créés sans devoir tout traiter sur la blockchain.
Cela ouvre également la voie au Bitcoin dans le secteur DeFi. Grâce à Taproot, des contrats plus complexes peuvent être créés pour une utilisation en DeFi. Pensez à des contrats permettant de prêter et d’emprunter de la crypto, des canaux de paiement avancés ou des structures à plusieurs couches pour des produits financiers comme le staking liquide.
De plus, les solutions de deuxième couche telles que le Lightning Network bénéficient également de Taproot, car les canaux peuvent être configurés de manière plus compacte et discrète. Ainsi, Taproot améliore la scalabilité et l’utilité de Bitcoin dans un large éventail d’applications.
En résumé
Taproot marque une étape importante dans l’évolution de Bitcoin. Il rend les transactions plus compactes, moins coûteuses et moins faciles à distinguer, tout en élargissant considérablement les possibilités offertes aux développeurs. Avec les signatures Schnorr, P2TR, MAST et Tapscript, une base a été posée pour davantage de confidentialité, de scalabilité et de flexibilité. Bien que l’impact pour l’utilisateur moyen soit souvent subtil, Taproot constitue le socle des innovations futures telles que des solutions multisig plus efficaces, des canaux Lightning améliorés et les premiers pas vers la DeFi sur Bitcoin.