Al enkele maanden richt het stateless consensus team zich op een specifieke vraag: in een wereld waar stateloosheid / staatsexpiratie een realiteit is, waar vind je de staat die je nodig hebt?
Het is op zich een moeilijke vraag, maar het wordt erger: in een wereld met gecentraliseerde bouwers en FOCIL, wat gebeurt er wanneer een bouwer een deel van de staat laat vallen, en vervolgens een FOCIL-transactie toegang tot die verwijderde staat triggert?
We willen dat Ethereum schaalt, en dit betekent dat de staat die niet nodig is, buiten de database van een client wordt verplaatst om een continue prestatie te waarborgen. Mechanisch creëert dit een risico dat een client gegevens mist die het zou moeten hebben volgens FOCIL.
Dus schaalbaarheid staat op gespannen voet met censuurbestendigheid: er is een mechanisme nodig om FOCIL te versoepelen om een tx die toegang heeft tot een verlopen staat te weigeren. Maar we kunnen dit ook niet als excuus gebruiken om transacties te censureren.
Het voorstel, voortkomend uit een discussie met @soispoke, is dat als de bouwer kan aantonen dat een FOCIL tx de staat aanraakt die "oud genoeg" is, en als er geen getuige met de tx is doorgegeven, dan is het ok om die tx te weigeren. Het is aan de wallet om de getuige te leveren.
Verplaatst dit niet hetzelfde probleem naar de wallet? Dat is niet zo, omdat: 1. de wallet kan een "resurrectievergoeding" in rekening brengen om de transactie te verzenden, dus het is gestimuleerd om de verlopen status te behouden. 2. De resurrectie staat niet langer op het kritieke pad van de blokproductie.
De reden hiervoor is dat als een gebruiker zijn account de afgelopen 6 jaar niet heeft aangeraakt, ze zeker nog een paar minuten kunnen wachten om hun account terug te krijgen. Als de gebruiker niet kan wachten, dan zouden ze elke paar maanden wat gas moeten uitgeven om het account "hot" te houden.
Dus dit verwijdert de noodzaak voor een snelle wederopstanding. Hoe bewijzen we dat een stuk staat is verlopen? Door een epoch-teller aan die staat toe te voegen. Volgens schattingen op basis van @ngweihan_eth zouden we in het ergste geval 1GB aan gegevens toevoegen en zouden we 80% van de staat kunnen verwijderen!
Lost dit alle problemen op? Nee, wallets kunnen ook gecensureerd worden, en data is minder redundant, dus het kan verloren gaan. Maar dit betekent dat FOCIL niet kan worden gebruikt om staatsverval te voorkomen. Het pakt ook enigszins het UX-probleem aan dat wordt veroorzaakt door staatsverval / stateloosheid.
Er zijn veel meer wallets dan builders, en ze verdienen meer geld. Dus ze zijn moeilijker te censureren. En als wallets deze rol niet willen spelen, is er ruimte voor staatsnetwerken om zich te vormen en dit te bieden. Dit is echter meer hypothetisch.
Let op dat, hoewel dit twee protocolwijzigingen vereist, de vervaldatum van de staat zelf niet in het protocol hoeft te worden opgenomen.
3,56K