logo academy

Smart contract Etherum, comment ça marche ?

30 avril, 2022
8 min
Smart contract Etherum, comment ça marche ?
débutant
Tu apprendras

    Comme nous l’avons expliqué dans les articles précédents, Ethereum est une plateforme mondiale et décentralisée pour les cryptomonnaies et de nouveaux types d’applications.

    Jusqu’à relativement récemment, la création d’applications sur blockchain nécessitait une solide expérience en développement et en cryptographie. 

    Les temps ont changé et des applications auparavant inimaginables, du vote électronique à l’enregistrement numérique des actifs immobiliers en passant par le trading, sont désormais activement développées et mises en œuvre plus rapidement que jamais. Grâce aux smart contracts, Ethereum fournit aux développeurs les outils pour créer des applications décentralisées, des DApp et des DAO.

    Que sont les smart contracts Ethereum ?

    Smart contract signifie littéralement « contrat intelligent ». Comme les contrats que nous connaissons, les smart contracts se présentent également comme une série de conditions et de conséquences, c’est-à-dire qu’ils sont construits comme la phrase hypothétique « Si… alors ». Par exemple : SI je paie le loyer le premier du mois, ALORS le propriétaire me laisse utiliser l’appartement.

    La différence substantielle avec les contrats papier légaux est que les smart contracts sont constitués d’un code cryptographique et leur « ALORS » implique l’activation d’une série de transactions on-chain (sur la blockchain) programmées et automatisées pour des cas d’application spécifiques. Ainsi, dans un futur intelligent géré par des smart contracts, si mon propriétaire reçoit le loyer payé via la blockchain, la porte intelligente de mon appartement s’ouvrira devant moi lorsqu’elle détectera mon visage.

    La technologie des smart contrats est définie par certaines caractéristiques qui la rendent à la fois sûre et controversée : 

    • Automatique (Self-executing)
    • Immuable
    • Littérale

    Un smart contract ne prévoit donc pas de dérogation ni d’exceptions si celles-ci ne sont pas programmées. C’est comme si nous imaginions un robot juge.

    Par conséquent, plus le contrat est complexe, plus il est difficile de faire respecter toutes les conditions ou de répondre à toutes les éventualités sans laisser de place à l’interprétation.

    Que sont les EVM et les DApps ?

    DApp

    Les DApps (Decentralized Applications) sont essentiellement des applications basées sur la blockchain et donc décentralisées. Elles consistent en une série de smart contracts conçus pour un cas d’utilisation spécifique.

    Avant la création d’Ethereum, les DApps étaient conçues pour effectuer un ensemble très limité d’opérations. Bitcoin par exemple, est une DApp développée principalement pour appuyer la circulation de la cryptomonnaie Bitcoin.

    Les développeurs qui souhaitaient créer de nouveaux DApps ont rencontré un problème. Soit élargir l’ensemble des fonctions offertes par le Bitcoin et d’autres types d’applications, ce qui est très compliqué et prend du temps, soit développer une blockchain et une plateforme entièrement nouvelles. C’est ce qu’a fait le créateur d’Ethereum, Vitalik Buterin.

    EVM

    Principale innovation d’Ethereum, la « Ethereum Virtual Machine » (EVM) est un logiciel sur le réseau Ethereum qui permet à n’importe qui d’exécuter n’importe quel programme, quel que soit le langage de programmation, à condition d’avoir suffisamment de temps et d’espace. Vitalik a comparé le protocole EVM à une sorte de couteau suisse. La machine virtuelle Ethereum rend le processus de création d’applications blockchain beaucoup plus facile et plus efficace qu’auparavant. Au lieu de devoir créer une blockchain à partir de zéro pour chaque nouvelle application, Ethereum permet le développement de milliers d’applications potentiellement différentes sur une seule plateforme. 

    De plus, cela signifie que tous les services centralisés peuvent être décentralisés à l’aide d’Ethereum. Pense à tous les services intermédiaires qui existent dans des centaines de secteurs différents, tels que les prêts bancaires, les services de courtage, les registres de valeurs mobilières, les systèmes de vote, la conformité réglementaire, et bien plus encore.

    Les avantages d’une DApp Ethereum

    Puisque les applications décentralisées fonctionnent sur la blockchain, elles profitent de toutes ses propriétés.

    1. Immutabilité. Les données ne peuvent pas être modifiées par des tiers. 
    2. Incorruptible et inviolable. Les applications reposent sur un réseau formé sur le principe du consensus, rendant la censure impossible.
    3. Sécurité. Sans point central de vulnérabilité et protégées par chiffrement, les applications sont à l’abri des attaques de pirates et des activités frauduleuses.
    4. Pas de « temps d’arrêt ». Les DApps ne se mettent jamais en veille et ne peuvent jamais être désactivées.

    Les inconvénients des DApps Ethereum

    Malgré les nombreux avantages, les DApps ne sont pas parfaites. Étant donné que le code des smart contracts est écrit par des humains, ces derniers ont les mêmes limites que les personnes qui les écrivent. Des bogues ou des omissions dans le code peuvent provoquer des anomalies involontaires. Si une erreur dans le code est exploitée pour compromettre le système, il n’y a aucun moyen efficace de l’arrêter, autre que d’obtenir le consentement du réseau et de réécrire le code. Cela irait toutefois à l’encontre de l’essence même de la blockchain, qui doit être immuable. De plus, toute décision prise par une petite partie seulement du réseau soulève de sérieuses questions sur le caractère décentralisé d’une application.

    Que sont les DAO ?

    Ethereum peut également être utilisé pour créer des organisations autonomes décentralisées (DAO). Une DAO est une organisation complètement autonome et décentralisée sans leader unique. Les DAO sont l’expression la plus complexe des smart contracts car ce sont de véritables organisations avec un but, comme une entreprise ou un organisme gouvernemental. Ici, les smart contracts remplacent la gestion, donc par rapport à une DApp ou à une blockchain, s’ajoutent des niveaux supplémentaires d’automatisation des mécanismes de régulation, de consentement et de vérification. Une DAO est la propriété de tous ceux qui achètent des tokens, mais ceux-ci, au lieu d’être équivalents à des actions et à des titres de propriété, agissent comme des contributions donnant droit de vote.

    Une DAO consiste en un ou plusieurs contrats et peut être financée par un groupe de personnes partageant les mêmes idées, par exemple. Une DAO fonctionne de manière totalement transparente et totalement indépendante de toute intervention humaine, y compris celle de ses créateurs originaux. Une DAO restera en ligne tant qu’elle pourra couvrir les frais de subsistance et fournir un service utile à sa clientèle

    Stephen Tual, fondateur de Slock.it, ancien CCO d’Ethereum.

    L’exemple le plus connu de DAO est Dash, la DAO qui émet une cryptomonnaie open source.

    La première organisation autonome décentralisée (connue sous le nom de DAO) devait fonctionner comme un fonds de capital-risque pour l’espace crypto et décentralisé. L’absence d’autorité centralisée a réduit les coûts et offre théoriquement plus de contrôle et d’accès aux investisseurs.

    Les DAO sont un concept en développement, en effet les premiers cas de DAO ont rencontré des problèmes comme celui du hack DAO en juin 2016.

    Début mai 2016, des membres de la communauté Ethereum ont annoncé la naissance d’une DAO, également connu sous le nom de Genesis DAO. Elle a été construit comme un smart contract sur la blockchain Ethereum. Le framework de programmation a été développé en open source par l’équipe Slock.it, mais a été distribué sous le nom de « The DAO » par des membres de la communauté Ethereum. 

    Cependant, le 17 juin 2016, un pirate a trouvé une faille dans le code qui lui a permis de drainer des fonds de la DAO. Aux premières heures de l’attaque, 3,6 millions d’ETH ont été volés, soit l’équivalent de 70 millions de dollars.

    Cela a été possible non pas en raison d’une omission de la part d’Ethereum, mais d’une faille dans le code de la DAO elle-même. De même, si un site Web ne fonctionne pas, ce n’est pas un problème provenant d’Internet en général, mais du site Web en question. 

    Conclusion

    Ethereum est un projet très ambitieux qui suit des idéaux élevés, mais malgré les obstacles importants que des projets similaires doivent surmonter, il a obtenu presque autant de succès que le Bitcoin. Avec son grand idéal de décentraliser tout processus économique et social, Ethereum a de grandes chances d’être le projet qui conduira le monde vers un avenir plus intelligent. 

    En rapport