Keynote Metropolis de Vitalik Buterin à Singapour


Il y a 3 jours le 26 janvier 2017 Vitalik Buterin était l’invité du meetup Ethereum Singapore  où il a présenté  une keynote sur Metropolis, la version d’Ethereum à venir. Pour vous éviter de vous écorcher les oreilles avec le son pas terrible de la vidéo de cet évènement voici en résumé l’essentiel de ce qui s’est dit.

Pour mémoire après Frontier puis l’actuelle Homstead, Metropolis  est la release qui doit ouvrir Ethereum au grand public via des clients plus user friendly ainsi que par l’implémentation de CASPER le protocole « proof of stake »(ndt : preuve d’enjeu) en lieu et place du proof of work actuel. La second semestre 2016 ayant été marquée par les efforts des développeurs Ethereum pour sécuriser la plateforme suite au piratage de The DAO, il était temps de clarifier un petit peu la roadmap Metropolis. Dans cette Keynote après une introduction sur les plus intéressants progrès des développement Vitalik commente la liste des Ethereum Improvements Protocole (ndt: Amélioration des Protocoles Ethereum) ou EIP qui pourraient être intégrés dans Metropolis.
Les EIP :

  • EIP 86 (“abstraction”)
    • Il s’agit d’une simplification du protocole en ajoutant une couche d’abstraction sur l’exécution monolithique des contrat dans l’EVM :
      •  en autorisant n’importe quel compte de la chaine de transaction à payer et non seulement celui qui a lancé la transaction. Ce qui permet par ailleurs une anonymisation du paiement du GAS
    • en décorrélant l’adresse du contrat « physique » de son adresse d’appel. Un contrat protocol un contrat peut en appeler un autre même s’il n’existe pas encore en se référent à une adresse sous forme de hash plutôt qu’à une adresse réelle.
  • EIP 98 (removal of intermediate state roots)
    • Il s’agit de permettre la parallelisation  du traitement des transactions
  • EIP 96 (EVM-ification)
    • Simplification et sécurisation des clients légers
  • EIP  100 (target block time including uncles)
    • améliore la sécurité en diminuant l’intérêt pur un pool de minage de miner les oncles.
  • EIP 101 (big integer precompile)
    • Améliore les calculs RSA  et d’autres type de cryptographie au-delà de la cryptographie à courbe elliptique actuelle,
    • RSA notamment est très répandue et son calcul est inefficace dans l’EVM
  • EIP 116 (STATIC_CALL)
    • Opcode dont l’introduction est en cours d’évaluation.
    • L’idée est de sécuriser des appels en lecture seul sur des contrats en étant sur de ne pas les modifier
  • EIP 195 (PURE_CALL)
    • Une version plus statique du STATIC_CALL : on ne peut ni lire, ni écrire juste déclencher le contrat.
  • EIP 140 (THROW opcode)
    • Permet de déclencher une exception de code et d’envoyer un message d’erreur sans consommer tout le gas restant
  • EIP 141 (invalid opcode)
    • Il ne s’agit pas d’un changement de code mais simplement d’entériner que le code 0xfe est définitivement invalide.

En terme de roadmap de livraison Vitalik indique que le périmètre final de Metropolis sera déterminé en fonction des contingences techniques en terme de temps de développement. Les points non intégrés le seront dans un fork postérieur. Vitalik précise que la feuille de route R&D d’Ethereum est axée sur trois éléments : la confidentialité, l’évolutivité (ndt : scalability) et la sécurité.

En ce qui concerne la confidentialité, les développeurs Ethereum travaillent dur, et le projet le plus enthousiasmant est zk-SNARKs (ndt: prononcer « zikisnarks » en français). Ils travaillent activement avec l’équipe de Zcash pour mettre en œuvre des preuves de zero-knowledge (zéro-connaissance l’idée est que l’authentification se fasse sans que les facteurs même de celle-ci ne soit connus ) dans la plate-forme. Bien qu’il soit encore trop tôt pour que Vitalik promette un échéancier pour les zk-SNARKs, il estime que plus de 80% de la communauté des développeurs sont satisfaits de leurs progrès et travaillent à parvenir à une résolution des bugs ouverts au cours des prochains mois. Il y a notamment quelques défauts que la Fondation et les core développeurs sont toujours en train de résoudre.
Vitalik détaile les points suivants :

  • Zk-SNARKs vous permet d’authentifier des assertions sur des données chiffrées sans révéler quoi que ce soit sur ces données à l’exception de la revendication que vous souhaitez prouver.
  • C’est une technologie très puissante mais qui présente certaines faiblesses, comme le besoin d’une « configuration fiable »,
  • La création et la vérification des épreuves zk-SNARKs nécessitent l’accès à une clé de configuration mais cette clé de configuration doit être générée par des personnes tierces.
  • La clé est constituée d’informations secrètes qui doivent être supprimées pour sécuriser la clé de configuration. Sans cela elles pourraient être utilisées pour créer des transactions non valides
  • Les configurations multi-tiers (partager le « secret » entre plusieurs tiers) permettent d’atténuer ces problèmes mais seulement partiellement. Rien ne peut garantir à 100% qu’il n’y aura pas de tiers malintentionné : c’est le facteur humain.
  • Durée de production d’une preuve :
    • Environ 40 secondes sur un ordinateur
    • Environ 5-10 minutes sur un téléphone portable ce qui est limite en terme d’usage.

En ce qui concerne l’évolutivité, Metropolis tentera de garantir celle-ci en passant à un algorithme de consensus de type PoS , qui ouvrira les portes à de futures améliorations de l’évolutivité, comme le sharding (Fragmentation de la chaine). Mais la core-tem des développeur doit d’abord s’occuper de la bombe à retardement à l’intérieur Ethereum.

Cette bombe à retardement, ou plus précisément, cette bombe à difficulté, c’est celle qui a été mise en place dans Ethereum pour rendre l’exploitation de la PoW de plus en plus difficile jusqu’à ce qu’il devienne impossible de mener des opérations, et que le réseau se bloque totalement en étant en quelque sorte gelé. L’idée initiale était que cela forcerait le passage à un algorithme de PoS. Malheureusement en raison du retard pris par les développeurs de la core team à la suite du piratage de The DAO, l’âge de glace s’approche trop vite. Si rien n’est fait pour ralentir ce processus, le temps de calcul d’un bloc actuel qui est de 14 secondes augmentera à 15,8 secondes en environ trois mois. Dans six mois, le temps de calcul atteindra 28 secondes et continuera à ralentir exponentiellement après cela. CASPER, l’algorithme PoS Ethereum en développement, accuse un retard d’environ un an, bien que Vitalik ait déclaré qu’il était également d’environ un an plus avancé en termes de de fonctionnalités. C’est pourquoi, l’une des caractéristiques de la branche Metropolis sera de retarder l’âge glaciaire.

En ce qui concerne la la sécurité du réseau Ethereum, Casper a de meilleures propriétés de sécurité que la PoW. Cela est principalement réalisé en éliminant la capacité des attaquants riches à simplement acheter des matériels plus puissants  pour dominer le réseau. En ayant à stocker de l’Ether stocker de l’Ether pour pouvoir miner de l’Ether, on s’assure que le réseau fonctionne en douceur dans l’intérêt convergent des validateurs de transaction. Les validateurs sont l’équivalent PoS des mineurs PoW.
Vitalik nous détaille la feuille de route de Casper :

  • Finaliser le protocole
  • tester sur TestNet pour vérifier que le protocole fonctionne.
  • Implémenter le protocole sur 7 clients et continuer sur Testnet
  • Une fois soigneusement testé… Publication de la release!
  • Durée de la roadmap : environ un an.

Les avantages du PoS sont très importants c’est un tremplin pour les développements d’avenir en terme :

  • d’évolutivité
  • de Protocoles de fragmentation (sharding)
  • d’amélioration de l’efficacité du protocole

Vitalik prédit également que le PoS verrait des taux d’émission de jetons beaucoup plus faibles, ce qui signifie que les actifs deviennent déflationnistes. La PoS permet également une meilleure régulation des oligopoles sur un marché donné par rapport à la PoW. Vitalik pense également que les mineurs migreront leur activité sur le marché du calcul de masse comme Golem ou Swarm et celui du stockage en ligne pour autant que les solutions techniques soient viables.

Concernant la vie de la communauté Ethereum, Vitalik a évoqué la croissance de l’écosystème Ethereum et la façon dont l’équipe Ethereum s’est considérablement développée au cours de la dernière année. Ceux que l’on désigne comme la core team des développeurs Ethereum agrége bien au-delà des personnes employées par la Fondation Ethereum, et l’élargissement de la communauté est bon pour l’ensemble de l’écosystème.
Vitalik aimerait aussi une gouvernance plus décentralisée à l’avenir, et que les décisions sur les changements de protocole soient le résultat d’un apport de nombreuses personnes, au lieu de quelques-unes au sein de la Fondation Ethereum. Vitalik a rappelé qu’Ethereum est un projet décentralisé, et que la Fondation souhaite que toutes les couches du projet et de l’écosystème soient aussi décentralisées que possible. Ceci malgrè la difficulté de contribution du point de vue de la complexité des enjeux techniques. La plupart des gens ne sont pas conscients de toutes les implications des différentes modèles de conception en génie logiciel, les forces et faiblesses des différents systèmes et des approches de résolution des problèmes.

C’est pourquoi la Fondation va tenter d’accroître ses efforts pédagogiques, de sorte qu’un plus grand nombre de membres de la communauté puissent interagir et contribuer de manière constructive aux discussions autour d’Ethereum. Vitalik a déjà écrit quelques articles sur Casper et des preuves de zéro-knowledge. Vlad Zamfir a également écrit plusieurs articles sur Casper, et Christian Reitwiessner a écrit sur zk-SNARKs.

Dans l’ensemble, au cours des prochains mois, les développeurs d’Ethereum vont se concentrer sur les EIP afin d’en intégrer un maximum. En parallèle ils continueront à faire des progrès sur différents aspects de l’écosystème Ethereum principalement en ce qui concerne la PoS, le sharding(Fragmentation) et la mise en œuvre de preuves du zero-knowlege, car ils sont sur le chemin critique de la release Metropolis.

Vitalik espère que dans les 6 à 12 mois à venir, Ethereum continuera à mûrir et deviendra un «écosystème de chaîne de bloc beaucoup plus grand et de qualité supérieure à ce qu’elle est à ce jour.». Ci-après la keynote de Vitalik pour les anglophones 🙂

Vitalik Buterin au Meetup Singapour

Share

Laisser un commentaire

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

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.