Bitcoin Magazine: Quels sont les défis auxquels est confronté Rollup ?

robot
Création du résumé en cours

Source: Bitcoin Magazine; Compilation: Wuzhu, Golden Finance

Rollups have recently become the focus of BTC expansion, becoming the first thing to truly overshadow the Lightning Network and gaining broader attention. Rollups aim to be an off-chain second layer that is not constrained or limited by the core liquidity of the Lightning Network. In other words, end users need someone to allocate (or ‘lend’) funds in advance in order to receive money, or intermediate routing nodes need channel balances to facilitate the smooth flow of payment amounts from senders to receivers.

Ces systèmes étaient initialement exécutés sur Ethereum et d’autres systèmes de Turing complet, mais récemment, l’accent a été mis sur leur portage sur des chaînes de blocs basées sur UTXO (par exemple, BTC). Cet article ne vise pas à discuter de la situation actuelle de la mise en œuvre sur BTC, mais plutôt à discuter des fonctionnalités idéalisées à long terme de Rollup, qui dépendent de la capacité à vérifier directement les preuves de connaissance nulle (ZKP) sur BTC, une fonctionnalité qui n’est pas actuellement prise en charge par BTC.

L’architecture de base de Roll est la suivante : un compte unique (UTXO dans BTC) qui stocke les soldes de tous les utilisateurs dans Rollup. Cette UTXO contient un engagement sous forme de racine de Merkle de l’arbre de Merkle, qui représente tous les soldes actuels des comptes dans Rollup. Tous ces comptes sont autorisés par une clé publique/clé privée, de sorte que les utilisateurs doivent toujours utiliser une clé secrète pour signer certains contenus afin de réaliser des dépenses hors chaîne. Cette partie de la structure permet aux utilisateurs de partir à tout moment sans permission, il leur suffit de produire une preuve de transaction pour prouver que leur compte fait partie de l’arbre de Merkle, et ils peuvent sortir de Rollup unilatéralement sans l’autorisation de l’opérateur.

Les opérateurs de Rollup doivent inclure un ZKP dans les transactions pour mettre à jour la racine de Merkle du solde du compte hors-chaîne lors du processus de transaction hors-chaîne. Sans ce ZKP, la transaction serait invalide et ne pourrait pas être incluse dans la chaîne de blocs. Cette preuve permet de vérifier si toutes les modifications du solde du compte hors-chaîne sont correctement autorisées par le titulaire du compte et si l’opérateur ne met pas à jour le solde de manière malveillante pour voler les fonds des utilisateurs ou les redistribuer de manière malhonnête à d’autres utilisateurs.

Le problème est que si seule la racine de l’arbre de Merkle est publiée hors chaîne, les utilisateurs peuvent la consulter et y accéder, mais comment peuvent-ils placer leurs branches dans l’arbre afin de pouvoir sortir à tout moment sans autorisation ?

Rollup approprié

Dans un Rollup approprié, chaque fois qu’une nouvelle transaction off-chain est confirmée et que l’état du compte Rollup change, les informations sont directement placées dans la chaîne de blocs. Ce n’est pas tout l’arbre, cela serait trop absurde, mais les informations nécessaires pour reconstruire l’arbre. Dans une implémentation simple, le résumé de tous les comptes existants dans le Rollup contiendra le solde, et les comptes ne seront ajoutés que lors de la mise à jour des transactions du Rollup.

Dans une implémentation plus avancée, utilisez la différence de solde. Cela résume essentiellement quel compte a augmenté ou diminué les fonds lors du processus de mise à jour. Cela permet à chaque mise à jour de Rollup de ne contenir que les modifications de solde de compte qui se sont produites. Ensuite, les utilisateurs peuvent simplement parcourir la chaîne et «calculer» à partir du début du Rollup pour obtenir l’état actuel du solde du compte, ce qui leur permet de reconstruire l’arbre de Merkle de solde actuel.

Cela permet d’économiser considérablement les dépenses et l’espace de bloc (et donc les fonds), tout en permettant aux utilisateurs de s’assurer l’accès aux informations nécessaires pour sortir unilatéralement. Selon les règles de rollup, ces données doivent être incluses dans le rollup officiel fourni aux utilisateurs par la chaîne de blocs, et les transactions sans résumé de compte ou différence de compte sont considérées comme des transactions invalides.

Période de validité

Une autre approche pour traiter le problème de l’accessibilité des données d’extraction des utilisateurs est de stocker les données ailleurs que sur la chaîne de blocs. Cela soulève des problèmes subtils, car rollup doit toujours garantir que les données sont accessibles ailleurs. Traditionnellement, d’autres chaînes de blocs sont utilisées à cette fin, spécifiquement conçues comme des couches d’accessibilité des données pour des systèmes tels que rollup.

Cela crée également un dilemme de sécurité tout aussi puissant. Lorsque les données sont directement publiées sur la chaîne BTCBloc, les règles de consensus peuvent garantir qu’elles sont absolument correctes. Cependant, lorsqu’elles sont publiées sur un système externe, la meilleure chose qu’elles puissent faire est de vérifier la preuve SPV, c’est-à-dire que les données ont été publiées sur un autre système.

Cela nécessite la vérification des données qui existent dans la preuve off-chain, ce qui est finalement un problème d’Oracle Machine. La chaîne de blocs BTC ne peut pas vérifier complètement autre chose que ce qui se passe dans son propre Bloc off-chain, elle peut mieux faire pour vérifier les ZKP. Cependant, les ZKP ne peuvent pas vérifier si les données de rollup contenues dans le Bloc ont été diffusées publiquement après leur génération. Il ne peut pas vérifier si les informations externes sont vraiment publiques pour tout le monde.

Ceci a ouvert la porte aux attaques de rétention de données, c’est-à-dire à la création d’engagements envers la publication de données et à leur utilisation pour faire avancer le rollup, mais les données ne sont pas réellement disponibles. Cela empêche les utilisateurs de retirer leurs fonds. La seule solution réelle est de compter entièrement sur la valeur et la structure d’incitation des systèmes autres que BTC.

Entre l’enclume et le marteau

Cela pose un dilemme pour Rollup. Lorsqu’il s’agit de problèmes de disponibilité des données, il existe essentiellement un choix binaire pour publier les données sur la chaîne de blocs BTC ou ailleurs. Ce choix a un impact majeur sur la sécurité, la souveraineté et la scalabilité de Rollup.

D’une part, l’utilisation de la chaîne BTCBloc comme couche de disponibilité des données fixerait une limite supérieure contraignante à l’évolutivité de rollup. L’espace Bloc est limité, ce qui fixe une limite au nombre de rollup pouvant exister à la fois et au nombre total de transactions pouvant être traitées hors chaîne par rollup. Chaque mise à jour de rollup nécessite un espace Bloc proportionnel au nombre de comptes dont le solde a changé depuis la dernière mise à jour. La théorie de l’information limite la compression des données à un certain niveau, donc il n’y a plus de potentiel d’extension.

D’autre part, l’utilisation de différentes couches pour assurer la disponibilité des données élimine le plafond rigide des avantages d’évolutivité, mais cela soulève également de nouvelles questions de sécurité et de souveraineté. Dans le Rollup qui utilise BTC pour assurer la disponibilité des données, si les données que les utilisateurs souhaitent extraire ne sont pas automatiquement publiées sur la blockchain, l’état du Rollup ne peut pas changer. Avec les Validiums, cette garantie dépend entièrement de la capacité des systèmes externes utilisés à résister à la fraude et à la dissimulation des données.

Maintenant, n’importe quel producteur de bloc sur le système de disponibilité des données externes peut s’approprier les fonds des utilisateurs de BTCRollup en produisant un bloc au lieu de diffuser réellement ce bloc, rendant ainsi les données disponibles.

Alors, si nous parvenons vraiment à mettre en œuvre un Rollup idéal sur le BTC, permettant réellement des retraits unilatéraux pour les utilisateurs, à quoi cela ressemblerait-il ?

BTC1.11%
ETH1.34%
Voir l'original
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
  • Récompense
  • Commentaire
  • Reposter
  • Partager
Commentaire
0/400
Aucun commentaire
  • Épingler
Trader les cryptos partout et à tout moment
qrCode
Scan pour télécharger Gate app
Communauté
Français (Afrique)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)