Qu’est-ce qu’Ethereum ?

Cet article constitue une première introduction à Ethereum. Il traite de façon la plus pédagogique possible des concepts de blockchain, smart contracts et DAO, sans entrer dans des détails techniques.

Si vous souhaitez en savoir plus sur le fonctionnement technique de la blockchain Ethereum, je vous recommande la très intéressante suite d’articles de Gautier Marin-Dagannaud, en cours de rédaction.

 

Ethereum, un ordinateur mondial

En une phrase, Ethereum est un ordinateur mondial, que n’importe qui peut programmer et utiliser comme il le souhaite. Cet ordinateur est toujours allumé, il est très sécurisé, et tout ce qui est fait à l’aide de cet ordinateur est public.

Cette infographie permet d’avoir un premier aperçu de son fonctionnement. « Ethereum expliqué à ma mère ».

NEW ethereum-french-with-german-design copy

Infographie réalisée par Angelo Milan (@angelomilan) et traduite pour le site Ethereum France

 

Ethereum, c’est donc la décentralisation d’applications. Ces applications fonctionnent sur le réseau Ethereum, qui est constitué de plusieurs milliers d’ordinateurs qui communiquent en permanence. Ils partagent une même base de données, la blockchain. Cette base de données peut être comparée à un tableau excel, qui serait rempli ligne par ligne par les participants au réseau.

Pour modifier cette blockchain, le réseau permet l’utilisation de « smart contracts« , qui sont en réalité des lignes de code informatique programmables, qui correspondraient à des macros dans l’analogie avec un tableau excel. Plus d’informations sur les smart contracts dans l’article qui leur est dédié.

Cette décentralisation par l’utilisation de la technologie blockchain présente de nombreux avantages, parmi lesquels :

  • Immuabilité : les données qui sont enregistrées  dans une blockchain y sont enregistrées ad vitam aeternam : la blockchain garde l’historique de toutes les modifications qui y ont été apportées depuis l’origine et il n’est pas possible de modifier cet historique.
  • Protection contre la corruption des données : puisque chaque ordinateur possède une copie de la base de données, il est extrêmement difficile de pirater cette base de données. Pour altérer la base, il faudrait altérer simultanément plus de 51 % des ordinateurs participants simultanément… La blockchain bitcoin existe depuis 2009 et elle n’a jamais été corrompue par une attaque informatique.
  • Sécurité du réseau : la blockchain fonctionne avec un protocole chiffré très puissant qui la rend également très difficile à altérer.
  • Fiabilité : Il est virtuellement impossible d’arrêter simultanément tous les ordinateurs participants à la blockchain Ethereum. Par conséquent, cette base de données est toujours en ligne et son fonctionnement ne s’arrête jamais.

L’autre caractéristique importante d’Ethereum est la transparence. L’ensemble des contrats s’exécutent publiquement sur Ethereum et, avec la connaissance technique nécessaire, n’importe qui peut contrôler que tout fonctionne correctement.

Ethereum a été déployé par la Fondation en août 2015 et le protocole est encore en développement. La version 1.0 a été déployée le 14 mars 2016, mais les outils permettant au « grand public » de l’utiliser n’ont pas encore été développés.

Cependant des dizaines de développeurs dans le monde entier sont d’ores et déjà au travail pour développer des applications décentralisées (« dApps ») qui s’exécuteront sur Ethereum.

Quelques exemples de ces projets d’application :

  • Augur, un système permettant à chacun de « parier » sur la réalisation d’un événement, en étant rémunéré dans les cas où la prédiction s’avère juste, l’objectif (très humble…) étant à terme de prédire le futur en se fondant sur l’intelligence collective ;
  • Stock.it, un système permettant de contrôler des objets intelligents par des « smart contracts » enregistrés sur la blockchain qui semble très intéressant dans le fonctionnement, un article détaillé sur cette société est disponible ici ;
  • Maker, un projet de banque décentralisée permettant de prêter de d’emprunter une monnaie de valeur égale au dollar sans intermédiaire

 

Pour aller plus loin…

Comment ça marche exactement ? La technologie derrière Ethereum est grosso modo la même que celle utilisée par le bitcoin : il s’agit d’ordinateurs individuels qui « participent » à une unique base de données globale publique, et donc partagée entre tous. Un livre de comptes, ou un tableau excel géant dans lequel on entre les données que l’on souhaite et auquel tout le monde a accès.

C’est ce qu’on appelle la « blockchain ». Cette « blockchain » comprend l’historique de l’ensemble des opérations qui ont été réalisées sur la base. Cela permet 1) d’éviter que quelqu’un ne puisse modifier cet historique de la base et 2) de pouvoir reconstituer à n’importe quel moment les différentes opérations effectuées sur la base par les utilisateurs.

Plus d’infos sur la blockchain dans cette vidéo très bien réalisée par rue89 :

Vous trouverez également des informations complémentaires sur cette technologie sur le site de Blockchain France.

Comment utilise-on cette base de données ? C’est ici une grosse spécificité de la technologie développée par les créateurs d’Ethereum : on programme, sous la forme de « contrats » virtuels, appelés « smart contracts », des actions qui sont exécutées par l’ensemble des participants à la blockchain. Si la blockchain est un tableau excel, les smart contracts sont des macros.

Les développeurs envoient donc une série d’instructions à la blockchain (un « smart contract »). Ces instructions sont ensuite exécutées automatiquement sur la blockchain lorsqu’une personne le demande (elle envoie une instruction d’exécution). L’exécution est publique et vérifiable par les ordinateurs connectés à la blockchain.

Un exemple pratique : imaginons que vous souhaitez réaliser un site permettant à chacun d’effectuer un pari. Vous créer un contrat sur lequel les gens peuvent parier. Il contient les instructions suivantes :

  • Si quelqu’un envoie de l’ether et parie sur « PSG », enregistrer son pari et calculer une nouvelle cote ;
  • Si quelqu’un envoie de l’ether et parie sur « OM », enregistrer son pari et calculer une nouvelle cote ;
  • A l’issue du match, consulter une base de données fiable contenant le résultat du match et distribuer les gains mathématiquement en fonction des cotes et des paris de chacun.

Une fois le programme créé, il peut s’exécuter de façon entièrement automatique et vérifiable par chacun. C’est un système de pari totalement transparent et décentralisé.

Cet exemple est naturellement très basique : les usages d’Ethereum sont multiples. L’un des concepts les plus intéressants développés à ce jour sur la blockchain est la DAO (« decentralized autonomous organization ») qui a fait l’objet d’un article détaillé sur le site. Un article détaillé est également consacré aux smart-contracts en général.

Comment les contrats sont-ils exécutés ? Pour exécuter les instructions sur la blockchain Ethereum, il faut de la puissance de calcul. Cette puissance de calcul est fournie par les participants au réseau. Ce sont des particuliers ou des entreprises qui décident de mettre à la disposition du réseau leur ordinateur pour faire fonctionner la blockchain. Ils sont rémunérés pour cela, par l’octroi d’ether.

Quel est leur intérêt à participer, c’est à dire à quoi servent ces ethers ? Ce qui donne de la valeur à ces ethers, outre qu’ils peuvent être échangés comme une monnaie sur une plateforme de marché, c’est qu’ils sont échangeables contre du gaz, qui est nécessaire pour exécuter les contrats. L’échange se fait en pratique automatiquement : lorsque vous exécutez un contrat, cela vous coûte une fraction d’ether correspondant au coût en gaz. Ainsi, l’exécution d’un contrat nécessite de posséder des ether, et pour posséder des ethers il faut soit participer au réseau soit en acheter aux participants, qui font fonctionner les contrats. La boucle est bouclée.

 

Cet article constitue une introduction générale à Ethereum. N’hésitez pas à poser vos questions ou proposer des améliorations en commentaire.

 

Simon Polrot

Créateur du site. Avocat. Passionné par la blockchain et Ethereum en particulier. Je m'intéresse plus particulièrement aux impacts de la technologie sur la société contemporaine, et aux nouvelles pratiques juridiques qui en découleront. Tip : 0x7d1cd61f6153efd679963d101c5c49374989c7e7

10 Réponses

  1. did dit :

    L’idée est pas mal mais dommage que ca soit plein d erreurs : tous les ordinateurs du réseaux ont les mêmes données donc dans ton schéma tout le monde a l intégralité du message. Les éthers ne sont pas distribués à tous les noeuds, mais seulement à ceux qui minent.

    • Simon dit :

      Bonjour Did,

      J’ai effectivement hésité à publier l’infographie (qui n’est pas de moi) au fur et à mesure que je me renseignais sur l’ethereum et que ses faiblesses sont devenues évidentes. J’ai finalement décidé de l’insérer dans l’article car, à mon sens, les erreurs que tu pointes ne sont pas essentielles à la compréhension du principe même de la décentralisation et de la transparence impliquée par l’ethereum. A mon avis, peu importe pour le non-spécialiste de savoir qui est rémunéré en ether… (en fait l’infographie n’aborde pas du tout le mining ou plutôt considère que tous les gens qui ont installé Mist minent aussi).

      Par contre c’est vrai que la répartition des messages c’est pas très clair… Je vais voir avec l’auteur si on peut pas insérer le message entier ou simplement le limiter à « Salut ! » partout :).
      Si tu vois un autre souci que je n’aurais pas repéré, n’hésite pas à me le signaler…

  2. wow dit :

    Bonjour, coment seront rémunérés les développeur de DApp ? quel sera le business model d’un uber décentralisé par exemple ?

    • Marco dit :

      Bonjour, il ne faut pas forcément chercher un business model car en open-source, on pourra reprendre ce projet et en supprimer les frais. Si c’est possible de le faire alors quelqu’un le fera sans business model. On peut penser à du support personnalisé qui sera lui monétisé car il y a un facteur humain indispensable à ce niveau. Le but premier est d’avoir le plus d’utilisateurs pour durer.

  3. Wow dit :

    Salut, je crois avoir trouvé une réponse avec l’emission des tokens. Une partie d’entre eux est attribués aux développeurs et ils prennent de la valeur au fur et à mesure que le projet avance. Les tokens restants sont mis à disposition des utilisateurs à l’achat ou par minage et leur cours varie, si j’ai bien compris.

  4. dit :

    Salut,

    Dans ton exemple, tu dis :

    A l’issue du match, consulter une base de données fiable contenant le résultat du match et distribuer les gains mathématiquement en fonction des cotes et des paris de chacun.

    Une explication est nécessaire sur ce que tu entends par « base de données fiable » car s’il s’agit d’une base de données traditionnelle et non décentralisée, il y a réintroduction d’un tiers unique centralisant une information déterminante pour ton cas.

    Que se passe-t-il si cette bdd est corrompue ? S’il y a une faute de saisie ?

    Une solution serait de se connecter à une bdd décentralisée ayant pour but de fournir « la vérité du réél » => En voila une idée !

    Très bonne initiative pour le site !

    A plus.

    • Simon P. dit :

      Hello Je, c’est une question passionnante effectivement. Des organismes comme Oraclize ont comme objectif de fournir ce genre de services ! En gros on multiplie les sources de données et c’est le consensus qui marche. Je dois encore explorer ce sujet… En tout cas merci pour les compliments 🙂

  1. 31 mars 2016

    […] est une société utilisant la Blockchain Ethereum pour y développer un étalon or en crypto-monnaie. En pratique, la jeune stratup basée à […]

  2. 27 mai 2016

    […] de nouvelles applications prometteuses comme en atteste le développement récent du projet Ethereum, dont la promesse est d’exécuter sur la blockchain toutes types de transaction, via des […]

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

En continuant à utiliser le site, vous acceptez l’utilisation des cookies. Plus d’informations

Les paramètres des cookies sur ce site sont définis sur « accepter les cookies » pour vous offrir la meilleure expérience de navigation possible. Si vous continuez à utiliser ce site sans changer vos paramètres de cookies ou si vous cliquez sur "Accepter" ci-dessous, vous consentez à cela.

Fermer