Bien que le problème de l’extensibilité des blockchains soit bien compris et traité par de nombreuses équipes, le problème de l'interopérabilité ainsi que son importance pour l'avenir de la cryptographie est souvent négligé. Sans protocoles en place pour permettre la communication automatisée entre blockchain, tous les projets décentralisés se retrouveront en silos et l’écosystème global sera fracturé.La réalité aujourd'hui est que nous vivons dans un monde multi-chaînes. Il est stupide (comme le dit si bien Vitalik Buterin dans son livre blanc de 2016 sur l'interopérabilité des chaînes) de croire qu'il y aura «une chaîne unique pour tous les gouverner».
À moins que nous ne prenions vraiment au sérieux la création de normes et d'outils d'ingénierie facilitant l'interconnexion. et à moins d'inciter les entrepreneurs à concrétiser cela - notre système fracturé continuera à entraver le développement et l'adoption massive d'applications décentralisées. Une surabondance de jetons utilitaires sera exaspérante pour les utilisateurs et les développeurs.
Interopérabilité
Imaginez si les villes, par exemple, avaient leurs propres devises, systèmes de transport et dimensions de voie. Parce que les normes sont construites par le biais de points communs, si chaque projet construit et promeut ses propres protocoles de manière isolée, il deviendra difficile - voire impossible - de se réunir pour créer des normes.Pour continuer l’analogie, il est important que les pionniers créent de nouvelles villes, mais sans monnaies communes et sans infrastructure connectée pour soutenir une économie (personnes, biens, commerce, etc.), ces villes ont beaucoup moins de chances de s’épanouir.Heureusement, le réseau Cosmos nous offre une solution élégante non seulement pour la construction de nouvelles «villes» pouvant intégrer un ensemble commun de jetons utilitaires / monétaires, mais aussi et surtout pour la création d’instruments pour la construction de voies, de trains, de protocoles et de gares ferroviaires entre villes (même de / vers des villes de différents «pays» avec une infrastructure radicalement différente!).Un bref résumé de l'architecture de Cosmos
Pour aider à expliquer le fonctionnement de Cosmos, nous devons d’abord commencer par Tendermint, un logiciel de réplication de machine d’état «tolérant aux pannes byzantines (BFT)» (c’est-à-dire un logiciel blockchain) qui, comme tout logiciel blockchain, est responsable du traitement de trois composants importants: le consensus ( nœuds s’accordant sur l’état), la mise en réseau (propagation de l’état entre les nœuds) et une couche applicative (état de mise à jour basé sur les transactions).Il est important de noter que la couche d’application Tendermint peut être séparée des composants de consensus et de réseau «essentiels» via une interface ABCI (Application-Blockchain Interface). Cela permet aux logiciels écrits dans n’importe quel langage (oui, même en JavaScript) de gérer les transitions d’état et d’exécuter une blockchain totalement unique.
Et, pour les lier ensemble à des fins d’interopérabilité, le flux d’informations et le transfert de jetons entre blockchain (c’est-à-dire davantage que des échanges interatomiques) peuvent se produire via le protocole de communication inter-blockchain (IBC) de Cosmos:
Le Hub Cosmos
La première blockchain qui à être créée sur le réseau Cosmos s'appelle Cosmos Hub. Il tire parti de Tendermint et est écrit avec le kit de développement Cosmos-SDK (utilisant le langage Go), que tout le monde pourra utiliser pour ses propres blockchain afin d’inclure «rapidement» des modules (similaires à n’importe quel gestionnaire de packages), tels que le staking, la gouvernance , les comptes, la génération de jetons, etc…Le hub Cosmos est conçu spécifiquement pour permettre à d'autres blockchain, appelées «zones», d'interopérer (par exemple, passer des jetons) à travers ce hub initial.
Tendermint étant gratuit et de source ouverte, il est facile de créer des blockchains privées et de les utiliser de manière stratégique pour communiquer avec les blockchains publiques en fonction des besoins. (Par exemple, imaginez si un consortium industriel souhaite lancer une activité privée mais décide finalement devenir public et interopérer avec d'autres blockchain. Cosmos serait un choix de conception solide dans ce cas précis.)
Ethermint
Pour plus approfondir, vous pouvez utiliser un logiciel d'application d’une blockchain existante (tel que la machine virtuelle Ethereum) pour exécuter une blockchain unique sur le réseau Cosmos. En effet, le projet Ethermint fait exactement cela. Ethermint permet aux équipes ayant creer des contrats intelligents sur Ethereum de transférer facilement leur code afin de tirer parti de la vitesse et de l’évolutivité de Tendermint au sein du réseau Cosmos.
Peg Zones (zones de rattachement)
Un autre concept important à prendre en compte dans l’écosystème Cosmos est la peg zone. Ces blockchains uniques permettent l’interopérabilité (par exemple, l’échange de jetons) avec une chaîne externe disposant d’un protocol de consensus différent, tel que la preuve de travail (Proof of Work) Ethereum (par rapport au BFT - Byzantine Fault Tolerance - de Tendermint).
Par exemple, la zone de rattachement (Peg zone) spécifique entre Ethereum et Cosmos s’appelle Peggy.
Unir l'écosystème cryptographique dans un Internet de Blockchains
Enfin, les blockchains du réseau Cosmos n’ont même pas besoin de lancer Tendermint. Nous pouvons imaginer que IBC soit directement pris en charge sur Ethereum dans le future, et interopère avec n’importe quelle autre blockchain de l’écosystème.
Comme vous pouvez le constater, Cosmos est bien plus qu’un simple logiciel blockchain, c’est un ensemble de protocoles et d’outils logiciels conçus pour intégrer un univers de blockchains et permettre aux développeurs de créer facilement leurs propres blockchains avec des paramètres de conception personnalisés.
Cosmos s'adresse aux développeurs
Comme Tendermint sépare le code de consensus et le code de réseau du code de l'application, qui peut être écrit dans n'importe quel langage et interface via ABCI, tout est considérablement simplifiée pour les développeurs. Le kit de développement Cosmos-SDK (et les futurs kits de développement logiciel de l'écosystème qui exploite IBC / ABCI) est conçu pour être modulaire et composable. Cela signifie, par exemple, que si vous souhaitez créer une blockchain qui gère des conditions propres à votre secteur d'activité ou à votre analyse de rentabilisation, vous n'avez pas besoin de réinventer la roue. Vous pouvez simplement extraire des plug-ins pour le staking, la gouvernance, les comptes, la génération de jetons, etc.… en fonction de vos besoins, tout comme un gestionnaire de packages commun pour un langage ou une structure de logiciel.En fait, l’un des principes fondamentaux de l’écosystème Cosmos est de permettre l’interopérabilité entre un ensemble hétérogène de blockchain autonomes qui peuvent avoir des protocoles radicalement différents pour la mise en réseau, la gestion par l’état et le consensus. Tant que la finalité du consensus de bloc est suffisamment rapide pour jouer à merveille avec IBC, deux blockchains diamétralement opposées peuvent s'entendre pour communiquer et tirer bénéfice de leur appartenance au même écosystème.De plus, Tendermint et ABCI permettent des transitions d’état automatisées contrairement à la plupart des blockchains qui exigent que l’état soit toujours mis à jour manuellement par des transactions utilisateur.
Cosmos peut évoluer horizontalement et verticalement pour prendre en charge les dApps de niveau entreprise
La mise à l'échelle est sans doute l'un des problèmes les plus importants de la communauté des blockchains. Les deux concepts principaux universellement proposés pour accélérer le traitement des transactions et le débit consistent à:
- Diminuer le nombre de nœuds producteurs de blocs (par exemple dans un protocole de consensus basé sur BFT tel que Tendermint)
- "fragmenter" une blockchain. C’est à dire traiter les demandes en parallèle.Cosmos exploite ces deux options. Tendermint et IBC permettent aux blockchains dans Cosmos de s’étendre indéfiniment. Les zones construites sur Tendermint peuvent gérer elles-mêmes des milliers de transactions par seconde. Et même si la vitesse de transaction ralentit sur une zone parce que trop de personnes l'utilise, une autre zone identique peut être ajoutée au concentrateur et la moitié des utilisateurs y étant dirigés, doublant ainsi la capacité de transaction. Pendant ce temps, le hub Cosmos veille à ce que les zones qui lui sont connectées restent synchronisées. "
Sécurité partagée
Bien qu'il soit possible de créer votre propre hub et vos zones connectées (ou une zone connectée à un hub existant), cela peut être coûteux en termes de temps et d'argent. Une autre option de l’écosystème de Cosmos consiste toutefois à créer votre propre logiciel de blockchain tout en tirant parti d’un ensemble de validateurs d’une autre zone ou d’un autre hub. Cela signifie que, pour un prix acceptable, un seul groupe de validateurs de confiance pourrait produire des blocs pour plusieurs blockchain simultanément.Ainsi, si Cosmos est peut-être l’endroit idéal pour le développement rapide de blockchain spécifiques à une application, il accueillera également les développeurs de dApp qui recherchent une zone / un hub correspondant à leurs besoins en applications. Tout comme les développeurs qui utilisent la machine virtuelle Ethereum pour écrire des applications. En tirant parti du même ensemble de mineurs, il sera peut-être possible, dans l'avenir, de créer des centaines ou des milliers de zones sur lesquelles construire des dApps.
Jetons utilitaires partagés
Enfin, l’une des caractéristiques les plus convaincantes de Cosmos est la possibilité de partager des jetons entre des hubs et des zones, y compris des jetons importées de blockchain externes. Cela permet aux développeurs dApp de créer une meilleure expérience pour les utilisateurs,particulièrement si ces utilisateurs sont déjà habitués à stocker et à gérer un jeton particulier.La difficulté de déplacer des jetons ERC20, par exemple (ce qui oblige également ETH à payer pour le gaz nécessaire à la réalisation d'une transaction on-chain), est probablement l'une des principales raisons pour lesquelles les applications dApp ont mis trop de temps à gagner du terrain. Ce qu'il faut, c'est pouvoir faire disparaître la «blockchain» pour les utilisateurs finaux et créer des expériences simples de navigation, de commentaire, de transaction, de connexion, d'accès à des données personnelles, etc. accessibles à un large public. L’architecture d’interopérabilité proposée par Cosmos permettra enfin la construction de cet écosystème connecté de dApps.
Reference
https://blog.cosmos.network/why-application-specific-blockchains-make-sense-32f2073bfb37