Ark : Un Nouveau Mécanisme de Transactions Hors Chaîne
Ark est un nouveau mécanisme de lots de transactions hors chaîne proposé à l’origine par Burak, un jeune développeur turc. Il y a actuellement deux implémentations en cours de construction, l’une par Ark Labs, et l’autre par un second groupe, auquel Burak n’est pas impliqué.
La proposition originale pour ARK était beaucoup plus compliquée et impliquait certains objectifs de conception plus axés sur la confidentialité que les implémentations en construction. Il était également initialement envisagé d’exiger Vérifier (CTV) pour être construit.
Le protocole dépend d’un serveur de coordination central afin de fonctionner correctement, mais malgré cela, il est capable de fournir les mêmes fonctionnalités et garanties de sécurité que le réseau Lightning. Tant qu’un utilisateur reste en ligne pendant la période requise, à tout moment (sauf s’il choisit de faire confiance à l’opérateur pendant de courtes périodes), chaque utilisateur peut quitter unilatéralement le système ARK à tout moment et reprendre le contrôle unilatéral complet de ses fonds.
Contrairement à Lightning, ARK n’exige pas que les utilisateurs disposent de liquidité pré-allouée pour recevoir des fonds. Un utilisateur d’ARK peut simplement se connecter à un portefeuille et recevoir des fonds immédiatement sans aucune pré-allocation de liquidité.
L’Arbre Ark
Les pièces détenues sur Ark sont appelées virtuelles € (Vutxos). Ce ne sont que des transactions pré-signées qui garantissent la création d’un vrai UTXO sous le contrôle unilatéral d’un utilisateur une fois soumis Onchain, mais sont autrement détenues hors chaîne.
Les Vutxos de chaque utilisateur sont imbriqués à l’intérieur d’un arbre de transactions pré-signées, ou un «lot». ARK fonctionne en ayant le serveur de coordination ou le fournisseur de services ARK (ASP), faciliter la coordination entre les utilisateurs nécessaires pour créer un lot. Chaque fois que les utilisateurs reçoivent des fonds, intégrés à l’arche ou au large, il est nécessaire de construire une transaction et l’arborescence de transaction associée pour créer un nouveau lot.
L’arbre est construit pour prendre l’UTXO confirmé à racine unique, verrouillé avec un N-OF-N multi-n, incluant tous les utilisateurs, tenant des Vutxos dans l’arbre ainsi que l’ASP, et se divise lentement en de plus en plus UTXOS jusqu’à atteindre les feuilles, qui sont chacun des utilisateurs Vutxo. Chaque VUTXO est garanti en utilisant un script qui doit être signé par un multi-2 sur 2, une clé détenue par l’utilisateur, et l’autre par l’ASP, ou simplement l’utilisateur après un timelock.
Chaque fois que l’arbre se divise, les Vutxos sont créés en onchain, mais il en va de même des UTXO internes qui n’ont pas encore réellement divisé en Vutxos. Chacun de ces UTXOS internes est verrouillé avec un N-OF-N multi-n composé de l’ASP, et tous les utilisateurs qui ont un Vutxo plus bas sur l’arbre. Pendant le processus de création par lots, les utilisateurs commencent à leurs Vutxos respectifs et passent par un processus de signature tout le long de la racine de l’arbre. Cela garantit que la racine ne sera jamais signée avant que la revendication de chaque utilisateur à un Vutxo soit, garantissant qu’ils ont toujours un accès unilatéral dans le pire des cas à leurs fonds.
Chaque lot a également un temps d’expiration (ce qui aura du sens dans la section suivante). Ce chemin de dépenses à expiration, qui existe en tant que condition de dépenses alternatifs pour le Root Utxo Onchain ainsi que chaque UTXO interne, permet à l’ASP de dépenser unilatéralement tous les fonds.
Transactions, Préconfirmation et Entrées de Connecteur
Concernant les transactions sur ARK, il y a deux mécanismes possibles, chacun avec ses propres coûts et implications en termes de modèle de sécurité. Il existe des transferts hors ronde ou des transactions préconçues, et des transferts en ronde ou des transactions réellement confirmées.
Pour effectuer un transfert hors solide, le processus est très simple. Si un utilisateur (Alice) veut payer un autre (Bob), il contacte simplement l’ASP et leur fait co-signer une transaction en dépensant le Vutxo à Bob. Bob reçoit ensuite cette transaction pré-signée, ainsi que toutes les autres la précédant à la racine du lot Onchain. Bob est désormais capable de sortir unilatéralement de l’Arche avec cette transaction, mais il doit faire confiance à l’ASP pour ne pas se retrouver avec Alice pour le doubler. Ces transactions hors ronde peuvent même être enchaînées plusieurs fois avant d’être enfin confirmées.
Pour finaliser une transaction ARK, les utilisateurs doivent s’engager dans un « échange de lots ». Les utilisateurs ne peuvent pas vraiment confirmer un transfert dans un seul lot, ils doivent échanger atomiquement un Vutxo dans un lot existant avec un nouveau Vutxo créé dans un nouveau lot. Cela se fait en utilisant l’ASP comme facilitateur de l’échange, et à l’aide de ce qu’on appelle une « entrée de connecteur ».

Lorsqu’un utilisateur va finaliser une transaction ARK avec un échange de lots, il abandonne le contrôle du Vutxo vers l’ASP. Cela pourrait être problématique, qu’est-ce qui empêche l’ASP de le garder simplement et de ne pas lui donner un Vutxo confirmé dans un nouveau lot ? L’entrée du connecteur.
Lorsqu’un nouveau lot est créé, une seconde sortie est créée dans la transaction qui est confirmée sur la chaîne instanciant un nouvel arbre composé de connecteurs UTXOS. Lorsque Bob va signer une transaction confiée à l’ASP pour effectuer l’échange de lots, la transaction comprend comme entrée l’un des connecteurs UTXOS du nouveau lot.
Cela crée une garantie atomique. Le VUTXO confirmé par Bob est inclus dans un lot dans la même transaction où l’entrée du connecteur est créée dans ce qui est nécessaire pour que sa transaction de confiscation soit valide. Si ce lot n’est jamais créé Onchain, c’est-à-dire que Bob ne reçoit jamais réellement le nouveau Vutxo confirmé, alors la transaction forfait qu’il a signée pour l’ASP ne sera jamais valide et confirmable.
Dynamique de Liquidité et Espace de Blocage
Toute la liquidité nécessaire pour créer de nouveaux lots afin de faciliter les transferts entre les utilisateurs est fournie par l’ASP. Ils doivent avoir suffisamment de liquidité pour créer de nouveaux lots pour les utilisateurs jusqu’à ce que les anciens aient expiré et que l’ASP puisse les balayer unilatéralement pour récupérer l’ancienne liquidité précédemment verrouillée pour créer des Vutxos pour les utilisateurs.
C’est le cœur de la dynamique de liquidité au centre du protocole ARK. Bien que dans un sens, il s’agisse d’une victoire massive d’efficacité, ne nécessitant pas les fournisseurs de liquidités pour évaluer les utilisateurs et deviner quels recevront réellement de grands volumes de paiements avant de pouvoir recevoir des fonds, dans un autre, il s’agit d’une perte d’efficacité car l’ASP doit avoir suffisamment de liquidité pour continuer à créer de nouveaux lots pour les utilisateurs pendant qu’ils configurent le temps d’expiration et commencent à récupérer une liquidité allouée pendant longtemps.
Cela peut être atténué à un degré décent par la fréquence à laquelle un ASP propose de créer de nouveaux lots pour finaliser les transactions en attente. Dans le cas d’un ASP tentant de créer de nouveaux lots en temps réel à mesure que les transactions arrivent, les exigences de liquidité seraient exorbitantes. Cependant, un ASP peut réduire la fréquence à laquelle il crée de nouveaux lots et réduire considérablement ses besoins en liquidité.
Cette dynamique a également des implications pour l’utilisation de l’espace de blocs. Contrairement à Lightning, qui peut fournir des garanties de confirmation solides entièrement hors chaîne, pour qu’une transaction ARK ait un degré de finalité sans confiance équivalent, un nouveau lot a à créer onchain. Cela signifie que contrairement à la foudre, lorsque le volume des transactions ne se reflète pas sur la vitesse, la vitesse des transactions ARK nécessite intrinsèquement une quantité proportionnelle d’utilisation de l’espace de blocs, bien que de manière très compressée et efficace. Cela crée une limite supérieure théorique du nombre de lots d’Ark pouvant être créés au cours d’un intervalle de temps donné (bien que les arbres puissent être plus petits ou plus grands selon cette dynamique).
Emballage
Ark présente à bien des égards un ensemble de compromis presque opposés au réseau Lightning. Il s’agit d’une amélioration massive de l’efficacité de l’espace de blocs pour les transactions hors chaîne, et élimine le problème de l’allocation de liquidité sur le réseau de Lightning, mais il a une limite de débit liée beaucoup plus étroite qui est corrélée avec la limite de débit des blockchains.
Cette dynamique de compromis presque opposés en fait un système très complémentaire au réseau Lightning. Il peut également interagir avec lui, c’est-à-dire que les Vutxos peuvent être échangés atomiquement dans les transactions entrant ou sortant du réseau Lightning.
En fin de compte, la façon dont il s’intègre dans l’écosystème Bitcoin plus large n’est pas encore visible, mais c’est une pile de protocole sans aucun doute précieuse qui trouvera un créneau fonctionnel, même s’il est différent de ce qui était prévu à l’origine.
Résumé
Ark propose un mécanisme innovant pour des transactions hors chaîne en garantissant sécurité et flexibilité, sans les contraintes de liquidité du réseau Lightning. Sa capacité à traiter des lots de transactions tout en maintenant un accès unilatéral aux fonds place ce protocole au cœur de l’évolution de l’écosystème Bitcoin.