Araignée, un nouveau schéma de routage de crypto-monnaie, divise chaque transaction complète en « paquets » plus petits qui sont envoyés sur différents canaux à des taux différents. Crédit :Chelsea Turner, MIT
Un nouveau schéma de routage de crypto-monnaie co-inventé par des chercheurs du MIT peut augmenter l'efficacité et, finalement, bénéfices - de certains réseaux conçus pour accélérer les transactions blockchain notoirement lentes.
Les crypto-monnaies sont prometteuses pour les transactions financières peer-to-peer, rendant potentiellement obsolètes les banques et les cartes de crédit. Mais il y a un problème d'évolutivité :Bitcoin, par exemple, ne traite qu'une poignée de transactions par seconde, tandis que les principales cartes de crédit traitent des centaines ou des milliers. C'est parce que la blockchain - sur laquelle reposent les crypto-monnaies du grand livre numérique - prend beaucoup de temps pour traiter les transactions.
Une nouvelle solution est les « réseaux de canaux de paiement » (PCN), où les transactions sont effectuées avec une implication minimale de la blockchain. Des paires d'utilisateurs de PCN forment des comptes séquestres hors blockchain avec une somme d'argent dédiée, formant un grand, réseau interconnecté de comptes joints. Les utilisateurs acheminent les paiements via ces comptes, uniquement pinger la blockchain pour établir et clôturer les comptes, ce qui accélère considérablement les choses. Les comptes peuvent également percevoir des frais minimes lorsque les transactions y sont acheminées.
Schémas de routage inefficaces, cependant, ralentir même ces solutions rapides. Ils épuisent fréquemment les soldes des utilisateurs sur ces comptes, les obligeant à investir beaucoup d'argent dans chaque compte ou à rééquilibrer fréquemment leurs comptes sur la blockchain. Dans un article présenté le mois prochain au Symposium USENIX sur la conception et la mise en œuvre de systèmes en réseau, les chercheurs présentent "Spider, " un schéma de routage plus efficace qui permet aux utilisateurs d'investir seulement une fraction des fonds dans chaque compte et de traiter environ quatre fois plus de transactions avant de se rééquilibrer sur la blockchain.
"C'est important d'avoir un équilibre, routage à haut débit dans les PCN pour garantir l'utilisation efficace de l'argent que les utilisateurs placent sur des comptes communs, " dit le premier auteur Vibhaalakshmi Sivaraman, un étudiant diplômé du Laboratoire d'Informatique et d'Intelligence Artificielle (CSAIL). « Cela doit être efficace et une activité lucrative. Cela signifie acheminer autant de transactions que possible, avec le moins d'argent possible, pour donner aux PCN le meilleur rapport qualité-prix."
L'ancien postdoctorant Shaileshh Bojja Venkatakrishnan, rejoint Sivaraman sur le papier, Parimarjan Negi et Lei Yang, étudiants diplômés du CSAIL, et Mohamed Alizadeh, professeur agrégé de génie électrique et d'informatique et chercheur au CSAIL; Radhika Mittal de l'Université de l'Illinois à Urbana-Champaign; et Kathleen Ruan et Giulia Fanti de l'Université Carnegie Mellon.
Paiements par paquets
Les PCN s'appuient fortement sur des comptes communs bidirectionnels, où les deux parties peuvent recevoir et envoyer de l'argent, de sorte que l'argent peut être acheminé entre tous les utilisateurs. L'utilisateur B peut avoir un compte commun avec l'utilisateur A, tout en étant également lié séparément à l'utilisateur C. Les utilisateurs A et C ne sont pas directement connectés, mais l'utilisateur A peut envoyer de l'argent à l'utilisateur C via les comptes communs A-B et B-C.
Pour échanger des fonds, chaque partie doit approuver et mettre à jour les soldes de ses comptes communs. Les paiements ne peuvent être acheminés que sur des canaux disposant de fonds suffisants pour gérer les transactions, causant des problèmes majeurs.
Les schémas traditionnels envoient les transactions par le chemin le plus court possible, sans être au courant du solde d'un utilisateur donné ou du taux d'envoi sur ce compte. Cela peut amener l'un des utilisateurs du compte joint à gérer trop de transactions et à tomber à un solde nul, le rendant incapable d'acheminer d'autres transactions. Quoi de plus, les utilisateurs ne peuvent envoyer qu'un paiement complet. Si un utilisateur veut envoyer, dire, 10 bitcoins, les régimes actuels essaient de pousser le montant total sur le chemin le plus court possible. Si ce chemin ne peut pas prendre en charge les 10 bitcoins à la fois, ils chercheront le prochain chemin le plus court, et ainsi de suite, ce qui peut ralentir ou échouer complètement la transaction.
Inspiré d'une technique de communication Internet appelée commutation par paquets, Spider divise chaque transaction complète en "paquets" plus petits qui sont envoyés sur différents canaux à des taux différents. Cela permet au programme d'acheminer des morceaux de ces gros paiements via des comptes potentiellement faiblement financés. Chaque paquet est alors beaucoup plus susceptible d'atteindre sa destination sans ralentir le réseau ou être rejeté dans un compte donné pour sa taille.
« Le routage par le chemin le plus court peut provoquer des déséquilibres entre les comptes qui épuisent les principaux canaux de paiement et paralysent le système, " dit Sivaraman. " Acheminer l'argent de manière à équilibrer les fonds des deux utilisateurs dans chaque compte commun nous permet de réutiliser les mêmes fonds initiaux pour prendre en charge autant de transactions que possible. "
Tous en file d'attente
Une autre innovation consistait à créer des files d'attente sur les comptes encombrés. Si un compte ne peut pas gérer les transactions entrantes qui nécessitent l'envoi d'argent, au lieu de les rejeter, il les met en file d'attente. Puis, il attend toutes les transactions qui reconstitueront ses fonds - dans un délai raisonnable - pour pouvoir traiter ces transactions.
"Si vous attendez dans une file d'attente, mais je vous envoie des fonds dans la seconde qui suit, vous pouvez ensuite utiliser n'importe lequel de ces fonds pour envoyer vos transactions en attente, " dit Sivaraman.
Les chercheurs ont également adopté un algorithme, construit par Alizadeh et d'autres chercheurs, qui surveille la congestion des centres de données pour identifier les retards de file d'attente sur les comptes encombrés. Cela permet de contrôler le taux de transactions. Supposons que l'utilisateur A envoie des fonds à l'utilisateur C via l'utilisateur B, qui a une longue file d'attente. Le récepteur C envoie à l'expéditeur A, accompagné de la confirmation de paiement, une information représentant le temps d'attente de la transaction chez l'utilisateur B. S'il est trop long, l'utilisateur A achemine moins de transactions via l'utilisateur B. À mesure que le temps d'attente diminue, le compte A achemine davantage de transactions via B. De cette manière, en surveillant uniquement les files d'attente, Spider est en mesure de s'assurer que le taux de transactions est à la fois équilibré et aussi élevé que possible.
Finalement, plus le routage des PCN est équilibré, plus la capacité requise est petite, c'est-à-dire fonds globaux sur tous les comptes conjoints, pour un débit de transactions élevé. Dans les simulations PCN, Spider a traité 95 % de toutes les transactions en utilisant seulement 25 % de la capacité nécessaire dans les schémas traditionnels.
Les chercheurs ont également effectué des tests sur des transactions délicates appelées « DAG, " qui sont des paiements unidirectionnels où un utilisateur manque inévitablement de fonds et doit rééquilibrer sur la blockchain. Une mesure clé pour la performance des PCN sur les transactions DAG est le nombre de transactions hors chaîne activées pour chaque transaction sur la blockchain. À cet égard, Spider est capable de traiter huit fois plus de transactions hors chaîne pour chaque transaction en chaîne. En revanche, les schémas traditionnels ne prennent en charge que deux fois plus de transactions hors chaîne.
« Même avec des rééquilibrages extrêmement fréquents, les schémas traditionnels ne peuvent pas traiter toutes les transactions DAG. Mais avec un rééquilibrage très basse fréquence, Spider peut tous les compléter, " dit Sivaraman.
Prochain, les chercheurs rendent Spider plus robuste aux transactions DAG, ce qui peut provoquer des goulots d'étranglement. Ils explorent également les problèmes de confidentialité des données et les moyens d'inciter les utilisateurs à utiliser Spider.