Qu'est-ce que SegWit ? Une introduction à l'approche de mise à l'échelle en chaîne de Bitcoin | Glossaire de la blockchain| Académie OKX

Une introduction conviviale pour les débutants au SegWit de Bitcoin, y compris ce qu'est SegWit, pourquoi il est important et ce qu'il réalise

SegWit est le nom d'une mise à niveau Bitcoin mise en œuvre via un soft fork en août 2017. Elle visait à augmenter le nombre de transactions par bloc que le réseau Bitcoin pourrait traiter. De plus, il a résolu un exploit rare lié à la malléabilité des transactions et a ajouté une plus grande programmabilité à Bitcoin, permettant d'autres solutions de mise à l'échelle comme le Lightning Network de Bitcoin.

Dans cette introduction à SegWit adaptée aux débutants, nous expliquons ce qu'est SegWit, son importance et le contexte de la mise à niveau. Nous évaluons également l'impact de SegWit depuis son adoption.

Table des matières:

Qu'est-ce que le SegWit de Bitcoin ?

SegWit - abréviation de "témoin séparé (couche de consensus)" - est un mécanisme de mise à l'échelle mis en œuvre sur le réseau Bitcoin en août 2017. Il visait à réduire la taille des données de transaction afin que davantage de transactions puissent être incluses dans chaque bloc sans augmenter la taille du bloc. limiter via un hard fork.

En plus d'augmenter le débit des transactions de Bitcoin, SegWit a également résolu quelques autres problèmes sur le réseau. Premièrement, la mise à niveau atténue un exploit rare dans lequel un attaquant peut créer un nouvel ID de transaction avant qu'une transaction ne soit minée. Ils peuvent alors prétendre de manière plausible n'avoir jamais reçu leurs fonds car l'expéditeur ne reconnaîtra pas leur transaction car elle apparaît sous un identifiant différent. Sous SegWit, le calcul de l'ID de transaction ne nécessite pas de données de signature de transaction. Par conséquent, si un mauvais acteur modifie les données de signature, l'ID reste le même.

Une autre amélioration que SegWit a apportée à Bitcoin a été une flexibilité de programmation accrue. Cela a permis d'activer efficacement les solutions de mise à l'échelle de couche 2 telles que Lightning Network. Le Lightning Network nécessite des transactions plus complexes qui dépendent les unes des autres. Sans le correctif de malléabilité des transactions, les transactions dépendantes d'autres peuvent être invalidées en modifiant les données de signature et, par conséquent, l'ID de transaction. Étant donné que SegWit sépare les signatures de transaction des données de transaction et calcule l'ID à partir de ces dernières, une modification des données de signature ne peut pas invalider les transactions futures.

L'industrie Bitcoin n'a pas universellement pris en charge SegWit. Avant son activation, certains se sont fait les champions de la mise à l'échelle du réseau en augmentant la taille limite des blocs via un hard fork. Finalement, cette faction introduirait une augmentation de la taille des blocs. Le hard fork qui en a résulté a créé le réseau Bitcoin Cash et son actif crypto natif, BCH.

Bien que toutes les parties prenantes du réseau Bitcoin ne soient pas immédiatement passées à SegWit, le fait qu'il ait été implémenté en tant que modification rétrocompatible signifiait que sa propre activation n'a pas divisé le réseau. Contrairement à un hard fork, un tel changement est connu sous le nom de soft fork, ce qui risque de diviser un réseau.

Un bref historique de SegWit

Le code de SegWit était publié en tant que proposition d'amélioration Bitcoin 141 en décembre 2015. Les auteurs du BIP étaient les développeurs Eric Lombrozo, Johnson Lau et Pieter Wuille. Il a ensuite été introduit dans le client Bitcoin Core en octobre 2016. Pourtant, peu de mineurs Bitcoin ont approuvé le changement et n'ont pas signalé de prendre en charge SegWit.

Un reportage dans Bitcoin Magazine suggère qu'une faction de mineurs s'opposait à SegWit parce qu'ils bénéficiaient d'un exploit connu sous le nom de "AsicBoost" qui leur donnait une efficacité améliorée de 20%, les rendant plus rentables.

En mai 2017, un groupe des mineurs et des entreprises les plus puissants de Bitcoin s'est réuni et a rédigé ce qui sera plus tard appelé l'Accord de New York. Ils ont accepté d'activer SegWit et d'augmenter la limite de taille de bloc dans le cadre du changement - une mise à niveau appelée "SegWit 2X". Contrairement à la version SegWit implémentée dans le logiciel Core l'année précédente, le changement n'était pas rétrocompatible avec les versions précédentes du logiciel Bitcoin et risquait de diviser le réseau.

L'accord de New York prévoyait l'activation de SegWit 2X pour novembre 2017. Pourtant, de nombreux membres de la communauté Bitcoin ont estimé qu'une réunion clandestine d'entreprises ne les représentait pas et ont perçu SegWit 2X comme une menace pour l'éthique décentralisée globale de la cryptographie.

Le développeur pseudonyme de Bitcoin, Shaolin Fry, a proposé une solution connue sous le nom de soft fork activé par l'utilisateur, ou UASF. Essentiellement, les opérateurs de nœuds et de portefeuilles activeraient SegWit et rejetteraient les blocs non-SegWit. Cela forcerait les mineurs à activer la mise à niveau car, sans support utilisateur, l'extraction de Bitcoin devient rapidement une opération futile.

L'UASF n'était finalement pas nécessaire, car la menace était suffisante pour convaincre les mineurs de signaler le soutien de SegWit. Les mineurs se sont enfermés dans SegWit le 9 août 2017.

Avant l'activation de SegWit, cependant, ceux qui se sont le plus engagés à faire évoluer Bitcoin via une augmentation de la taille des blocs se sont séparés. Une modification de la taille des blocs du réseau mise en œuvre par un groupe de soi-disant "gros bloqueurs" - c'est-à-dire des mineurs qui favorisaient la mise à l'échelle en augmentant la taille des blocs d'une manière qui n'était pas rétrocompatible - a entraîné le hard fork qui a créé Bitcoin Cash .

La période a été tumultueuse pour le réseau Bitcoin, et après que la poussière entourant les fourches dures et molles se soit apaisée, le prix du BTC a passé le reste de 2017 à se rallier à un niveau record de près de 20,000 XNUMX $.

Après l'activation de SegWit en août 2017, BTC a atteint son sommet de 2017. La source: CoinGecko

Comment fonctionne SegWit ?

SegWit fonctionne par ségrégation une transaction données des témoins à partir des données de transaction. Dans l'ancien système, les blocs contenaient des entrées de transaction (expéditeurs), des sorties (destinataires) et des données de signature de transaction. Avec SegWit actif, les blocs sont partitionnés en un bloc de base de 1 Mo et une section supplémentaire qui stocke les données de transaction. L'autre section peut stocker jusqu'à 3 Mo de données de témoins.

Par conséquent, contrairement à la croyance populaire, SegWit est en fait une augmentation de la limite de taille de bloc. Cependant, l'augmentation a été mise en œuvre de telle manière qu'elle ne risquait pas de diviser le réseau. Ceux qui ne voulaient pas mettre à niveau leurs nœuds vers SegWit peuvent toujours participer au réseau Bitcoin.

Dans les transactions héritées, les données de transaction et les signatures formaient un seul arbre Merkle - c'est-à-dire une structure de données formée en hachant différents éléments de données ensemble - à partir de laquelle un ID de transaction a été créé. Cela signifiait que la modification des données de signature, qui est possible avant qu'une transaction ne soit extraite, entraînait un ID de transaction différent.

Sous SegWit, l'ID de transaction ne dépend pas des données de signature. Par conséquent, même si une entité malveillante parvenait à modifier la signature d'une transaction, cela n'impacterait aucun ID de transaction et n'invaliderait aucune transaction dépendante d'une précédente.

Bien que le bloc de base soit toujours de 1 Mo, il peut inclure les données de plus de transactions par bloc car, sans les données témoins, les transactions sont jusqu'à 65 % plus petites. Cela permet effectivement aux mineurs d'inclure un plus grand nombre de transactions dans chaque bloc, en adaptant le réseau Bitcoin à plus d'utilisateurs.

En plus d'augmenter le débit des transactions de Bitcoin, SegWit permet également des transactions plus complexes. Auparavant, les transactions dépendantes les unes des autres pouvaient être invalidées en exploitant le bogue de malléabilité des transactions. Avec SegWit actif, les ID de transaction ne dépendent plus de données pouvant être modifiées ultérieurement. Par conséquent, les transactions avec des dépendances sur d'autres transactions ne peuvent pas être invalidées. Cela permet des solutions de mise à l'échelle supplémentaires, telles que le Lightning Network.

Format d'adresse SegWit

Les transactions SegWit utilisent l'un des deux formats d'adresse. Cela permet de déterminer très facilement si vous envoyez depuis une adresse SegWit ou si vous effectuez des transactions avec un portefeuille prenant en charge SegWit.

Les adresses qui commencent par un « 3 » sont appelées adresses Pay to Script Hash, ou P2SH. Il s'agit d'un ancien format d'adresse compatible avec les transactions héritées (ou non-SegWit) et SegWit. Les portefeuilles qui ne prennent pas en charge SegWit peuvent toujours recevoir des transactions SegWit en utilisant ce format d'adresse. Les frais de transaction devraient être légèrement inférieurs à ceux des anciennes adresses lors de transactions avec des adresses P2SH.

Pendant ce temps, les adresses Bech32 - également connues sous le nom d'adresse SegWit native - commencent par "bc1". Les transactions utilisant des adresses Bech32 utilisent moins de données que leurs homologues P2SH. Ce format d'adresse permet encore plus de transactions par bloc, ce qui entraîne des frais de transaction encore plus bas. Cependant, il nécessite les portefeuilles utilisés pour prendre en charge SegWit, ce qui nécessite une mise à niveau logicielle.

Pourquoi SegWit est-il important ?

SegWit s'attaque à la hausse des coûts de transaction qui, selon les développeurs de Bitcoin et les observateurs de l'industrie, limiterait l'adoption du réseau. Lorsque les blocs Bitcoin sont pleins, les transactions attendent dans ce qu'on appelle le mempool.

Les transactions restent dans le mempool jusqu'à ce qu'un mineur les inclue dans un bloc. Le mineur sélectionne les transactions à inclure en fonction des frais de transaction inclus. Les transactions comprenant des frais très minimes attendront longtemps dans le mempool pendant les périodes de forte congestion de la blockchain Bitcoin, car les mineurs privilégieront les transactions avec des paiements de frais plus élevés, car cela se traduit par une plus grande rentabilité.

Avec SegWit, les mineurs peuvent inclure plus de transactions par bloc car les données stockées dans le bloc de base de 1 Mo sont plus petites pour chacune que sous le format hérité. Cela se traduit par une plus grande capacité de bloc et moins de transactions en attente dans le mempool. Avec moins de transactions en attente, il y a plus de chances qu'une transaction soit incluse dans un bloc avec des frais moins élevés. Par conséquent, les frais de transaction moyens sur le réseau vont baisser.

De plus, SegWit permet des solutions de mise à l'échelle supplémentaires construites sur des couches au-dessus de la blockchain principale de Bitcoin. Le premier et le plus connu aujourd'hui est le Lightning Network. Le Lightning Network permet aux transactions de se produire hors chaîne dans les canaux de paiement. Étant donné que ces transactions n'ont plus besoin d'être minées dans un bloc immédiatement, moins de transactions attendent d'être minées, ce qui réduit encore la pression exercée sur les utilisateurs pour augmenter les frais de transaction.

Pour ceux qui prennent en charge SegWit, la mise à niveau est plus favorable que l'augmentation de la limite de taille de bloc via un hard fork. Premièrement, un soft fork ne risque pas de diviser le réseau, ce qui pourrait semer la confusion chez les utilisateurs de Bitcoin.

Deuxièmement, la mise à niveau n'impose pas de demandes matérielles supplémentaires aux opérateurs de nœuds. L'une des qualités les plus importantes de Bitcoin est que n'importe qui peut utiliser le matériel nécessaire pour référencer la blockchain Bitcoin et confirmer lui-même la validité des transactions. Une augmentation de la limite de taille de bloc obligerait les opérateurs de nœuds à utiliser du matériel plus coûteux avec des ressources de mémoire supplémentaires, ce qui augmenterait la centralisation du réseau.

SegWit a-t-il réussi ?

Parce qu'il s'agit d'une mise à niveau facultative et rétrocompatible, SegWit a mis du temps à avoir un impact réel sur le réseau. Bien qu'il ait été activé en août 2017, les frais atteignaient toujours des niveaux qui excluaient les cas d'utilisation potentiels de Bitcoin. À leur apogée en 2017, les frais de transaction moyens ont atteint plus de 55 $, rendant les petites transactions ou les paiements économiquement irréalisables.

Les frais de transaction BTC moyens ont dépassé 55 $ en 2017 après l'activation de SegWit. La source: en Glassno

Bien que certains participants de l'écosystème aient mis en œuvre la mise à niveau presque immédiatement, il a fallu beaucoup de temps aux fournisseurs de portefeuilles et à d'autres fournisseurs de services comme les échanges pour mettre en œuvre SegWit. Fin 2019, seule la moitié de toutes les transactions utilisaient le nouveau format. Aujourd'hui, plus de 80 % des transactions utilisé SegWit.

Le graphique ci-dessus montre que les frais de transaction quotidiens payés en BTC ont considérablement diminué à mesure que SegWit a été adopté. Bien que le nombre de transactions en chaîne traitées par jour ait atteint environ 7 % en dessous du pic de 2017, les frais payés sont restés une petite fraction des 1,500 22 BTC payés au réseau le 2017 décembre 300. Total des frais payés en une seule journée. n'ont pas dépassé XNUMX BTC lors des pics les plus récents.

Lors de l'évaluation de l'impact de SegWit, il est important de se rappeler que la mise à niveau a rendu possible le Lightning Network. Lancé en version bêta en 2018, le Lightning Network a connu une croissance fulgurante. Début 2021, la solution de mise à l'échelle avait une capacité totale d'un peu plus de 1,000 2022 BTC. En avril 3,650, la capacité totale du réseau était passée à plus de XNUMX XNUMX BTC.

La capacité globale du Lightning Network est passée à plus de 3,650 2018 BTC depuis son lancement en XNUMX. La source: en Glassno

Le nombre de canaux Lightning Network a également augmenté au cours de la même période. De 37,100 2021 au début de 86,500, les canaux ont culminé à 2022 XNUMX en mars XNUMX. Les deux mesures montrent une forte croissance de l'activité Lightning, qui n'a été rendue possible que par SegWit.

De toute évidence, SegWit a été un succès en termes d'impact sur les frais de réseau et de prise en charge de types de transactions plus complexes. En plus du Lightning Network, des mises à jour plus récentes du réseau Bitcoin, comme la racine pivotante, s'appuyer sur SegWit pour optimiser davantage le réseau - et en abordant la malléabilité des transactions, le soft fork permettra de développer des innovations encore à développer.


Vous n'êtes pas un commerçant OKX ? Inscription et rejoignez-nous aujourd'hui.

Source : https://www.okx.com/academy/en/what-is-segregated-witness