Article de Griffin Ichiba Hotchkiss sur blog.ethereum.org, traduit par Jean Zundel

La série sur Stateless Ethereum se poursuit. Cette évolution de la chaîne actuellement en production permettra aussi bien à des clients complets qu’à des clients sans état ou n’en conservant qu’une partie de rejoindre le réseau en toute sécurité. Il s’agit également de préparer la transition vers Eth2.0, l’évolution radicale vers le PoS et le sharding. Pour rappel, le sommet s’est tenu dans le cadre du Unhackathon à l’ESGI juste après EthCC.

The 1.X Files

Il serait illusoire de prétendre à un résumé objectif et représentatif juste après cette semaine à Paris ; comme tous ceux qui y étaient présents, je vais passer les prochaines semaines à en extraire la substantifique moelle et à en tirer les leçons pour l’année à venir.

Mais pour toi, cher lecteur, qui a ressenti le FOMO de Paris et qui en a attendu avec impatience des nouvelles, je vais livrer en un simple survol ma collection personnelle et incomplète d’idées, de décisions et de résultats du premier Stateless Ethereum Summit.

À quoi cela ressemblait-il ?

Le sommet a duré deux jours, avec une première réunion d’un grand groupe, structurée au minimum, pour discuter de sujets vastes ou importants, puis un éclatement en deux ou trois discussions simultanées. Avec une trentaine de participants en tout, la taille des groupes était quasiment parfaite pour permettre aussi bien des études de fond que des séances informelles de questions-réponses. Bien entendu, c’était aussi l’occasion de mettre des visages sur les noms d’utilisateurs, et de se connecter au groupe de manière plus humaine.

Je pense que, pour la plupart des participants (moi compris), le premier résultat du sommet a été un « nivellement par le haut » de notre compréhension des problèmes à résoudre et des solutions proposées. Les quelques personnes à l’origine de cette initiative (Piper, Alexey et leurs équipes) y ont trouvé l’occasion de passer un peu de temps au tableau blanc pour rattraper et poser toutes les petites questions que nous n”osions pas poser dans un forum.

Je souligne ce fait car l’un des buts principaux de ce rassemblement était de présenter plus clairement les opportunités et les défis des tâches en attente. Plus ces tâches peuvent être clairement exposées aux intéressés, plus il est facile de se joindre à ces efforts pour contribuer. Je dirais qu’à cet égard le sommet est déjà une réussite éclatante, et nous avons « accroché » des gens qui restaient sur le banc de touche jusqu’à présent.

De quoi a-t-on parlé ?

D’un peu de tout, en fait. Avec une seule paire d’oreilles à ma disposition, j’ai pu écouter des discussions sur la plupart des sujets de l’arbre des technologies dans leur contexte, et comme je l’ai indiqué dans la section précédente, il s’agissait surtout de se réunir pour s’accorder sur une vision simple et commune d’un Ethereum sans état. Quel est le principal problème à résoudre ? Quelle est la première étape que l’on peut raisonnablement atteindre ? Est-il bien la peine d’étudier un système de divulgation nulle de connaissance pour les signatures témoins historiques ?

Voici ce que je crois avoir été les sujets principaux :

  • Primitives de synchronisation ;
  • Transition vers un trie binaire ;
  • EVM ;
  • Délivrance de données dans un paradigme sans état ;
  • Ébauche de spécification de signature témoin.

Alexey a très justement proposé que le but de ce sommet soit de s’occuper de tout ce qui ne pouvait être accompli sur l’internet, et de réserver ce qui peut être fait en ligne pour le travail à distance. Les désaccords se règlent bien plus facilement en personne qu’en ligne, et les décisions sur des problèmes complexes sont prises plus rapidement. Donc, en plus de la récapitulation générale et du partage de connaissances sur les principaux sujets, nous avons employé notre temps à exposer les arguments pour ou contre des décisions nécessaires, comme ce sur quoi travailler en premier, ou les outils indispensables pour que les travaux puissent même commencer. Le plus important a été que ce sommet a été l’occasion de préciser et de mieux définir l’étendue de ces travaux, et de percevoir tous ensemble ce qui définirait leur réussite, et de quels points de vue.

Qu’a-t-on décidé ? Quoi de neuf ?

Encore une fois, et je ne peux assez le souligner, il ne s’agit que de mes réactions personnelles à la manière dont s’est passé le sommet. Je n’ai même pas consulté mes notes ni mes enregistrements. Mais voici les points principaux que j’ai retenus, dans le désordre, des nouvelles perspectives issues de la discussion du week-end qui alimenteront les réflexions futures.

  • La synchronisation, et plus spécifiquement la primitive getNodeData, est ce qui doit avant tout changer pour avancer dans cette quête du sans-état. Cela doit être amélioré avant que la transition vers le trie binaire puisse avoir lieu, et cela demandera une coordination entre toutes les équipes des clients. Felix de l’équipe Geth a mené une discussion très productive sur la synchronisation et il est devenu clair que la plupart des propositions sont en train de converger depuis des points de départ différents. L’amélioration de la synchronisation permettra également une transition moins brutale vers le trie binaire.
  • Alors qu’à l’origine on pensait que la stratégie la plus raisonnable vers un trie binaire demanderait un arrêt momentané de la chaîne et le recalcul d’un nouvel état binaire, l’opinion actuelle est que la transition peut être accomplie sans interruption du réseau avec une coordination suffisante des clients.
  • Plusieurs éléments nouveaux ont fait plus ou moins écarter les plans et les idées autour de la création d’un réseau complet de délivrance des données pour l’état. D’abord, de nouveaux venus avec une expertise plus poussée ont expliqué à quel point il serait difficile de le mettre en œuvre. Ensuite, un tel réseau peut être construit de manière incrémentale, et une version beaucoup plus simple (qui ne servirait que des en-têtes, des transactions et des reçus, par exemple) fournirait une plus-value immédiate et pourrait être améliorée ultérieurement.
  • Les changements de l’EVM sont les plus complexes, et il n’y a eu ni décision ni résolution claire concernant leur nature pour sa compatibilité avec le sans-état. Il faut comprendre que la plupart des propositions actuellement étudiées en font plus que ce qui est strictement nécessaire pour le sans-état, et il faut donc évaluer la valeur, la complexité et les efforts nécessaires pour réaliser ces améliorations additionnelles. Il faut aussi noter que certaines opérations sur le gaz devraient devenir plus coûteuses de toute manière, mais rien n’a été réellement décidé au sujet de l’EVM, et nous ne pourrons pas connaître la direction à prendre avant de disposer de plus de données.
  • NOUS DEVONS CONSTRUIRE DES PYLÔNES SUPPLÉMENTAIRES – Comme dans Starcraft, une partie des travaux sert à rendre l’ensemble plus productif et profitable. Ces méta-travaux entrent dans deux catégories : les outils facilitant la collecte et l’analyse de données ; les ressources aidant les autres à contribuer plus efficacement, comme la documentation sur le sans-état pour les nouveaux chercheurs rejoignant les équipes. Cela dit, je crois qu’il reste des désaccords substantiels sur la part de travail à consacrer à court terme à la construction d’outils, et sur les outils dont on a le plus besoin. Les semaines prochaines, nous allons réviser l’arbre des technologies et l’embellir pour qu’il soit plus représentatif du projet que Stateless Ethereum est devenu. Il s’agira d’aider la communauté à conserver la trace de tout ce qui se passe et d’aider les nouveaux venus à contribuer plus efficacement.

Comme toujours, si vous avez des questions, des requêtes de nouveaux sujets, ou si vous voulez participer à la recherche sur Stateless Ethereum, venez vous présenter sur ethresear.ch et/ou joignez @gichiba ou @JHancock sur Twitter.