Napsal: 0XNATALIE
Na nedávné vývojářské konferenci Ethereum byl diskutován návrh rozdělit hard fork Ethereum Pectra na dvě části. Tento návrh byl dříve zamítnut kvůli obavám, že by to zdrželo upgrade stromu Verkle. Na tomto setkání však vývojáři znovu vznesli tuto myšlenku, protože doufají, že do vidlice Pectra přidají další návrhy na vylepšení (EIP). Navrhuje se rozdělit hard fork na dvě části: první část bude zahrnovat všechna EIP aktuálně na Pectra Devnet 3 a druhá část bude zahrnovat EOF (EVM Object Format) a PeerDAS atd. Abychom lépe porozuměli PeerDAS, my nejprve Začněme se základním konceptem dostupnosti dat.
DA: Zajistěte, aby uzly získávaly data v řetězci
Dostupnost dat (DA) se týká zajištění toho, aby bloky publikované navrhovatelem bloku a všechna transakční data obsažená v blocích byla efektivně zpřístupněna a získána ostatními účastníky sítě. Dostupnost dat je klíčovým faktorem bezpečnosti blockchainu, protože pokud data nejsou k dispozici, i když je blokování legitimní, ostatní uzly nebudou moci ověřit jejich obsah, což může způsobit problémy s konsensem a kybernetické útoky. Útočník může například publikovat pouze část dat bloku, čímž znemožní ostatním uzlům je ověřit.
Když je vysílán nový blok, všechny zúčastněné uzly stáhnou a ověří data bloku. Tento model je proveditelný, když je rozsah sítě malý, ale jak bude blockchain dále růst, množství dat bude velmi velké, úložiště každého uzlu se bude nadále zvětšovat a odpovídajícím způsobem se budou zvyšovat požadavky na hardware. Aby se umožnilo lehkým uzlům (mobilním zařízením, jako jsou mobilní telefony nebo počítače) účastnit se blokového ověřování, zavádí blockchain technologii sharding.
Technologie sdílení rozděluje celou blockchainovou síť na více malých „střepů“. Každý shard zpracovává pouze svou část dat a nemusí zpracovávat data celého blockchainu. Jediný uzel tedy potřebuje zpracovávat data svého vlastního fragmentu. Každý fragment však zpracovává pouze část dat, což znamená, že uzly v jiných fragmentech nemají přímý přístup ke kompletním datům. Jak zajistit, aby data ve shardech byla dostupná a ostatní uzly mohly ověřit platnost dat? Například uzel ve fragmentu publikuje nově vygenerovaný blok, ale může publikovat pouze část dat. Pokud ostatní uzly nemohou získat všechna data bloku, nemohou ověřit, zda je blok autentický a legální.
DAS: Ověření celkové dostupnosti dat s částečnými daty
Za účelem řešení problému dostupnosti dat při shardingu byla navržena technologie Data Availability Sampling (DAS), jejíž hlavní myšlenkou je ověřit dostupnost dat bloků pomocí vzorkování, aniž by každý uzel musel ukládat nebo stahovat kompletní data bloků .
Vzorkování dostupnosti dat umožňuje uzlům ověřit dostupnost dat pouhým získáním náhodné části dat v bloku. Pokud je uzel schopen úspěšně získat a ověřit tyto náhodné datové fragmenty, lze odvodit, že jsou k dispozici data celého bloku.
Pro podporu tohoto vzorkování jsou data bloku obvykle kódována pomocí RS. Toto kódování umožňuje kompletní obnovu dat i v případě ztráty části dat. Proto, i když uzel stáhne pouze část dat bloku, může odvodit a potvrdit platnost dat celého bloku. DAS snižuje množství dat, které každý uzel potřebuje zpracovat prostřednictvím ověřování vzorků, a lehké uzly se mohou také účastnit ověřování bloků.
Prostřednictvím těchto technologií jsou implementovány DA vrstvy, jako je Celestia. Zahrnuje hlavně kódování RS + důkaz platnosti + DAS.
Kódování RS (Reed-Solomon Encoding): Tato metoda kódování umožňuje uzlům, které přijímají pouze část datového fragmentu, rekonstruovat celý datový blok. Je podobný kódu opravy chyb a má určitou toleranci chyb I když dojde ke ztrátě části dat, zbývající část stačí k rekonstrukci kompletních dat.
Důkaz platnosti: Použijte důkaz s nulovými znalostmi, abyste zajistili, že v procesu kódování dat a přenosu nedochází k žádným chybám. Pokud je ověření úspěšné, lze všechna data bezchybně dekódovat.
DAS (Data Availability Sampling): Lehké uzly náhodně vzorkují část fragmentů kódujících RS v bloku, aby ověřily dostupnost těchto fragmentů, čímž odvodí, že je dostupný celý datový blok.
PeerDAS: Kolaborativní ověřování dat mezi uzly
PeerDAS je specifická implementace DAS, která provádí vzorkování dostupnosti dat prostřednictvím sítě peer-to-peer. Síť peer-to-peer je síť složená z více uzlů, které spolu přímo komunikují. V rámci DAS každý uzel nezávisle provádí vzorkování dat a PeerDAS tento proces optimalizuje a umožňuje uzlům spolupracovat při sdílení a ověřování dat v blocích, což dále zvyšuje efektivitu ověřování. Uzly nejsou izolované. Mohou sdílet úkoly a výsledky ověřování dat a mohou se spolehnout na ověřená data jiných uzlů. Uzly tak nemusejí nést veškerou ověřovací práci samy, ale sdílejí ověřovací úkoly prostřednictvím spolupráce, což dále snižuje zátěž uzlů. Kolaborativní ověřování navíc zvyšuje obtížnost manipulace s daty Útočník musí zasáhnout více ověřovacích uzlů současně, aby mohl úspěšně manipulovat s daty.
V současné době, podle poslední schůzky Ethereum na PeerDAS, klientský tým Etherea Lighthouse sloučil pobočku DAS do hlavní pobočky a testuje zajištění kompatibility s PeerDAS. Větve jsou obvykle nezávislé verze kódu používané k vývoji a testování nových funkcí nebo vylepšení Sloučení do hlavní větve znamená, že funkce nebo vylepšení byly vyvinuty a je jisté, že jsou stabilní a lze je začlenit do základního kódu.