1. Padlá vesnice Ethereum
Kdysi dávno žila ve vesnici Ethereum skupina zelených žabek Pepe. Kdysi to byla jedna z nejživějších říší, kde vysoká decentralizace a silná bezpečnost daly vzniknout prosperující ekonomice.
Vesničané se řídili těmito zásadami a na základě svých zájmů pravidelně volili vedoucí, kteří dohlíželi na generování bloků zaznamenávajících transakce každých 12 sekund. Tímto způsobem pilně řídili prosperující ekonomiku vesnice.
Nyní začala bývalá sláva Etherea slábnout, šíří se meme viry a síla vesnice slábne. Nad ulicemi se vznášejí stíny a zelené žáby Pepe se těžce šourají a bezcílně bloudí opuštěnou, spoře osvětlenou vesnicí.
Některé zelené žáby Pepe však stále touží obnovit ztracenou slávu Etherea. Podporují „Reformu L2“, hnutí, jehož cílem je oživení vesnice. Díky jejich úsilí začíná Ethereum znovu vzkvétat a dosahuje ekonomické vitality, která byla kdysi považována za nemožnou.
Reforma L2 má však také svá omezení. Nedaleké vesnice jako Solana a Sui, ačkoli jsou mladé a plné nestability, se rychle vyvíjejí díky nebývalým vědeckým revolucím. Jejich inovace umožňují bezproblémové provádění složitých finančních transakcí, zatímco Ethereum se navzdory reformám stále potýká s problémy. V důsledku toho kolují mezi Pepeho žabáky zvěsti o možnosti přestěhovat se do těchto sousedních vesnic.
Jednoho osudného dne se ve vesnici Ethereum objevil fialový čaroděj Pepe.
2. Příchod fialového čaroděje Pepeho
Čaroděj Pepe, oděný do purpurového roucha, smutně hleděl na ztracenou slávu etherské vesnice a byl odhodlán založit novou říši zvanou Monad.
Jednoho dne se objevil před zelenými žábami Pepe a oznámil svůj velký plán na vytvoření vesnice Monad. Shromáždil zelené žabky Pepe na centrálním náměstí a začal naslouchat jejich myšlenkám.
Ozval se zelený žabák Pepe 1: „Doufám, že život v Monadu bude takový jako v Ethereu. Přestože Ethereum postrádá škálovatelnost Solany nebo Sui, nikdy jsem neuvažoval o odchodu, protože jejich kultura se od té naší značně liší.“
Zelená žába Pepe 2 dodala: „Zachování stejného způsobu života a kultury je důležité, ale doufám také v systém, který bude stejně efektivní jako v jiných vesnicích. Ethereum je sice bezpečné, ale pro podniky, které usilují o rychlost a agilitu, nestačí.“
Čaroděj si vzpomněl na jejich přání a slíbil vytvořit Monad s kulturními vlastnostmi Etherea a škálovatelností Solany a Sui. Uvažoval o mocných kouzlech potřebných k uskutečnění tohoto snu – vesnice slučitelné s tradicemi Etherea, která by mohla vyhovět pokroku v efektivitě nové doby.
Poté se o svou vizi podělil s dychtivými žabkami Pepe a zažehl v nich naději na skutečný domov, který by jim nabídl to nejlepší z obou světů.
3. Tajné kouzlo 1: Opožděná exekuce
Jedno z omezení škálovatelnosti Ethereum Village spočívá ve zpracování každé transakce během procesu konsensu, který je nezbytným krokem při generování každého nového bloku.
V Ethereu musí vedoucí, který navrhuje blok, předem vypočítat všechny transakce v rámci bloku, aby byla zajištěna platnost každé transakce. Validující uzly, které tento blok přijímají, musí navíc také vypočítat všechny transakce, aby ověřily legitimitu bloku a hlasování.
Vzhledem k tomu, že proces konsensu zahrnuje výpočty a komunikaci mezi vesničany, je čas vyhrazený na zpracování transakcí velmi omezený, což v konečném důsledku vede k omezené škálovatelnosti.
Aby tento problém vyřešil, zavedl fialový kouzelník Pepe nové kouzlo s názvem „Opožděná poprava“. Toto kouzlo odděluje proces „konsensu“ (objednávání transakcí vesničanů) od procesu „provedení“ (výpočet výsledků těchto transakcí).
Zjednodušeně řečeno, namísto dosažení konsensu a provedení transakce současně pro každý blok se konsensu dosáhne pro blok N, zatímco k provedení dojde pro blok N-1 (kde již bylo stanoveno pořadí transakcí).
Tím, že se na provedení bloku ponechá celý čas, tato metoda výrazně zvyšuje počet transakcí, které lze zpracovat ve stejném časovém rámci.
Pokročilé kouzlo: Opožděný Merkle Root
V Ethereu uzly před dosažením konsensu provádějí výpočty, aby zajistily platnost bloku. V systému Monad se zpožděným prováděním jsou však konsensus a provádění odděleny. To otevírá možnost, aby uzly se zlými úmysly ignorovaly dříve dosažené konsensuální transakce nebo libovolně měnily výpočetní stavy.
Aby tomu Monad zabránil, vloží Merkleho kořen (výsledek výpočtu bloku N-10) do návrhu bloku N. Pokud více než dvě třetiny uzlů dosáhnou konsensu o bloku N, znamená to konsensus o výpočtu bloku N-10.
Pokud se výsledek výpočtu některého uzlu pro blok N-10 neshoduje s Merklovým kořenem obsaženým v bloku N, bude tento uzel vyřazen z konsensu počínaje blokem N. Zpoždění 10 bloků pro Merklův kořen zajišťuje včasné odhalení případných výpočetních chyb.
Stojí za zmínku, že doba blokování Monad je 1 sekunda, ale to neznamená, že Monadova konečnost vyžaduje 10 sekund. Díky systému MonadBFT lze dosáhnout jednoslotové konečnosti, což vede k konečnosti do 1 sekundy.
4. Tajné kouzlo 2: Transakční hesla
Chytrý fialový čaroděj Pepe přemýšlel, jak by vůdci vesnice mohli rychle vysílat návrhy bloků do ostatních uzlů.
V Ethereu je typickým přístupem zabalení celého návrhu bloku (včetně všech transakcí) a jeho odeslání po síti.
Průvodce Pepe si však uvědomil, že pokud by Monad přijal tuto metodu, vysílání návrhů bloků obsahujících mnoho transakcí by bylo náročným a pracným úkolem.
K vyřešení tohoto problému zavedl fialový průvodce Pepe koncept „transakčních hashů“. Protože všechny transakce odeslané vesničany již byly v síti rozšířeny, každý uzel udržoval záznam transakcí vesnice Monad ve svém vlastním paměťovém fondu.
To znamenalo, že vedoucí již nemusel v každém návrhu bloku předávat úplný seznam transakcí. Místo toho mohl vedoucí jednoduše odkazovat na transakce zasláním jejich hash hodnot.
Návrhy bloků Monad by tedy obsahovaly pouze hodnoty hash jednotlivých transakcí. Po obdržení těchto hodnot hash by je ostatní uzly mohly snadno porovnat se svými vlastními transakčními záznamy.
5. Tajné kouzlo 3: MonadBFT
Ve vesnici Monad je pořadí transakcí v rámci každého bloku a konsensus pro vytváření bloků řízen pomocí MonadBFT, vysoce výkonného konsensuálního mechanismu založeného na HotStuff. Tento postupný algoritmus Byzantine Fault Tolerance (BFT) umožňuje dosáhnout konsensu ve dvou krocích.
Role vedoucího bloku je náhodně vybrána na základě podílu každého účastníka. V Monadu je efektivita konstrukce bloků vyšší než ve vesnici Ethereum, protože každý návrh bloku N je předáván spolu s certifikátem kvora (QC) pro předchozí blok N-1, což znamená, že více než dvě třetiny uzlů tento blok ověřily.
Proces probíhá následovně:
- Leader N vysílá návrh pro blok N spolu s QC pro blok N-1.
- Validátoři ověří blok N a odešlou své hlasy vedoucímu N+1.
- Leader N+1 sdílí návrh pro blok N+1 spolu s QC pro blok N.
Ani v případě QC N však validátoři nemohou blok N okamžitě potvrdit, protože povaha blockchainu nezaručuje, že jsou všichni účastníci online a synchronizovaní.
Aby byl blok N plně zabezpečen, musí ověřovatelé poslat své hlasy „ano“ pro blok N+1, který obsahuje QC N, vedoucímu N+2. Když vedoucí N+2 vygeneruje QC N+1, potvrdí úspěšné dokončení kola N+1, čímž je blok N dokončen.
Purpurový čaroděj Pepe tak pomocí chytrých kouzel vede vesnici Monad do nové éry.
6. Tajné kouzlo 4: Paralelní provádění
V Monadu navrhl fialový kouzelník Pepe nové kouzlo, které zpracovává transakce paralelně, a ne sériově jako v Ethereum village.
Při odloženém provedení se blok začne provádět až po dosažení konsensu o pořadí transakcí v bloku. Monadová vesnice se skládá z mnoha kvalifikovaných vykonavatelů, z nichž každý je zodpovědný za zpracování transakcí, nezávislý výpočet jejich vstupů a výstupů a vytvoření seznamu čekajících transakcí.
Tyto vstupy a výstupy nemění stav vesnice okamžitě, ale čekají v pozastaveném magickém stavu, připraveny k předložení v pořadí určeném konsensem. Toto předložení sloučí výstupy do aktuálního stavu a utká tak souvislou a uspořádanou magickou tapiserii.
Dochází však ke zvratu. Paralelní zpracování přináší možnost konfliktů transakcí, které jsou v uspořádané vesnici Ethereum vzácné, ale v Monadu představují novou výzvu.
Pokud například jedna transakce (transakce b) ukazuje, že vesničan A daruje 1 ETH vesničanovi B, zatímco jiná transakce (transakce c) ukazuje, že B utratí tento ETH ve vesnickém hostinci, jejich pořadí se stává kritickým. Pokud se transakce c pokusí provést před transakcí b, selže. V takovém případě se konfliktní transakce přeskupí a transakce c počká, až se dokončí transakce b, a teprve poté se provede.
Proto v Monad spočívá jádro paralelního provádění v řazení: výsledky se počítají paralelně, ale aktualizace stavu se slučují přesně v požadovaném pořadí.
7. Tajné kouzlo 5: MonadDb
Kreativní nápady fialového kouzelníka Pepeho tím ale nekončily. Vykouzlil MonadDb, vlastní databázi jedinečnou pro vesnici Monad, speciálně navrženou pro ukládání stavu blockchainu. Ethereum se spoléhá na složitý Merkle Patricia Trie, který je známý svou odolností, ale také neefektivitou pro externí klienty.
MonadDb byla navržena s ohledem na paralelní provádění vesnice, podporuje více čtení a zápisů současně s vysokou přesností. Na rozdíl od tradičních databází, které vyžadují dokončení každé úlohy před přechodem k další, MonadDb využívá asynchronní I/O kouzlo, které umožňuje bezproblémové překrývání úloh a otevírá cestu pro skutečné paralelní zpracování transakcí.
8. Navštivte vesnici Monad!
Fialový čaroděj Pepe vytvořil pomocí řady podivuhodných kouzel a složité magie vesnici Monad. Důvěryhodné účty, kryptografie, transakční formáty, jazyky a peněženky Etherea se zde bez námahy snoubí se škálovatelností Solany a Sui. Nyní Monad vzkvétá a usiluje o dosažení svého snu zpracovat 10 000 transakcí za sekundu.
Zrodí se z moudrosti a naděje vesnice Monad, která dokáže zachránit svět sužovaný meme viry a pomůže Ethereu znovu získat jeho slávu? To ukáže až čas.