Qubic : Des smart contracts pour IOTA

Qubic et les smart Contract

Après un très long mois d’attentedes détails approfondis quant à la nature du projet Qubic ont enfin été dévoilés par les développeurs. Ce protocole d’extension de IOTA permettra notamment l’implémentation des contrats intelligents (ou smart contracts), élément crucial pour toute crypto de nouvelle génération qui se respecte. Dans cet article, nous passons en revue les différentes caractéristiques principales de Qubic ; une section entière sera prochainement ajoutée au site pour des détails plus poussés. 

 

C’est quoi Qubic ? 

Tout d’abord, le nom Qubic provient de l’acronyme anglais QBC qui signifie Quorum-Based Computations, ce que l’on peut traduire en français par « calculs basés sur un quorum ». Ce sont des calculs qui sont réalisés en parallèle par un ensemble de machines devant être d’accord sur la solution finale. Ce système de quorum est vraiment le cœur du protocole : la réponse à un problème ne sera considérée valide que si au moins 2/3 des machines qui ont réalisé le calcul sont d’accord entre elles.  

Qubic est un protocole en développement qui vise à doter IOTA de contrats intelligents, de machines oracles, de la possibilité d’effectuer des calculs sous-traités et de plein d’autres choses. Qubic est en fait une partie de la vision finale des développeurs, et IOTA n’a été créé que pour permettre d’atteindre cet idéal. Contrairement à ce que certains prétendaient, ce n’est donc pas un nouveau token et il n’y aura pas d’ICO ou d’airdrop (attention aux arnaques potentielles qui vous feraient croire le contraire).  

Le système Qubic permettra d’offrir la possibilité de réaliser des calculs en parallèle sur le Tangle, grâce au cloud computing ou fog- computing. Cette technologie devrait donc permettre de louer les capacités de vos objets connectés contre des iotas afin de réaliser des calculs pour d’autres machines ou personnes. C’est en quelque sorte la création d’un super-ordinateur à l’échelle mondiale. 

En parallèle du protocole Qubic (avec un Q majuscule), on peut définir les qubics (avec un q minuscule). Ces qubics sont des packages de calculs s’effectuant en suivant le protocole Qubic. Pour faire simple, c’est le nom donné aux contrats intelligents de IOTA. 

 

Les machines oracles 

Dans les systèmes distribués, les oracles  sont des services qui permettent de connecter le registre au monde extérieur afin de lui faire parvenir des informations utiles. C’est ce qui permet de récupérer des données de trafic, le score d’un match de foot ou la valeur d’une action en bourse par exemple, et de les transmettre à un contrat intelligent  (qubic) qui en aurait besoin pour s’exécuter. La force du protocole Qubic – et du système de quorum sur lequel il est basé –  est qu’on peut parfaitement croire les résultats retournés par ces différents oracles. Ainsi, au lieu de simplement interroger un seul oracle, il sera possible de faire en sorte que le qubic interroge une assemblée d’oracles pour un même problème. Si au moins deux tiers de cette assemblée est d’accord sur la réponse à renvoyer au qubic, alors cette réponse sera considérée comme valable. Et dans le cas où les oracles n’atteindraient pas cette majorité des 2/3, le contrat ne s’exécutera pas. Cela permet de renforcer la sécurité du système, vu qu’il faudrait arriver à pirater plusieurs oracles pour altérer le fonctionnement du qubic qui y fait appel. 

 

Les calculs en sous-traitance 

Explication Qubic

Depuis toujours, les ordinateurs se sont retrouvés limités par la puissance de calcul à leur disposition, les empêchant bien souvent d’effectuer des tâches simplement à cause de ce manque de ressources.  De par leur taille réduire, les objets connectés sont très souvent dans ce cas de figure. Ils manquent de puissance de calcul, de mémoire, d’énergie disponible et bien souvent des trois en même temps. 

Le protocole Qubic permet précisément de sous-traiter les calculs trop intensifs à d’autres appareils, ce qui permettra aux objets connectés de réaliser malgré tout des tâches complexes. Ce système est intéressant pour les deux participants, qu’ils soient demandeurs de calcul ou simple utilisateurs d’objets connectés. Dans le cas d’un demandeur, il pourra alléger la charge de son appareil en transmettant une tâche à faire à d’autres machines et avoir 100% confiance au résultat retourné grâce au système de quorum décentralisé de Qubic. Dans le cas d’un utilisateur ordinaire, il pourra faire en sorte que ses appareils cherchent des tâches à effectuer pour d’autres quand ils ne sont pas utilisés, ce qui permettra d’être rémunéré pour le service rendu. 

 

Les contrats intelligents 

Les contrats intelligents sont des sortes de codes informatiques qui s’exécutent de manière autonome. Ils permettent donc de se passer complètement de tierces parties et on l’avantage d’être publics et facilement vérifiable par n’importe qui. Ce type de contrat pourrait donc supplanter à l’avenir le rôle des notaires, banquiers et tout autre tiers de confiance nécessaire à la réalisation de transactions sécurisées. 

Jusqu’à présent plusieurs autres cryptos supportent les contrats intelligents, Ethereum est sans doute l’exemple le plus connu. Le souci des contrats de ces autres cryptos est que leur exécution requiert systématiquement des frais à payer, et qu’ils ne bénéficient pas d’un système de quorum à proprement parler. Pour qu’un contrat s’exécute avec Ethereum, il faut donc d’abord dépenser de l’argent et tabler sur le fait qu’absolument tous les mineurs du réseau soient d’accord sur le résultat, sans quoi le contrat ne sera pas exécuté. Il faut également espérer que l’oracle qu’on utilise éventuellement ne soit pas compromis, sinon la réponse que le contrat fournira pourrait être catastrophique.  Dans le cas de IOTA, les contrats pourront s’exécuter sans frais sous certaines conditions (comme toute autre transaction ayant lieu sur le Tangle), et le système de quorum garantira la validité des résultats (à la fois en garantissant que la réponse venant des oracles est bien valide, mais aussi en garantissant l’exécution correcte du contrat si un faible nombre d’oracles retourne une réponse invalide). Il sera toutefois très commun de devoir payer les serveurs qui se chargeront du traitement des qubics, car a priori peu de ces Q-Nodes accepteront de travailler gratuitement. Les transactions générées par et pour le qubic resteront elles bien gratuites.

 

 

Des utilisations possibles pour Qubic 

Utilisations Qubic

Qubic n’en est qu’à ses premiers pas, la plupart des utilisations n’ont pas encore été imaginées à l’heure actuelle. Mais on peut déjà se faire une petite idée quant aux réalisations  possibles uniquement sur base des trois caractéristiques principales citées ci-dessus : 

  • Un qubic pourrait publier sur le Tangle les taux d’échanges pour IOTA récupérés sur les différentes plateformes d’échanges classique, ce qui déclencherait à son tour d’autre qubics qui attendaient cette donnée (pour vendre ou acheter d’autres iotas, par exemple). 
  • Un qubic pourrait utiliser les données de prix en temps réel pour sous-traiter des calculs de probabilités et déterminer les évolutions probables du prix à l’avenir. 
  • Les mineurs qui travaillent actuellement pour les blockchains pourraient utiliser leur puissance de calcul pour IOTA grâce à qubic, ce qui leur permettrait de continuer à rentabiliser leur investissement dans l’éventualité où IOTA supplanterait les blockchain à l’avenir. 
  • Les scientifiques pourraient utiliser des qubics pour accéder à cette puissance de calcul afin de résoudre des problèmes trop complexes pour leurs systèmes (trouver de nouvelles molécules, calculer des nombres premiers, réaliser des démonstrations mathématiques, calculer des optimums, créer une intelligence artificielle globalisée,…) 
  • Des sites de paris pourraient utiliser des qubics et des oracles pour récupérer des résultats sportifs et automatiser les paiements, les compagnies d’assurances pourraient faire de même pour rembourser des vols annulés par exemple. 
  • Les sociétés telles que Bosch, VW et autres pourraient utiliser des qubics pour récolter les données de navigation de plusieurs voitures et en déduire le trafic sur votre itinéraire. 

Ces quelques exemples, et les millions d’autres à venir une fois le protocole disponible, devraient garantir un volume de transactions faramineux sur le Tangle. Et comme tout le monde le sait, avec IOTA plus il y a de transactions et plus le système s’accélère. Il est d’ailleurs fort probable qu’une fois Qubic parfaitement en marche, le volume soit enfin suffisant pour retirer le Coordinateur et libérer ainsi les pleines capacités du Tangle. 

 

En conclusion 

Qubic est une réelle révolution dans l’univers des crypto, c’est la première plateforme qui propose un système de quorum et qui ne nécessite pas obligatoirement de frais pour mener à bien l’exécution des contrats. Bien que le projet soit toujours en développement, les promesses faites ici laissent présager d’un avenir radieux pour IOTA et pour une réelle adoption du système à l’échelle globale.  

Une section du site dédiée au protocole Qubic sera mise en place prochainement. Elle reprendra les détails plus techniques sur le fonctionnement des oracles et du protocole que l’on peut retrouver sur la version anglaise du site officiel. 

Cet article a 2 commentaires

  1. Alexis Gaucher le 14/06/2018 à 14:12 Répondre

    Super article, ça résume très bien et c’est très clair ! Bravo.
    Je voudrais ajouter un petit commentaire sur les différences entre les smart contracts ethereum et les Qubics Iota:
    – les smart contracts Ethereum sont en fait des comptes (comme n’importe quel compte qui contient des Ethers) mais sur lesquels on vient ajouter du code pour automatiser certaines opérations. Je trouve du coup que les noms « Smart Contracts » et « Dapps » sont assez trompeurs car en réalité, structurellement, ce ne sont ni des contrats ni des applications. On pousse le système un peu aux limites pour réussir à faire des applications mais ça semble pas optimisé pour ça.
    – la fondation Iota a fait le choix de créer le système Qbic comme une surcouche qui s’exécute par dessus le Tangle. Je trouve ça plus logique de séparer les deux couches: on a ainsi + de souplesse et on peut imaginer + d’applications à terme (calcul distribué, stockage, annuaire quelconque, … on pourrait imaginer bcp de choses sur ce principe).
    C’est mon impression, mais n’hésitez pas à donner votre opinion là dessus 🙂

    • Thomas Lambert le 16/06/2018 à 17:16 Répondre

      Merci pour le compliment 😉
      Tout à fait d’accord avec ton analyse. Je suis aussi un fervent défenseur des approches modulaires, ça permet bien plus de choses et ça évite l’encombrement du système par des fonctions qui ne sont utilisées que très rarement par le commun des opérateurs.

Laisser un commentaire