Feuille de route Beam
La route vers le DeFi confidentiel
Aperçu
Depuis son lancement le 3 janvier 2019, Beam a publié quatre versions majeures, chacune apportant un ensemble différent de fonctionnalités et d’améliorations.
La sortie récente d’Eager Electron 5.0 marque le début d’une nouvelle ère dans le développement de Beam. Ce qui a commencé comme une cryptomonnaie confidentielle et évolutive de premier ordre il y un peu plus de deux ans, s’étend maintenant vers une nouvelle voie passionnante qui est une combinaison de produits et de technologies. Nous avons choisi de l’appeler Confidential DeFi et il fera partie intégrante de la feuille de route de Beam pour l’année prochaine ou plus. Dans cet article, nous présenterons la feuille de route, décrivant les versions à court et à moyen terme, ainsi que la recherche et le développement futurs. Nous en avons discuté à la fois en interne et avec la communauté au cours des dernières semaines, et avec les idées et les commentaires, publions la mise à jour officielle aujourd’hui.
La feuille de route peut être grossièrement divisée en trois pistes: la piste Wallet , la piste DeFi et la piste Infrastructure . Sur une chronologie, il couvrira deux versions principales: Eager Electron 5.0 et Fierce Fermion 6.0 , la prochaine version majeure qui nécessitera un hard fork pour introduire de nouvelles fonctionnalités dans le nœud Beam.
Piste DeFi confidentielle
Cette section décrit la feuille de route Beam pour l’infrastructure et les applications DeFi confidentielles. Nous prévoyons de combiner deux approches architecturales différentes, les scripts sans script et les contrats Beam.
Les scripts sans script ont été introduits en 2017 peu de temps après l’invention du protocole Mimblewimble et décrivent l’idée de répliquer une fonctionnalité de type contrat intelligent en exécutant la plupart des calculs hors chaîne, puis en validant les résultats à l’aide de concepts cryptographiques tels que les signatures d’adaptateur Schnorr. Combiné avec le sous-système Beams SBBS, cela permettra la mise en œuvre d’applications de trading multipartites décentralisées et confidentielles, comme par exemple les Perpetual Swaps décrits ci-dessous.
La technologie Beam Contracts est une autre extension étonnante du protocole Mimblewimble pour la mise en œuvre de contrats intelligents avec script intégré. Il utilise des noyaux de transaction MW pour consommer des UTXO d’entrée tout en mettant à jour les variables d’état à l’intérieur du nœud. Ces variables sont ensuite emballées dans des contrats Beam contrôlés par Beam Script (qui n’a pas encore été conçu) permettant ainsi des calculs en chaîne et l’émission de nouveaux UTXO en tant que résultats.
Les scripts sans script et les contrats Beam fournissent ensemble une infrastructure puissante capable de prendre en charge tout cas d’utilisation d’application DeFi existant, y compris les pièces confidentielles stables, les prêts et les échanges, tous confidentiels et décentralisés.
Étant donné que la plupart des tâches DeFi nécessitent beaucoup de recherches et de prototypes, nous publierons d’abord une série de versions POC et Testnet avant de décider de ce qui est prêt à être intégré dans les portefeuilles du réseau principal. Voici une ventilation des jalons prévus pour Beam DeFi Track, à peu près alignés sur le calendrier de sortie du portefeuille.
5.2 Calendrier (septembre — décembre 2020)
Architecture de contrat Beam POC
Le premier POC de la technologie Beam Contract devrait inclure la possibilité de créer des contrats avec des capacités de script de base et de définir des APIs claires pour les utiliser. La plupart de ces travaux en sont déjà aux premiers stades de la conception et de la recherche.
Ponts vers Ethereum
Bien qu’il apporte beaucoup de valeur au sein de la chaîne Beam, il est clair que la capacité de représenter des Tokens enveloppés d’autres réseaux offrirait d’énormes avantages et des possibilités d’expansion et d’adoption. Ethereum, en tant que plateforme DeFi leader aujourd’hui, est clairement le meilleur candidat pour une telle intégration. On peut penser à deux architectures possibles pour le pont Beam <> Eth: fédérée et décentralisée.
Dans le cas d’un pont fédéré, l’émission de l’actif est contrôlée par un portefeuille multisig auquel il convient de faire confiance pour surveiller et équilibrer les montants verrouillés et distribués sur chaque chaîne. Cette solution est relativement simple, mais nécessite la confiance dans la fédération qui la gère.
Les ponts décentralisés dépendent de la capacité de tous les nœuds Beam à surveiller l’état de contrats spécifiques sur la chaîne Ethereum et sont beaucoup plus difficiles à mettre en œuvre. Une façon d’aborder cela est de créer des clients SPV bidirectionnels utilisant l’implémentation de Beam Fly Client pour pouvoir obtenir des preuves de chaque chaîne.
Déjà dans la version 5.1, nous commençons à rechercher et à mettre en œuvre la deuxième solution décentralisée, qui devrait couvrir la période 5.2.
Oracles
Afin d’activer les applications DeFi, nous devons utiliser des oracles qui fournissent des prix de référence pour les actifs échangés. Il existe plusieurs possibilités pour implémenter des oracles soit en chaîne à utiliser par Beam Contracts, soit en utilisant l’infrastructure SBBS pour fournir des informations signées et vérifiables directement aux portefeuilles à utiliser dans le processus de négociation et de création de contrats d’échange P2P entre les utilisateurs. Nous recherchons actuellement la possibilité de construire les oracles ainsi que l’intégration avec les fournisseurs d’oracle existants.
Application de swaps perpétuels
L’une des premières applications que nous envisageons sont les Swaps perpétuels, qui sont une implémentation spécifique des contrats à terme sans date d’expiration définie. L’application utilisera SBBS pour créer des contrats et des canaux de paiement Laser Beam pour verrouiller les garanties, gérer les transactions de financement et le règlement. Plus de détails sur la mise en œuvre de l’application seront fournis dans un prochain article.
5.3 Calendrier (décembre 2020 — janvier 2021)
Piste Portefeuille
5.1 (juillet — août 2020)
La version majeure d’Eager Electron a commencé avec la sortie de la version 5.0 et du hard fork qui a suivi le 28 juillet 2020 qui a activé le support Lelantus MW et Confidential Asset dans les nœuds Beam. Il a également changé l’algorithme de minage en BeamHash III, la dernière des deux mises à jour de PoW prévues que Beam a annoncées au lancement. Comme d’habitude, chaque version majeure est suivie de plusieurs versions mineures, chacune offrant un ensemble de fonctionnalités et d’améliorations qui ne nécessitent pas de changement de consensus.
Les travaux sur la version 5.1 ont commencé immédiatement après la sortie de la version 5.0. Il est déjà en phase de test et devrait être publié dans les semaines à venir. Cette version comprend plusieurs fonctionnalités et améliorations importantes.
Confidentialité maximale
Les transactions Max Privacy utilisent la nouvelle infrastructure Lelantus MW qui a été ajoutée dans le dernier hard fork et la version 5.0 associée. Chacune de ces transactions comprend deux parties. Tout d’abord, l’expéditeur soumet les UTXO dans le pool blindé avec un ensemble d’anonymat maximum de 64 Ko. Ensuite, Receiver extrait un tout nouvel ensemble d’UTXO qui sont complètement dissociés de l’historique précédent du pool et peut l’utiliser pour d’autres transactions. Le temps entre ces deux parties est important car il permet à un nombre suffisant d’autres UTXO de s’accumuler dans le pool et de fournir l’ensemble d’anonymat requis. Les portefeuilles Beam CLI permettent aux utilisateurs d’effectuer ces opérations séparément pour un contrôle maximal. Dans les portefeuilles de l’interface utilisateur, cette opération est transparente et est intégrée aux opérations standard d’envoi et de réception.
La fenêtre spécifique dans laquelle l’ensemble d’anonymat est maximal dépend du taux de transactions Max Privacy, plus elles sont utilisées, plus l’anonymat maximal est atteint rapidement. Ces informations sont surveillées et affichées par le portefeuille, de sorte qu’à tout moment l’utilisateur puisse connaître le jeu d’anonymat exact de chaque UTXO. Le contrôle manuel, cependant, n’est pas nécessaire puisque le portefeuille sélectionne automatiquement les meilleurs UTXO pour chaque transaction, y compris la possibilité d’envoyer des UTXO LelantusMW et Mimblewimble en une seule transaction.
Paiements hors ligne
Puisque Mimblewimble est intrinsèquement un protocole interactif, l’expéditeur et le destinataire doivent tous deux participer à la création de la transaction. Cela introduit une interface utilisateur très différente de celle à laquelle nous sommes habitués dans d’autres crypto-monnaies. Cependant, en utilisant la technologie LelantusMW, Beam a développé une capacité pour les expéditeurs d’envoyer des fonds de manière non interactive, même lorsque le destinataire n’est pas en ligne. Nous avons appelé cette fonction les paiements hors ligne et il existe deux saveurs différentes: l’utilisation de bons et l’utilisation de l’adresse hors ligne.
La première option, qui sera publiée dans la version 5.1, permet à l’utilisateur d’intégrer un ensemble de touches spéciales appelées bons dans une adresse créée dans l’écran de réception. Par défaut, 20 bons sont créés. Étant donné que chaque bon a une longueur d’environ 100 symboles, ce numéro a été choisi pour permettre à l’adresse résultante d’être envoyée par la plupart des messagers sans se casser en plusieurs messages. Chaque bon est valable pour une transaction et quand ils expirent, le portefeuille demandera automatiquement un nouvel ensemble au récepteur s’il est mis en ligne, ou invitera l’utilisateur à demander une nouvelle adresse avec plus de Tokens. L’avantage de cette méthode, assez compliquée, tient à deux propriétés. Chaque transaction utilise un bon unique, ce qui rend impossible le suivi de l’utilisateur en essayant de surveiller quels bons sont utilisés. Également, l’expéditeur ne peut pas savoir quand les fonds envoyés à l’aide du bon sont dépensés, c’est-à-dire extraits du pool. Ainsi, les bons offrent le maximum d’anonymat.
La deuxième option, actuellement prévue pour la version 5.2, utilise une seule adresse «hors ligne», qui permet d’envoyer n’importe quel montant de transactions hors ligne à la même adresse. En raison des détails sur le fonctionnement du pool LelantusMW, il ne peut y avoir qu’un nombre très limité (et définitivement plafonné) de telles adresses créées pour chaque portefeuille, car chaque nouvelle adresse obligerait le portefeuille à réanalyser le pool pour les UTXO qui lui sont envoyés. Cette option est moins sécurisée car elle permet la désanonymisation en comparant les adresses hors ligne envoyées à différents expéditeurs et l’expéditeur peut également voir quand les fonds sont extraits du pool. Il est cependant beaucoup plus simple pour l’utilisateur et plus cohérent avec le fonctionnement de la plupart des autres crypto-monnaies.C’est pourquoi nous le recommandons pour des cas d’utilisateurs spécifiques tels que les dons et les paiements de pool non interactifs, plutôt que pour les transactions confidentielles générales.
Améliorations de Atomic Swap
Les Atomic Swaps sont un excellent moyen décentralisé et totalement confidentiel d’échanger en toute sécurité des pièces Beam contre des BTC, des LTC et des QTUM sans aucun tiers. Dans cette version, cette fonctionnalité devient encore meilleure avec le remplacement des sorties et des entrées intermédiaires par SegWit, ce qui réduit considérablement les frais de swap. Nous fournissons également des recommandations de taux de frais optimales directement à partir des chaînes de blocs respectives, éliminant ainsi la nécessité de les obtenir manuellement.
Paramètres repensés
Au fur et à mesure que de plus en plus de fonctionnalités sont ajoutées au portefeuille, la page des paramètres devient de plus en plus encombrée, nous avons donc décidé de la repenser et de créer des groupes logiques pour simplifier la recherche et l’accès aux paramètres pertinents.
5.2 (septembre — novembre 2020)
Beam Vault et Secure Sync
Beam SBBS est un excellent système de messagerie cryptée décentralisé qui permet au portefeuille de créer de manière interactive des transactions MW. Il est cependant limité par conception à ne conserver le message que pendant 12 heures, après quoi le message expirera et n’est plus disponible pour les destinataires. Beam Vault est un service centralisé mais sans confiance qui peut stocker des messages SBBS pendant de plus longues périodes. Il peut également être utilisé pour synchroniser un portefeuille Beam qui utilise la même graine sur plusieurs appareils, ce qui était auparavant problématique et donc découragé. Comme SBBS gagnera plus de fonctions avec l’ajout de la fonctionnalité DeFi, ce service sera encore plus utile en tant qu’option complémentaire et de sauvegarde pour le système SBBS.
Amélioration du carnet d’adresses
La fonction Carnet d’adresses n’est pas nouvelle. Elle est apparu dans toutes les versions de portefeuille depuis le tout début. Cependant, il était à peine utilisé car la plupart des transactions utilisaient des adresses SBBS ad hoc et leur écriture n’était donc pas pertinente. Dans quelques cas où des adresses permanentes ont été utilisées, elles sont généralement liées à des échanges ou à des pools. Cependant, avec l’ajout des paiements hors ligne et des actifs confidentiels, le carnet d’adresses prend de nouveaux rôles et doit être amélioré et mis à jour.
Support pour Trezor T
Nous prévoyons de déployer un micrologiciel personnalisé pour Trezor T qui prend en charge Beam avec l’intégration dans Beam Desktop Wallet. Le développement de Ledger X est plus difficile et toujours en cours.
Swaps avec BSV, BCH, Dash et plus
Plus de pièces seront ajoutées à notre support Atomic Swap, principalement des forks BTC. Ceux-ci comprendront BCH, DASH et BSV. Nous examinons également RVN et probablement quelques autres.
Améliorations de Beam Blockchain Explorer
Suite à l’introduction de nouvelles fonctionnalités, nous devons refléter leur état dans l’explorateur de blockchain et les API associées. Celles-ci devraient inclure des statistiques sur les swaps atomiques proposés et acceptés, l’état actuel du pool LelantusMW, y compris la durée de conservation estimée pour atteindre le maximum d’anonymat.
Interface utilisateur du portefeuille pour les actifs confidentiels
Les portefeuilles Beam UI devraient pouvoir effectuer des transactions en utilisant n’importe quel actif confidentiel existant, en plus des pièces Beam natives. Étant donné que les autorités de certification héritent de toutes les propriétés des pièces Beam, il est possible de mélanger de manière transparente différents types d’actifs au sein d’une même transaction. Le défi consiste à intégrer cette fonctionnalité dans l’interface utilisateur de Beam d’une manière qui n’aurait pas d’impact négatif sur sa convivialité, tout en étant capable de prendre en charge tous les cas d’utilisation pertinents pour les utilisateurs expérimentés.
Beam Web Wallet et Wallet Service Mainnet version
Nous avons récemment publié la version Testnet de Beam Web Wallet et de Wallet Service, qui est un composant backend centralisé mais sans confiance capable de relayer les messages SBBS et de gérer la couche de connectivité pour plusieurs processus de portefeuille. Les deux composants nécessitent encore beaucoup de travail pour être prêts pour la production, y compris des tests de sécurité et de stabilité approfondis, c’est pourquoi leur publication est plus susceptible d’avoir lieu vers la fin de la période 5.2.
Piste d’infrastructure
5.1 (juillet — septembre 2020)
GhostDAG
GhostDAG est un nouvel algorithme de consensus qui remplace la blockchain par un graphe acyclique dirigé par branchement, ce qui signifie qu’à tout moment, il peut y avoir entre une et k branches valides. Cela signifie que les blocs peuvent être créés plus rapidement, ce qui se traduit par un débit réseau plus élevé. Cela permet également une meilleure décentralisation des mineurs et une meilleure distribution des récompenses à mesure que davantage de blocs sont créés.
Chaînes latérales POC
Au fur et à mesure que nous avançons, il devient clair que toutes les fonctionnalités ne pourraient pas être prises en charge nativement sur le réseau principal tout en conservant sa stabilité et son intégrité. Cependant, nous ne voulons pas non plus cesser d’innover et amener Beam et ses protocoles sous-jacents à de nouveaux extrêmes. La manière de combiner ces deux désirs opposés consiste à introduire des chaînes latérales.
Beam Side Chain, est essentiellement une autre chaîne Beam indépendante avec quelques différences et modifications clés qui la rendraient incompatible avec la chaîne principale. De telles modifications peuvent inclure par exemple différents mécanismes de consensus tels que GhostDAG ou Proof of Stake, ou encore l’ajout de Smart Contracts. Bien qu’il s’agisse d’une blockchain séparée, les chaînes latérales sont conçues pour maintenir à tout moment deux piquets latéraux à Beam, ce qui permet de déplacer de manière fiable la valeur de Beam Mainnet à la chaîne latérale et inversement.
En fonction de leur objectif, les chaînes latérales peuvent être créées vides ou utiliser leur propre token natif. Dans le premier cas, il utilise uniquement le token déplacé de la chaîne principale Beam. Au lieu de cela, s’il utilise un token natif, il peut être co-miné ou émis indépendamment à l’aide d’un algorithme d’exploration de données distinct. Dans tous les cas, les nouveaux actifs créés directement sur la chaîne latérale ne pourraient jamais être déplacés vers Beam et interférer avec sa cohérence. Ils peuvent cependant être échangés contre Beam ou tout autre actif confidentiel sur le réseau Beam à l’aide des swaps atomiques.
Fierce Fermion 6.x Era
La prochaine version majeure viendra avec un fork qui ne changera pas l’algorithme PoW mais introduira plutôt des fonctionnalités cruciales de rupture de consensus pour prendre en charge l’infrastructure DeFi confidentielle.
Sujets supplémentaires
Voici une liste de sujets qui ont été soulevés mais non classés par ordre de priorité (en anglais).
Portefeuilles multisig nécessitant plusieurs signatures pour signer la transaction
Audit des portefeuilles Système d’audit qui peut surveiller plusieurs portefeuilles
SBBS sur pissenlit Ajouter le protocole Dandelion aux messages SBBS