Vous ne pouvez pas arrêter les métaprotocols Bitcoin

Bitcoin est une base de données.

Il s’agit d’une réalité technologique incontournable. L’argent lui-même est simplement un grand livre, un enregistrement de qui a quoi. Même les espèces physiques distribuent simplement cette «base de données» dans le monde réel. Vous n’avez plus à vérifier par rapport à un grand livre central pour vérifier quoi que ce soit, car le simple fait de vous le remettre est ce processus de vérification. Les «entrées» de ce grand livre sont transmises autour de certains records centraux. Bitcoin est simplement une base de données numérique qui tente de reproduire la propriété la plus importante de celle physique connue sous le nom de Cash: ne pas avoir besoin de l’autorisation d’un opérateur de base de données de dépenser votre argent.

Imaginez la futilité d’essayer d’empêcher les gens de dégrader des billets d’un dollar. Combien d’entre vous ont tamponné «acheter du bitcoin» sur la monnaie fiduciaire? Aux États-Unis est un crime fédéral. Vous pouvez passer 6 mois en prison pour cela. Est-ce que cela arrête quelqu’un?

Pensez-vous sérieusement que cela pourrait être appliqué n’importe où? Vous souvenez-vous où est George? Les gens tamponneraient un site Web sur les billets d’un dollar afin que les gens puissent entrer dans les numéros de série quand ils les ont obtenus et suivre où les billets en espèces circulaient géographiquement.

Les artistes font des peintures murales et des collages innés sur des trésorerie. Vous ne pouvez littéralement pas l’arrêter.

Pourquoi y a-t-il une pression de pensée magique qui croit que cela est possible simplement parce que la base de données est numérique?

De par sa nature même, le Bitcoin nécessite de soutenir l’inclusion de données arbitraires (lire: données qu’il est impossible de connaître ou de définir à l’avance) afin de permettre aux utilisateurs de traiter. Vous ne savez pas à l’avance combien d’argent vous enverrez (le champ Satoshi dans les sorties), où vous l’enverrez (le champ de script), quel blockHeight vous souhaiteriez le dépenser (le champ Nlocktime dans une transaction ou le champ N Sequence dans une entrée de transaction).

Sans permettre ces pièces de données arbitraires, il n’est pas possible que Bitcoin existe en tant que système.

Métaprotocols

Un métaprotocol Bitcoin est un protocole en couches au-dessus du protocole de base, Bitcoin, qui interprète les données et les actions du protocole sous-jacent à travers l’objectif des règles supplémentaires qui n’existent pas sur ce protocole de base.

Un exemple historique de cela serait le protocole de contrepartie (XCP). À l’aide d’OP_return, un OPCode dans le script Bitcoin qui pousse simplement les données arbitraires à la pile créant une sortie indisplinable qui peut être ignorée par le jeu UTXO, XCP intègre ses propres messages métaprotocols.

Ces messages facilitent la publication de nouveaux jetons, le transfert de jetons en définissant la quantité envoyée et où, ainsi que d’autres messages qui permettent des échanges sans confiance entre XCP lui-même et tout autre jeton émis en utilisant le protocole.

Le protocole Bitcoin lui-même ne comprend ni ne se soucie de aucun de ces messages. Ils sont interprétés par des logiciels supplémentaires exécutés au-dessus du bitcoin. Il est tout à fait possible pour quiconque utilise Bitcoin de créer des messages XCP totalement invalides et de les faire confirmer sur la chaîne, mais le logiciel XCP ne le reconnaîtra pas comme valide. La personne qui crée ces messages non valides gaspille simplement son propre argent en créant des transactions inutiles.

Absolument rien ne peut empêcher les gens d’interpréter des données valides sur Bitcoin via l’objectif des règles supplémentaires externes au protocole Bitcoin de cette manière.

Les ordinales fonctionnent de manière très similaire. Les utilisateurs attribuent un «  numéro de série  » unique à chaque satoshi unique qui est extrait et a créé leur propre système comptable pour interpréter la commande d’entrée et de sortie dans une transaction pour suivre où les «satoshis individuels» sont envoyés au cours du transaction.

Le protocole Bitcoin lui-même n’est pas au courant de ce protocole externe, et rien du tout ne peut être fait pour empêcher les utilisateurs d’interpréter les transactions Bitcoin valides de cette manière. Tout le monde peut interpréter les données publiées sur la blockchain comme il le souhaite, en appliquant les contraintes supplémentaires qu’ils choisissent qui ne sont pas en conflit avec les règles du protocole Bitcoin de base.

Rien n’empêche les gens de créer des messages de métaprotocol invalides ou malveillants, et confirmer ceux de la blockchain, mais les utilisateurs exécutant des clients du métaprotocol les ignoreront simplement comme invalides. C’est la principale différence entre le protocole Bitcoin lui-même et les métaprotocols. Les règles de consensus Bitcoin empêchent les messages non valides du protocole d’être inclus dans la blockchain, les métaprotocols ne le font pas (ou plutôt).

Intégration de données

La différence entre les deux métaprotocols ci-dessus est que l’une nécessite d’intégrer des données supplémentaires sur la chaîne afin de fonctionner (XCP), et l’autre ne le fait pas (ordinales). Vous pourriez donc supposer que vous pouvez simplement empêcher les protocoles qui nécessitent de l’intégration de données supplémentaires en empêchant simplement que ces données soient intégrées en premier lieu.

S’il est vrai que des mécanismes spécifiques de l’intégration des données pourraient être empêchés par le softfring ce mécanisme particulier hors du protocole, c’est-à-dire des transactions de rendu qui utilisent ce mécanisme invalide, vous ne pouvez pas empêcher les données d’être intégrées en général.

Prenez par exemple «l’enveloppe d’inscription». Il s’agit simplement d’une méthode spécifique pour garantir que les données intégrées dans un témoin dépense ne sont jamais réellement exécutées. Cela se fait en utilisant OP_FALSE, qui pousse une valeur 0 (ou une fausse valeur qui échouera à la vérification) sur la pile avant les OP_pushes qui intégrent réellement les données. Cela fait que l’interprète de script saute simplement la vérification des données après l’OP_FALSE. La fonctionnalité clé requise est de mettre un 0 sur la pile.

Si vous invalidez par consensus l’utilisation de ce format de script spécifique, il existe d’autres moyens de mettre un 0 sur la pile, ou pour garantir les scripts d’interpréter le script la vérification et l’exécution des morceaux de scripts suivants. En essayant simplement d’arrêter cette classe spécifique d’intégration de données, et je veux dire que l’utilisation d’OP_FALSE en général devient elle-même un jeu de chat et de souris avec de nombreuses autres options que les utilisateurs peuvent se tourner.

Désactiver chacun d’eux nécessite le déploiement d’une Softfork, un massif L’effort de coordination dans l’ensemble de l’écosystème, et juste après les utilisateurs successibles, peut modifier trivialement leur logiciel pour utiliser une autre méthode. Les métaprotocols peuvent s’adapter beaucoup plus rapidement que le bitcoin. Attention, c’est uniquement Traiter cette classe de façons d’intégrer des données.

Neutons la réalité hypothétique où tous les mécanismes utilisant OP_FALSE ont été restreints (ignorer à la fois la complication de l’identification de tous et de la coordination de la fourche, ainsi que le potentiel de restreindre involontairement d’autres cas d’utilisation de Bitcoin), les utilisateurs peuvent simplement créer de fausses clés publiques. Il n’y a rien dans le protocole Bitcoin qui vérifie une clé publique est une clé publique valide, c’est simplement une chaîne arbitraire aléatoire incluse dans le script de verrouillage d’une sortie.

Imaginez maintenant un monde où Bitcoin a fait Incluez un mécanisme qui a forcé la validation d’une clé publique avant de laisser de l’argent pour lui être envoyé. Cela résoudrait ce problème, non?

Faux.

Vous pouvez intégrer indirectement les données en utilisant la clé privée. Mais les clés privées ne sont jamais réellement mise à la tête, non? Non, ils ne le font pas, mais un nonce de signature l’est. Un nonce est une valeur aléatoire utilisée dans la construction d’une signature cryptographique. Cela est nécessaire pour protéger votre clé privée, car sans utiliser une, une signature cryptographique n’est pas en sécurité et peut fuir votre clé privée à un attaquant. Même en utilisant un non-non mal sélectionné ou faible, cela peut permettre que cela se produise.

Les gens peuvent intentionnellement utiliser un nonce faible, et en fait Utilisez les données arbitraires elle-même comme clé privée. La seule façon dont cela peut être empêché est une autorité centralisée sur la liste blanche des clés privées, c’est-à-dire entièrement centralisant la possibilité d’utiliser le bitcoin derrière une autorité fermée.

Ces exemples ne sont même pas complets, il existe de nombreuses autres méthodes auxquelles je peux penser pour intégrer des données arbitraires dans la blockchain, et je suis certain que je ne peux pas.

Tenter de jouer à Whackamole avec eux tous gaspillent simplement le temps et les ressources de l’ensemble de l’écosystème en essayant de coordonner les frappes souples pour s’adresser à chacun d’eux, un massivement effort complexe et coûteux, et en fin de compte Il existe encore des méthodes qui ne sont pas possibles à empêcher du tout sans briser complètement le protocole Bitcoin de base lui-même.

Pourquoi l’utilisateur continuera de faire cela

Je suis sûr que beaucoup de gens qui lisent ceci pensent: «Nous devons simplement le faire plusieurs fois et les gens cesseront d’essayer, ils ne passeront pas tous les efforts supplémentaires.» Cette attitude est complètement déconnectée de la réalité pour plusieurs raisons.

Je veux que vous réfléchissiez aux deux raisons pour lesquelles les gens adopteraient ce type de comportement en premier lieu. Soit il leur offre de réels avantages utilitaires, c’est-à-dire servir un réel objectif dans leur vie qui offre de la valeur non purement enracinée dans la spéculation, soit c’est une pure spéculation.

Regardons le premier cas. Il existe une valeur d’utilité significative fournie, qui ne peut pas être fournie d’une autre manière, ou du moins pas dans la même mesure, ou les mêmes garanties de sécurité, etc. Pourquoi ces utilisateurs ne continueraient-ils pas d’adapter leur protocole pour acheminer les restrictions que sont apportées pour empêcher leur cas d’utilisation au niveau du consensus?

Ce protocole hypothétique est une chose réelle pour ces personnes, ce qui leur offre des fonctionnalités nécessaires ou précieuses. Tous ont une incitation à adapter le protocole pour contourner les nouvelles restrictions ajoutées.

Regardons maintenant le deuxième cas, c’est purement un cas d’utilisation spéculatif, c’est-à-dire des NFT ou une forme de collection ou de jeton. Ces types de choses sont alimentés par une pure manie spéculative, des quantités massives d’argent leur sont lancées dans un jeu de chaises musicales avec tout le monde jouant pour sortir avec profit parce que la manie se dissipe et s’effondre sur elle-même.

Ces choses sont toujours cycliques, ne sont jamais maintenues de manière persistante et vont et viennent. Qu’est-ce qui vous fait penser que restreindre une forme de création de tels actifs dissuader les gens d’en faire de nouveaux? Je vous rappelle à ce stade que le «transfert de propriété» avec ces choses sur Bitcoin se produit par des ordinales. Ce métaprotocol particulier est littéralement impossible à bloquer ou à empêcher par tous les moyens.

Rien sur la restriction de mécanismes spécifiques pour intégrer des données sur la chaîne empêche le transfert ou la revente d’actifs précédemment créés en utilisant ce mécanisme, donc rien ne peut être fait pour empêcher les actifs qui existaient déjà d’être négociés.

Les gens qui se livrent à ces activités sont dégénérés, ils poursuivent aveuglément toutes les opportunités qu’ils peuvent trouver pour un petit argent. Pensez-vous que les empêcher de faire de nouveaux actifs d’un certain type les empêchera? Les forcer à utiliser de nouveaux mécanismes stimuler activement la demande pour ces nouveaux types d’actifs. Ce ne sera pas dissuasif, ce sera une incitation proactive.

Le nouveau mécanisme leur deviendra souhaitable en raison de la valeur de controverse. Il s’agit simplement d’un jeu perdant, qui, comme je l’ai démontré dans la section ci-dessus, se termine par l’utilisation de mécanismes qui ne sont littéralement pas possibles à empêcher.

La ligne de conduite rationnelle

Il est impossible d’arrêter l’incorporation de données arbitraires en général dans Bitcoin. Il est possible d’arrêter Quelques méthodes spécifiques de l’intégration des données, mais pas de la pratique en général. Alors pourquoi combatt-nous ces choses?

Tout ce que nous pouvons faire à la fin de la journée, c’est continuer à pousser ces cas d’utilisation dans des méthodes plus inefficaces qui provoquent un impact négatif important sur le réseau dans son ensemble. Laisser les moyens actuellement pris en charge, qui dans le grand schéma des choses sont très efficaces en termes d’utilisation des ressources du réseau, est la décision rationnelle à faire.

Essayer d’étouffer la pratique de l’intégration des données dans Bitcoin est à la fois impossible, mais essayer est finalement auto-destructeur. Cela nous conduit sur un chemin qui limite et limite finalement L’utilisation du bitcoin comme argentet toujours finalement échoue finalement.

Il vous coupe simplement le nez pour dépasser votre visage.

Laisser un commentaire