Actualités Ethereum (ETH)

Suivez toutes les actualités concernant l’évolution de l’écosystème Ethereum et du cours de sa cryptomonnaie !  Retrouvez ici toutes les news liées à l'ETH. La blockchain Ethereum, créée en 2013 par Vitalik Buterin, est la première à avoir introduit le concept d’applications décentralisées (dApps). Sa cryptomonnaie, l’ether (ETH), est la deuxième cryptomonnaie la plus importante du crypto-écosystème après Bitcoin.

Acheter de l’ether en quelques clics

Que penser d’Ethereum ?

18/11/2018 • 0:00

Qu’est-ce que Ethereum ?

 

 

Définition : Ethereum est à la fois un réseau, un protocole et une plateforme de smart contracts. Il fonctionne de manière décentralisée grâce à sa cryptomonnaie native, l’ether (ETH). Conçu par Vitalik Buterin en 2013, ce réseau financier décentralisé a vu le jour en 2015. Il est rapidement devenu incontournable dans l’industrie crypto. En effet, Ethereum est la plateforme de smart contracts la plus utilisée au monde ! Que signifient ces termes techniques et comment fonctionne Ethereum ? Plongée dans les méandres de la deuxième crypto la plus connue du marché.

 

Ethereum : l’ordinateur universel

 

À ses débuts, le réseau Ethereum était présenté comme un ordinateur universel. En effet, il est composé de machines permettant d’exécuter des transactions financières et des calculs complexes. Il est décentralisé et fonctionne de manière autonome et continue (24/7), comme Bitcoin. N’importe qui peut utiliser Ethereum s’il possède les ressources nécessaires :

 

  • Un ordinateur ;
  • Une connexion Internet ;
  • Des ethers (ETH).

À l’instar de Bitcoin, Ethereum permet de réaliser des paiements et des transferts de valeurs, et fonctionne grâce à un ensemble de protocoles informatiques. De même, son registre comptable est une blockchain, mise à jour par les nœuds validateurs du réseau.

 

Cependant, ses possibilités sont plus étendues que celles de son aîné. Il s’agit d’un outil complexe, et pour bien le comprendre, il faut commencer par se mettre dans la peau de son créateur.

 

Genèse d’Ethereum : l’idée de Vitalik Buterin

 

Vitalik Buterin est un jeune informaticien russe et canadien. Il s’est intéressé très tôt à Bitcoin et aux monnaies décentralisées. Il a notamment créé Bitcoin Magazine, le tout premier magazine papier consacré à la première crypto de l’histoire.

 

Vitalik Buterin a vu très vite le potentiel révolutionnaire des cryptomonnaies. En visionnaire, il a tout de suite compris la valeur ajoutée que la finance décentralisée pourrait apporter à l’économie.

 

Très inspiré par l’invention de Satoshi Nakamoto, et notamment par le caractère non-censurable du réseau, il l’a toutefois trouvé limitée. Son idée fut d’étendre les propriétés d’un réseau décentralisé comme Bitcoin, focalisé sur les paiements, à l’exécution de programmes informatiques.

 

Bitcoin, des cas d’usage trop limités ?

 

Pour le petit génie des mathématiques et de l’informatique, âgé d’à peine 20 ans à l’époque, le protocole Bitcoin était trop simpliste. En effet, par souci de sécurité, son langage de script est très limité. Il permet certes de créer des transactions programmables, où l’exécution des paiements peut être conditionnelle. Cependant, il est impossible de créer des boucles récursives. Cela limite les possibilités de Bitcoin en termes d’application financières.

Ce n’est pas un défaut de conception : Bitcoin a été créé pour répondre à des besoins simples, avec une sécurité maximale. Depuis le début de son existence, il a prouvé sa valeur et sa résilience. Bitcoin a résisté à toutes les attaques, et son architecture en fait le système de paiement pair-à-pair le plus solide. Également utilisé tel de l’or numérique, le réseau Bitcoin peut être considéré comme un ensemble de coffres-forts inviolables.

 

Les applications financières complexes qui sont développées sur Bitcoin passent par des couches secondaires au réseau. Cela permet de mener des expérimentations et de créer des usages nouveaux sans sacrifier la sécurité de la couche principale. Le langage de script de Bitcoin est donc volontairement limité. Il présente une différence majeure avec celui d’Ethereum : il n’est pas Turing-complet.

 

Ethereum : un système Turing-complet

 

L’expression « Turing-complet » fait référence au mathématicien et cryptologue Alan Turing. Cet informaticien avant l’heure a notamment contribué à définir les concepts d’algorithme, de programmation et de décidabilité.

 

Quelques définitions UTILES POUR COMPRENDRE ETHEREUM

 

  • Un algorithme est un ensemble de règles opératoires menant à l’exécution d’un calcul ;
  • La programmation informatique permet de définir et de coder ces règles ;
  • Enfin, la notion de décidabilité porte sur la résolution d’un problème. Un problème est dit décidable s’il existe une méthode systématique (un algorithme) pour le résoudre.

Alan Turing est célèbre pour l’invention portant son nom, la fameuse machine de Turing. Il s’agit avant tout d’un concept et non d’un objet physique. Toutefois, Turing finit par construire son calculateur idéal durant la seconde guerre mondiale. Son appareil, nommé « la bombe », permit de déchiffrer les messages des armées allemandes durant la seconde guerre mondiale. On peut le considérer comme le premier ordinateur de l’Histoire.

 

Machine de Turing
Une machine de Turing à ruban circulaire.

En informatique, un langage est dit “Turing-complet” s’il permet de simuler une machine de Turing, avec le même pouvoir expressif et la même calculabilité. Ainsi, un langage Turing-complet permet d’exécuter des fonctions récursives. C’est nécessaire pour programmer des boucles conditionnelles (if, then, else) et plus généralement pour que le langage soit déterministe (les mêmes fonctions appliquées aux mêmes arguments donneront toujours le même résultat).

 

C’est la différence fondamentale entre le fonctionnement d’Ethereum et celui de Bitcoin. Le langage de programmation d’Ethereum, Solidity, est Turing-complet. Cela donne beaucoup plus de possibilités aux développeurs. L’ether est une monnaie entièrement programmable, il est le carburant de l’écosystème. C’est en ethers que les nœuds du réseau sont récompensés pour la validation des transactions et les calculs effectués.

 

La Turing-complétude du langage d’Ethereum ouvre la voie à de nouvelles applications. Il est ainsi possible de créer des programmes fonctionnant de manière autonome sur le réseau. Ces programmes permettent d’exécuter automatiquement des transactions financières complexes, qui dépendent d’une multitude de conditions et de paramètres. On appelle ces programmes « smart contracts » ou contrats intelligents. Comme nous allons le voir, l’expression « contrats autonomes » serait plus appropriée.

 

Les smart contracts

 

Le terme smart contract nous vient de Nick Szabo, cryptographe de légende. L’idée du « contrat intelligent » est de garantir la force obligatoire des contrats non plus par le droit, mais directement par le code informatique. “Code is law”, pour reprendre la célèbre formule de Lawrence Lessig.

Nick Szabo 2016
Nick Szabo en 2016.

 

Les smart contracts sont des ensembles d’instructions pour les nœuds du réseau Ethereum. Ils sont semblables à n’importe quel programme informatique. Les lignes de codes sont traduites en langage de bas niveau (bytecode), qui sera interprété par les ordinateurs composant le réseau.

 

Les smart contracts héritent des propriétés de la blockchain d’Ethereum : ils sont irrévocables, non-censurables, et s’exécutent de façon automatique. La décentralisation du réseau lui permet de survivre aux partitions et aux pannes. Ainsi, même en cas de défaillance d’une partie des nœuds, le restant prend le relai.

 

Afin d’exécuter les smart contracts – qui sont donc des séries d’instructions codées en Solidity – le réseau Ethereum dispose d’un système permettant de transcrire et d’interpréter ces lignes de code. On appelle cet environnement la machine virtuelle d’Ethereum (Ethereum Virtual machine ou EVM).

 

La machine virtuelle d’Ethereum (EVM)

 

Une machine virtuelle est un environnement d’exécution permettant de simuler un appareil informatique. Il s’agit d’un logiciel qui émule le fonctionnement et les caractéristiques d’une machine physique (mémoire, processeur, disque, système d’exploitation).

 

Sur le réseau Ethereum, la machine virtuelle (EVM) permet d’exécuter les instructions des smart contracts en toute sécurité. En effet, pour chaque nœud, cet environnement d’exécution est isolé du reste du réseau.

 

Le déploiement d’un smart contract

 

La blockchain d’Ethereum ne stocke pas les soldes de ses utilisateurs selon le même modèle que Bitcoin. En effet, le solde d’une adresse Bitcoin est une somme de sorties non-dépensées (UTXO pour unspent transaction outputs). Cela signifie qu’à l’instant t, les fonds pouvant être dépensés par le propriétaire d’une adresse Bitcoin (via sa clé privée) est un ensemble de sorties (outputs) en provenance d’autres adresses.

 

Ethereum utilise un système assez similaire à celui de la finance traditionnelle : des comptes. Les soldes des comptes sont stockés sur la blockchain et mis à jour lorsqu’une transaction est finalisée. Les comptes peuvent aussi stocker du code (les instructions composant un smart contract).

 

Simple Smart contract
Les lignes de codes d’un smart contract basique.

Après avoir programmé un smart-contract, il faut le déployer. Le code est soumis à l’ensemble du réseau grâce à une transaction spéciale, puis il est inscrit sur la blockchain. Les différents nœuds validateurs vont alors exécuter les instructions de ces programmes, grâce à l’EVM, l’Ethereum Virtual Machine.

Concrètement, les validateurs allouent des ressources informatiques pour exécuter les instructions des smart contracts. Ils sont récompensés financièrement pour cela. Cette récompense est composée :

 

  • Des ethers créés par le protocole pour chaque bloc ajouté à la chaîne (bloc reward). Les block rewards représentent donc l’inflation monétaire d’Ethereum.
  • Des frais de transaction. Ces frais sont payés par les utilisateurs du réseau, qu’il s’agisse d’une personne physique ou d’un smart contract. Les frais de transaction sont proportionnels aux nombre d’instructions exécutées par les nœuds. On les comptabilise en gas (gaz). Une unité de gas correspond à une quantité d’ether fixée par l’utilisateur. Plus le prix du gas est élevé, plus la récompense par instruction exécutée est importante, et plus les validateurs sont incités à traiter les transactions associées.

La blockchain est mise à jour à chaque fois qu’un nouveau bloc y est ajouté.

Pour éviter les boucles infinies (par exemple si le développeur du smart contract fait une erreur), il y a une limite au gas qui peut être dépensé.

 

Structure de l’EVM

 

La fonctionnement de l’Ethereum Virtual Machine est très simple. L’EVM comporte trois zones pour traiter les données :

 

  • La zone de stockage : associée à un compte Ethereum, elle est persistante et intervient entre l’appel d’une fonction et une transaction. Elle est donc la plus coûteuse en gas.
  • La zone de mémoire : associée à chaque contrat et mise à jour lors de chaque appel (message call), sa taille varie proportionnellement à la quantité de données gérées par le smart contract. Elle a aussi un coût en gas.
  • La pile de la machine virtuelle : elle comporte les instructions du contrat, qui seront exécutées de façon descendante. Les opérations se font en prenant l’élément situé en haut de la pile, en envoyant le résultat dans la pile et en passant à l’élément suivant.

Les instructions de l’EVM sont peu nombreuses, pour des raisons de compatibilité et de sécurité. Elles permettent toutefois de réaliser toutes les opérations arithmétiques et logiques classiques, ainsi que des boucles et des sauts conditionnels.

 

Pour plus de détails sur la machine virtuelle d’Ethereum et les caractéristiques de son langage, Solidity, vous pouvez consulter cet article.

 

Ce qu’il faut savoir, c’est que l’EVM va compiler le code des smart contracts (écrit par exemple en Solidity ou en Vyper) dans un langage qu’elle peut interpréter. On appelle ce langage de bas niveau le bytecode. Tous les smart contracts sont compilés en bytecode lors de leur déploiement.

 

Nous avons désormais présenté différents concepts et éléments propres à Ethereum. Cela va nous permettre de mieux comprendre comment fonctionne la plateforme de smart contracts la plus utilisée au monde.

 

Fonctionnement d’Ethereum

 

Ethereum possède des similitudes avec son aîné Bitcoin, mais aussi de nombreuses différences. Comme dans le cas du roi des cryptomonnaies, le registre comptable du réseau est une blockchain. Les transactions sont donc horodatées et inscrites dans une structure de données prenant la forme de blocs. Ces blocs de transactions sont chaînés les uns aux autres grâce à une relation cryptographique.

 

Pour mieux comprendre les détails du fonctionnement d’Ethereum, il est recommandé de lire en premier lieu les ressources dédiées à Bitcoin. Cependant, les concepts ci-dessous sont présentés de façon simple, et notre encyclopédie vous permettra d’approfondir chacun d’entre eux.

 

La blockchain d’Ethereum

 

La blockchain d’Ethereum est une structure de données sécurisée par les nœuds du réseau. Elle répertorie l’ensemble des transactions effectuées depuis sa genèse. De plus, le bytecode des smart contracts y est également stocké, après leur déploiement.

 

Comme Bitcoin, Ethereum utilise les fonctions de hachage pour relier les blocs entre eux. Ainsi, chaque nouveau bloc comporte, au sein de son en-tête, un hash du bloc précédent.

 

Fonction de hachage (hash function) : ces fonctions mathématiques permettent de transformer un grand ensemble de nombres – théoriquement infini – en un (ou des) nombres de taille fixe, répondant à des spécifications bien précises, définies par la fonction. Par extension, une fonction de hachage peut être appliquée à une chaîne de caractères. En sortie, on obtient donc une empreinte numérique des données d’entrée.

 

Hash (ou hachis) : il s’agit de la résultante d’une fonction de hachage. Il est impossible de retrouver les données d’entrée (l’antécédant) à partir de leur hash (sens unique). Par contre, connaissant une entrée, il est très facile et rapide de vérifier qu’un hash y correspond, en appliquant la fonction de hachage. Les fonctions de hachage permettent donc d’authentifier des données.

Contrairement à Bitcoin, les producteurs de blocs sur Ethereum ne sont pas en concurrence pour trouver des hashes. Bitcoin utilise la preuve de travail tandis qu’Ethereum utilise la preuve d’enjeu (Proof-of-Stake).

 

Le système de comptes

 

Il s’agit d’une autre différence avec l’architecture de Bitcoin. Sur Ethereum, on utilise un système de comptes pour effectuer des transactions. Ces comptes peuvent être contrôlés par un utilisateur ou dépendre d’un smart contract. Ils sont de deux types :

 

  • Externally-owned accounts (EOA) : ils sont contrôlés par tout utilisateur qui en possède les clés privées. Leur création est gratuite. Seules les transactions en ETH ou en jetons sont possibles entre EOA.
  • Contract accounts : il s’agit des comptes où sont déployés les smart contracts, contrôlés par du code (et non par des clés privés). Leur création a un coût, celui du stockage des données du contrat. Ils ne peuvent envoyer des transactions qu’en réponse à une transaction entrante. Les transactions entrantes peuvent déclencher une variété d’actions (comme la création d’un nouveau contrat).

Les comptes Ethereum peuvent émettre, recevoir ou conserver des tokens, tout comme ils peuvent interagir avec des smart contracts.

 

La production des blocs

 

Les blocs sont produits par des nœuds validateurs. Il faut satisfaire un ensemble de conditions pour prétendre à ce rôle. Un validateur doit verrouiller au moins 32 ETH (le stake ou enjeu) : il sera pénalisé en cas de mauvais comportement.

 

  • La périodicité de création des blocs est de 12 secondes (un slot). Pour chaque slot, un validateur est choisi au hasard afin de produire le bloc correspondant.
  • Les transactions sont regroupées et exécutées avant de créer le bloc et de le diffuser aux autres validateurs.
  • Les validateurs recevant le nouveau bloc vont à nouveau exécuter et vérifier la validité de ses transactions.
  • En cas de conflit entre deux blocs (fork), celui qui est appuyé par le plus gros stake gagne.

Pour plus de détails sur le mécanisme du proof of stake, voir cet article dédié au Proof-of-Stake.

 

L’état de la blockchain

 

Chaque bloc modifie l’état de la blockchain Ethereum. On appelle état l’ensemble des soldes des comptes, et du code des contrats déployés sur le réseau, à un instant donné.

 

Interagir avec les contrats

 

Toute interaction avec un contrat passe par l’envoi d’une transaction. Lorsqu’un contrat appelle un autre contrat, il s’agit également d’une transaction. Ces interactions ont un coût en gas.

 

Les interfaces utilisateurs

 

Il est évidemment peu aisé pour un utilisateur lambda de programmer ses transactions en lignes de commande. Les nombreux wallets Ethereum permettent d’interagir avec le réseau à travers une interface utilisateur. Pour interagir avec des smart contracts complexes, les développeurs doivent ainsi créer une interface utilisateur permettant de simplifier le processus. Par exemple, pour un casino en ligne déployé sur Ethereum, chaque clic engendre une série de transactions. Les applications des smart contracts sont dites décentralisées.

Les applications décentralisées

 

N’importe qui maîtrisant le langage de programmation d’Ethereum peut concevoir ses propres smart contracts. Les possibilités sont infinies et vont bien au-delà des simples transactions financières. Quelques exemples : gestion d’identité numérique, traçabilité des chaînes logistiques, certification de documents, jeux en ligne, places de marché, etc.

 

Top Ethereum Dapps - Dapp Radar
Les dApps les plus populaires sur Ethereum – DappRadar.com

On parle d’applications décentralisées (dApps). En effet, les smart contracts d’Ethereum peuvent être accessibles directement depuis un site web ou une application mobile. Cependant, à la différence d’un programme classique, les contrats déployés sur le réseau Ethereum sont exécutés par des milliers de nœuds à travers le monde, et non par un serveur centralisé.

 

Il est ainsi impossible de stopper l’exécution d’un smart contract si l’on n’en possède pas la propriété (via la clé privée du compte correspondant). Si une partie du réseau Ethereum est hors-ligne, les validateurs restants continueront d’exécuter les instructions. La décentralisation implique donc une forte résistance à la censure, aux points uniques de défaillance et à la corruption. Ces caractéristiques sont fondamentales pour comprendre les atouts et la raison d’être d’Ethereum.

 

Les tokens ERC-20 : des jetons programmables

 

Il est possible de créer tout type de smart contract et de le déployer sur Ethereum. Le code des contrats définit donc leurs clauses, leurs conditions d’exécution, et les modalités des transactions résultant de leur utilisation.

 

Qu’est qu’un token sur Ethereum ?

 

La langage Solidity permet ainsi de créer des jetons numériques et programmables (tokens). Ils peuvent représenter tous types d’objets, virtuels ou physiques :

 

  • Monnaies fiat (comme le dollar ou l’euro) ;
  • Actifs financiers divers (actions d’entreprise, obligations, produits financiers dérivés) ;
  • Points fidélité (comme les miles des compagnies aériennes) ;
  • Actifs physiques, comme une certaine quantité d’or ;
  • Objets virtuels, tels les points de compétence dans un jeu vidéo ;
  • Jetons d’accès à un produit ou à un service ;
  • Et bien d’autres choses : les possibilités sont immenses.

Grâce à l’ingéniosité des développeurs de smart contracts, on connaît aujourd’hui les bonnes pratiques en matière de jetons numériques. La multitude d’expérimentations ayant eu lieu a permis de définir des standards pour ces tokens.

 

Ethereum Request for Comments (ERC)

 

Ces standards ont pour nom Ethereum Request for Comments (ERC). Un ERC est la documentation précise concernant les spécifications formelles d’un jeton standard. Une fois que la communauté des développeurs d’Ethereum a approuvé un nouveau standard, n’importe qui peut le reprendre et l’utiliser. Il existe une grande variété de standards différents, correspondant aux différents cas d’usage des jetons Ethereum.

 

ERC-20 : le standard pour les jetons fongibles

 

La notion de fongibilité correspond au caractère interchangeable d’un actif. Par exemple, l’euro est une monnaie fongible, car n’importe quelle pièce authentique peut être échangée contre une autre pièce présentant la même valeur faciale.

 

Dans l’univers des cryptomonnaies, cela signifie qu’il est possible d’échanger n’importe quelle unité monétaire d’un réseau contre une autre. Ainsi, 1 BTC vaudra toujours 1 BTC, 1 ETH vaudra toujours 1 ETH. La fongibilité est une propriété essentielle à l’adoption d’une crypto. Pour les jetons numériques émis grâce à des smart contracts, elle peut être souhaitable ou hors de propos, en fonction des cas d’usage.

 

Le standard ERC-20 définit un cadre pour l’émission de jetons fongibles sur Ethereum. Les jetons ERC-20 présentent donc un ensemble de spécifications :

  • Nom du jeton ;
  • Symbole ;
  • Nombre de décimales (divisibilité) ;
  • Provision totale (total supply, la quantité d’unités émises) ;
  • Solde du compte propriétaire ;
  • Fonctions de transfert et autorisations.

Le standard ERC-20 permet également de garder la trace des événements relatifs au contrat du jeton. Il s’agit des transferts de jetons d’un compte à un autre, et de l’approbation de ces comptes.

 

Bien que les spécifications des ERC-20 soient rigides, il en existe plusieurs implémentations. Les différences concernent notamment les frais, et le degré de sécurité du contrat. Les implémentations les plus connues sont celles d’OpenZeppelin et de ConsenSys.

 

Les jetons non-fongibles (NFT) : des actifs numériques uniques

 

Pour certains cas d’usage, la fongibilité n’est pas souhaitable. Par exemple, prenons le cas des objets disponibles dans l’inventaire du personnage d’un jeu vidéo. Telle épée très puissante existera en 10 exemplaire seulement ; tel bouclier de débutant en 500 exemplaires. Certains objets très recherchés pourraient être uniques.

 

Si l’on désire créer des jetons permettant d’identifier ces objets sur Ethereum, il faudra donc leur conférer des caractéristiques exceptionnelles et les produire en série limitée. Hors de question de permettre à un débutant d’échanger sa misérable hache contre une épée enchantée ! C’est ici que la non-fongibilité des jetons est importante.

 

Les jetons non-fongibles ou NFT sont donc des jetons numériques possédant chacun un identifiant unique. En quelques sorte, ils se comportent comme des certificats d’authenticité. Le propriétaire de l’objet associé à un NFT peut prouver sa possession grâce à la clef privée du compte où est stocké le contrat/jeton correspondant.

 

Les NFT ont de nombreuses applications dans l’art, le jeu vidéo et tout autre application nécessitant une méthode de certification et d’authentification. Il existe aussi un standard pour ces jetons sur Ethereum : l’ERC-721.

 

Ethereum et finance décentralisée (DeFi)

 

Le langage de programmation d’Ethereum permet de créer des applications financières complexes. Il est ainsi possible de répliquer le fonctionnement de nombreuses institutions financières classiques. Par exemple, il est possible de programmer sa propre banque de crédit ou d’investissement !

 

De même, les smart contracts permettent de créer des produits financiers. Ainsi, un développeur peut créer ses propres produits dérivés, comme des contrats à terme. On peut construire des plateformes d’échange décentralisées (DEX), des marchés prédictifs, et toutes sortes d’outils et de services.

La DeFi est une industrie à part entière et vous pouvez explorer ses possibilités grâce à cet article.

 

Histoire d’Ethereum

 

Ethereum fut initialement conçu par Vitalik Buterin et une équipe de programmeurs talentueux. Nous retrouvons des noms bien connus de l’industrie crypto : Gavin Wood (créateur de Polkadot), Charles Hoskinson (créateur de Cardano), Anthony di Lorio (fondateur de Decentral et de Jaxx Wallet), et Joseph Lubin (fondateur de ConsenSys).

 

Vitalik Buterin écrivit le whitepaper d’Ethereum en 2013. Il présenta l’ambitieux projet en janvier 2014 lors de la North American Bitcoin Conference à Miami. Il réunit l’équipe originelle en quelques mois, et c’est via une société suisse que commença son développement.

 

L’ICO d’Ethereum : un financement participatif inédit

 

Afin de financer le projet, l’équipe décida d’utiliser le financement participatif. Il s’agissait cependant d’un type inédit de crowdfunding : une levée de fonds en bitcoins. Dans le jargon crypto, on parle d’initial coin offering (ICO). À l’époque, il n’y avait aucune régulation, et les ICO ne s’embarrassaient pas de formalisme. Nul besoin de site web aux couleurs chatoyantes, de procédures de connaissance client et de listes blanches. Un message dans le forum Bitcoin Talk présentant le projet, assorti d’une adresse Bitcoin pour recevoir les fonds suffisaient.

 

Vitalik Buterin était tellement génial, atypique et ambitieux que son projet eut très vite de l’écho. La levée de fonds fut organisée du 22 juillet au 2 septembre 2014. En 42 jours, l’équipe put récolter environ 18 millions de dollars en Bitcoin. Le prix moyen d’achat d’un ether (ETH) est de 31 centimes. Cela en fait une des ICO les plus rentables de l’histoire. En effet, lors l’ether enregistra son prix le plus haut (4878 $), le retour sur investissement était supérieur à 1,5 million de pourcents

 

L’Ethereum Foundation vit le jour et le développement du projet put commencer. Durant 18 mois, l’équipe conçut différents prototypes, et la plateforme fut officiellement lancée le 30 juillet 2015. L’événement fut nommé Frontier : le bloc de genèse comporte ainsi 8893 transactions et une récompense de 5 ETH.

 

TheDAO : la scission du réseau et la naissance d’Ethereum Classic

 

Le premier événement dramatique survint à peine un an après le lancement d’Ethereum. Il s’agit de la célèbre affaire TheDAO. TheDAO était un projet d’organisation autonome décentralisée, développé sur Ethereum. L’idée était de créer une plateforme décentralisée pouvant servir à lancer toutes sortes de projets crypto, dont la gouvernance serait administrée via la blockchain d’Ethereum et un ensemble de smart contracts.

 

TheDAO fut également financé grâce à une ICO sur Ethereum. Son équipe de développement récolta l’équivalent de 150 millions de dollars en ethers. Cela établit, à l’époque, le record de fonds levés grâce à un financement participatif.

Malheureusement, un hacker découvrit une faille dans le code du smart contract et réussit à drainer les fonds verrouillés (3,6 millions ETH). Face à l’ampleur du désastre, les développeurs d’Ethereum, Vitalik Buterin en tête, proposèrent une solution.

 

Cette solution consistait à revenir en arrière sur la blockchain (rollback) afin de remplacer le smart contract de TheDAO par un contrat tout simple, permettant aux utilisateurs de récupérer leurs fonds.

Un telle modification imposait un hard fork de la blockchain : une modification localisée des transactions associées à TheDAO. Bien évidemment, le débat fit rage entre partisans du laissez-faire et partisan du hard fork. En effet, une blockchain est censée être immuable : code is law. Ce fut finalement le camp du hard fork qui l’emporta. En effet, les sommes en jeu étaient colossales, et Ethereum n’en était qu’à ses balbutiements. Une telle affaire risquait, aux yeux de Vitalik Buterin, d’assombrir l’avenir de la plateforme.

 

La blockchain d’Ethereum fut donc scindée en deux. D’un côté, la blockchain « purifiée » du piratage, et de l’autre, la blockchain « originelle », qui fut renommée Ethereum Classic (ETC). Ethereum Classic existe toujours aujourd’hui, même si le réseau est beaucoup moins valorisé que son successeur.

 

La folie des ICO de 2017-2018

 

Durant la période 2017-2018, un grand nombre de projets crypto utilisèrent Ethereum pour se financer. En effet, grâce aux smart contracts, il est très facile de créer et de déployer son propre jeton. Ces jetons peuvent être vendus aux investisseurs souhaitant financer le projet sous-jacent.

 

Une impressionnante quantité de ventes de jetons eurent lieu ces deux années. Certaines ICO connurent un franc succès, et donnèrent lieu à d’ambitieux projets. Cependant, une très grande quantité de projets sans valeur ou d’arnaques pures et simples causèrent des pertes financières importantes. La jungle des ICO attira l’œil des régulateurs. Certains jetons furent requalifiés en valeurs mobilières, et tombèrent sous le couperet des autorités financières.

De nos jours, les ICO sont beaucoup plus encadrées.

 

La nature juridique des jetons vendus est scrupuleusement étudiée. Les investisseurs doivent généralement se soumettre à des processus de connaissance client. Certains jetons ne peuvent être vendus qu’à des investisseurs accrédités. D’autres sont interdits dans certaines juridictions.

 

Vous pouvez trouver de plus amples informations sur les ICO et leurs variantes ici.

Le boom de la finance décentralisée (DeFi)

 

C’est en 2020 que la finance décentralisée (DeFi) connut un engouement généralisé de la part des aficionados des cryptos. En effet, c’est cette année-là que les premiers automated market makers (AMM) firent leur apparition.

Ces smart contracts permettent de créer des marchés où la correspondance des ordres (entre acheteurs et vendeurs) est établie de manière automatique. Les ordres ne sont pas inscrits dans un carnet centralisé par une plateforme. À la place, les liquidités des participants au marché sont regroupées dans des pools. Ces pools sont des smart contracts où les fonds sont verrouillés. Lors d’un échange entre deux jetons (swap), c’est un algorithme qui effectue les transactions.

 

Le cours des jetons est ajusté grâce à une fonction de prix. Il existe divers modèles : c’est Uniswap qui popularisa le concept d’AMM, grâce à sa fonction à produit constant. De nombreuses variantes firent ensuite leur apparition (somme constante, moyenne constante, hybrides…)

 

La finance décentralisée permet de programmer sa propre banque et ses propres instruments financiers. Ainsi, il est possible de prêter (contre intérêts), d’emprunter, d’utiliser du levier, de créer des produits dérivés sur tout type d’actifs. L’attrait pour ces outils est grandissant, mais en 2020, de nombreuses expérimentations finirent en désastre.

 

En effet, les hackers redoublent d’ingéniosité pour trouver des failles et les exploiter. De nombreux piratages firent les choux gras de la presse crypto et le désespoir des investisseurs lésés.

Aujourd’hui, les smart contracts des applications DeFi sont scrupuleusement audités. Les développeurs ont appris de leurs prédécesseurs. Cependant, le risque de bug ou de piratage est toujours présent.

 

2022 : le passage à la preuve d’enjeu

 

L’événement le plus important de l’année 2022 est certainement The Merge. Le fonctionnement d’Ethereum était précédemment basé sur le minage par preuve de travail. La nouvelle version du protocole utilise la preuve d’enjeu. Cette méthode de consensus est moins énergivore, et permet d’augmenter la capacité de traitement du réseau.

 

La preuve de travail, utilisée sur Bitcoin, est un système extrêmement résistant aux attaques. Il fut donc long et complexe pour les développeurs d’Ethereum de proposer un mécanisme de preuve d’enjeu robuste. L’idée du passage au Proof-of-Stake a germé très tôt dans l’esprit de Vitalik Buterin. Le modèle actuel, appelé Casper, résulte d’années de développement et de tests. Bien qu’il y ait quelques problèmes au niveau de la résistance à la censure du réseau, c’est une réussite.

 

Toutefois, il ne s’agit que d’une étape préliminaire pour faire d’Ethereum un « ordinateur universel » digne de ce nom. Il reste de nombreux challenges à relever :

 

  • Aller vers toujours plus de décentralisation ;
  • Réduire les frais d’utilisation ;
  • Augmenter le débit de transactions ;
  • Rendre Ethereum résistant à la censure et améliorer la confidentialité de ses utilisateurs.

Le défi d’Ethereum : la scalabilité

 

Le plus gros défi auquel est confronté le réseau est sa scalabilité – sa capacité à s’adapter à la montée en charge. En effet, la demande est de plus en plus forte, et la blockchain d’Ethereum est fortement engorgée. Certains utilisateurs doivent attendre des délais de plus en plus longs pour leurs transactions, ou payer des frais très élevés.

 

Ethereum intégrera, à terme, un mécanisme nommé le sharding. La blockchain sera séparée en partitions (shards) afin que les nœuds du réseau n’aient pas à posséder l’intégralité du registre.

 

sharding ethereum
Le sharding : une fragmentation de la blockchain grâce aux preuves cryptographiques – Image de Hsiao-Wei Wang.

Cette méthode permet d’améliorer la scalabilité du réseau et de réduire la barrière à l’entrée (le coût de maintien d’un nœud).

 

De plus, de nombreuses solutions sont à l’étude pour améliorer la scalabilité d’Ethereum sans modifier le protocole lui-même. On les appelle « solutions de couche secondaire » (Layer2). Il s’agit de trouver des mécanismes permettant aux utilisateurs d’effectuer des transactions rapides et à bas coûts hors de la chaîne principale. L’état résultant de ces séries de transactions est ensuite « injecté » dans la blockchain-mère d’Ethereum.

 

Le challenge, pour les développeurs de L2, est principalement la sécurité. Il doit être impossible de tricher, et pour cela, plusieurs mécanismes existent. Les plus populaires reposent sur les preuves à divulgation nulle de connaissance. Ces preuves cryptographiques permettent de s’assurer de la validité des transactions, tout en préservant la confidentialité des parties. La recherche en cryptographie permet désormais de créer des preuves légères, faciles à forger et rapides à vérifier.

 

Les couches secondaires les plus prometteuses sur Ethereum sont Polygon et Starknet. Nul doute qu’elles seront très utilisées à l’avenir.

 

La feuille de route d’Ethereum

 

Ethereum est en perpétuel développement et sa communauté est très active. Il y a encore de nombreux axes d’amélioration du réseau et de ses protocoles sous-jacents.

 

Chaque étape importante a un nom : par exemple, le passage à la preuve d’enjeu (PoS) fut appelé The merge. Le Sharding se décompose en plusieurs sous-étapes, et ces mises à jour devraient survenir en 2023.

La roadmap d’Ethereum est régulièrement mise à jour. Les trois axes d’améliorations principaux concernent la scalabilité, la sécurité et la durabilité. Il s’agit d’adapter le réseau à une utilisation croissante, tout en augmentant sa sécurité et son efficience énergétique.

 

Pour conclure

 

Comprendre le fonctionnement d’Ethereum est essentiel pour se lancer sereinement dans l’univers des cryptomonnaies ! Il s’agit d’un protocole plus complexe que Bitcoin, mais les fondamentaux restent les mêmes. En plus de décentraliser la création monétaire et les paiements, Ethereum permet de décentraliser l’exécution d’applications financières.

 

La finance décentralisée (DeFi) consiste à transposer tous les outils de la finance traditionnelle sur des réseaux distribués. La décentralisation apporte des avantages notables : la résistance à la censure et la garantie d’exécution. Sur Ethereum, personne ne peut vous empêcher de lever des fonds pour votre projet, de créer votre site de jeu en ligne ou n’importe quelle plateforme décentralisée. Ce n’est pas le cas du système financier actuel, où les transactions passent par des tiers de confiance, qui ont droit de vie et de mort sur vos transactions ou vos fonds.

 

Ethereum a désormais de nombreux concurrents, qui promettent tous d’être plus rapides et mieux décentralisés, comme Cardano, Tron, EOS, Solana ou encore Avalanche. Cependant, l’ancienneté de la plateforme et son impressionnante communauté de développeurs apportent une valeur sans pareil à l’écosystème. Ethereum est la porte d’entrée pour tout utilisateur de cryptomonnaies souhaitant se familiariser avec les smart contracts, les actifs numériques et la finance décentralisée.

Lire plus