Introduction du Fat Contract

Quelles sont vos attentes concernant les Smart Contracts ?

Ma réponse serait :

Fournir des fonctionnalités riches tels que des programmes normaux avec de meilleures performances et une plus grande puissance de calcul grâce à la simultanéité de multiples nœuds informatiques

Les smart contracts introduits par la blockchain Ethereum sont vraiment une innovation pour étendre les capacités de la blockchain. Dans un premier temps, toutes les règles sont définies et appliquées avec un code immuable et des transactions irréversibles. En conséquence, nous avons vu sa large adoption dans la finance décentralisée, où la confiance est très importante. Malgré le succès dans les cas financiers où la confiance est requise, du point de vue des développeurs, les plates-formes de contrats intelligents actuelles sont fermées : vous ne pouvez pas facilement accéder aux données et aux services qui en découlent. Un tel problème nécessite même de créer des blockchains Oracle ad-hoc pour les résoudre ! Sans parler des platitudes pour améliorer les performances des blockchains existantes.

Phala s’engage à fournir un réseau informatique décentralisé universel qui peut être librement combiné avec des smart contracts décentralisés, des protocoles de stockage et des services d’indexation de données. Ce que nous avons obtenu, c’est un cloud sans tiers de confiance de plus de 20 000 Workers . Ces nœuds informatiques sont organisés dans un cadre qui permet le découplage de l’exécution et du consensus : contrairement aux plateformes existantes où tous les contrats sont exécutés par un seul mineur pendant le processus de production de blocs (avec d’autres mineurs faisant une exécution dupliquée pour la validation), Phala en réalise l’exécution fidèle dans chaque travailleur sans duplication (ou seulement avec un faible ratio), ainsi sa puissance augmente linéairement avec le nombre de travailleurs. Nous pensons que c’est la condition préalable à un cloud informatique décentralisé qui aura le pouvoir de transporter le monde du Web3.

Phala était célèbre en tant que blockchain confidentielle, combinant TEE et blockchain, et cela peut facilement occulter la valeur réelle de notre conception aux yeux des gens : déplacer le calcul hors chaîne supprime les limitations du smart contract actuel, conduisant au puissant Fat Contrat avec des fonctionnalités riches :

  • Supporte les tâches gourmandes en calculs. Pour la première fois, même un seul contrat peut pleinement utiliser la puissance de calcul d’un Worker, inutile de s’inquiéter de bloquer l’entièreté de la blockchain. Par exemple, les exigences pour le rendu d’image/vidéo sont renforcées par la popularité du NFT et du Metaverse, tandis que les travaux de rendu sont couteux et gourmands en ressources processeur. En tirant parti du projet Gramine, nous avons terminé la preuve de concept pour exécuter le moteur de rendu open source non modifié Blender dans nos Workers. Avec la programmation simultanée, il est possible de combiner la puissance de plusieurs workers et de servir les lourdes tâches ;
  • Servir du calcul en temps réel à faible latence. Le temps de réponse pour le Metaverse et l’interaction du jeu ne doit pas dépasser une seconde. Cependant, les contrats intelligents blockchain traditionnels ne peuvent pas répondre aux exigences des services à faible latence (car ils sont exécutés à intervalle de blocs). Le Fat Contract peut obtenir des réponses en lecture et en écriture de l’ordre de la milliseconde, ce qui en fait un choix parfait pour déployer des services de Metaverse et de jeu ;
  • Accéder aux services Internet. Les Workers off-chain sécurisés peuvent déléguer en toute sécurité des demandes asynchrones complexes pour le Fat Contract. Dans notre hackathon, nous avons présenté un bot de démonstration du prix du BTC. Vous pouvez envoyer une requête HTTP pour interroger le prix BTC à partir du service Web existant, puis le signaler à votre compte Telegram via l’API HTTP correspondante. Toutes ces opérations sont réalisées à l’intérieur de 100 LoC dans le contrat Fat.

Plus important, ces puissants Fat Contracts sont exécutés à l’intérieur de nos Workers sécurisés, qui ne peuvent pas accéder aux données des clients ou manipuler l’exécution pour fournir de faux résultats, la confidentialité et l’irréversibilité bien-aimées sont toujours promises lors de l’exécution du contrat. Pour l’instant, nous comptons sur l’environnement d’exécution de confiance (TEE), en particulier Intel SGX, en tant que Worker sécurisés, mais cette conception peut prendre en charge d’autres travailleurs comme AMD SEV, ou même des solutions basées sur MPC ou ZKP.

Le scénario d’application de Fat Contract

Retour à notre question de départ, nous essayons de sortir du stéréotype du smart contract actuel et de repenser à quoi le contrat devrait ressembler dans un vrai cloud informatique. C’est la motivation avec laquelle nous concevons et implémentons le Fat Contract : il devrait d’abord se comporter comme un programme normal plutôt qu’un smart contract, puis nous lui donnerons de la force avec la nature décentralisée et sans tiers de confiance de la blockchain. Nous l’appelons “FAT” pour montrer les riches fonctionnalités qu’il peut fournir par rapport aux smart contracts existants. Pour clarifier encore :

Le Fat Contract est une sorte de programme décentralisé à la place d’un smart contract, qui prend en charge les lourdes tâches de calcul en temps réel et a accès à tous les services même s’ils sont en dehors de la blockchain.

Notre foi dans le Fat Contract vient aussi des retours de notre communauté. Lors de notre dernier hackathon, nous avons vu des créations de développeurs talentueux avec le puissant Fat Contract. Pour l’instant, il y a deux façons de jouer avec Fat Contract :

  • Vous pouvez maintenant revisiter notre tutoriel de hackathon et le suivre pour ‘forker’ notre codebase et apporter les modifications. Cela vous donnera une expérience immédiate des capacités de Fat Contract ;
  • Notre prise en charge du contrat Parity’s Ink! est en chemin. Vous pouvez développer votre contrat avec le langage de programmation sécurisé et efficace Rust, et profiter de l’amélioration des performances de nos Workers off-chain sans avoir besoin de ‘forker’ notre grand codebase.

Tout comme le Fat Contract, Phala voulait être ouvert et continuer à s’améliorer. Nous accueillons les commentaires des développeurs du monde entier pour ajouter des fonctionnalités plus inspirantes au Fat Contract. Pourquoi ne pas rejoindre notre communauté maintenant et vous salir les mains avec le Fat Contract ?