Une explication détaillée du protocole Bitcoin Layer 2 Ark : une alternative au Lightning Network ?

Le protocole Ark permet aux utilisateurs d'envoyer et de recevoir des fonds sans introduire de contraintes de liquidité.

Écrit par : Peng SUN, Foresight News

Dans le processus de développement du Bitcoin Lightning Network, bien que PTLC et CoinJoin aient largement amélioré les problèmes de centralisation et de confidentialité, la liquidité est l'un des défauts qui entravent l'adoption à grande échelle du Lightning Network. Habituellement, pour les nouveaux utilisateurs, après avoir téléchargé le portefeuille Lightning, ils doivent trouver des liquidités entrantes (Liquidité entrante) pour recevoir des bitcoins du canal Lightning. La quantité de liquidités entrantes et sortantes (Liquidité sortante) détermine également la capacité de l'utilisateur Combien de bitcoins sont reçus et envoyé. Dans le même temps, dans le canal Lightning, le montant total de liquidité est fixe et ne peut être modifié que si le canal est fermé et réinitialisé. Par conséquent, dans l'ensemble, l'expérience utilisateur réelle provoquée par la liquidité de Lightning Network peut ne pas être bonne.

À Miami Beach, il n'y a pas si longtemps, Bitcoin 2023 battait son plein. Le développeur de Bitcoin Burak Keceli a présenté au public l'arche du protocole Bitcoin Layer 2. Il s'agit d'une alternative au Lightning Network. Envoyez et recevez des fonds sans restrictions. Aujourd'hui, Foresight News présentera le fonctionnement d'Ark et ses caractéristiques techniques.

1. Méthode de travail

Dans le réseau Bitcoin, une transaction est composée d'entrée et de sortie. Le montant total de Bitcoin détenu par l'adresse est appelé la sortie de transaction non dépensée (sortie de transaction non dépensée, UTXO). BTC allant à la nouvelle adresse après avoir signé le script de déverrouillage deviendra UTXO à nouveau. Le protocole Ark utilise un ensemble UTXO partagé pour les paiements hors chaîne anonymes. La sortie de transaction soumise mais non divulguée dans le protocole est appelée UTXO virtuel (vTXO). Il existe deux façons d'obtenir vTXO, l'une consiste à l'obtenir auprès d'utilisateurs qui possèdent déjà vTXO ; l'autre consiste à convertir UTXO sur la chaîne en vTXO dans un rapport de 1: 1 via le mécanisme de levage atomique bidirectionnel. Bien sûr, les utilisateurs peuvent convertir unilatéralement vTXO en UTXO sur la chaîne sans demander la coopération d'ASP.

Le protocole Ark implique deux parties, l'utilisateur et le fournisseur de services Ark (ASP). Les utilisateurs sont des entités non interactives qui détiennent, envoient et reçoivent vTXO, tandis que les ASP sont similaires aux fournisseurs de services Lightning Network, agissant comme un intermédiaire sans confiance qui fournit des liquidités vTXO au réseau et facture des frais de liquidité. Dans le même temps, ASP agit également en tant que coordinateur CoinJoin aveugle, assurant la protection de la confidentialité des transactions en fournissant des ajustements simples et un mélange en aveugle.

Lorsqu'un utilisateur effectue un paiement sur le protocole, le vTXO doit être payé dans le pool de vTXO partagé créé par l'ASP. ASP est en ligne 24 heures sur 24 et sa tâche principale consiste à créer un pool de transactions aveugles toutes les 5 secondes, à mélanger aveuglément les transactions et à éviter le suivi des paiements. Dans le même temps, ASP peut convertir le vTXO de l'expéditeur en actifs en chaîne et utiliser ses propres fonds en chaîne pour créer un nouveau vTXO pour CoinJoin. Par conséquent, même si le pool de transactions sur la chaîne est accessible au public, il ne montre qu'une ou quelques entrées fournies par l'ASP, et les observateurs de données sur la chaîne ne peuvent pas trouver le véritable payeur. Par la suite, une sortie vTXO contenant des vTXO nouvellement créés est générée à partir du pool de transactions aveugles de l'ASP. Les vTXO sont regroupés et imbriqués sous cette sortie partagée et peuvent être exposés en chaîne. Dans le protocole Ark, le cycle de vie de la sortie vTXO n'est que de 4 semaines, et le bénéficiaire doit recevoir le vTXO imbriqué (vTXO imbriqué) en co-signant la multi-signature n-sur-n au cours des deux premières semaines. Si le vTXO n'est pas réclamé pendant les deux premières semaines, le vTXO reviendra sous le contrôle de l'expéditeur, similaire aux délais d'attente HTLC sur le Lightning Network. D'autre part, si l'ASP s'avère non coopératif ou non réactif pendant ce temps, et ne co-signe pas l'ATLC, alors le propriétaire du vTXO peut exposer son vTXO imbriqué, puis attendre après une certaine fenêtre de temps relative (24 heures) encodé dans le contrat Recevoir des fonds. Bien entendu, les ASP pourront les liquider individuellement si les vTXO divulgués restent non réclamés plus de 4 semaines.

2. Caractéristiques techniques

Aucune restriction de liquidité

Par rapport au Lightning Network, le protocole Ark n'introduit pas le soi-disant Lightning Channel, la liquidité sortante et la liquidité entrante.

Non interactif

Le paiement non interactif d'Ark est réalisé d'une manière similaire au paiement silencieux de Bitcoin, c'est-à-dire que le bénéficiaire fournit un "secret partagé" entre l'expéditeur et le bénéficiaire, et fournit à l'expéditeur une clé publique privée de paiement silencieux similaire. Chaque vTXO nouvellement créé est ajusté avec un secret partagé temporaire contenant une promesse de paiement qui sera révélée à l'ATLC d'ancrage comme preuve de paiement lorsque le vTXO est dépensé, c'est-à-dire lorsque le connecteur 2 sur 2 est fermé.

Cependant, la réception actuelle du protocole Ark est un compromis de non-interactif. Il utilise une méthode interactive, c'est-à-dire n-sur-n multi-signatures pour limiter la sortie des transactions. Sa réception hors ligne asynchrone n'est pas encore parfaite, et le le bénéficiaire doit exécuter le client Ark en ligne pour signer afin de limiter la sortie de l'UTXO partagé. En d'autres termes, les utilisateurs doivent se connecter toutes les semaines ou toutes les deux semaines pour recevoir leurs jetons, sinon les jetons non réclamés seront effacés par l'ASP. Par conséquent, pour Ark, afin d'obtenir véritablement une non-interaction complète et de permettre aux utilisateurs de recevoir des paiements hors ligne, il doit y avoir une primitive "convention" similaire à BIP-118 et BIP-119 pour limiter la sortie des transactions. En fait, même l'ajout d'une telle primitive au Lightning Network empêcherait toujours la non-interactivité.

Atomicité absolue

La soi-disant atomicité signifie qu'une transaction est indivisible, qu'elle soit complètement réussie ou complètement échouée. Ark utilise une nouvelle primitive de type verrou appelée Txlock pour garantir l'atomicité absolue des transferts hors chaîne. Txlock est une condition dans laquelle le déverrouillage ne peut être effectué que s'il existe un identifiant de transaction mutuellement convenu.

Dans le protocole Ark, la condition Txlock est satisfaite à l'aide d'un connecteur. Les connecteurs sont un type spécial de sortie sur le protocole dont la primitive est que si nous voulons que Bitcoin Script vérifie l'existence d'un ID de transaction particulier, nous ajoutons simplement la sortie de cette transaction à la transaction de dépense et vérifions la vérification des transactions de dépenses. une signature pré-signée. Le point de sortie du connecteur (point de sortie) dans la préimage de hachage de signature (sighash) sera soumis à l'ID de transaction que nous voulons satisfaire à la condition Txlock. Dans le contexte Ark, il s'agit d'une transaction de pool qui inclut un vTXO du bénéficiaire prévu. Les Txlocks sont utilisés dans les contrats ATLC (Anchored Timelock Contracts) pour fournir des schémas de paiement atomiques à hub unique. Lorsqu'un vTXO est créé pour la première fois, l'ATLC lui est attaché. Lorsqu'un vTXO est dépensé, le propriétaire du vTXO coopère avec l'ASP pour signer atlc: connect, et via le chemin de clé 2 sur 2 de l'ATLC, l'ATLC pré-attaché est connecté au connecteur pour former un Txlock.

Cette structure Txlock garantit que, si l'ATLC attaché doit être réclamé par l'ASP, le contexte du point de sortie du connecteur doit rester inchangé. En d'autres termes, un ASP ne peut pas doubler le pool de transactions qu'il crée. Cela fournit à l'expéditeur une structure de paiement atomique, puisque le vTXO du bénéficiaire est imbriqué dans le même pool de transactions que le connecteur.

Moins d'empreintes sur la chaîne

Comparé au Lightning Network, Ark n'a pas de concept d'ouverture et de fermeture de canaux et a moins d'interactions avec la chaîne, il prend donc moins de place sur la chaîne.

Confidentialité

Service de confidentialité CoinJoin "mélange de devises" fourni par ASP ; le bénéficiaire n'a pas besoin d'obtenir des liquidités entrantes, d'exécuter le serveur en temps réel pour collecter les paiements et de divulguer la confidentialité à des observateurs externes.

Compatible avec Lightning Network

Tout comme ATLC et les connecteurs, Ark peut être compatible avec le Lightning Network en attachant des contrats de verrouillage de temps de hachage (HTLC) et des contrats de verrouillage de temps ponctuel (PTLC) au pool de transactions. Le HTLC attaché existe sous un autre UTXO partagé appelé la sortie HTLC, qui expire également après quatre semaines. Au moment où un ASP transmet un HTLC à son pool de transactions, il le transmet au Lightning Network plus large. Cela signifie qu'ASP est également un fournisseur de services Lightning. Les utilisateurs d'Ark peuvent également recevoir des paiements du Lightning Network à l'aide de vTXO intégrés aux HTLC.

Étant donné que n'importe qui peut exécuter un ASP, les utilisateurs peuvent envoyer des factures éclair via différents ASP, après avoir attaché des HTLC (ou PTLC) à des pools de transactions créés par différents ASP, les HTLC peuvent être transmis à la collecte finale via des personnes de paiement multipartite (MPP).

Zéro confirmation vTXO

Le protocole Ark prend en charge le vTXO sans confirmation, et le paiement est crédité toutes les 5 secondes avec la création du pool de transactions, mais le règlement est une fois toutes les dix minutes. Par conséquent, le paiement est crédité immédiatement et le bénéficiaire peut dépenser son vTXO sans confirmation pour transférer des fonds ou payer des factures éclair (similaire à la réception de codes) sans attendre la confirmation en chaîne. Par conséquent, en théorie, lorsqu'une transaction de pool de transactions se trouve encore dans le pool de mémoire, ASP peut doubler la transaction. Cependant, Burak a déclaré qu'en raison de l'atomicité absolue du transfert, si l'ASP dépense deux fois le vTXO du destinataire sous l'ID de transaction CoinJoin convenu par les deux parties, l'ASP ne pourra pas racheter le vTXO de l'expéditeur.

Burak pense qu'à l'avenir, Ark pourrait utiliser un code d'opération de manipulation de données hypothétique "opcode" (OP_XOR ou OP_CAT) pour limiter le nonce dans la signature d'ASP afin d'éviter les doubles dépenses. À ce moment-là, si la double dépense se produit dans une transaction CoinJoin, l'utilisateur peut falsifier la signature ASP pour réclamer le vTXO précédemment échangé.

3. Résumé

Le fondateur du protocole Ark était à l'origine un fervent critique du Lightning Network.Ses critiques de la liquidité entrante du Lightning Network, de la réception asynchrone, de l'empreinte sur la chaîne, de la confidentialité du récepteur et de l'interactivité ont été à l'origine de la naissance d'Ark. Burak lui-même a admis que certaines de ses objections précédentes pourraient être résolues à long terme, mais il n'a pas trouvé de "bonne recette" pour les liquidités entrantes. Poussé par cette idée, Ark a vu le jour.Son innovation réduira considérablement le seuil d'utilisation du paiement de couche 2 par les utilisateurs et imitera de nombreuses primitives Bitcoin telles que CoinJoin, l'aveuglement et le paiement silencieux pour créer le protocole Ark afin de réaliser Bitcoin. paiements de confidentialité. Par rapport au Lightning Network, le protocole Ark propose non seulement une solution à son problème de liquidité inhérent, mais est également compatible avec le Lightning Network, du moins c'est déjà un protocole qui peut le compléter.

Pourtant, Ark laisse beaucoup à désirer. Par exemple, le bénéficiaire doit s'inscrire toutes les semaines ou toutes les deux semaines pour recevoir les jetons, ce qui crée un nouveau problème d'expérience utilisateur. En fait, il y a eu un débat dans la communauté des développeurs Bitcoin sur le problème de double dépense provoqué par l'adoption par Ark de la confirmation zéro (0-conf). S'il peut être encore amélioré sur les problèmes non interactifs et de double dépense, l'expérience utilisateur d'Ark et la sécurité du protocole seront également grandement améliorées. De plus, Ark est complété hors de la chaîne Bien que l'expéditeur et le bénéficiaire ne puissent pas être observés sur la chaîne, il reste à se demander si ASP possède des données privées.

Les références

Voir l'original
Le contenu est fourni à titre de référence uniquement, il ne s'agit pas d'une sollicitation ou d'une offre. Aucun conseil en investissement, fiscalité ou juridique n'est fourni. Consultez l'Avertissement pour plus de détails sur les risques.
  • Récompense
  • Commentaire
  • Partager
Commentaire
0/400
Aucun commentaire
  • Épingler
Trader les cryptos partout et à tout moment
qrCode
Scan pour télécharger Gate.io app
Communauté
Français (Afrique)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)