Před několika lety jsem spekuloval o tom, že by společnost Uniswap mohla vyvinout vlastní síť, ale byl jsem skeptický kvůli možným problémům s uživatelskou zkušeností. Po představení Unichainu se však ukázalo, že moje předpověď byla mylná.
Dokument společnosti Unichain má pouhé tři stránky, ale při bližším pohledu zjistíte, že jde o mistrovské dílo. Kombinuje dlouhodobé zaměření společnosti Uniswap na uživatelskou zkušenost, nejnovější výzkum společnosti Flashbots v oblasti MEV a rozsáhlý ekosystém postavený na OP Stack.
Navzdory své stručnosti se tento dokument zabývá složitými tématy, jako jsou důvěryhodná prostředí pro provádění (TEE), řazení priorit a zdanění MEV, což by pro čtenáře, kteří neznají základy MEV, mohlo být náročné. Cílem tohoto článku je poskytnout jednoduchý a rychlý úvod do hlavních funkcí systému Unichain.
1. Problém
Uniswap je přední AMM DEX v ekosystému Etherea, který je v současnosti nasazen v 25 sítích s celkovým objemem TVL přibližně 4,5 miliardy dolarů. Navzdory svému úspěchu se Uniswap stále potýká s omezeními vyplývajícími z podkladových sítí.
Například Ethereum sice poskytuje značnou likviditu, ale má nízkou škálovatelnost a je zranitelné vůči útokům typu MEV (Maximum Extractable Value). Pro řešení těchto problémů se objevila řešení typu Rollup, ale většina z nich je v současné době řízena jediným sekvencerem pro řazení transakcí, což zavádí potenciální jednotlivá místa selhání, jako je selhání živosti a cenzura.
Proces tvorby bloků na Ethereu a většině sítí Rollup navíc zahrnuje veřejný mempool, čímž vzniká prostředí, kde mohou uživatelé (hledači) získávat MEV od ostatních. Struktura hodnotového řetězce MEV také vytváří nerovnováhu, kdy neúměrné množství hodnoty získávají navrhovatelé spíše než uživatelé.
2. Co je Unichain?
2.1 Přehled
Unichain je Ethereum Optimistic Rollup postavený na OP Stacku, který spustily společnosti Uniswap, Flashbots, OP Labs a Paradigm, aby tyto problémy řešily. Unichain poskytuje několik klíčových výhod prostřednictvím 1) ověřitelného budování bloků a 2) ověřovací sítě Unichain:
- Rychlé aktualizace stavu
- Schopnost aplikací extrahovat a internalizovat MEV
- Rychlé vypořádání díky rychlému vyřízení
Kromě toho, že je Unichain založen na OP Stack Rollup, plánuje se integrovat do ekosystému Superchain. Cílem této integrace je spolu s nativními možnostmi rychlého vypořádání Unichainu nabídnout uživatelům bezproblémovou likviditu prostřednictvím řešení napříč řetězci v rámci ekosystému Superchain.
Podívejme se blíže na to, jak společnost Unichain těchto funkcí dosahuje.
2.2 Ověřitelné sestavování bloků
Ověřitelné sestavování bloků je realizováno pomocí funkce Rollup-Boost, která byla vyvinuta společně s Flashboty. Rollup-Boost nabízí dvě klíčové funkce: Flashbloky a ověřitelné prioritní řazení. Podobně jako MEV-Boost funguje Rollup-Boost jako vedlejší software.
2.2.1 Bloky Flash
Flashbloky jsou mechanismus předběžného potvrzení, který zveřejňují tvůrci TEE (podrobněji se TEE budeme věnovat níže). Unichain generuje dílčí bloky tak, že rozdělí jeden blok na čtyři části, každých 250 milisekund vytvoří dílčí blok a odešle jej sekvenceru.
Během provádění transakcí sekvencer průběžně stahuje tyto dílčí bloky a poskytuje uživatelům včasná potvrzení o provedení. Sekvencer zaručuje, že tyto dílčí bloky budou zahrnuty do konečného navrženého bloku. Tento proces urychluje aktualizace stavu, snižuje latenci, zlepšuje uživatelský komfort a omezuje škodlivé MEV.
2.2.2 Ověřitelné prioritní řazení
2.2.2.1 Prioritní řazení
Prioritní řazení, které navrhli Dan Robinson a Dave White ze společnosti Paradigm, je mechanismus tvorby bloků, který předpokládá, že navrhovatelé bloků řadí transakce čistě na základě prioritních poplatků, bez cenzury nebo zpoždění. Tento model je proveditelný pouze s jediným nebo důvěryhodným navrhovatelem bloku. V konkurenčním prostředí, jako je Ethereum L1, kde bloky sestavuje více navrhovatelů, není prioritní řazení životaschopné.
Soukromý tok objednávek umožňuje DApps vybírat daně MEV z transakcí, které s nimi interagují, což jim umožňuje získat část hodnoty MEV. Tyto hodnoty mohou být použity interně nebo přerozděleny uživatelům. Daně MEV jsou poplatky, které inteligentní kontrakty ukládají na základě prioritních poplatků.
Podívejme se na příklad.
Předpokládejme, že 100y DEX na Unichain L2 chce získat hodnotu MEV z arbitrážních příležitostí, které se na jeho platformě vyskytují. Protože ví, že bloky na Unichainu jsou sestavovány pomocí prioritního řazení, je hodnota MEV každé transakce zcela určena jejím prioritním poplatkem. 100y DEX nastaví svou daň MEV na 99násobek prioritního poplatku transakce.
Pokud existuje arbitrážní příležitost v hodnotě 100 ETH, kolik by byl vyhledávač ochoten zaplatit za její využití? Odpověď je 1 ETH. Nastavení prioritního poplatku na 1 ETH vede k dani MEV ve výši 99 ETH, takže celkové náklady činí 100 ETH. Pokud by byl prioritní poplatek nastaven vyšší než 1 ETH, celkové náklady by překročily hodnotu 100 ETH, což by vedlo ke ztrátě. Proto může 100y DEX zachytit až 99 ETH hodnoty MEV.
Pro běžné uživatele, kteří nezískávají hodnotu MEV, budou prioritní poplatky mnohem nižší, což znamená, že 100y DEX nebude z těchto transakcí získávat hodnotu. Místo toho bude zachycovat pouze hodnotu MEV, kterou představují prioritní poplatky. Toto nastavení umožňuje aplikacím přímo extrahovat MEV, čímž vznikají nové potenciální případy použití.
2.2.2.2 Ověřitelnost prostřednictvím TEE
Klíčové je zajistit, aby subjekt odpovědný za sestavení bloku dodržoval mechanismus řazení priorit. K dosažení tohoto cíle zavádí Unichain dvě opatření: 1) oddělení sekvenceru od tvůrce bloků, podobně jako v modelu PBS, a 2) požadavek, aby tvůrci bloků používali TEE (Trusted Execution Environment), který umožňuje komukoli ověřit, zda je dodržováno prioritní pořadí.
TEE je zabezpečená část hardwaru (například CPU), která pracuje nezávisle na zbytku systému a bezpečně zpracovává citlivá data. Zajišťuje, že důvěryhodný kód může být bezpečně spuštěn, i když je vnější prostředí kompromitováno, jako například TrustZone společnosti ARM nebo SGX společnosti Intel.
Tato konstrukce zabraňuje přístupu do zabezpečené oblasti i operačnímu systému nebo programům s oprávněním správce. Abychom zajistili, že kód spuštěný v TEE je důvěryhodný, používáme atestace. Atestace zaručuje bezpečný a nezfalšovaný stav TEE. Například v systému Intel SGX je generován hash reprezentující kód a data uvnitř SGX a hardwarově spravovaný soukromý klíč může prokázat integritu tohoto kódu.
Proces vytváření bloků Unichain probíhá v rámci TEE stavitele. Díky funkcím TEE mohou tito stavitelé předložit uživatelům důkaz, který prokazuje, že používají mechanismus sestavování bloků s prioritním řazením. Tyto kombinované funkce zajišťují, že aplikace v systému Unichain mohou spolehlivě získávat část příjmů z MEV.
2.3 Ověřovací síť Unichain
Validační síť Unichain je decentralizovaná síť operátorů uzlů, kteří jsou zodpovědní za ověřování posledního stavu Unichainu a zajišťují rychlou finalizaci prostřednictvím ekonomického zabezpečení, což umožňuje bezproblémové transakce napříč řetězci. Tento koncept je podobný systému MACH společnosti AltLayer, který k dosažení rychlé finality využívá systém EigenLayer.
Aby se účastníci mohli stát decentralizovaným uzlem v Unichainu, musí vsadit UNI v hlavní síti Etherea. Uzly s nejvyššími zůstatky sázek UNI budou pro každou epochu vybrány do sady aktivních validátorů a budou se účastnit validace spuštěním klienta Reth Unichain. Navíc, podobně jako v jiných sítích, mohou držitelé UNI své sázky delegovat.
3. Závěrečné myšlenky
Uniswap jako DApp již dosáhl silného přizpůsobení produktu trhu a já jsem optimistický ohledně jeho přechodu na specializovanou L2. Roztříštěnost likvidity však zůstává výzvou, takže bude důležité sledovat, jak tým Uniswapu usnadní bezproblémové transakce mezi řetězci Ethereum L1 a Unichain L2.
Z investičního hlediska je zajímavá zejména skutečnost, že tokeny UNI budou nyní sloužit jako sázkové tokeny pro UVN. Vzhledem k silnému výkonu stakingových protokolů, jako jsou EigenLayer, Symbiotic a Karak, můžeme očekávat, že v UVN bude stakováno velké množství UNI, což by mělo hodnotu UNI výrazně zvýšit.