Zilliqa Network (ZIL) : Qu’est-ce que c’est, comment ça fonctionne et comment en acheter ?

Zilliqa crypto logo

Tout le contenu Coin Academy pour Zilliqa (ZIL)

Introduction

Ces dernières années, beaucoup de réseaux de première couche ont émergé avec chacun ses spécificités. Néanmoins, le problème de la scalabilité persiste et empêche une adoption publique massive de ceux-ci, c’est pourquoi certains projets ont pris l’initiative d’innover technologiquement en implémentant le sharding, dans l’univers de la blockchain.

Le projet Zilliqa se présentera alors comme le premier réseau blockchain utilisant la technologie du sharding pour lui permettre de répondre à la forte demande présente sur le réseau et capable d’une évolutivité d’ordre mondial.

Zilliqa Network, qu’est-ce que c’est ?

Lancée en 2017, la blockchain Zilliqa a été créée afin d’offrir un réseau public sans limite d’évolutivité et de débit de transaction pouvant répondre à une demande mondiale.

Les personnes à l’origine du projet ont rapidement constaté que l’incapacité des blockchains disponibles à gérer des transactions à grande échelle est un frein pour leur adoption par le grand public.

C’est pourquoi les équipes du projet ont lancé Zilliqa, une blockchain implémentant un nouveau mécanisme (à l’époque), le sharding, pouvant la faire évoluer à mesure que la demande utilisateur augmente.

En outre, Zilliqa est la première plateforme de smart contracts (contrats intelligents) implémentant le sharding et sera ensuite suivie par plusieurs grosses solutions que vous connaissez bien aujourd’hui comme Elrond ou Near Protocol.

Concrètement, il permet de diviser le réseau en plusieurs parties (Shard), cette technique permet ainsi de gérer des transactions en parallèle.

Il est aussi bon de relever que le projet s’appuie sur un mécanisme de consensus hybride sur lequel nous reviendrons dans la partie technique.

Zilliqa est accompagné de son propre langage de programmation nommé Scilla permettant de garantir la sécurité des contrats intelligents en son sein.

Le réseau possède également son propre token natif, le ZIL, possédant certaines spécificités que nous développerons plus loin dans cet article.

L’objectif premier de Zilliqa est de briser les limites d’évolutivité du nombre de transactions grâce au sharding sans faire de compromis sur la décentralisation ou la sécurité de son réseau (en théorie).

Comment fonctionne Zilliqa Network ?

Le réseau Zilliqa peut prétendre à fournir une scalabilité quasiment infinie, notamment grâce à l’implémentation du sharding, son mécanisme de consensus hybride et son architecture en général.

Le sharding dans Zilliqa Network

Pour faire simple, le Sharding consiste à diviser ou fractionner un ensemble de données en sous-ensembles appelés shards.

Dans le cas de Zilliqa deux formes de sharding sont appliquées, à savoir le sharding réseau qui est la base du système et le sharding de transaction construit au-dessus de celui-ci.

Le sharding réseau : Zilliqa utilise le sharding réseau pour diviser son réseau en plusieurs plus petits groupes de nœuds appelés shards.

Le concept est simple, chaque groupe de nœuds (shard) peut traiter des transactions en parallèle. Ceci signifie que plus, il y a des shards (groupe de nœuds) dans le réseau, plus le réseau peut prétendre à traiter un grand nombre de transactions en même temps.

Le projet prend pour comparaison Ethereum et ses 30 000 mineurs à l’époque et estime qu’à la même échelle, le réseau Zilliqa pourrait traiter mille fois plus de transactions que le réseau Ethereum.

Sharding

Le sharding de transaction : Comme expliqué précédemment, le sharding de réseau ouvre la porte à la parallélisation des transactions. Chaque shard est donc en mesure de traiter un débit élevé de transactions de manière indépendante.

Lorsque les transactions de paiement et de contrats intelligents arrivent sur le réseau, elles sont alors elles-mêmes shardées et assignées à un shard.

Afin de savoir à quel shard elles sont affectées, les transactions sont classées par catégorie dans le but d'avoir une stratégie d'affectation distincte pour chaque catégorie.

Il existe un certain nombre de catégories déterminé par le type de comptes impliqués dans les transactions traitées.

Entendez par compte, un compte utilisateur (ou sans contrat) détenu et contrôlé donc par un utilisateur et ne détenant pas de code de contrat.

À l’inverse, les comptes de contrat sont des comptes détenant des codes de contrats.

Il relèvera donc trois catégories d’affectation :

  • Type 1 : Les transactions de paiement ordinaires qui n'impliquent pas de contrats intelligents. Voyez ici simplement un utilisateur envoyant par exemple de la cryptomonnaie à un autre utilisateur
  • Type 2 : Il s’agit là du cas où un utilisateur interagit avec un contrat intelligent, qui lui-même n’interagit avec aucun autre contrat, et ne transfère pas de fonds à un autre utilisateur. L’équipe prend pour exemple un compte utilisateur faisant un don à un contrat de crowdfunding
  • Type 3 : Cette catégorie implique les transactions provenant d'un utilisateur qui peuvent invoquer une chaîne de contrats et potentiellement se terminer par un compte utilisateur
Type de catégorie

Il est important de noter que chaque shard ne traite que les transactions de type 1 et 2 tandis que la catégorie 3 est exclusivement confiée aux nœuds DS (Directory Service nodes) dont nous allons parler par la suite.

Le comité de DS traitera alors les transactions de type 3, 2 et 1 qu’après que les shards ont validé leurs transactions de type 1 et 2. Néanmoins, il ne pourra pas les traiter en parallèle des shards au risque d’une double dépense.

Les différents types de nœuds

Vous l’aurez compris, le réseau Zilliqa est composé de plusieurs types de nœuds dans son architecture. Les différents types de nœuds, présents dans Zilliqa, possèdent bien entendu chacun des spécificités qui leur sont propres.

Shard nodes : Les nœuds de shard sont les nœuds miniers du réseau Zilliqa. Comme vous le savez, ces nœuds sont affectés à des shards respectifs. Les nœuds qui appartiennent au même shard traitent le même ensemble de transactions assignées à leur shard. Après quoi ils devront atteindre un consensus afin de générer le microbloc du shard.

Pour leur travail, ces nœuds miniers sont récompensés en tokens $ZIL. Pour ces nœuds-là, leur appartenance à un shard en particulier est déterminée par le comité de DS nodes après qu’ils ont soumis des solutions au calcul engendré par le mécanisme de Proof of Work.

Les nœuds DS : Ces nœuds sont également des nœuds de minage, avec cependant une tache supplémentaire qui est d’agréger les microblocs fournis par les différents shards pour former le bloc de transaction. Ceux-ci sont également récompensés en tokens ZIL pour leur travail.

L’ensemble des nœuds DS du réseau est appelé comité DS. Seule une petite partie du comité est remplacée à chaque époque (l’époque DS est le temps nécessaire pour compléter un bloc DS et a lieu tous les 100 blocs).

L'appartenance au comité DS est déterminée par des preuves de travail d'une difficulté supérieure et la durée d’un mandat pour un Nœud DS au sein du comité est également influencée par sa performance pendant la durée de l’époque DS.

Les nœuds lookup : Il s’agit là de nœuds complets, entendez par là qu’ils stockent toutes les données de la blockchain générée par les nœuds DS et shards. Ce sont eux qui fournissent donc les données aux nouveaux nœuds rejoignant le réseau afin qu’ils se synchronisent avec celui-ci.

Les nœuds lookup répartissent également les transactions vers les shards et le comité DS.

Les seed nodes : Ils sont principalement utilisés pour servir les requêtes JSON-RPC (protocole d’appel de procédure à distance codé en JSON faisant le pont entre le langage de programmation Web et la blockchain), y compris la création de nouvelles transactions.

Les transactions sont regroupées de manière régulière par les seed nodes avant d’être transmises aux nœuds lookup qui les répartiront au comité DS et shard nodes.

Les staked seed nodes : Les SSN sont une variante des seed nodes. En effet, les SSN sont gérés par des partenaires staker (entendez par là qu’ils sont sélectionnés via liste blanche par l’équipe Zilliqa elle-même) et ont pour mission de répondre aux demandes JSON-RPC de la communauté.

En échange de quoi, ils recevront régulièrement des récompenses en $ZIL pour leurs services. Les récompenses de staking sont, elles, déterminées par les performances des SSN.

Dans les partenaires de staking, on trouve entre autres Binance, Kucoin, Huobi et Ignite DAO.

Le consensus dans Zilliqa

Comme nous l’avons mentionné précédemment, chaque shard est composé d’un ensemble de nœuds, dont un nœud leader qui, par mesure d’intégrité, sera changé à chaque microbloc.

Le leader du comité DS, lui, sera changé après chaque bloc final.

Pour faire simple, chaque shard exécutera un algorithme de tolérance aux pannes byzantine pour obtenir un consensus sur l'état de la blockchain à un moment T.

Ce processus se décompose en 3 parties :

  • Avant préparation (pré-préparation) : Comme dans un BFT standard, le leader distribue un bloc de transaction ou une déclaration (signée par le leader) à tous les nœuds du groupe de consensus
  • Phase de préparation : Tous les nœuds honnêtes vérifient la validité du bloc d'émission et le leader collecte les réponses de plus de 2/3 des nœuds
  • Phase d’engagement : Après avoir reçu un message de préparation valide d'une super majorité (2/3) de nœuds, il multidiffuse un message de commit à tous les autres nœuds. Une fois qu'un message de commit est reçu de la super majorité, le nœud enregistre le nouvel état

Le token ZIL

Évoqué plus haut, le projet possède son token natif, le ZIL.

Avec une quantité maximum de 21 milliards de jetons (en référence aux 21 millions de bitcoins), le Jeton ZIL a d’abord été mis en vente pour les early adopters et investisseurs en tant que jeton ERC-20 en 2018. Ce n’est qu’ensuite, en 2020, que les jetons ont été transférés vers le mainnet de Zilliqa.

Sa capitalisation est de 296 millions de dollars pour un total de 16.9 milliards de jetons émis, ce qui lui offre une place dans le top 100 des plus grosses capitalisations crypto.

Le jeton est au cœur du réseau, car il permet entre autres de récompenser les mineurs pour la sécurisation du réseau ainsi que de payer les frais de gaz sur la blockchain.

Voici comment les équipes de Zilliqa ont procédé pour sa répartition :

Zilliqa network distribution token ZIL

Conclusion

Avec l’avancée des technologies, le monde de la blockchain évolue extrêmement vite et beaucoup de nouveaux projets émergent.

Dans l’ensemble, le projet Zilliqa semble attractif de par ses innovations technologiques dont il est le précurseur. En effet, l’implémentation du sharding semble être une solution relativement satisfaisante pour l’adoption à grande échelle dont tout le monde rêve.

Si ces promesses de scalabilité quasiment infinies s’avèrent être tenues, le projet pourrait bien faire partie des solutions dominantes lors du prochain bullrun. Cependant, cet écosystème nécessite l'apprentissage d'un nouveau langage de programmation ce qui peut être retissant pour de nombreux développeurs.

On constate à ce jour que peu d'applications décentralisées ont été construites sur Zillliqa (voir Defillama).