Bonjour à tous !
Aujourd'hui, article un peu spécial.... ce n'est pas Merlin qui vous écrit mais un nouvel arrivant !
Qui suis-je ?
Yann, 24 ans, ingénieur grimpeur d'origine Provençale, je suis novice dans le monde de la blockchain et des cryptomonnaies.
Voilà trois mois que je suis abonné à cette newsletter et je dois dire que cela a eu un impact très positif ! Non seulement les articles de Tech It Easy m'ont permis de mieux comprendre un certain nombre de concepts mais cela m'a également donné envi de partager mon savoir sur cette technologie, comme le fait Merlin à travers ces articles.
Après quelques échanges, Merlin m'a proposé de rejoindre le projet et me voici donc derrière mon clavier à rédiger mon premier article 🤓
Merci Merlin pour tes éclairages et de ton accueil sur Tech It Easy !
Passons aux choses sérieuses.
Le sujet du jour est particulièrement d'actualité : début Novembre, Ethereum a enfin annoncé le lancement de sa tant attendue version 2.0 ! Nous allons voir ensemble ce qu'est cette nouvelle version et ses évolutions majeures.
Mais avant de se plonger dans le vif du sujet, quelques rappels sur ce qu'est Ethereum.
Rappels sur Ethereum 1.0 🌐
Depuis son lancement en 2015, Ethereum est rapidement devenu la blockchain la plus utilisée après Bitcoin.
Cela fait maintenant plusieurs années que son token, l'ether (ETH), représente la seconde plus grosse capitalisation du marché crypto - à l'heure actuelle, on parle d'environ 52 milliards de dollars ce qui représente une part de marché de 10% (cela reste bien derrière Bitcoin qui continue de dominer le marché avec une part de 65%).
Cecit dit, on entend dire qu'à l'avenir, Ethereum pourrait dépasser Bitcoin et devenir numéro 1 !
Mais qu'est ce qui fait la popularité d'Ethereum ?
La réponse réside dans sa technologie des Smart Contracts.
📚 Smart Contract : algorithme pouvant exécuter des opérations (via des tokens) selon des conditions spécifiques (type "si tel évenement est vérifié, alors telle action est déclenchée"). Ainsi, les opérations sont automatiquement exécutées, sans le besoin d'une intervention humaine.
En d'autres termes, sur Ethereum il est possible d'écrire, stocker et faire fonctionner du code informatique. Ces programmes permettent d'exécuter des transactions conditionnelles sur les tokens supportés par Ethereum.
Cette couche de programmabilité facilite grandement le développement d'applications décentralisées (DApps), jusqu'alors très limité au sein de l'écosystème blockchain.
📚 Application décentralisée (DApp) : application fonctionnant sur un réseau décentralisé (par opposition aux applications classiques qui dépendent de serveurs centralisés). Elle est supportée par un ou plusieurs smart contracts déployés sur une blockchain.
Entre 2016 et 2018, Ethereum a grandement supporté l'essor des applications décentralisées. Durant cette période, le nombre moyen de DApps developpées par mois a été multiplié par 10.
Aujourd’hui, Ethereum est un véritable pillier de l'écosystème crypto, hébergeant plus de 78% des DApps sur le marché.
Très bien, Ethereum est une vraie pépite. Ceci dit, comme beaucoup de projets, il comporte des limites...
Les limites d'Ethereum 1.0 🚧
En 2018, Vitalik Buterin (fondateur d'Ethereum) évoque le trilemme Sécurité - Décentralisation - Scalabilité. Selon lui un projet blockchain peut être évaluer selon trois critères :
Sécurité - le réseau doit assurer l'authenticité des transactions, garantir l'immuabilité des données et être résilient aux attaques.
Décentralisation - le réseau doit fonctionner de manière autonome, sans organe central de contrôle.
Scalabilité - si le nombre d'utilisateurs augmente, le réseau doit pouvoir s'adapter sans que ses performances ne soient affectées (en particulier, la vitesse et les frais de transactions).
Dans ce communiqué, Vitalik soutient qu'un projet blockchain ne peut être à la fois sécurisé, décentralisé et scalable. Seulement deux axes peuvent être développés, au détriment du troisième.
Comme beaucoup d'autres projets blockchain, Ethereum a privilégié la sécurité et la décentralisation, faisant de la scalabilité son point faible.
⚠️ Aujourd'hui, le réseau a la capacité de traiter environ 30 transactions par seconde (TPS). Par comparaison avec le réseau VISA qui peut gérer jusqu’à plus de 4000 TPS, c'est peu.
Lorsque la charge du réseau (nombre de transactions demandées par seconde) augmente au delà de la bande passante (30 TPS), cela créé une congestion et les transactions prennent plus de temps a être validées.
Il faut savoir que lorsqu'un utilisateur d'Ethereum fait une requête de transaction sur le réseau, c'est à lui de fixer les frais qu'il est prêt à payer pour que sa transaction soit validée. Puisque les validateurs du réseau traitent en priorité les transactions à plus haut rendement, lors d'épisodes de congestion, les utilisateurs (surtout les plus riches) ont tendance à augmenter leur frais au dessus de la moyenne afin que leur transaction soit traitée en priorité. C'est à travers ce phénomène que pendant l'été 2020, le prix moyen d'une transaction est passé d'environ 70 centimes (Juillet) à plus de 13 dollars (Septembre).
Vous l'aurez compris : pour prétendre à une adoption de masse, Ethereum se doit d'améliorer sa scalabilité de manière significative.
Mais comment ? Le trilemme Sécurité - Décentralisation - Scalabilité n'est il pas insoluble ?
La fondation Ethereum veut nous prouver que non et adresse ce challenge depuis plusieurs années avec le développement de Serenity, une version 2.0 d'Ethereum hyper scalable.
Serenity : Ethereum 2.0 🚀
Ethereum 2.0 (Serenity) est une évolution de la version actuelle du réseau Ethereum visant à améliorer signicativement sa scalabilité. Cette évolution est envisagée depuis 2017, seulement elle est très complexe a mettre en place.
Pour que la migration d'Ethereum 1.0 vers 2.0 s'effectue correctement (sans que les performances ou la sécurité du réseau soient affectées), il faut un plan d'une précision chirurgicale sur plusieurs années ➡️ En voici la version de Mars 2020 partagée par Vitalik Buterin dans un post Twitter :
Loin de moi l'idée de vous expliquer cette usine à gaz. Cela juste pour vous montrer que Vitalik Buterin et son équipe de développeurs travaillent activement sur le sujet et ont une direction clairement identifiée (du moins pour eux).
Récemment, cette direction a été plus explicitement formulée par Vitalik :
La fusée Ethereum est en route vers l'espace intergalactique !
Le point de départ représente la version actuelle du réseau avec une bande passante d'environ 15-45 TPS. En suivant la trajectoire spatiale imaginé par Vitalik, Serenity devrait pousser la bande passante du réseau sur un premier orbite autour de 1000 - 4000 TPS pour ensuite la propulser à 25000 - 100000 TPS !
Alright, intéressons-nous aux évolutions technologiques qui vont permettrent cette envolée vers les étoiles 🤓
Globalement, l'implémentation d'Ethereum 2.0 se divise en quatre phases majeures.
Phase 0 - Beacon Chain (Décembre 2020)
Cette phase correspond au déploiement de la Beacon Chain, une nouvelle chaîne reposant sur un protocole Proof-of-Stake (PoS) et qui fonctionnera en parallèle de la chaîne Proof-of-Work (PoW) - l'actuel Ethereum.
💡 Les différences entre PoW et PoS pourrait faire l'objet d'un article complet mais pour faire simple, le PoS est moins énergivore, plus sécurisé, et permet l'implémentation du sharding (une solution de scalabilité très efficace - cf. Phase 1). Pour plus d'information, voici un article traitant du sujet : Proof-of-Work VS. Proof-of-Stake.
Dans le futur, la Beacon Chain sera la colonne vertébrale d'Ethereum 2.0, permettant de déterminer et sécuriser l'état des chaînes secondaires (shard chains) qui seront implémentées dans la phase 1.
Le lancement de la Beacon Chain se fera une semaine après que 16 384 validateurs aient rejoint le réseau. Pour être sélectionnés, ces derniers doivent chacun bloquer (staker) 32 ETH via un smart contract - cela représente actuellement plus de 13 000 $.
Si vous êtes intéressés pour devenir validateur, vous pouvez aller faire un tour sur le Launchpad d'Ethereum 2.0.
Phase 1 - Shard Chains (2021)
La phase 1 correspond à l'implémentation du sharding. Cette solution offre la possibilité de répartir la charge du réseau à des sous-ensemble de noeuds appelés shards.
Pendant cette phase, le réseau sera divisé en 64 shards qui pourront traiter des transactions en parallèle et ainsi multiplier la capacité de la bande passante par 64. La répartition de la charge au sein des shards sera géré par la Beacon Chain.
Sur ces shards viennent se greffer des "rollups" : une seconde solution de scalabilité permettant de propulser la bande passante sur l'orbite des 25000 - 100000 TPS.
Phase 1.5 - Réseau hybride (2021)
La phase 1.5 fusionne le système Ethereum 1.0 avec sa nouvelle version 2.0. Ici, la chaîne PoW sera migrée sur un shard d'Ethereum 2.0.
Durant cette phase, le réseau est hybride : la chaîne PoW continue de gérer les smart contracts et les complexités d'Ethereum 1.0 mais est prise en charge par la Beacon Chain.
Phase 2 - Exécution opérationnelle (2022)
Avec la phase 2 arrive l'Ethereum Web Assembly (eWASM) qui viendra remplacer l'actuelle machine virtuelle, l'Ethereum Virtual Machine (EVM).
eWASM vient transposer les fonctionnalités techniques gérées jusqu'alors par la chaîne PoW sur l'ensemble du système Ethereum 2.0. Ainsi, les smart contracts et transactions pourront être déployés sur les autres shards, rendant le réseau 100% opérationnel.
A ce stade, la chaîne PoW ne va pas disparaître d'un seul coup. Une transition graduelle du PoW au PoS se fera par l'intermédiaire de la Difficulty Bomb qui rendra le minage PoW de plus en plus difficile jusqu'à ce qu'il devienne impossible.
Ce qu'il faut retenir 🙌
Ethereum est aujourd'hui un pillier de l'écosystème blockchain, se plaçant à la seconde place derrière Bitcoin.
Ceci dit, ayant privilégié sa sécurité et sa décentralisation, Ethereum est aujourd'hui peu scalable.
Ethereum 2.0 (Serenity) vise, entres autres, à résoudre ce problème via l'implémentation de solutions techniques, notamment le Proof-of-Stake et le sharding.
Afin d'assurer la continuité des performances du réseau actuel, l'implémentation de Serenity se fera graduellement en quatre phases, entre 2020 et 2022.
Lexique 📚
Smart Contract : algorithme pouvant exécuter des opérations (via des tokens) selon des conditions spécifiques (type "si tel évenement est vérifié, alors telle action est déclenchée"). Ainsi, les opérations sont automatiquement exécutées, sans le besoin d'une intervention humaine.
Application décentralisée (DApp) : application fonctionnant sur un réseau décentralisé (par opposition aux applications classiques qui dépendent de serveurs centralisés). Une DApp est supportée par un ou plusieurs smart contracts déployés sur une blockchain.
Sources 📃
Voilà pour cette édition. Vous pouvez envoyer vos retours (positifs ou non) sur à Merlin (LinkedIn, Twitter ou Facebook) ou Yann (LinkedIn ou Facebook).
Si ça vous a plus, n’hésitez pas à partager la newsletter ! 🤗
Et si on vous a transféré ce mail et que vous souhaitez vous abonner, le lien est ici 👇
À la prochaine !
Yann et Merlin