Tezos
Tezos est une plateforme évolutive de registres décentralisés (blockchain) pour le développement de contrats intelligents (smart contracts) autour de la cryptomonnaie tez (ꜩ, XTZ). L'algorithme du protocole est basé sur un protocole de consensus par preuve d'enjeu à chaîne longue. La conception modulaire de la plateforme Tezos lui permet d'assurer sa propre évolution à travers une gouvernance on-chain. L'évolution peut concerner d'une part l'algorithme de consensus et d'autre part le langage de contrats intelligents Turing-complet. Ces contrats sont des programmes informatiques déployables sur la blockchain dans le but d'exécuter des opérations sur le registre, par exemple d'ordre financier. La Fondation Tezos[1], un organisme sans but lucratif, est l'entité chargée de la coordination des moyens de développement de cette infrastructure. En , sa capitalisation boursière atteignait 1,8 milliard de dollars américains[2], la plaçant 15e au rang des cryptomonnaies.
Date de création | 20 juin 2018 |
---|---|
Créateur | Arthur Breitman et Kathleen Breitman |
Symbole boursier | XTZ,ꜩ,tez |
Sous-unité | 10⁶ mutez |
Fonction de hachage | Sans objet : preuve d'enjeu (POS) |
---|---|
Fréquence moyenne des blocs | 30 secondes |
Récompense par blocs | 16 ꜩ pour un bloc, 2 ꜩ pour un endorsement |
Quantité maximale | Non limitée |
Taille des blocs | Limitée |
Conception
Tezos partage les principes fondateurs des blockchains, et permet de développer un registre, sur lequel on peut
- Consigner de l'information (actes, déclarations, transactions).
- Décentraliser et permettre à chacun de disposer d'une copie publique du registre.
- Assurer que les données sont inviolables et numériquement authentifiées par leurs auteurs.
Ce système est basé sur une symbiose entre deux composants : le nœud et le baker.
- Nœud. Ce cahier de registres se présente sous la forme d'une chaîne de blocs (blockchains) mis bout-en-bout, où chaque bloc contient un ensemble d'informations actées. N'importe quel participant (ou utilisateur) peut installer un nœud, qui se charge d'avoir la dernière copie en date de la chaîne. La notion de décentralisation est illustrée par l'idée que chacun possède constamment la même copie du cahier de registres et qu'il n'existe pas une unique copie de ce même registre d'informations.
- Baker. Le problème principal du consensus survient lorsqu'un participant souhaite acter une nouvelle information sur la chaîne (comme une transaction monétaire entre deux utilisateurs), il doit pouvoir s'assurer d'écrire dans le registre et que tous les autres participants possèdent eux aussi la même nouvelle information. En même temps, tout le monde ne peut pas écrire sur la chaîne simultanément et il faut se décider de désigner un participant de confiance, pour accéder aux droits d'écriture à un moment donné pour écrire un bloc supplémentaire à la chaîne. Ce participant est appelé baker et les règles de sa désignation sont régies par le protocole économique.
Le baker émettra une proposition de bloc (contenant des intentions d'opérations dont il aura eu vent) et les autres participants pourront choisir de soutenir sa proposition de bloc (endorse). Chaque utilisateur ayant été témoin du nombre suffisant de soutiens pourra accrocher ce nouveau bloc à la chaîne dans sa propre copie du cahier de registres. La chaîne avance et le processus recommence avec un nouveau participant désigné pour le bloc suivant.
Fonctionnement
Consensus et minage en preuve d'enjeu
Contrairement aux blockchains de premières générations, comme le Bitcoin où le principe d'enregistrement des blocs se base sur la preuve de travail (minage), Tezos adopte une politique de consensus par preuve d'enjeu, basé sur la délégation. Dans le premier cas, un participant à la chaîne est considéré fiable, par sa capacité à gaspiller une quantité d'énergie pour prouver sa bonne foi. Alors que dans le second cas, ce participant prouve sa bienveillance par sa capacité à posséder des jetons de tez (similairement à un associé possédant des parts d'entreprise). Un possesseur de tez détient alors une probabilité pondérée d'être sélectionné aléatoirement afin de participer à deux missions essentielles au fonctionnement de la chaîne :
- Il peut obtenir un créneau (slot) pour accéder à la proposition d'écriture d'un bloc sur la chaîne et est appelé baker pour ce rôle. Il perçoit une récompense entre 14 ꜩ et 16 ꜩ.
- Il peut participer à la validation des opérations en approuvant des blocs candidats et est appelé endorser pour ce rôle. Il perçoit une récompense correspondant à 20 ꜩ divisé par le nombre d'endorsers sur ce bloc.
Le ticket d'entrée pour participer à ces activités - qui correspond au minimum à un rouleau - est onéreux et ne permet pas à n'importe qui d'être sélectionné. À l'heure actuelle, un rouleau correspond à 8000 ꜩ. Un petit porteur peut alors choisir de déléguer son droit d'enjeu à un validateur qui se chargera d'opérer ses droits en son nom.
Lorsqu'un validateur est sélectionné pour proposer d'écrire un bloc sur la chaîne (grâce à ses fonds propres ou en tant que délégataire), il reçoit sa récompense et met en jeu une partie de ses fonds (similairement à une hypothèque). Ce mécanisme permet d'écarter les validateurs malveillants qui viendraient acter de fausses transactions. Il n'est pas dans l'intérêt d'un validateur de perdre de l'argent alors qu'il pourrait en gagner en se comportant avec bienveillance.
Impact environnemental faible
Cette idée de consensus en preuve d'enjeu diffère du principe de mise en concurrence des mineurs en preuve de travail[3], qui doivent produire du calcul volontairement (et inutilement) gourmand en énergie afin de sécuriser le fonctionnement de la blockchain. L'étude menée par le cabinet PwC a mis en avant plusieurs faits sur l'année 2021[4] conformément aux standards ISO 14040 et 14044 :
- Chaque transaction a un impact carbone équivalent à 2,5 g de CO2.
- La consommation énergétique annuelle de Tezos est équivalente à 0,001 TWh (par rapport à 26 TWh pour Ethereum et 130 TWh pour Bitcoin).
- À un nombre constant de participants au protocole, l'augmentation du nombre de transactions n'entraîne pas une augmentation proportionnelle de la consommation énergétique.
Gouvernance on-chain par amendement
Au cours des différentes crises de cryptomonnaies, il a été observé que le grand nombre de hard-forks augmentait la multiplicité des cryptomonnaies tout en réduisant leurs valeurs financières. Prenons l'exemple d'une blockchain développée en open-source ; lorsqu'un ensemble de développeurs n'arrive pas à se mettre d'accord avec la gouvernance de celle-ci, il est libre de reprendre le code source de ce projet afin de monter sa propre blockchain : il peut alors réaliser un fork (comme Ethereum et Ethereum Classic). L'idée proposée par Tezos est d'amener une gouvernance relativement dirigée par ses utilisateurs finaux, avec un système de vote, permettant de mettre à jour le fonctionnement de la chaîne à la volée. Ce système fondateur apporte trois avantages majeurs :
- Gestion des vulnérabilités. Lorsqu'un problème de sécurité dans le code informatique ou dans le modèle économique est avéré, la possibilité de mettre à jour le code source de la chaîne à la volée permet de la maintenir et d'améliorer constamment le degré de sécurité de la chaîne. Dans ce cadre, l'ajout de patchs d'optimisation de code a permis de réduire de 30 % l'impact énergétique entre les années 2020 et 2021[4].
- Ajouts de fonctionnalités. La recherche technologique dans le domaine des blockchains est aujourd'hui très intense et permet d'apporter de nouvelles fonctionnalités leur permettant de s'adapter aux besoins du marché. De nombreuses blockchains ne possèdent pas cette fonctionnalité et ne pourront jamais évoluer.
- Souveraineté et démocratie. Le droit à chacun de décider du devenir politique de ses propres actifs est déterminé directement par sa communauté de possesseurs de jetons de la cryptomonnaie.
Pour mettre en place ce système électoral, la chaîne est rythmée entre différentes périodes électorales. Les participants de la chaîne (autrement appelés, validateurs) disposent d'un pouvoir de vote proportionnel à leur fonds (propres et délégataires) :
Ordre | Période électorale | Usage | Conditions |
---|---|---|---|
1 | Proposal | Les validateurs peuvent soumettre ou bien soutenir une proposition d'amendement au protocole existante. | S'il n'y a aucune proposition ou bien si deux propositions sont ex æquo, la période est relancée. Sinon, la proposition ayant reçu le plus de soutien est retenue et la chaîne bascule sur la période suivante. |
2 | Exploration | Les validateurs sont soumis au vote pour, contre ou s'abstiennent de la proposition de protocole. | La proposition est adoptée en période si le quorum est atteint et qu'elle obtient la supermajorité de 80 % au suffrage. Le cas contraire, le cycle électoral entier est redémarré. |
3 | Cooldown | Les validateurs peuvent poursuivre le débat sur les points précis de la proposition. Les développeurs peuvent exécuter des tests additionnels pour assurer le bon fonctionnement. | Aucune action nécessaire. Le passage à la période suivante se fait automatiquement. |
4 | Promotion | Les validateurs sont à nouveau soumis au vote pour, contre ou s'abstiennent de la proposition. | Mêmes conditions qu'en période Exploration. Si la proposition est adoptée en période, elle devient le nouveau protocole vers lequel la chaîne sera tenue de migrer à la fin de période d'adoption. |
5 | Adoption | Les développeurs préparent leurs infrastructures aux nouveaux changements adoptés afin de se préparer à la migration vers le nouveau protocole. | Aucune action nécessaire. |
Contrats intelligents
Dans le monde des blockchains, Tezos exploite l'idée qu'une blockchain (c'est-à-dire un registre décentralisé à accès public) est capable de stocker de la donnée mais aussi des programmes manipulant des actifs, il s'agit de contrats intelligents. Leurs applications sont nombreuses et Tezos est à la base de plusieurs infrastructures.
Certification et identité
La blockchain peut servir à authentifier des créations dans le cadre du droit d'auteur (Musicstart, Ipocamp, Édith & Nous, Coexya), permettre à des citoyens de voter électroniquement (Electis[5]), authentifier la propriété d'un objet (Myloby) ou authentifier une personne en lui assignant une identité (Gravity). L'idée de pouvoir stocker l'identité d'une personne sur une blockchain se rélève utile dans certains pays en voie de développement où le manque d'infrastructures gouvernementales rend difficile l'accès aux droits des citoyens.
Stablecoins
Au-delà de la monnaie tez, la plateforme Tezos sert aussi de base à la monnaie Euro-Lugh (EURL). Il s'agit d'un actif numérique adossé à l'euro pour lequel le cours d'échange est constant (1 EURL vaut 1 EUR).
NFTs
Il est aussi possible de définir un cadre de développement de jetons non fongible (NFT). En l’occurrence, il s'agit de jetons portant une identité numérique unique et pouvant être échangés entre des utilisateurs via la blockchain. Concrètement, il s'agit d'un acte de propriété consigné dans la blockchain. Ces contrats intelligents sont des programmes garantissant la transférabilité et de authenticité de propriété de ces biens. Pour frapper ces jetons, Tezos a mis en place le standard général FA2[6] pour fournir un cadre unifié de contrats de jetons (qu'il soit fongible ou non).
Depuis, de nombreux marketplaces basés sur Tezos ont vu le jour afin de servir d'intermédiaire direct entre artistes et acheteurs, tels que Objkt, Kalamint, Arago, Hen, Rarible ou FXHash. D'autres groupes industriels créent aussi leurs propres plateformes de NFT en utilisant la blockchain Tezos. C'est notamment le cas de l'éditeur de jeux vidéo Ubisoft, qui utilise cette technologie dans la cadre de sa plateforme Ubisoft Quartz, où les joueurs pourront acheter des éléments de jeu. Le premier jeu compatible est Tom Clancy’s Ghost Recon Breakpoint.
Langages de développement
La philosophie de Tezos se place dans un axe fort de recherche et de développement dans le domaine de la vérification formelle des programmes à base de méthodes formelles (qu'elles soient automatiques ou semi-automatiques). Le langage de contrats est un langage à pile fortement-typé Turing-complet, appelé Michelson[7] - [8]. En pratique, ce langage sert d'intermédiaire à d'autres langages de contrats plus hauts niveaux tels que Ligo, SmartPy ou Morley.
Le protocole Tezos lui-même est développé dans le langage de programmation fonctionnel OCaml[9], connu pour sa fiabilité et sa capacité à écrire des programmes informatiques proches des dernières avancées en logique mathématique. À cela, un effort de formalisation dans l'assistant de preuve Coq du langage Michelson est mené par Nomadic Labs afin de vérifier les comportements de smarts contracts[10].
Histoire
En , les fondateurs du projet ont publié un document intitulé "Position Paper". En , un livre-blanc a été publié[11]. Trois ans plus tard en 2017, la Fondation Tezos lève 228 millions de dollars lors d'une collecte de fond, devenant ainsi la plus grande ICO de la bulle des crypto-monnaies en 2017.
Depuis la création de la plateforme de chaînes, différentes migrations régulières ont eu lieu depuis l'existence de la chaîne.
N° | Date | Nom | Hash | Description |
---|---|---|---|---|
004 | Athens | Pt24m4xi | Augmentation de la limite de gaz par bloc and réduction de la taille d’un rouleau à 8000 ꜩ. | |
005 | Babylon | PsBABY5H | Mise à jour vers l’algorithme de consensus Emmy+. Simplification du développement de contrats intelligents. Changement du processus de délégation. | |
006 | Carthage | PsCARTHA | Augmentation de la limite de gaz par bloc et par opération. Révision du calcul des récompenses. | |
007 | Delphi | PsDELPH1 | Optimisation du coût en gaz. Réduction des coûts de stockage par un facteur de 4. | |
008 | Edo | PtEdoTez | Ajout de Sapling et BLS12-318 pour les contrats intelligents à préservation d’intimité et tickets pour les permissions natives. Mise à jour du processus d’amendement par réduction de la durée d’une période de vote à 5 cycles et ajout de la période d’Adoption. | |
009 | Florence | PsFLoren | Augmentation au double de la taille maximale des opérations. Optimizations du gaz et de son arithmétique par un facteur de 10. Adoption du parcours en profondeur pour un développement de contrats intelligents plus intuitif. | |
010 | Granada | PtGRANAD | Introduction de Liquidity Baking, un contrat d’échange décentralisé entre tez et tzBTC. Optimisations de code permettant une diminution par facteur x3-6 de la consommation en gaz de contrats populaires. | |
011 | Hangzhou | PtHangz2 | Ajout de fonctionnalités aux contrats: views (possibilité pour les contrats d’avoir accès à l’état de stockage d’autres contrats), timelock encryption (contremesure aux Block Producer Extractable Value), table de constantes globales. Ajout de caches pour un accès plus rapide et économe aux données. |
Notes et références
Références
- Shaanan Cohney, David Hoffman, Jeremy Sklaroff et David Wishnick, « COIN-OPERATED CAPITALISM », Columbia Law Review, vol. 119, no 3, , p. 591–676 (ISSN 0010-1958, lire en ligne, consulté le )
- (en) CV VC AG, « CV VC Top 50 Report released », sur Medium, (consulté le )
- « Proof-of-stake in Tezos — Tezos (master branch, 2020/09/22 15:17) documentation », sur doc.tzalpha.net (consulté le )
- (en) PricewaterhouseCoopers Advisory, Study of the environmental impact of the Tezos blockchain - Life Cycle Assessment of the Tezos blockchain protocol, 6 décembre 2021 (lire en ligne), p. 7
- Electis, Electis.app White Paper, 9 p. (lire en ligne)
- (en) Eugene Mishura (@e-mishura), Seb Mondet (@smondet), « FA2 - Multi-Asset Interface », sur GitLab (consulté le )
- « Michelson Reference », sur https://tezos.gitlab.io/michelson-reference/ (consulté le )
- « Try Michelson », sur try-michelson.com (consulté le )
- TQ Tezos, « Introduction · Formal Verification », sur learn.tqtezos.com (consulté le )
- (en) « Formally verifying a critical smart contract », sur Nomadic Labs (consulté le )
- (en) L.M Goodman, « Tezos - a self-amending crypto-ledger », White paper, (lire en ligne)
Liens externes
- (en) Site officiel