Contrats intelligents BSV vs BTC
Cet article a été publié pour la première fois sur Medium.
Nous comparons les contrats intelligents sur Bitcoin SV (BSV) et BTC.
Différences fondamentales
BitcoinSV
Bitcoin SV utilise les opcodes de script originaux publiés par Satoshi, qui permettent de compléter les contrats intelligents de Turing. Pour créer une application, aucun nouvel opcode ni aucune modification de la couche de base n'est nécessaire. L’innovation sans autorisation est la bienvenue et les constructeurs sont libres de bricoler toute nouvelle application. Tous sont implémentés sous la forme de contrats intelligents, exécutés au-dessus de la couche de base, au lieu d'être codés en dur et intégrés à celle-ci. Cela offre aux développeurs et aux innovateurs une rapidité et une mise sur le marché rapides, stimulant ainsi leur créativité et leur ingéniosité.
Btc
En raison de nombreux opcodes désactivés, lorsqu'un nouveau cas d'utilisation est souhaité, un fork (soft ou hard) est souvent nécessaire pour le prendre en charge. Il faut rechercher les bénédictions et les autorisations des gardiens (par exemple, les développeurs principaux), ce qui est controversé et peut prendre des années pour activer une proposition, si elle est l'une des rares chanceuses à être acceptée et approuvée.
Exemples de cas d'utilisation
Nous répertorions plusieurs cas d'utilisation importants proposés par BTC, qui sont tous jugés impossibles sans fork. Nous démontrons non seulement qu’ils sont possibles en utilisant le protocole Bitcoin original dans BSV, mais que leur mise en œuvre est également plusieurs fois plus rapide. Tous les exemples sont accompagnés d'un code de travail open source, qui peut être vérifié de manière indépendante.
Racine pivotante
Taproot a pris 4 ans, plus de 150 développeurs
Racine pivotante dans BTC a impliqué environ 150 développeurs et a pris environ 4 ans, de la proposition à l'activation. Il a été mis en œuvre par un développeur solo en une heure sur BSV ! L'innovation sans autorisation à son meilleur.
Greffe de racine
Semblable à Taproot, Graftroot a été implémenté sur BSV, ce qui reste à faire dans BTC.
Preuve de connaissance zéro (ZKP)
ZKP est probablement le type de cryptographie le plus sophistiqué et le plus avancé utilisé dans les blockchains. Il a récemment suscité l’enthousiasme du BTC, ce qui nécessite l’ajout d’un nouvel opcode. BSV dispose d'un vérificateur ZKP fonctionnel sur la chaîne depuis 2022.
Engagement
BTC a quelques propositions pour activer le covenant, telles que OP_CHECKTEMPLATEVERIFY/OP_CTV dans BIP119. BSV a un engagement depuis 2020. Il a même un accord récursif.
Blockstream a publié une astuce pour activer le covenant en utilisant OP_CAT, 3 mois après nous l'avons publié en octobre 2020¹. Le premier ne fonctionne pas encore aujourd’hui sur BTC, en raison du manque d’OP_CAT.
Sauter
L'un des cas d'utilisation de Covenant est Vault, qui a été implémenté dans BSV.
Signature Schnorr
La signature Schnorr est introduite dans BTC dans le cadre de la mise à niveau de SegWit. Il peut être implémenté sous forme de contrat intelligent.
Sighash_anyprevout (apo)
SIGHASH_ANYPREVOUT, une version mise à jour de SIGHASH_NOINPUT, dans BIP-118 est une proposition visant à exclure l'identifiant de l'UTXO dépensé du hachage de signature (sighash). Nous l'avons également mis en œuvre. De plus, notre approche permet de personnaliser arbitrairement les parties des données de transaction qui entrent dans sighash, ce qui est beaucoup plus universel et flexible.
Arbre de syntaxe abstraite merklisé (MAST)
Arbre de syntaxe abstraite merklisé MAST (alias Merklized Alternative Script Trees) utilise un arbre Merkle pour coder des branches mutuellement exclusives dans un script, qui a été fusionné dans Taproot.
Signatures de Lamport
Les signatures Lamport, un schéma de signature unique utilisant des fonctions de hachage, sont résistantes aux quantiques et ont été proposées.
Oracle
Sur BTC, Discreet Log Contract (DLC) est utilisé pour implémenter les oracles. Cependant, il souffre de problèmes d'évolutivité puisque les parties doivent créer et stocker des signatures pour tous les résultats possibles un oracle peut signer.
Sur BSV, nous avons implémenté des oracles utilisant ECDSA natif, qui ne signe que le résultat final et unique.
Nous avons également mis en place une alternative plus efficace basée sur les signatures Rabin.
Op_checksigfromstack/op_csfs
OP_CSFS est un opcode proposé dans BTC qui permet de vérifier si une signature signe un message arbitraire.
OP_CheckLockTimeVerify/CLTV
BTC introduit le nouvel opcode OP_CLTV dans BIP65 pour réaliser un verrouillage temporel absolu, qui peut être implémenté sans lui.
OP_CheckSequenceVerify/CSV
BTC introduit le nouvel opcode OP_CSV dans BIP112 pour réaliser un verrouillage temporel relatif, qui peut également être implémenté sans lui.
Nous n'avons publié qu'une version ECDSA car Schnorr n'est pas supporté nativement dans BSV, nous n'y avons donc pas pensé. Mais il peut être facilement adapté pour fonctionner avec Schnorr.
Regarder : sCrypt rend les contrats intelligents possibles sur la blockchain BSV
Nouveau sur la blockchain ? Consultez la section Blockchain pour les débutants de CoinGeek, le guide de ressources ultime pour en savoir plus sur la technologie blockchain.
