
Auteur: Vitalik; compilé par Deng Tong, Vision de Bitchain
Un merci spécial à Justin Drake, Hsiao-Wei Wang, @antonttc et Francesco pour leurs commentaires et examen.
Initialement, la «fusion» fait référence à l’événement le plus important de l’histoire depuis le lancement du protocole Ethereum: la transition tant attendue et dure de la preuve de travail à la preuve de la participation.Aujourd’hui, Ethereum est devenu un système de preuve stable depuis près de deux ans, et cette preuve de participation a très bien performé en stabilité, en performance et en évitant les risques centralisés.Cependant, il y a encore des domaines importants à améliorer la preuve de la participation.
Ma feuille de route 2023 le divise en plusieurs parties: améliorer les caractéristiques techniques telles que la stabilité, les performances et l’accessibilité aux plus petits validateurs et les changements économiques pour répondre aux risques centralisés.Le premier a repris le titre de «fusion», tandis que le second fait partie de «Scourge».
Cet article se concentrera sur la section «Merge»: quelles autres améliorations peuvent être apportées dans la conception technique de la preuve de participation et quelles façons ces améliorations peuvent-elles être apportées?
Ce n’est pas une liste exhaustive d’améliorations à la preuve de la participation;
Finalité à poitrine et démocratisation à la gage
Quels problèmes résolvons-nous?
De nos jours, il faut 2-3 époques (environ 15 minutes) pour terminer un bloc et 32 ETH pour devenir staker.C’était à l’origine un compromis pour équilibrer trois buts:
-
Maximiser le nombre de validateurs qui peuvent participer à la mise en place (cela signifie directement minimiser l’ETH minimum requis pour le jalonnement)
-
Minimiser le temps d’achèvement
-
Minimiser les frais généraux des nœuds de course
Ces trois objectifs sont conflictuels: afin d’atteindre la finalité économique (c’est-à-dire que l’attaquant doit détruire une grande quantité d’ETH pour restaurer le bloc finalisé), chaque fois que la finalisation est finalisée, chaque validateur doit signer deux messages.Donc, si vous avez de nombreux validateurs, il faut beaucoup de temps pour traiter toutes les signatures ou un nœud très puissant pour traiter toutes les signatures en même temps.
Notez que tout dépend d’un objectif clé d’Ethereum: s’assurer que même les attaques réussies peuvent entraîner des coûts élevés aux attaquants.C’est ce que signifie le terme «finalité économique».Si nous n’avons pas cet objectif, nous pouvons résoudre ce problème en sélectionnant au hasard un comité (comme ce que fait l’algorand) pour finaliser chaque emplacement.Mais le problème avec cette approche est que si l’attaquant contrôle 51% des validateurs, ils peuvent attaquer à un coût très faible (récupérer les blocs finalisés, examiner ou retarder la finalisation): seule une partie des nœuds du comité peut être détecté comme participant à la participation à une attaque et être puni, que ce soit par des coupures ou quelques fourches douces.Cela signifie que l’attaquant peut attaquer la chaîne à plusieurs reprises.Donc, si nous voulons la finalité économique, une approche simple basée sur le comité ne fonctionnera pas, et à première vue, nous avons besoin d’un ensemble complet de validateurs pour participer.
Idéalement, nous voulons conserver l’endurance économique tout en améliorant le statu quo de deux manières:
-
Blocs d’extrémité dans une fente (idéalement garder ou même réduire la longueur de 12 secondes actuelle) au lieu de 15 minutes
-
Permettre aux vérificateurs de jouer avec 1 ETH (de 32 ETH à 1 ETH)
Le premier objectif est prouvé par deux buts, qui peuvent tous deux être considérés comme «cohérents avec les propriétés d’Ethereum avec les propriétés de la chaîne L1 orientée performance (plus centralisée)».
Premièrement, il garantit que tous les utilisateurs d’Ethereum bénéficient de niveaux plus élevés d’assurance de sécurité obtenus grâce à des mécanismes de finalisation.Aujourd’hui, la plupart des utilisateurs ne peuvent pas profiter de ce type de garantie car ils ne sont pas disposés à attendre 15 minutes; et grâce au mécanisme de finalisation à guichets unique, les utilisateurs peuvent voir la finalisation de la transaction presque immédiatement après la confirmation de la transaction.Deuxièmement, si les utilisateurs et les applications n’ont pas à se soucier de la possibilité de recul de la chaîne (à moins que des fuites d’inactivité relativement rares se produisent), cela simplifie le protocole et l’infrastructure environnante.
Le deuxième objectif est hors du désir de soutenir les engagements individuels.Les sondages à maintes reprises ont montré à plusieurs reprises que le principal facteur empêchant davantage de personnes de s’engager individuellement est la limite minimale de 32 ETH.La réduction de la limite minimale à 1 ETH résoudra ce problème afin que d’autres problèmes deviennent le principal facteur limitant le jalonnement individuel.
Il y a un défi: une certitude plus rapide et des objectifs de stimulation plus démocratisés sont à la fois en conflit avec l’objectif de minimiser les frais généraux.En fait, ce fait est la raison pour laquelle nous n’avons pas adopté une certitude unique au début.Cependant, des recherches récentes ont proposé certaines solutions possibles à ce problème.
Qu’est-ce que c’est et comment ça marche?
La finalité de l’emplacement unique implique l’utilisation d’un algorithme de consensus qui finalise les blocs dans une fente.Ce n’est pas un objectif difficile en soi: de nombreux algorithmes (comme le consensus de tendance) l’ont implémenté avec des propriétés optimales.Une propriété idéale unique à Ethereum est une fuite inactive que la tendance ne prend pas en charge, ce qui permet à la chaîne de continuer à fonctionner et finalement à récupérer même si plus de 1/3 des validateurs sont hors ligne.Heureusement, ce souhait a été répondu: il y a eu des propositions pour modifier le consensus de style tendance pour s’adapter aux fuites inactives.
Proposition finale à un pas de trait unique
La partie la plus difficile du problème consiste à déterminer comment faire fonctionner la finalité à emplacement unique lorsque le nombre de validateurs est très élevé sans provoquer des frais généraux de nœud de nœud extrêmement élevés.Pour ce faire, il existe plusieurs solutions de premier plan:
-
Option 1:Force brute – efforts pour mettre en œuvre de meilleurs protocoles d’agrégation de signature, peut-être à l’aide de SK-Snarks, ce qui nous permet en fait de traiter les signatures de millions de validateurs dans chaque emplacement.
Horn, l’une des conceptions proposées pour de meilleurs protocoles d’agrégation.
-
Option 2:Orbit Commission – Un nouveau mécanisme qui permet aux commissions moyennes sélectionnées au hasard d’être responsables de la finalisation de la chaîne, mais d’une manière qui conserve les attributs de coût d’attaque que nous recherchons.
Une façon de penser à l’orbite SSF est qu’elle ouvre un espace pour des options de compromis allant de x = 0 (comité de style algorande, pas de finalité économique) à x = 1 (statut Ethereum), ouvrant des points au milieu, Ethereum là-bas est encore une finalité économique suffisante pour atteindre une sécurité extrême, mais en même temps, nous gagnons l’avantage d’efficacité d’un échantillon de validateur aléatoire de taille moyenne impliquée à chaque période.
L’orbite tire parti de l’hétérogénéité préexistante de la taille du dépôt du vérificateur pour atteindre autant de finalité économique que possible, tout en donnant aux petits vérificateurs le rôle correspondant.En outre, l’orbite utilise des rotations lentes de comités pour assurer un chevauchement élevé entre les quorums adjacents, garantissant ainsi que sa finalité économique s’applique toujours aux limites de rotation des comités.
-
Option 3:Pledge à deux couches – Un mécanisme dans lequel les engagements sont divisés en deux catégories: l’une a des exigences de dépôt plus élevées et l’autre a des exigences de dépôt inférieures.Seuls les niveaux avec des exigences de dépôt plus élevés participeront directement à la fourniture de la finalité économique.Il existe diverses propositions concernant les droits et les responsabilités qui sont exactement dans les exigences de dépôt inférieur (voir Rainbow Engage Post par exemple).Les idées courantes comprennent:
-
Le droit de déléguer les capitaux propres à des détenteurs d’actions de niveau supérieur
-
Les parties prenantes de niveau inférieur dessinées au hasard prouvent et ont besoin de terminer chaque bloc
-
Droit de générer la liste d’inclusion
Quelles sont les liens avec la recherche existante?
Façons de réaliser une finalité unique (2022): https://notes.ethereum.org/@vbuterin/single_slot_finalité
Propositions spécifiques pour l’accord final de l’éthereum unique (2023): https://eprint.iacr.org/2023/280
Orbit SSF: https://ethreear.ch/t/orbit-ssf-solo-staking-friendly-validator-set-management-for-ssf/19928
Analyse plus approfondie du mécanisme de style orbite: https://notes.ethereum.org/@anderselowsson/vorbit_ssf
Horn, Signature Aggregation Contrat (2022): https://ethreear.ch/t/horn-collecting-signatures-for-faster-finality/14219
Mésuratrice de consensus à grande échelle (2023): https://ethreear.ch/t/signature-meging-for-large-scale-consensus/17386?u=asn
Le protocole d’agrégation de signature proposé par Khovratovich et al.
Agrégation de signature basée sur Stark (2022): https://hackmd.io/@vbuterin/stark_agregation
Jagasie arc-en-ciel: https://ethreear.ch/t/unbundling-staking-towards-rainbow-staking/18683
Que reste-t-il d’autre?Que peser?
Il existe quatre principaux chemins viables (nous pouvons également utiliser un chemin hybride):
-
Maintenir le statu quo
-
SSF en orbite
-
SSF puissant
-
SSF avec un jalonnement à deux couches
(1) Cela signifie ne rien faire et garder le jalonnement tel quel, mais cela rendra l’expérience de sécurité d’Ethereum et le jalonner des propriétés centralisées pire qu’elle ne l’aurait été.
(2) Évitez la «haute technologie» et résolvez le problème en repensant intelligemment les hypothèses du protocole: nous avons assoupli l’exigence de «l’endurance économique» afin que nous ayons demandé que les attaques soient coûteuses, mais les attaques acceptables pourraient être 10 fois moins chères qu’elles ne le sont maintenant (Par exemple, l’attaque coûte 2,5 milliards de dollars, pas 25 milliards de dollars).On pense largement que l’endurance économique d’Ethereum est bien au-delà du niveau qu’elle doit être, et ses principaux risques de sécurité sont ailleurs, il s’agit donc sans doute d’un sacrifice acceptable.
Le travail principal consiste à vérifier que le mécanisme d’orbite est sûr et possède les propriétés que nous voulons, puis la formaliser pleinement et la mettre en œuvre.De plus, l’EIP-7251 (augmenter l’équilibre valide maximal) permet une consolidation de l’équilibre des validateurs volontaires, qui réduit immédiatement les frais généraux de vérification de la chaîne et sert de stade initial efficace pour le lancement d’orbite.
(3) Évitez de repenser intelligemment, mais utilisez la haute technologie pour forcer le problème.Pour ce faire, il faut un grand nombre de signatures (plus d’un million) en très peu de temps (5-10 secondes).
(4) Évitez la repensation intelligente et la haute technologie, mais cela crée un système de mise en œuvre à deux niveaux qui a encore des risques centralisés.Le risque dépend en grande partie des droits spécifiques obtenus par les niveaux de gage inférieur.Par exemple:
-
Si l’intervenant de bas niveau doit déléguer ses droits de preuve sur les parties prenantes de haut niveau, la délégation peut être centralisée et nous obtiendrons finalement deux parties prenantes hautement centralisées.
-
Si un échantillonnage aléatoire des niveaux inférieurs est nécessaire pour approuver chaque bloc, un attaquant peut dépenser une très petite quantité d’ETH pour éviter la finalité.
-
Si un acteur de bas niveau ne peut faire qu’une liste d’inclusion, la couche de preuve peut toujours être centralisée, et à ce stade, l’attaque de 51% sur la couche de preuve peut examiner la liste d’inclusion elle-même.
Diverses stratégies peuvent être combinées, telles que:
-
(1 + 2): Ajouter une orbite sans effectuer une finalité à machines à sous unique.
-
(1 + 3): Utilisez la technologie Brute Force pour réduire la taille minimale des dépôts sans effectuer une finalité à guichet unique.La quantité de polymérisation requise est 64 fois moins que le cas pur (3), donc le problème devient plus facile.
-
(2 + 3): effectuer des SSF en orbite avec des paramètres conservateurs (par exemple le comité de validateur 128K au lieu de 8k ou 32k) et utiliser des techniques de force brute pour le rendre super efficace.
-
(1 + 4): Ajoutez un étalage arc-en-ciel sans exécuter une finalité à sous une seule machine à sous.
Comment cela interagit-il avec le reste de la feuille de route?
Entre autres avantages, l’endurance à machine à sous unique réduit le risque de certains types d’attaques MEV multi-blocs.En outre, dans un monde de finalité à emplacement unique, la conception de séparation des prover-proposer et d’autres pipelines de production de blocs de protocole doivent être conçus de différentes manières.
La faiblesse des stratégies violentes est qu’elles rendent plus difficile le raccourcissement du temps de l’emplacement.
Élection de chef secrète unique
Quels problèmes voulons-nous résoudre?
Aujourd’hui, il est connu à quel validateur proposera le bloc suivant.Cela crée une vulnérabilité de sécurité: un attaquant peut surveiller le réseau, identifier quels validateurs correspondent aux adresses IP et lancer une attaque DOS sur le validateur lorsqu’elle est sur le point de proposer un bloc.
qu’est-ce que c’est?Comment ça marche?
La meilleure façon de résoudre le problème DOS est de masquer les informations dont le validateur générera le bloc suivant, au moins avant que le bloc ne soit réellement généré.Notez que si nous supprimons l’exigence « unique », cela est facile: une solution consiste à permettre à quelqu’un de créer le bloc suivant, mais nécessite que Randao révèle moins de 2256 / n.En moyenne, un seul validateur peut répondre à cette exigence – mais parfois il y en aura deux ou plus, et parfois il y aura zéro.La combinaison de l’exigence de « confidentialité » avec l’exigence « unique » a toujours été un problème difficile.
Le protocole électoral unique Secret Leader résout ce problème en créant un ID de vérificateur « aveugle » pour chaque vérificateur en utilisant des techniques de chiffrement, puis donne à de nombreux proposants la possibilité de mélanger et de reconstituer la piscine d’identification aveugle (ce qui est similaire à la façon dont les réseaux hybrides fonctionnent) .À chaque période, un ID aveugle aléatoire est sélectionné.Seul le propriétaire de l’ID aveugle peut générer une preuve valide pour proposer un bloc, mais personne ne sait à quel vérificateur l’ID aveugle correspond.
Protocole de fouet
Quels sont les liens vers la recherche existante?
Dan Boneh’s Paper (2020): https://eprint.iacr.org/2020/025.pdf
Whisk (Proposition spécifique d’Ethereum, 2022): https://ethreear.ch/t/whisk-a-practical-shuffle-basased-sle-protocol-for-ethereum/11763
Single Secret Leader Election Tag sur Ethresear.ch: https://ethreear.ch/tag/single-secret-leader-election
Ssle simplifié à l’aide de la signature de l’anne
Que reste-t-il d’autre?Que peser?
En fait, il ne reste plus que de trouver et d’implémenter un protocole suffisamment simple pour que nous puissions facilement l’implémenter sur le MainNet.Nous considérons Ethereum comme un protocole assez simple et nous ne voulons pas plus de complexité.L’implémentation SSLE que nous voyons ajoute des centaines de lignes de code de spécification et introduit de nouvelles hypothèses dans un chiffrement complexe.C’est également une question ouverte pour trouver une implémentation quantique SSLE suffisamment efficace.
À terme, cela peut se produire: la «complexité supplémentaire marginale» de la SSLE ne diminuera que lorsque nous introduisons un mécanisme de preuve de connaissance zéro commun sur L1 du protocole Ethereum pour d’autres raisons (par exemple, les arbres d’État, ZK-EVM). suffisamment de niveau.
Une autre option consiste à ignorer le SSLE et à utiliser des atténuations hors protocol (comme à la couche P2P) pour résoudre les problèmes DOS.
Comment cela interagit-il avec le reste de la feuille de route?
Si nous ajoutons un mécanisme de séparation prover-proposeur (APS), tels que l’exécution de billets, puis l’exécution de blocs (c’est-à-dire des blocs contenant des transactions Ethereum) ne nécessitera pas SSLE car nous pouvons compter sur un constructeur de blocs dédié.Cependant, pour les blocs de consensus (c’est-à-dire les blocs contenant des messages de protocole (tels que la preuve, des sections qui peuvent contenir des listes, etc.), nous bénéficierons toujours de SSLE.
Confirmation de transaction plus rapide
Quels problèmes résolvons-nous?
La réduction supplémentaire du temps de confirmation des transactions d’Ethereum est précieuse, de 12 secondes à 4 secondes.Cela améliorera considérablement l’expérience utilisateur L1 et globale tout en rendant le protocole Defi plus efficace.Il rendra également L2 plus décentralisé, car il permettra à un grand nombre d’applications de L2 de travailler sur une base d’agrégation, ce qui réduira la nécessité de L2 pour construire son propre type décentralisé basé sur le comité.
qu’est-ce que c’est?Comment ça marche?
Il existe environ deux technologies ici:
-
Réduisez le temps de l’emplacement, par exemple à 8 secondes ou 4 secondes.Cela ne signifie pas nécessairement la finalité de 4 secondes: la finalité nécessite essentiellement trois cycles de communication, nous pouvons donc définir chaque cycle de communication en tant que bloc séparé, qui sera au moins initialement confirmé après 4 secondes.
-
Permettez au proposant d’émettre la préconcision préalable pendant le processus de créneau horaire.Dans des cas extrêmes, le proposant peut incorporer les transactions qu’ils voient dans leurs blocs en temps réel et publier immédiatement un message pré-confirmation pour chaque transaction («Ma première transaction est 0 × 1234…», «I La deuxième transaction est 0 × 5678 … « ).La situation où le proposant émet deux confirmations contradictoires peut être gérée de deux manières: (i) en coupant le proposant, ou (ii) en utilisant le prover pour voter qui est plus tôt.
Quels sont les liens vers la recherche existante?
Basé sur la préconfirmation: https://ethreear.ch/t/based-preconfirmations/17353
Proposition obligatoire du protocole (PEPC): https://ethreear.ch/t/unbundling-pbs-towards-protocol-enforced-proposer-commitments-pepc/13879
Cycles entrelacés sur les chaînes parallèles (therear.ch/t/staggered-periods/1793
Quels sont les autres et quels compromis y a-t-il?
Il n’est pas clair à quel point il est utile de réduire le temps de l’emplacement.Même aujourd’hui, il est difficile pour les engageurs dans de nombreuses régions du monde d’obtenir des preuves assez rapidement.Tenter un temps de créneau de 4 secondes a le risque de centraliser l’ensemble de validateur, et il n’est pas pratique d’être un validateur en dehors de quelques zones privilégiées en raison du retard.
La faiblesse de la méthode de pré-confirmation du proposant est qu’elle peut considérablement améliorer le temps d’inclusion dans le cas moyen, mais pas dans le pire des cas: si le proposant actuel s’exécute bien, votre transaction sera préconformée en 0,5 seconde, et non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non (non les transactions Moyenne) Pour être inclus dans 6 secondes, mais si le proposant actuel est hors ligne ou ne fonctionne pas bien, vous devez toujours attendre 12 secondes avant de pouvoir démarrer la prochaine fente et fournir un nouveau proposant.
De plus, il y a une question ouverte, à savoir comment inciter la préconfiration.Les proposants ont la motivation de maximiser leur optionnalité aussi longtemps que possible.Si le rétablissement signe la rapidité de la pré-confirmation, l’expéditeur de transaction peut conditionner une partie des frais sur la pré-confirmation immédiate, mais cela exerce un fardeau supplémentaire sur le contrepoids et peut rendre plus difficile pour le rétrécis un «tuyaux muets» neutres.
D’un autre côté, si nous n’essayons pas de le faire et de maintenir le temps de finalisation à 12 secondes (ou plus), l’écosystème accordera plus d’attention aux mécanismes de pré-confirmation développés par la couche 2, et les interactions à travers la couche 2 prendront temps plus long.
Comment cela interagit-il avec le reste de la feuille de route?
La pré-confirmation basée sur le proposant s’appuie en fait sur des mécanismes de séparation prover-proposeur (APS), tels que l’exécution des billets.Sinon, la pression pour assurer la préconcision préalable en temps réel peut exercer une pression trop concentrée sur les validateurs conventionnels.
Autres domaines de recherche
51% d’attaque recouvrement
On pense généralement que si 51% des attaques se produisent (y compris les attaques qui ne peuvent pas transmettre des preuves cryptographiques, comme la censure), la communauté travaillera ensemble pour mettre en œuvre une fourche douce minoritaire pour garantir que les bonnes personnes gagnent et les mauvaises personnes fuient ou seront coupées en raison de inactivité.Cependant, ce niveau de trop sur la couche sociale peut être considéré comme malsain.Nous pouvons essayer de réduire la dépendance à la couche sociale et rendre le processus de récupération aussi automatisé que possible.
L’automatisation complète est impossible car si c’est le cas, cela comptera comme A & GT; algorithme de consensus tolérant aux pannes à 50%, et nous connaissons déjà les limitations (très strictes) mathématiquement prouvables de ces algorithmes.Mais nous pouvons implémenter l’automatisation partielle: par exemple, si le client examine une transaction que le client a vu assez longtemps, le client peut automatiquement refuser d’accepter une chaîne comme définitive, ou même refuser de l’accepter comme la tête de la sélection de la fourche.Un objectif clé est de s’assurer que les méchants de l’attaque ne peuvent pas gagner au moins rapidement.
Augmenter le seuil de quorum
Aujourd’hui, si 67% des parties prenantes le soutiennent, le bloc sera finalisé.Certaines personnes pensent que c’est trop radical.Il n’y a eu qu’un seul (très bref) échec final tout au long de l’histoire d’Ethereum.Si ce pourcentage est augmenté à 80%, le nombre de périodes non finales accrues sera relativement faible, mais Ethereum gagnera la sécurité: en particulier, de nombreuses situations controversées conduiront à une cessation temporaire de la finalité.Cela semble beaucoup plus sain que le « mauvais côté » gagnant immédiatement, que le mauvais côté soit l’attaquant ou que le client ait une erreur.
Cela répond également à la question « Quelle est la signification d’un engagement séparé ».Aujourd’hui, la plupart des Stakers ont déjà jallu des piscines et il semble peu probable que les Stakers individuels obtiennent jusqu’à 51% d’ETH marqués.Cependant, il semble possible de permettre que si nous essayions d’obtenir des promesses individuelles pour atteindre des minorités qui bloquent la majorité, surtout si la majorité atteint 80% (et ne nécessite donc que 21% pour arrêter la majorité).Tant que l’individu engloutit ne participe pas à l’attaque de 51% (qu’il s’agisse d’un renversement ou d’un examen final), ces attaques n’atteindront pas une « victoire propre » et le engagement individuel aidera activement à organiser la fourche molle minoritaire.
Résistance quantique
Metaculus estime actuellement que malgré la grande erreur, les ordinateurs quantiques sont susceptibles de commencer à craquer la cryptographie dans les années 2030:
Les experts en informatique quantique, tels que Scott Aaronson, ont également récemment commencé à considérer la possibilité que les ordinateurs quantiques fonctionnent réellement à moyen terme.Cela a des implications pour l’ensemble de la feuille de route Ethereum: cela signifie que chaque partie du protocole Ethereum qui s’appuie actuellement sur la courbe elliptique nécessite une sorte d’alternative basée sur la résistance quantique ou autre.Cela signifie spécifiquement que nous ne pouvons pas supposer que nous serons en mesure de toujours compter sur les excellentes caractéristiques de l’agrégation BLS pour gérer les signatures à partir de grands ensembles de validateurs.Cela justifie le conservatisme dans les hypothèses de performance de la conception de la preuve de la preuve et est également la raison du développement plus agressif des alternatives de résistance quantique.