Cartesi est un projet de deuxième couche (Couche 2) qui cherche à offrir des fonctions avancées pour la création de dApp via un système informatique distribué vérifiable, soutenu par la technologie blockchain et doté d'énormes capacités d'évolutivité et de sécurité.
Ele monde de dApps elle se transforme rapidement, et de plus en plus de projets s'y intéressent. L'un d'eux est Cartesi, un projet de deuxième couche (Couche 2) qui vise à offrir des capacités uniques pour le déploiement de dApps avancées sous le concept d'informatique distribuée vérifiable, un concept révolutionnaire qui peut changer radicalement la façon dont nous interagissons et comment les dApps fonctionnent. dans les écosystèmes blockchain.
Qu'est-ce que Cartesi ?
Cartesi est une plateforme spécialisée dans le déploiement de dApps via une couche 2. L'intention de ce projet est de permettre aux dApps d'être exécutés en chaîne et hors chaîne, avec les mêmes résultats grâce au fait que leurs opérations peuvent être complètement vérifiées une fois qu'elles atteignent le réseau.
Pour y parvenir, Cartesi utilise un système hybride qui permet le fonctionnement des nœuds au niveau on-chain et off-chain. Le fonctionnement en chaîne est identique à ce que l'on peut voir actuellement sur des plateformes telles que Ethereum (ETH) o Gauche (GAUCHE), où le dApps est dans un ou plusieurs contrats intelligents répartis dans plusieurs adresses du réseau, et auxquels nous pouvons accéder pour interagir. L'exécution de ce type de dApps est possible grâce aux Cartesi Machines, qui ne sont rien d'autre que des "machines reproductibles" qui se chargent d'exécuter le code des dApps et offrent en toute circonstance un résultat identique qui est ensuite vérifié par les acteurs du réseau et stocké dans la blockchain.
Toutefois, Les machines Cartesi permettent que ces dApps puissent également être exécutées hors chaîne, puis lorsqu'elles ont une connexion, envoient ces données au réseau pour vérification. De cette façon, il est possible d'utiliser les dApps de manière hors chaîne, d'effectuer les opérations que nous voulons et, au final, d'envoyer toutes ces données pour que le réseau les vérifie et les inclue dans l'historique de la blockchain dans un manière sûre, étant donné que si un défaut est détecté, il peut être corrigé sans problème.
Le côté positif de cette opération offerte par Cartesi est que ses "machines reproductibles" peuvent utiliser toute la puissance de traitement disponible des nœuds et des appareils qui sont connectés au réseau. Autrement dit, nous pouvons utiliser le pouvoir Processeur, GPU et d'autres ressources de calcul dont nous disposons, rendant l'exécution des contrats intelligents extrêmement rapide.
Histoire de Cartesi
Cartesi (CTSI) est un projet qui a débuté en 2018 grâce à Erick de Mora, Augusto Teixeira, Colin Steil et Diego Nehab. Parmi ces quatre personnages, Augusto Teixeira est une figure bien connue dans le monde de la crypto, car il a été l'un des créateurs d'IOTA. L'idée initiale derrière le projet était de tirer le meilleur parti de la capacité de l'IOTA, de son intégration matérielle très élevée et de l'amener à l'extrême applicable aux nouveaux domaines de la technologie blockchain tels que l'IA sur blockchain ou le système informatique distribué sans confiance. Ce fut la graine de ce qui deviendra plus tard Cartesi.
L'idée a attiré l'attention de deux grandes entreprises : Microsoft y ETH Zurich, qui avait déjà une expérience dans le domaine et qui a vu une opportunité unique d'explorer un nouveau domaine technologique. Le résultat de tous ces efforts a été de créer un système de blockchain reproductible (où Microsoft a apporté ses connaissances) et qui utilise une architecture libre et sur laquelle ils pourraient soutenir son développement (où l'ETH Zurich est un grand industriel connu pour son soutien à RISC-V et la création d'autres initiatives libres d'architectures de type RISC).
C'est ainsi que le projet a évolué vers une infrastructure à deux niveaux dans l'environnement Linux entièrement polyvalent. Ceci dans le but de surmonter les principaux problèmes d'évolutivité et d'infrastructure pour les applications exécutées sur la blockchain.
Comment fonctionne Cartesi ?
Cartesi (CTSI) est un projet blockchain qui permet de créer des applications décentralisées hautement évolutives. Pour y parvenir, Cartesi crée une structure d'exploitation hybride dans laquelle :
- Il existe une blockchain (deuxième couche) où les données sur les transactions et les contrats intelligents déployés sur le réseau sont partagées et stockées. Ce réseau fonctionne grâce au protocole de consensus de Preuve de participation (PoS) et qui est alimenté par le jeton CTSI natif du type ERC-20 déployé sur Ethereum.
- Il existe une machine reproductible (Cartesi Machine), capable de fonctionner hors chaîne et sur lequel les contrats intelligents sont exécutés séparément du reste des nœuds du réseau, allégeant la charge de consensus, ce qui améliore l'évolutivité et la vitesse de réponse générale du réseau.
Tout cela en étant construit à l'aide de technologies gratuites, sécurisées, privées, portables qui garantissent une décentralisation à tout moment. De cette façon, Cartesi peut nous offrir des dApps puissantes et flexibles avec des capacités jamais vues jusqu'à présent. Mais comment tout cela fonctionne-t-il ?
Qu'est-ce qu'une machine jouable dans Cartesi ?
On peut assimiler une machine Cartesi reproductible à un ensemble de logiciels capables de mimer parfaitement le fonctionnement d'une machine de calcul, et qui remplit trois conditions :
- C'est que ladite machine ou ensemble de logiciels peut être construit de toutes pièces par deux ou plusieurs individus, dans des conditions et des emplacements différents, sans communication entre eux, et obtenir de ce fait le même ensemble de logiciels et la machine qui lui est liée.
- Si nous exécutons le même ensemble d'instructions sur toutes ces machines construites, quelles que soient les conditions, le résultat final sera le même.
- Le résultat final peut être vérifiable à chacune de ses étapes, et il aura à la fois des cachets temporaires et cryptographiques qui aideront à prouver sa validité sur toute autre machine reproductible de ce type.
Les trois conditions peuvent être difficiles à comprendre, alors regardons-les avec l'exemple suivant :
Supposons que nous ayons les instructions pour construire une calculatrice. Ces instructions nous indiquent comment le logiciel et le matériel de la calculatrice doivent fonctionner à tout moment. Motivés par la curiosité, Carlos, Ana et Miguel décident chacun de construire une calculatrice dans leurs maisons respectives en utilisant ces instructions. Résultat? Ils les ont construits, les calculatrices sont identiques au niveau logiciel et matériel, et toute opération qu'ils effectuent dessus a le même résultat quelle que soit la calculatrice sur laquelle elle est effectuée. Ce sont toutes des machines reproductibles.
Importance des machines reproductibles
Certes, l'exemple est simple, mais il vous donne une idée de ce qu'est une machine reproductible et de son utilité. En fait, les humains ont toujours recherché des modèles reproductibles pour différentes choses. Par exemple, nous essayons d'abord de faire des mesures de temps à l'aide du Soleil, puis nous passons à des dispositifs mécaniques, électromécaniques et même nucléaires. De tous, curieusement le plus reproductible est le nucléaire, car la nature de l'atome permet de créer une machine qui indique la valeur d'une seconde avec une précision inimaginable.
La même chose se produit en informatique. Des programmes aussi courants que Firefox ou Chrome respectent le paradigme de la "construction reproductible" qui permet Ces programmes peuvent être construits à travers une série d'instructions et, en fin de compte, la construction peut être exacte à n'importe quel autre qui est fait du même programme et de la même version.
Tout cela est très utile comme "mesure anti-triche" car, étant reproductible, nous pouvons facilement reconnaître si le programme, la machine ou le résultat a été modifié, ce qui nous aide à augmenter la sécurité à tout moment. Cartesi fait de même, génère des logiciels et des machines reproductibles, ce qui nous garantit que vous ne pouvez pas tricher, et unit cette fonctionnalité à toute la sécurité que la blockchain nous offre déjà, sans aucun doute, un pas de plus en faveur de la sécurité.
Qu'y a-t-il à l'intérieur de chaque machine Cartesi ?
Chaque Machine Cartesi est en fait une machine virtualisée utilisant l'architecture RISC-V. Cette machine virtuelle est écrite en C/C++, afin de fournir la vitesse la plus élevée possible et l'accès au matériel. De cette façon, un nœud Cartesi exécute une machine Cartesi en utilisant tout le potentiel que le matériel sur lequel cette machine fonctionne peut fournir.
Pour interagir avec la machine, Cartesi a conçu une interface gRPC (similaire à celle utilisée par Ethereum avec son RPC Web3) et qui permet le contrôle à distance de la machine Cartesi. Cette interface est notre passerelle pour interagir avec la machine et les contrats intelligents qui s'exécutent dessus.
Comme toute machine, la machine Cartesi dispose d'un processeur, d'une mémoire, d'un stockage et d'autres éléments qui fonctionnent via la virtualisation, et qui sont capables d'accéder directement au matériel s'il y est autorisé. Dans tous les cas, la machine virtualisée est contrôlée par un système d'exploitation Linux, qui se charge d'effectuer toutes les opérations demandées : du démarrage de la machine au chargement du contrat intelligent qui y est stocké.
Instruction des machines Cartesi
Or, on sait que les machines Cartesi exécutent le code que l'on leur propose, mais quel code exécutent-elles ? Eh bien, si dans Ethereum ils utilisent Solidity pour leurs contrats intelligents, dans Cartesi, vous pouvez utiliser n'importe quelle langue.
Les machines Cartesi ne sont pas limitées à un langage qu'elles peuvent utiliser comme bon leur semble, tant qu'il est supporté par le système. Cela est possible car chaque machine Cartesi est en fait une version reproductible d'un système d'exploitation Linux utilisant une architecture connue sous le nom de RISC-V.
L'utilisation de RISC-V est cohérente avec le fait de rendre les machines Cartesi très portables et de petite taille, et l'utilisation de Linux contribue à rendre la génération du système un logiciel libre et à développement rapide. En outre, le choix permet de générer des dApps à l'aide de langages tels que C / C ++, Python, Lua, Perl et même Vala. A cela vous pouvez joindre des frameworks bien connus tels que GTK, QT bien connus dans le monde Linux ou .NET Framework, développé par Microsoft. Et ce n'est qu'une partie des possibilités de ce système.
Enfin, Cartesi permet aux développeurs dApps d'utiliser tous les langages de programmation, outils, bibliothèques, logiciels et services qu'ils connaissent déjà et qui sont pris en charge par les architectures disponibles sur les machines Cartesi. De cette façon, en déplaçant la majeure partie de la logique complexe de leurs dApps vers des composants portables hors chaîne, les développeurs se libèrent des limitations et des particularités imposées par les blockchains. De cette façon, Cartesi permet aux développeurs de sélectionner le meilleur environnement d'exécution dans lequel héberger chaque partie de leurs DApps.
Avantages des machines Cartesi
Quels avantages tout cela nous apporte-t-il ? Eh bien, parmi eux, nous pouvons citer:
évolutivité
Les DApps exécutés à l'intérieur de Cartesi Machines peuvent traiter des quantités de données pratiquement illimitées et à un rythme plus rapide de plus de 4 ordres de grandeur. Cela est possible car Cartesi Machines fonctionne hors chaîne, sans la surcharge imposée par les mécanismes de consensus utilisés par les blockchains.
Dans un scénario typique, l'une des parties impliquées dans une dApp exécutera la machine Cartesi hors chaîne et rapportera ses résultats à la blockchain. Les différentes parties n'ont pas besoin de se faire confiance car la plate-forme Cartesi comprend un mécanisme de litige automatique pour leurs machines. Toutes les parties intéressées répètent le calcul hors de la chaîne et, si leurs résultats ne correspondent pas, elles entrent en litige. Le mécanisme garantit qu'une partie honnête l'emportera toujours sur toute partie malhonnête.
Pour activer ce mécanisme de litige, les machines Cartesi s'exécutent dans un virtualiseur spécial qui contient trois propriétés uniques :
- Les Machines Cartesi sont autonomes : elles fonctionnent isolées de toute influence extérieure sur le calcul ;
- Ils sont reproductibles : deux parties qui effectuent le même calcul obtiennent toujours exactement les mêmes résultats ;
- Ils sont transparents : ils exposent tout leur état à un contrôle externe.
Productivité
Grâce au fait que Cartesi est capable de "libéraliser" le développement de dApps à l'aide d'outils connus et bien établis, en plus d'accéder au plein potentiel du matériel sur lequel il s'exécute, il est possible d'améliorer la productivité tant au niveau du développement et l'utilisation desdites dApps. .
Cartesi a choisi l'architecture RISC-V car elle la considère comme une architecture mature, rapide et prometteuse. RISC-V est la première architecture de processeur qui n'est pas née dans le giron d'une entreprise privée, mais d'une université, UC Berkeley, et dont l'ISA (Instruction Set) est totalement gratuit. RISC-V est fortement soutenu par sa communauté et un groupe d'entreprises cherche à faire de cette architecture un adversaire de taille à ARM (l'architecture des smartphones et Mac) et X86 (celle des PC et portables).
Jeton CTSI Cartesi
Le token Cartesi (CTSI) est le token chargé de faire fonctionner le réseau sidechain qui unit tous les nœuds du réseau Cartesi. Ce réseau sidechain s'appelle Noether et est alimenté par un protocole de consensus de type Proof of Stake (PoS).
Parmi les fonctions du token on peut souligner :
- Il sert à récompenser les enjeux qui soutiennent le réseau avec leurs jetons.
- Les nœuds utilisent CTSI pour mesurer leur pouvoir de vote et ainsi choisir qui sera le validateur des transactions pour un bloc de leur historique.
- Il est utilisé pour le paiement des commissions au sein du réseau.
- Permet une utilisation dans les dApps sur le réseau Cartesi.
L'offre totale est limitée à 1.000.000.000 XNUMX XNUMX XNUMX CTSI. Sur ce total :
- 25% des jetons sont destinés au système de récompense.
- 57,33 % vont à l'équipe du réseau, aux conseillers et à la réserve de la fondation.
- En 2017, 2% de l'offre totale a été vendue dans une ICO pendant tout le mois d'août.
- Deux ans plus tard, dans un « Jeton de vente privée », 5 % de l'offre totale a été vendue. La même année, 200.000 0,67 USD ont été collectés dans un « Jeton de vente stratégique » avec XNUMX% de l'offre totale de jetons.
- Enfin, les 10% restants ont été alloués à une "Launchpad Sale" où 1.500.000 XNUMX XNUMX $ ont été récoltés.
Conclusions
Cartesi est un projet unique en son genre avec des capacités à concrétiser des concepts tels que l'IA et l'apprentissage automatique sur la blockchain, en créant des nuages informatiques autonomes, des métaverses et plus encore, de telle sorte que son exécution serait des centaines de fois plus rapide que de suivre le schéma de fonctionnement des blockchains actuellement.
Il a une construction complexe, mais avec une énorme projection démontrée dans des projets tels que Carti, rampant o Simracer. En tout cas, c'est une technologie qui doit encore évoluer et continuer à s'améliorer afin d'exploiter tout son potentiel.