Site icon Tendances Consulting

Qu’est-ce que le segwit et comment affecte-t-il la garde des bitcoins ?

Qu’est-ce que le segwit et comment affecte-t-il la garde des bitcoins ?


Segwit, ou témoin séparé, était un changement opt-in pour Bitcoin qui a eu lieu en août 2017. Cela a coïncidé avec une période turbulente de l’histoire de Bitcoin connue sous le nom de Blocksize War, qui peut être explorée en détail en lisant le livre du même nom de Jonathan Bier. . Dans cet article, nous aborderons les bases du segwit, en mettant l’accent sur ses implications directes pour la garde des bitcoins.

Qu’est-ce que le segwit (témoin séparé) et qu’est-ce que cela signifie ?

Au plus haut niveau, vous devez savoir que segwit a changé la façon dont la plupart des transactions Bitcoin sont formatées. Une transaction Bitcoin peut être décomposée en deux éléments principaux :

  1. Les données de transaction elles-mêmes, qui comprennent des informations sur la quantité de bitcoin déplacée, sa provenance et les nouvelles destinations.
  2. Les données relatives aux signatures cryptographiques nécessaires pour approuver la transaction

Avant le soft fork de Segwit, ces deux composants étaient combinés pour produire un identifiant de transaction (TXID), qui est un ensemble de lettres et de chiffres faisant référence à la transaction.

Les données de transaction ne peuvent pas être ajustées sans créer une transaction fondamentalement différente. Cependant, les données de signature d’une transaction en cours peuvent effectivement être altérées, ce qui pourrait entraîner une modification du TXID. Cette notion est appelée malléabilité des transactionset cela posait spécifiquement un problème pour certaines applications Bitcoin, comme l’activation du Lightning Network.

Segwit a résolu ce problème en ségrégation les données liées aux signatures, également appelées témoinde telle sorte que le TXID ne soit déterminé que par les données de transaction inmalléables. Par conséquent, une transaction en attente utilisant segwit a un TXID qui ne peut pas être modifié, ce qui est crucial pour faciliter les canaux de paiement Lightning et d’autres contrats intelligents potentiels.

Comment le segwit affecte-t-il la garde des bitcoins ?

Au-delà de l’activation de Lightning, l’utilisation de segwit présente de nombreux avantages, dont les détails sont décrits dans une excellente ressource Bitcoin Core. Certains des avantages sont techniques et se concrétisent sur une période plus longue, ce qui intéresse ceux qui exploitent un nœud Bitcoin (ce que tous les utilisateurs de Bitcoin devraient envisager de faire !) ou les développeurs.

Cependant, il existe des avantages plus faciles à comprendre et qui affectent directement la personne type détenant des bitcoins dans un portefeuille de garde autonome. Ceux-ci incluent des frais de transaction moins élevés, une efficacité améliorée lors de la signature des transactions et une sécurité renforcée pour l’avenir du multisig collaboratif.

Frais de transaction moins chers

Dans le cadre de la mise en œuvre de segwit, la limite de taille de bloc a été reconfigurée (citant l’évolutivité liée à l’ensemble UTXO). Auparavant, chaque bloc de la blockchain ne pouvait contenir que 1 Mo de données maximum. Avec l’ajustement Segwit Soft Fork, chaque bloc peut contenir jusqu’à 1 MvB à la place. Cela a introduit un nouveau concept appelé octets virtuelsou vB. Un octet de données de transaction vaut également un octet virtuel de données. Cependant, un octet de données témoins séparées est réduit à seulement 0,25 octet virtuel de données.

Avec une limite de 1 MvB de données par bloc, il pourrait théoriquement contenir jusqu’à 1 Mo rien que des données de transaction, ou jusqu’à 4 Mo rien que des données témoins, en raison de la remise témoin. En pratique, les blocs contiennent un mélange des deux types de données et pèsent en moyenne entre 1,5 Mo et 2 Mo.

Étant donné que les données des témoins séparées occupent 75 % moins d’espace que les données de transaction au sein d’un bloc, elles bénéficient également d’une réduction de 75 % sur les frais de transaction. Cela signifie que les transactions dépensées de un portefeuille utilisant segwit est nettement moins cher en moyenne (envoi dans un portefeuille segwit ne fera pas autant de différence). Par exemple, les entrées de transaction dépensées à partir d’un portefeuille singlesig utilisant segwit bénéficient d’une réduction de 53 % par rapport à un portefeuille sans segwit. Les entrées de transaction dépensées à partir d’un portefeuille multisig 2 sur 3 utilisant segwit bénéficient d’une réduction de 64 % par rapport à un portefeuille sans segwit. Même si les économies réelles réalisées sur une transaction varient en fonction d’autres détails, la différence est généralement assez perceptible.

La réduction des frais de transaction signifie également que les recommandations concernant les montants minimum de dépôt dans un portefeuille peuvent être réduites si segwit est utilisé. Les dépôts de faible valeur dans un portefeuille créent de petits UTXO, ce qui peut entraîner des frais de transaction plus élevés lorsque ces UTXO seront dépensés à l’avenir. Dans certains cas, le pourcentage peut être si élevé que les UTXO sont trop coûteux pour être dépensés, également appelés poussière opératoire. Pour se prémunir contre cela, des dépôts de plus grande taille pour l’auto-garde sont recommandés, et le segwit offre un seuil plus clément. Ce concept peut être approfondi dans notre article sur les seuils de poussière.

Efficacité améliorée lors de la signature des transactions

Un autre changement introduit parallèlement à segwit était une amélioration de l’évolutivité liée à la vérification des signatures pour les transactions impliquant de nombreuses données. Lorsqu’un portefeuille matériel tente de signer une transaction déplaçant plusieurs UTXO à la fois, et surtout si ces UTXO ont une masse de signature importante, l’appareil peut avoir du mal à gérer l’intensité opérationnelle. Cela peut prendre plusieurs minutes, ou échouer complètement et forcer l’utilisateur à envoyer plusieurs transactions plus petites. Les personnes qui retirent fréquemment des bitcoins des bourses pour se mettre en garde ou qui reçoivent des paiements réguliers des pools miniers peuvent être familières avec de telles frustrations.

Ces problèmes peuvent toujours être rencontrés par les portefeuilles utilisant segwit, bien qu’ils soient atténués dans une certaine mesure. Le temps et les efforts opérationnels nécessaires pour valider des transactions complexes évoluent de manière linéaire plutôt que quadratique, ce qui signifie que des transactions volumineuses peuvent être signées plus rapidement et avec de plus grandes chances de succès.

Une sécurité renforcée pour l’avenir du multisig collaboratif

En proposant les modifications pour la mise à niveau de segwit, les développeurs ont cherché à résoudre un problème connu concernant la sécurité multisignature. Ils ont réalisé qu’à l’avenir, la faisabilité de ce qu’on appelle une attaque d’anniversaire P2SH augmenterait. L’attaque fonctionne dans le contexte d’un multisig collaboratif, où plusieurs parties fournissent une clé publique pour construire le quorum multisig. Si un ou plusieurs participants partagent d’abord leur(s) clé(s) publique(s), le dernier participant à fournir une clé pourrait tenter une opération qui prendrait beaucoup de temps et de ressources, mais pourrait aboutir à un contrôle unilatéral des fonds, sans l’autorisation des autres participants.

Il est important de noter qu’en raison des contraintes de temps et de ressources de cette attaque théorique, elle est considérée comme très peu pratique au moment de la rédaction de cet article, et il n’existe aucun cas connu où cela se produirait dans le monde réel. Cependant, à mesure que la technologie s’améliore, le temps et les ressources nécessaires pour tenter une attaque devraient diminuer, ce qui signifie qu’elle pourrait devenir plus pertinente.

Pour se protéger de cette vulnérabilité futuriste, les utilisateurs peuvent simplement créer des portefeuilles multisig en utilisant segwit. Les modifications incluses dans Segwit Soft Fork ont ​​résolu ce problème en améliorant le niveau de sécurité pour qu’il soit cohérent avec d’autres aspects du protocole Bitcoin. Les personnes qui possèdent déjà un portefeuille multisig sans segwit ne devraient pas s’alarmer : l’attaque ne peut être tentée que pendant la création du portefeuille, pas après.

Comment savoir si un portefeuille Bitcoin utilise Segwit

Il est facile de déterminer si un portefeuille Bitcoin utilise segwit : il suffit d’examiner les adresses de dépôt du portefeuille ! Dans un article précédent sur les différents types d’adresses, nous avons expliqué que les adresses utilisant segwit commençaient par bc1alors que les anciennes adresses antérieures à segwit commencent par un 1 ou un 3.

Voici des exemples d’adresses utilisant segwit :

  • bc1q34aq5drpuwy3wgl9lhup9892qp6svr8ldzyy7c
  • bc1qeklep85ntjz4605drds6aww9u0qr46qzrv5xswd35uhjuj8ahfcqgf6hak

Voici des exemples d’anciens types d’adresses n’utilisant pas segwit :

  • 12higDjoCCNXSA95xZMWUdPvXNmkAduhWv
  • 342ftSRCvFHfCeFFBuz4xwbeqnDw6BGUey

Pendant un certain temps, il y avait aussi des adresses commençant par un 3 qui utilisaient du segwit, appelées « segwit imbriqué » ou « segwit enveloppé ». Ceux-ci ont été choisis par des personnes qui souhaitaient utiliser segwit peu de temps après sa sortie, mais souhaitaient également pouvoir toujours recevoir des bitcoins d’autres personnes qui n’avaient pas encore mis à niveau. Les adresses segwit imbriquées sont désormais beaucoup moins courantes, car presque tous les acteurs de l’économie Bitcoin sont capables d’envoyer des bitcoins à des adresses segwit natives.

Réflexions finales

Pour les personnes détenant des bitcoins en propre garde, l’utilisation d’un portefeuille segwit offre plusieurs avantages, notamment des frais de transaction réduits, une signature plus efficace et une sécurité renforcée pour les scénarios futurs. Vous pouvez explorer d’autres avantages en utilisant la ressource Bitcoin Core susmentionnée ou en consultant les propositions d’amélioration Bitcoin réelles incluses dans le Segwit Soft Fork, à savoir BIP141, BIP143 et BIP147.

Share this content:

Quitter la version mobile