Tutoriel Ethereum pour les débutants : contrats intelligents, DApps, avantages et limitations

Publié: 2021-03-11

Imaginez que vous êtes dans l'une de ces situations :

  • Votre compte de portefeuille électronique a été bloqué par la plateforme pour une raison quelconque.
  • Votre entreprise doit travailler pour un client mais vous ne savez pas si vous pouvez lui faire confiance ou non.
  • Votre compte de réseau social a été piraté.

Toutes ces situations sont assez douloureuses, non ? Et si on vous disait qu'il existe une technologie qui offre des solutions à toutes ces situations (et bien plus encore). Cette technologie est Ethereum et ce tutoriel Ethereum pour débutants vous familiarisera avec elle.

Apprenez la certification de développement de logiciels en ligne auprès des meilleures universités du monde. Gagnez des programmes Executive PG, des programmes de certificat avancés ou des programmes de maîtrise pour accélérer votre carrière.

Table des matières

Ethereum – Une brève histoire

Voici une chronologie de tout ce que vous devez savoir sur le développement d'Ethereum :

  • Novembre 2013 – Vitalik Buterin, un développeur initialement impliqué dans les Bitcoins, publie un livre blanc sur Ethereum.
  • Janvier 2014 - Une société suisse Ethereum Switzerland GmbH a annoncé le développement du projet logiciel Ethereum dirigé par une équipe de développeurs comprenant Vitalik Buterin, Mihai Alisie, Anthony Di Iorio et Charles Hoskinson.
  • Août 2014 - Ethereum met fin à son ICO et lève avec succès 18,4 millions de dollars américains.
  • Mai 2015 – Ethereum lance son premier réseau de test, Olympic.
  • Juillet 2015 – Frontier, la première version d'Ethereum est sortie.
  • Mars 2016 - Homestead, la deuxième version de mise à niveau du réseau Ethereum est sortie.
  • Mai 2016 - Ethereum bénéficie d'une large couverture médiatique lorsque la DAO (Organisation autonome décentralisée) a levé un record de 150 millions de dollars lors d'une vente à la foule.
  • Juin 2016 - Le piratage DAO se produit, entraînant une perte de 50 millions de dollars d'Ether (il constituait près de 15% du total d'Ether en circulation à l'époque).
  • Juillet 2016 – Le réseau Ethereum s'est ramifié en deux parties : Ethereum (ETH) et Ethereum Classic (ETC).
  • Juin 2017 - Ethereum gagne plus de 400 $ avec une hausse record de 5 001 % depuis le 1er janvier 2017.

Qu'est-ce qu'Ethereum ?

Ethereum est une solution logicielle décentralisée open source basée sur la blockchain que nous utilisons pour créer sa propre crypto-monnaie appelée ether. Il vous permet de créer et d'exécuter des applications distribuées (DApps) et des contrats intelligents sur sa plate-forme sans fraude, temps d'arrêt ou interférence de tiers.

En plus d'être une plate-forme robuste, Ethereum est également un langage de programmation (Turing Complete) qui fonctionne sur blockchain. En termes simples, Ethereum est une plate-forme décentralisée que vous pouvez utiliser pour programmer une monnaie numérique.

Ethereum est la plus grande application logicielle décentralisée et avec son aide, vous pouvez facilement créer et publier des DApps de nouvelle génération.

Depuis son arrivée, Ethereum a complètement transformé l'industrie de la blockchain. Avant son arrivée, les solutions basées sur la blockchain n'étaient pas capables d'exécuter un ensemble diversifié d'applications. Par exemple, Bitcoin et d'autres crypto-monnaies ne pouvaient fonctionner que comme des monnaies numériques tandis qu'Ethereum est arrivé en tant que plate-forme permettant aux développeurs de créer des programmes basés sur Blockchain.

Ethereum est accessible à tous et permet à chacun de développer un programme basé sur la blockchain Ethereum. Selon Ethereum.org , "Ethereum est la blockchain programmable du monde".

Les personnes derrière Ethereum ont pris les concepts fondamentaux de Bitcoin et de crypto-monnaies similaires et leur ont ajouté plus de fonctionnalités et ont créé cette solution de blockchain très populaire.

En septembre 2019 , Ethereum était la deuxième plus grande crypto-monnaie au monde et derrière seulement l'application de blockchain la plus populaire, Bitcoin. Cependant, vous pouvez acquérir de l'éther (la crypto-monnaie d'Ethereum) beaucoup plus rapidement que Bitcoin, car le premier ne prend que 14 à 15 secondes tandis que le second prend près de dix minutes.

Pour bien comprendre Ethereum, vous devez être familiarisé avec certains composants fondamentaux de cette technologie. Voici les principaux aspects d'Ethereum que vous devez connaître :

  • Éther
  • Gaz
  • Machine virtuelle Ethereum
  • Contrats intelligents
  • DApps (applications décentralisées)

Dans les sections suivantes de notre tutoriel Ethereum pour débutants, nous aborderons ces concepts et comprendrons le fonctionnement interne de cette plateforme blockchain :

Ethereum - Termes importants que vous devez connaître

1. Émission de devises

Dans chaque pays, l'émission de devises est principalement gérée et surveillée par la banque centrale d'un pays ou l'autorité monétaire du pays. Par exemple, en Inde, la RBI est l'autorité monétaire qui réglemente toutes les autres banques et autorités financières.

2. Organisation autonome décentralisée

L'organisation autonome décentralisée est une organisation numérique gérée et réglementée par un ensemble de règles encodées sous la forme d'un programme informatique qui n'est pas influencé par une autorité gouvernementale centrale - elle est entièrement transparente et contrôlée par les actionnaires. Les pratiques et les enregistrements des transactions financières d'un DAO sont conservés sur un réseau Blockchain.

3. Contrats intelligents

Un contrat intelligent est un protocole informatique conçu pour faciliter et vérifier la négociation ou l'exécution du contrat entre deux ou plusieurs parties. Ces contrats numériques reposent sur un système consensuel et sont exécutés sans l'intervention d'aucun tiers.

4. Propriété intelligente

La propriété intelligente peut signifier à la fois des actifs physiques et des actifs cryptographiques (actions, droits d'accès à un réseau, etc.) qui sont construits sur Ethereum. La propriété de la propriété intelligente est contrôlée via le portefeuille Ethereum qui fonctionne comme une passerelle vers les DApps sur la blockchain Ethereum.

5. Solidité

Solidity est un langage orienté objet de haut niveau utilisé pour implémenter des contrats intelligents dans Ethereum. Il s'est inspiré des langages de programmation C++, Python et JavaScript et a été conçu pour cibler la machine virtuelle Ethereum (EVM)

6. Machine virtuelle Ethereum

La machine virtuelle Ethereum (EVM) est un environnement d'exécution conçu pour les contrats intelligents. EVM est essentiellement une couche informatique virtuelle juste au-dessus du matériel sous-jacent. Ces couches virtuelles créent un niveau d'abstraction entre le code d'exécution et la machine d'exécution. EVM contribue à améliorer la portabilité des logiciels et garantit également que les applications sont non seulement séparées les unes des autres, mais également de leur hôte.

7. Opérations

Les transactions sont des messages envoyés d'un compte à un autre. Ils incluent des données binaires appelées Ether. Il s'agit d'un transfert de valeur/s qui est diffusé sur le réseau Ethereum et collecté en blocs.

Le réseau Ethereum

À présent, vous savez déjà que le réseau Ethereum est un réseau Blockchain public distribué et décentralisé. Cependant, il y a bien plus que cela. Ethereum est la base de toutes les applications et organisations P2P décentralisées fonctionnant sur le réseau Ethereum. Ce réseau est composé de deux nœuds uniques - des nœuds complets et des nœuds légers.

Les nœuds complets sont ceux qui contiennent l'historique complet des transactions depuis le bloc genesis (parent) . Ils enregistrent chaque transaction qui a été validée et vérifiée selon les règles énoncées dans les spécifications d'Ethereum. Par conséquent, les nœuds complets sont la preuve de l'intégrité, de la sécurité et de la transparence du réseau Blockchain.

Contrairement aux nœuds complets, les nœuds légers ne contiennent qu'un sous-ensemble de l'ensemble de la Blockchain. Les nœuds légers ne vérifient pas chaque transaction et peuvent/ne peuvent pas conserver une copie de l'état actuel de la Blockchain. Ils dépendent principalement des nœuds complets pour leur fournir des détails manquants ou des fonctionnalités particulières spécifiques. Comme leur nom l'indique, les nœuds légers sont légers et, par conséquent, ils peuvent s'exécuter plus rapidement sur des appareils à mémoire limitée. Les nœuds légers sont principalement utilisés dans les portefeuilles électroniques qui sont intrinsèquement légers.

Qu'est-ce que l'éther ?

Ether est la crypto-monnaie que vous utilisez sur le réseau Ethereum pour effectuer des paiements pour les transactions. Vous pouvez utiliser Ether des deux manières suivantes :

  1. Les applications nécessitent un paiement Ether pour effectuer toute opération sur la plate-forme afin d'empêcher les programmes malveillants et défectueux de s'exécuter sur le réseau.
  2. Le réseau utilise Ether pour récompenser les mineurs qui contribuent au réseau Ethereum, tout comme le fait Bitcoin.

En dehors de ces applications, vous pouvez utiliser Ether pour acheter du gaz, que nous avons couvert dans la section suivante de notre tutoriel Ethereum pour les débutants. Dans Ethereum, Ether est une unité métrique, qui vous permet de payer avec précision le gaz et les transactions. La plus petite dénomination pour Ether est Wei. Un Ether a 1e18 Wei.

Qu'est-ce que le gaz ?

Ether n'est pas la seule monnaie numérique disponible sur Ethereum. Lorsque vous exécutez une transaction sur Ethereum, vous devez effectuer un paiement en Ether au mineur via Gas. Le gaz est un jeton intermédiaire et il vous permet de mesurer le travail de calcul nécessaire pour effectuer une transaction ou exécuter un contrat intelligent.

Le prix du Gaz est exprimé en Ether. De plus, les mineurs déterminent le prix du gaz et ils peuvent refuser d'exécuter un contrat intelligent ou de traiter une transaction qui n'offre pas le prix du gaz requis.

Nous calculons les frais de transaction dans Ethereum à travers l'équation suivante :

Ether = Limite de gaz x Prix du gaz

Ici, le prix du gaz est la quantité d'éther que vous devez payer et la limite de gaz est la quantité de gaz utilisée pour le processus de calcul. La limite de gaz et le prix du gaz garantissent qu'un contrat se termine à un certain point.

Où va le gaz dans l'éther ? Il va dans la machine virtuelle Ethereum (EVM), que nous avons couverte dans la section suivante :

Qu'est-ce que la machine virtuelle Ethereum ?

La machine virtuelle Ethereum est l'endroit où toutes les transactions dans Ethereum sont effectuées. Il vous permet de développer toutes les applications sur une plate-forme unique. On peut dire que l'EVM est le moteur qui fait fonctionner l'ensemble du réseau Ethereum.

Bien qu'Ethereum ait défini des protocoles définis pour développer des applications décentralisées, il a pu le faire grâce à l'EVM. La machine virtuelle Ethereum est isolée et en bac à sable. Cela signifie que le code exécutant l'EVM n'a pas accès au système de fichiers ou au réseau et a très peu d'accès aux autres contrats.

Lorsque vous entrez votre code Solidity dans Ethereum, il passe d'abord au compilateur Ethereum. Après cela, il envoie le bytecode EVM à la machine virtuelle Ethereum qui gère le reste du processus.

L'EVM gère le calcul et l'état interne d'Ethereum. Il exécute du code, maintient une base de données interne et possède de nombreux objets appelés « comptes » qui peuvent communiquer entre eux.

Que sont les contrats intelligents ?

Un contrat intelligent est un programme informatique qui s'exécute automatiquement. En tant que protocole de transaction, il vous permet d'échanger des biens, de l'argent et des services via la blockchain. Les contrats intelligents ont des conditions spécifiques fixées par les deux parties l'une pour l'autre et lorsque les deux parties remplissent leurs conditions respectives, le contrat intelligent fonctionne en conséquence.

Avec les contrats intelligents, vous pouvez effectuer diverses tâches telles que le vote décentralisé et bien plus encore. En termes simples, un contrat intelligent est un contrat qui exécute, applique, gère et gère le paiement automatiquement.

Pour exécuter un contrat intelligent sur Ethereum, vous aurez besoin de jetons (Ether). Sans la crypto-monnaie requise, vous ne pouvez pas utiliser de contrats intelligents sur Ethereum.

Pour créer un contrat intelligent, vous devrez utiliser Solidity, le langage de programmation polyvalent d'Ethereum. Il est développé pour fonctionner dans la machine virtuelle Ethereum et vous permet d'effectuer des calculs arbitraires, de stocker des états et d'effectuer des transactions de jetons numériques.

Les contrats intelligents offrent de multiples avantages grâce auxquels ils deviennent de plus en plus populaires. Le plus grand avantage de l'utilisation de contrats intelligents est qu'ils suppriment le besoin d'avoir un intermédiaire.

Comme les contrats intelligents sont automatiques, il n'y a pas de marge d'erreur humaine. Ils sont présents virtuels et sont assez abordables par rapport aux contrats traditionnels. Les contrats intelligents ont des cas d'utilisation potentiels dans plusieurs secteurs, notamment :

  • Soins de santé
  • Finance et banque
  • Services B2B (services informatiques, services marketing, etc.)

Lisez aussi: Idées et sujets de projet Ethereum

Que sont les DApp ?

Une DApp ou application décentralisée est une application logicielle exécutée sur un réseau distribué. Il est hébergé sur un réseau décentralisé peer-to-peer au lieu d'un serveur central. Un DApp peut être n'importe quelle application logicielle telle qu'une application mobile ou un site Web. La distinction entre une DApp et une application conventionnelle est qu'elle est construite sur un réseau décentralisé.

L'interface utilisateur d'une application décentralisée est comme l'interface de n'importe quelle application conventionnelle. Cependant, tous les processus backend d'une application décentralisée sont basés sur un réseau décentralisé.

Ethereum est un réseau blockchain décentralisé. Ainsi, lorsque vous créez une application basée sur Ethereum, vous créez essentiellement une application décentralisée. Les DApps sont un concept relativement nouveau, mais ils deviennent très populaires.

À mesure que les gens se préoccupent davantage de leur vie privée et de leur sécurité, la demande de DApps augmentera en conséquence. Les connaître tôt peut facilement vous donner un avantage professionnel.

Semblable aux applications décentralisées, Ethereum possède également des organisations autonomes décentralisées (DAO). Ces organisations n'existent que sur la blockchain et sont contrôlées par les protocoles de la blockchain. Ces organisations sont créées pour conserver des actifs et utiliser un système de vote pour gérer la distribution de ceux-ci. Apprenez tout ce que vous devez savoir sur les DApps.

Devises Ethereum

Comme mentionné précédemment, le réseau Ethereum fonctionne sur deux types de crypto-monnaies - Ether et Gas.

1. Éther

Ether est le nom de la crypto-monnaie utilisée pour payer toutes les transactions effectuées sur le réseau Ethereum. Cependant, outre le paiement des transactions et des services généraux, Ether est également utilisé pour acheter du gaz, qui est utilisé pour payer les services de calcul au sein de l'EVM.

L'éther est une unité métrique ayant plusieurs dénominations pour aider les utilisateurs à payer le montant exact des transactions et du gaz. La plus petite dénomination - l'unité de base - d'Ether est connue sous le nom de Wei. Voici un tableau complet de toutes les dénominations Ether :

2. Gaz

EVM exécute le code qui est déployé sur le réseau Ethereum. Maintenant, vous pouvez penser que l'on peut exécuter efficacement une boucle infinie sur l'EVM et surcharger sa mémoire. Grâce à Gas, ce n'est pas possible.

Le gaz représente une métrique pour les ressources de calcul sur le réseau. Chaque contrat sur le réseau Ethereum se voit attribuer une quantité maximale de gaz qu'il peut utiliser pour les calculs. Cette limite définie est appelée la « limite de gaz ». Il y a deux autres termes de gaz que vous devez connaître :

Prix ​​​​du gaz - C'est le prix du gaz en termes de jetons comme Ether et ses dénominations. Le prix du gaz est une valeur flottante qui aide à stabiliser la valeur du gaz. Ainsi, si le coût des jetons ou de la devise fluctue, le prix du gaz s'ajuste également pour maintenir la même valeur réelle.

Frais de gaz - Il représente la quantité de gaz que l'on doit payer pour exécuter une transaction ou un programme particulier (contrat).

Ainsi, si jamais vous essayez d'exécuter un code infini (un qui s'exécute indéfiniment), le contrat finira par dépasser sa limite de gaz allouée et l'ensemble de la transaction qui a invoqué le contrat reviendra à son état d'origine.

Quels sont les avantages et les limites d'Ethereum ?

Dans cette section de notre tutoriel Ethereum pour débutants, nous allons voir les différents avantages de cette plateforme blockchain :

  • Avec Ethereum, vous pouvez télécharger et demander l'exécution de programmes.
  • Il offre un stockage de données permanent et persistant.
  • Vous pouvez créer un jeton négociable que vous pouvez utiliser comme partage virtuel ou comme monnaie numérique.
  • Il offre une disponibilité de 100 % et une résistance aux attaques DDoS (Distributed Denial of Service).
  • Vous pouvez créer des organisations virtuelles (DAO) dans Ethereum.
  • Il vous permet de créer des DApp hautement sécurisés et tolérants aux pannes.

Cependant, comme toute autre technologie, Ethereum a sa part de limites. Voici quelques inconvénients d'Ethereum :

  • Les applications qui nécessitent une vérification de l'ID utilisateur seront problématiques à construire sur Ethereum car il n'y aura pas d'autorité centrale pour effectuer la vérification.
  • Mettre à jour une application ou corriger des bogues peut être assez difficile car chaque pair devrait mettre à jour son logiciel de nœud.

Exploitation minière à Ethereum

Comme toute autre technologie Blockchain, Ethereum promeut la sécurité grâce à un modèle basé sur des incitations, populairement connu sous le nom de mécanisme de preuve de travail. L'algorithme de preuve de travail utilisé dans Ethereum s'appelle Ethash, un algorithme de hachage inspiré de l'algorithme Dagger-Hashimoto.

Les étapes du minage d'Ethereum sont les suivantes :

  • Un utilisateur initie une transaction en envoyant des valeurs Ether à un autre utilisateur.
  • Cette nouvelle transaction est alors ajoutée dans un nouveau bloc avec les autres transactions contenues dans le bloc précédent.
  • Les mineurs du réseau se font concurrence pour valider le nouveau bloc avec un ensemble spécifique d'instructions.
  • Le mineur qui peut valider avec succès le nouveau bloc et l'ajouter au réseau reçoit une récompense, c'est-à-dire un Ether.
  • Une fois la transaction validée, l'utilisateur qui a initié la transaction gagne également un Ether.

Tutoriel Ethereum pour les débutants : et ensuite ?

Ethereum est une vaste technologie aux multiples aspects. L'apprentissage de ses différentes sections telles que les contrats intelligents et l'exploitation minière peut être assez fastidieux sans ressources et conseils suffisants. Comme vous avez dû le voir dans notre tutoriel Ethereum pour débutants, si vous comprenez Blockchain et son implémentation dans Ethereum, travailler avec cette technologie devient un jeu d'enfant.

C'est pourquoi nous vous recommandons de suivre un cours sur la blockchain qui couvre Ethereum et tous ses aspects techniques. Un cours blockchain vous fournira un programme structuré afin que vous puissiez étudier de manière efficace et efficiente.

Chez upGrad, nous proposons plusieurs cours sur la blockchain qui vous aident à comprendre les concepts de base et avancés de la blockchain avec Ethereum. Vous apprendrez ce qu'est la blockchain, ce qu'est Ethereum, comment ils fonctionnent ensemble et comment vous pouvez les utiliser en tant que professionnel de la blockchain.

Chez upGrad, vous bénéficiez des cours blockchain suivants :

Master of Science en informatique (spécialisation en développement de blockchain offerte)

upGrad propose ce programme avec l'Université John Moores de Liverpool. Il dure 19 mois et offre plus de 500 heures de matériel d'étude. Au cours de ce programme, vous bénéficierez d'un mentorat de groupe bimensuel avec des mentors de l'industrie et de plus de 30 projets et missions. C'est un excellent cours de blockchain pour les personnes issues d'un milieu non technologique.

Postuler pour un programme de certificat avancé en Blockchain

Ce cours dure 7,5 mois et vous offre plus de 250 heures d'apprentissage. Vous obtiendrez le statut d'ancien élève de l'IIIT Bangalore et un mentorat personnalisé 1: 1 de la part d'experts de l'industrie de la blockchain. Outre Ethereum, vous découvrirez également Hyperledger Fabric, les contrats intelligents et bien plus encore.

Programme exécutif PG en développement de logiciels - Spécialisation en Blockchain

Ce cours de 13 mois vous donnera gratuitement une certification exécutive de 4 mois en science des données et en apprentissage automatique. Vous étudierez à travers des conférences en direct et des sessions en ligne au cours de ce programme et apprendrez plus de 10 outils et langages de programmation. En plus de cela, vous pouvez tester vos connaissances sur la blockchain et Ethereum

Tous les cours ci-dessus exigent que vous ayez un baccalauréat avec 50% ou des notes de passage équivalentes. Notez que vous pouvez vous inscrire à l'un de ces cours sans aucune expérience de codage. Vous apprendrez toutes les compétences requises pour devenir un professionnel qualifié.

Conclusion

Ethereum est certainement une technologie phénoménale. En complétant ce tutoriel Ethereum pour débutants, vous avez certainement fait le premier pas vers l'apprentissage de cette technologie.

Ethereum Blockchain a de nombreuses autres applications qui méritent d'être notées. Les carrières dans le domaine de la Blockchain augmentent car elles ont changé le paysage de la technologie.

Maîtrisez la technologie du futur - Blockchain

Postuler pour un programme de certificat avancé en Blockchain