"Architektura epoch-and-slot je samozřejmě správnou odpovědí, ale architektura a řešení slotů je stále třeba prozkoumat."

  • Původní autor |. Vitalik Buterin

  • Kompilace |. Odaily Planet Daily Nan Zhi

Jedním z důležitých atributů dobré uživatelské zkušenosti s blockchainem je rychlá doba potvrzení transakce. Dnes je Ethereum mnohem lepší než to, co bylo před pěti lety. Díky EIP-1559 a stabilní době blokování po přechodu na PoS (The Merge) lze transakce zaslané uživateli na L1 obvykle potvrdit během 5-20 sekund, což je zhruba ekvivalentní zkušenostem s platbou kreditní kartou. Má však cenu dále vylepšovat uživatelskou zkušenost a některé aplikace dokonce vyžadují latence v řádu stovek milisekund nebo méně. Tento článek prozkoumá některé praktické možnosti pro zlepšení doby potvrzování transakcí v Ethereu.

Přehled existujících nápadů a technik

konečnost jednoho slotu

V současné době využívá konsensus Gasper společnosti Ethereum jeden slot (Slot) a architekturu Epoch. Každých 12 sekund jeden slot, podmnožina validátorů hlasuje o hlavě řetězce a každých 32 slotů (6,4 minuty) mají všichni validátoři šanci hlasovat jednou. Tyto hlasy jsou poté reinterpretovány jako zprávy v konsensuálním algoritmu podobném PBFT, což poskytuje velmi silnou ekonomickou záruku nazývanou konečnost po dvou epochách (12,8 minut).

(Poznámka Odaily: Podrobnosti o konkrétních principech naleznete v části „Podrobné vysvětlení principu fungování Ethereum POS: Epocha, Slot a Beacon Block“)

V posledních několika letech jsme stále více nespokojeni s naším současným přístupem. Jsou pro to dva hlavní důvody, za prvé je metoda komplikovaná a mezi mechanismem hlasování mezi sloty a mechanismem finality od epochy a epochou je mnoho chyb v interakci, a zadruhé 12,8 minuty je příliš dlouhá doba a nikdo ji nechce. počkejte tak dlouho.

Single Slot Finality (SSF) nahrazuje tuto architekturu mechanismem podobným konsensu Tendermint, kde je blok N finalizován před vygenerováním bloku N+1. Hlavní rozdíl oproti Tendermintu je v tom, že zachováváme mechanismus „neaktivního úniku“, který umožňuje řetězu pokračovat v běhu a obnovit se, pokud je více než 1/3 validátorů offline.

(Poznámka Odaily: Únik neaktivity je mechanismus v PoS určený k potrestání validátorů, kteří byli dlouhou dobu neaktivní. Jakmile budou označeni jako neaktivní, jejich vsazené ETH bude i nadále trestáno. Tendermint je účinný a bezpečný byzantský algoritmus odolnosti proti chybám. pro rychlé potvrzení transakce a zajišťuje, že blockchainový systém může stále fungovat normálně, i když jsou některé uzly škodlivé nebo offline.)

Hlavním problémem jednoslotové finality je to, že to znamená, že každý staker Ethereum musí publikovat dvě zprávy každých 12 sekund, což představuje značné zatížení řetězce. Existuje několik chytrých nápadů, jak tento problém zmírnit, včetně nedávného návrhu Orbit SSF. Ačkoli se tím výrazně zrychluje „finalita“ pro zlepšení uživatelského zážitku, nic to nemění na skutečnosti, že uživatelé musí čekat 5–20 sekund.

(Poznámka: Finalita a transakce, která je zabalena do bloku a potvrzena, nejsou stejnou událostí. Když je transakce potvrzena, ale není dosaženo finality, může dojít k rozvětvení nebo vrácení zpět.)

Rollup předběžné potvrzení

Během několika posledních let se Ethereum řídilo plánem zaměřeným na rollup a navrhlo základní vrstvu Ethereum (L1) pro podporu dostupnosti dat a dalších funkcí, které jsou pak dostupné protokolům L2, jako jsou rollups, validiums a plasmas poskytovat uživatelům stejnou úroveň zabezpečení jako Ethereum ve větším měřítku.

To vytváří oddělení zájmů v rámci ekosystému Ethereum: Ethereum L1 se zaměřuje na odolnost vůči cenzuře, spolehlivost, stabilitu a udržování a zlepšování základní funkčnosti určité základní vrstvy, zatímco L2 se zaměřuje na přímější dosahování uživatelů prostřednictvím různých kultur a technologií . Pokud se ale vydáte touto cestou, nastává nevyhnutelný problém: L2 chce uživatelům poskytovat rychlejší potvrzení než 5-20 sekund.

Doposud, alespoň teoreticky, bylo povinností L2 vytvořit vlastní síť „decentralizovaných sekvencerů“. Malá skupina validátorů může každých několik set milisekund podepsat bloky a vsadit za tyto bloky svůj podíl. Nakonec jsou hlavičkové soubory pro tyto části L2 publikovány do L1.

Sada validátorů L2 však může „podvádět“: mohou nejprve podepsat blok B 1 a poté podepsat konfliktní blok B 2 a odevzdat jej do řetězce před B 1. Ale pokud tak učiní, budou dopadeni a přijdou o svá vsazená aktiva. Ve skutečnosti jsme viděli praktické příklady centralizovaných verzí, ale na druhou stranu rollup byl pomalý ve vývoji decentralizované třídicí sítě. Dalo by se namítnout, že vyžadovat decentralizované řazení všech L2 je nespravedlivé: žádáme, aby rollup udělal v podstatě stejnou práci jako vytvoření zcela nového L1. Justin Drake jako takový prosazuje způsob, jak pro všechny L2 (stejně jako L1) používat sdílený mechanismus předběžného potvrzení pro celé Ethereum: základní předběžné potvrzení.

Základní předkonfirmace

Přístup založený na předkonfirmacích předpokládá, že navrhovatelé Etherea jsou vysoce sofistikovaní účastníci spojení s MEV. Přístupy založené na předkonfirmaci využívají tuto složitost tím, že motivují tyto složité navrhovatele, aby přijali odpovědnost za poskytování služeb před konfirmací.

Základní myšlenkou tohoto přístupu je vytvořit standardizovaný protokol, kde uživatelé mohou poskytnout další poplatek, který zajistí okamžitou záruku, že transakce bude zahrnuta do dalšího bloku, a také nárok na výsledky provedení této transakce. Pokud navrhovatel poruší jakýkoli slib daný kterémukoli uživateli, může být zkrácen.

Jak bylo uvedeno, transakce L1 jsou zaručeny na základě předběžného potvrzení. Pokud jsou souhrny "Based", pak jsou všechny bloky L2 transakcemi L1, takže stejný mechanismus lze použít k poskytnutí předběžného potvrzení pro jakoukoli L2.

(Pozn. Odaily: Navrhovatelé Etherea mohou použít mechanismus poplatků k seskupení řady transakcí do balíčku a jeho zabalení do bloku, aby zajistili provedení transakce a objednávku. Například známý klip zajišťuje, že nákup před určitou transakcí a prodej plán, který zde navrhuje Vitalik, je koncepčně stejný. Použijte tohoto navrhovatele k zablokování výsledků transakce předem a urychlení realizace.)

Na co se vlastně díváme?

Předpokládejme, že dosáhneme jednoslotové finality. Používáme technologii podobnou Orbit ke snížení počtu validátorů podepisujících na slot, ale ne příliš, abychom mohli pokročit i v klíčovém cíli snížit sázkové minimum 32 ETH. Čas bloku může být zvýšen na 16 sekund a poté použijeme souhrnné předběžné potvrzení nebo základní předběžné potvrzení, abychom uživatelům poskytli rychlejší potvrzení. Čím jsme skončili: architektura epoch-slot.

Existuje hluboký filozofický důvod, proč se architektuře epoch-and-slot zdá tak těžké vyhnout: Hrubá shoda na něčem trvá méně času, než dosažení dohody na něčem s největší mírou „ekonomické finality“ .

Jednoduchým důvodem je počet uzlů. Zatímco stará lineární decentralizace/doba finality/režie nyní vypadá mírně kvůli ultra optimalizované agregaci BLS a nadcházejícím ZK-STARKům, nelze ignorovat následující důvody:

  1. „Přibližný konsensus“ vyžaduje pouze malý počet uzlů, zatímco ekonomická konečnost vyžaduje většinu uzlů.

  2. Jakmile počet uzlů překročí určitou velikost, musíte sbírat podpisy více času.

V dnešním Ethereu je 12sekundový slot rozdělen do tří podslotů: blokové publikování a distribuce, atestace a agregace atestů. Pokud se počet proverů výrazně sníží, můžeme snížit na dva dílčí sloty a použít 8 sekundový slotový čas. Dalším větším faktorem je „kvalita“ uzlu. Pokud bychom se také mohli spolehnout na specializovanou podmnožinu uzlů k dosažení přibližné shody (a stále používat celou sadu validátorů k určení finality), mohli bychom to zkrátit na přibližně 2 sekundy.

Takže podle mého názoru je architektura epoch-and-slot jasně správná, ale ne všechny architektury epoch-and-slot jsou si rovny a má cenu prozkoumat designový prostor úplněji. Směr hodný dalšího výzkumu není tak pevně spojen jako Gasper, ale se silnějším oddělením obav mezi těmito dvěma mechanismy.

Co by měl L2 dělat?

Podle mého názoru má L2 v současné době tři rozumné strategie:

1. Je technicky i duchovně „založený“. To znamená, že optimalizují technické vlastnosti základní vrstvy Etherea a její hodnoty (vysoká decentralizace, odolnost proti cenzuře atd.). V jejich nejjednodušší podobě si tyto souhrny můžete představit jako „značkové úlomky“, ale mohou být také mnohem ambicióznější a intenzivně experimentovat s novými návrhy virtuálních strojů a dalšími technickými vylepšeními.

2. Staňte se „serverem s blockchainovým lešením“ a využijte toho na maximum. Pokud začnete se serverem a poté přidáte důkazy o platnosti STARK, abyste zajistili, že server dodržuje pravidla, aby bylo zajištěno právo uživatelů opustit nebo vynutit transakce a zajistit svobodu kolektivní volby, a to buď prostřednictvím koordinovaných hromadných odchodů, nebo prostřednictvím hlasování; ze změn objednatelů, pak vy Většina výhod plynoucích z on-chain bylo dosaženo při zachování většiny efektivity serveru. (Poznámka Odaily: Scaffolding označuje nástroj nebo metodu, která automaticky generuje základní strukturu a rámec kódu projektu, takže vývojáři mohou rychle začít kódovat.)

3. Střední cesta: rychlý řetězec se stovkou uzlů, Ethereum poskytuje další interoperabilitu a bezpečnost. Toto je aktuální plán pro mnoho projektů L2 právě teď.

Pro některé aplikace (např. ENS, úložiště klíčů, některé platební protokoly) stačí blokování 12 sekund. Pro aplikace, kde to nelze použít, je jediným řešením architektura epoch-and-slot. Ve všech třech případech je „epochou“ SSF společnosti Ethereum, ale slot je v každém ze tří případů jiný:

  1. Ethereum nativní architektura epochy a slotu

  2. Předběžné potvrzení serveru

  3. předběžné potvrzení výboru

Klíčovou otázkou je, jak dobří můžeme být v kategorii 1? Zvláště pokud to bude opravdu dobré, zdá se, že kategorie 3 nebude znamenat tolik. Protože všechna „založená“ řešení nejsou použitelná pro data L2 mimo řetězec, jako jsou plazmy a validia, bude kategorie 2 vždy existovat. Pokud by architektura epochy a slotu nativní Ethereum mohla být zkrácena na 1 sekundový slot, pak by se prostor třídy 3 stal mnohem menším.

Dnes nejsme zdaleka konečnými odpověďmi na tyto otázky. Klíčovou otázkou je, jak složitými navrhovateli bloků se stanou, což zůstává oblastí značné nejistoty. Návrhy jako Orbit SSF jsou velmi neotřelé, takže návrhový prostor pro schémata jako Orbit SSF jako epocha v epochě a slotu stále stojí za to plně prozkoumat. Čím více možností máme, tím lépe můžeme udělat pro uživatele L1 a L2 a můžeme usnadnit život vývojářům L2.

Původní odkaz

Tento článek je přetištěn se svolením Odaily Planet Daily

Zdroj