Autor: Yiping, IOG Ventures
Krajina vrstvy 2 se rychle vyvíjí, protože ZKRU jako zkSync a StarkNet spouštějí mainnet. Jako první jsou na trhu tradičně OPRU jako Arbitrum, a proto mají silnější ekosystém. Naproti tomu ZKRU jsou technologické průlomy, které nabízejí vyšší propustnost a nižší poplatky.
V posledních měsících se větší aktivita přesunula z vrstvy 1 na vrstvu 2 při hledání rychlejších a levnějších transakcí. TVL společnosti Ethereum za poslední rok klesla z téměř 40 miliard dolarů na 20 miliard dolarů. TVL pro vrstvu 2 však představuje jiný obrázek, s obrovským růstem, který naznačuje, že přijetí vrstvy 2 se zrychluje.


Arbitrum vede cestu s více než 50% podílem na trhu Layer 2 TVL, i když ZKRU také vynaložily své úsilí. Výhoda prvního tahu Arbitrum mu umožňuje udržet si dominantní postavení.

Analýza počtu denních transakcí ukazuje, že ZKRU jako zkSync a StarkNet mírně převyšují OPRU v propustnosti. Ekosystémová výhoda společnosti Arbitrum však zůstává, přestože v denních TPS mírně zaostává.

OPRU existují déle než ZKRU. ZKRU však spouštějí své mainnety a přitahují uživatele z jiných ekosystémů. Očekává se, že jako lídr v oblasti OPRU bude Arbitrum čelit vzestupu ZKRU svými novými aktualizacemi.
Rozhodnutí: Styl
Vzhledem k tomu, že vývojáři optimalizují technologii a náklady s nulovými znalostmi, budou ZKRU pravděpodobně nadále získávat podíl na trhu díky výhodám jejich škálovatelnosti. Síťové efekty Arbitrum však poskytují schopnost zůstat robustní navzdory konkurenčním tlakům. Prostřednictvím inovativních řešení, jako je Stylus, může Arbitrum doplnit svou vedoucí pozici jedinečnými technickými schopnostmi a nadále zůstat v popředí závodu na 2. vrstvě.
Stručně řečeno, Stylus je nové revoluční inteligentní smluvní prostředí navržené pro Arbitrum, které umožňuje vývojářům psát efektivní, interoperabilní programy v programovacích jazycích jako Rust, C++ a Solidity.
Otevírá obecné výpočty na blockchain a vítá vývojáře používající různé technologické balíčky.
WASM
Stylus funguje tak, že přidá virtuální stroj WebAssembly (WASM), který běží paralelně se stávajícím virtuálním strojem Ethereum (EVM). Inteligentní smlouvy napsané v jazyce, který se kompiluje do WASM, mohou nativně vykonat 10x nebo více rychleji než Solidity, což výrazně snižuje náklady na plyn. EVM zůstává plně funkční, takže stávající smlouvy Solidity stále fungují jako dnes. Dva virtuální počítače fungují synchronně, což umožňuje, aby se smlouvy napsané v různých programovacích jazycích navzájem volaly a zároveň upravovaly stejný základní stav blockchainu.
Vlastní předkompilace
Stylus navíc podporuje i vlastní předkompilace.
Předkompilace jsou nízkoúrovňové moduly na Ethereum a Arbitrum, které se používají k velmi efektivnímu provádění konkrétních kryptografických nebo obslužných funkcí. Existují například předkompilace pro ověření podpisu ECDSA a výpočet hash SHA256.
Přidání nových předkompilací vyžaduje, aby všichni validátoři koordinovali upgrade EVM, takže překážka vstupu je vysoká. A se Stylusem mohou vývojáři snadno nasadit své vlastní prekompilátory napsané v Rustu nebo C++.
Tým může například vzít kryptografickou knihovnu napsanou v C a nasadit ji na Arbitrum bez úprav. To umožní těmto kryptografickým primitivům spouštět ultrarychlé nativní rychlosti.
Jiné smlouvy mohou tento stylus nazvat „předkompilací“, stejně jako nazývají nativní předkompilaci pro využití této kryptografické technologie. Veškeré měření plynu a zabezpečení proti podvodům fungují automaticky.
To týmu umožňuje prototypovat vlastní kryptografii, speciální křivky založené na párování a další nová primitiva bez jakékoli speciální podpory řetězce. Výzkumníci Etherea mohou dokonce iterovat návrhy EIP brzy tím, že je nasadí jako předkompilované verze Stylus na Arbitrum.
Tím, že dává vývojářům možnost zavádět nová kryptografická primitiva nativně v řetězci, Stylus značně rozšiřuje rozsah toho, co lze sestavit. Předkompilace již není omezena na funkce podporované EVM.
Jak funguje stylus
Než se ponoříme do širší role WASM ve vesmíru blockchainu, je důležité pochopit, jak Arbitrum organizuje koexistenci EVM a WASM. Nejde jen o dva samostatné motory, jde o synergický vztah, který posiluje silné stránky obou.
Jedinečná architektura Arbitrum umožňuje bezproblémové a synchronizované operace mezi EVM a WASM díky svému jednotnému stavu, vyvolání mezi VM a kompatibilnímu ekonomickému modelu.
Inteligentní smlouvy napsané v Solidity nebo jiných jazycích EVM jsou kompilovány do bytecode EVM jako obvykle. Při realizaci běží tyto smlouvy na EVM, stejně jako dnes.
U jazyků, které se kompilují do WASM, jako je Rust, C++ a C, je pracovní postup:
Vývojáři používají standardní kompilátory WASM, jako je Clang nebo Rustc, ke kompilaci svých chytrých kontraktů do WASM.
Bytekód WASM je nahrán do řetězce Arbitrum v komprimované podobě.
Vlastník smlouvy volá metodu `ArbWasm` předkompilovanou `compileProgram`, která nastaví bezpečnostní nástroje pro WASM, zpoplatní je a zkompiluje do nativního kódu optimalizovaného pro hardware validátoru.
Když je zavolána smlouva, běží na runtime WASM jako Wasmer, který je mnohem rychlejší než EVM, čímž se šetří poplatky za plyn.
Měření WASM účtuje plyn před každým základním blokem, nikoli podle operačního kódu, jako je EVM. To je efektivnější a zajišťuje, že se smlouva nevymkne kontrole.
EVM a WASM
Dva virtuální stroje (VM) běží synchronně, což jim umožňuje vzájemně si volat a zároveň sdílet stejný globální stav. Transakce může být provedena částečně v EVM a částečně ve WASM a výsledky jsou hladce kombinovány.
Počkejte, jak mohou dva virtuální počítače fungovat hladce a synchronizovaně?
Polkadot toho dosahuje prostřednictvím XVM. Na rozdíl od Polkadotu fungují WASM a EVM na Arbitrum hladce a synchronně z několika klíčových důvodů:
Jediný stav: Oba virtuální počítače přistupují ke stejné základní datové struktuře a stavu trie. Smlouva v jednom virtuálním počítači může číst/zapisovat do stejného umístění jako smlouva v jiném virtuálním počítači. To poskytuje jednotný pohled na stav řetězce.
Cross-VM volání: Když transakce interaguje se smlouvou EVM, Geth ji zpracuje a poskytne výsledek. Pokud smlouva EVM následně volá program WASM, převezme WASM VM výpočet výsledků této části.
Sdílený kontext: Systémové informace jako bloková data, adresa odesílatele atd. jsou dostupné oběma virtuálním počítačům. Smlouva WASM může získat číslo bloku stejně jako smlouva Solidity.
Jediný konsensus: Validátoři provozují dva virtuální počítače, aby ověřili transakce a dosáhli konsensu o správném stavu řetězce. Spory se odvolají na Jednotný systém prokazování podvodů.
Kompatibilní ekonomika: Koncepty, jako je měření plynu, se rozšiřují na jednotlivé virtuální počítače a zajišťují odpovídající výpočetní náklady a zdroje v obou prostředích.
Pro důkazy o podvodu ověřovatel rozdělí provedení EVM a WASM, aby v případě potřeby identifikoval všechny neplatné kroky. Struktura WASM umožňuje systému zaručit ukončení a vynutit platnost důkazů.
Blockchain |
Arbitrum není jedinou platformou, která uznává transformační potenciál WebAssembly (WASM). Polkadot i Cosmos také integrovaly WASM do svých ekosystémů, přičemž každá platforma nabízí jedinečnou sadu výhod a funkcí.
Polkadot umožňuje uživatelům vyvíjet chytré smlouvy s WASM a podporuje dva jazyky: AssemblyScript, vestavěný DSL a Ink!, který je podobný Rustu.
Cosmos na druhé straně používá CosmWasm jako svůj inteligentní kontraktový runtime, který umožňuje vývojářům psát smlouvy v Rustu.
Než se ponoříme do toho, proč je blockchainový průmysl tak vstřícný vůči WASM, stojí za to pochopit konkrétní výhody, které vynikají pro Cosmos a Polkadot:
Cosmos zdůrazňuje následující výhody WASM:
Kompatibilita s knihovnami Rust
Rozmanitá komunita vývojářů
Vylepšené zabezpečení, včetně ochrany proti reentrancy útokům
Snadno testovatelné
vysoký výkon
Runtime WASM společnosti Polkadot má tyto funkce:
vysoký výkon
Interoperabilita s EVM
Platforma agnostika
Kompaktní binární velikost
Podporuje Rust i AssemblyScript (příchuť TypeScript)
Zatímco Polkadot, Cosmos a Arbitrum sdílejí některé společné výhody nabízené WASM, každá platforma má také své vlastní jedinečné atributy.
Široké přijetí WASM těmito hlavními blockchainovými platformami je důkazem jeho rostoucího významu v tomto odvětví, a proto je důležité pochopit, proč se tato technologie rychle stává základním kamenem moderní blockchainové architektury.
Proč zvolit WASM
Co je WASM
Abychom porozuměli synergii mezi blockchainem a WebAssembly (WASM), musíme nejprve pochopit, co je WASM a hnací sílu jeho rozvoje.
WebAssembly je binární formát instrukce, který umožňuje, aby se kód spouštěl téměř nativní rychlostí ve webovém prohlížeči. Slouží jako cíl kompilace pro řadu programovacích jazyků, včetně C a Rust, a je navržen tak, aby byl rychlý, efektivní a bezpečný. WASM efektivně překlenuje propast mezi webovým programováním a programováním na systémové úrovni, čímž zlepšuje výkon a funkčnost webu.
„Web“ ve WebAssembly zdůrazňuje jeho schopnost běžet v prostředí JavaScriptu (obvykle se nachází v prohlížeči). V těchto nastaveních mají vývojáři plný přístup k WASM API a mají komplexní podporu webového API, což jim dává značnou kontrolu nad chováním webu.
Historie WASM
Podle principu „napiš jednou, spusť kdekoli“ se WASM ukázal jako výkonné řešení dlouhotrvajícího souboru výzev. Od roku 2016 mnoho programů zavádí nové funkce prostřednictvím jazyků specifických pro doménu (DSL), které často zahrnují kompromisy mezi údržbou, efektivitou a zabezpečením. Roste potřeba řešení, které může poskytnout nové funkce bezpočtu serverů, aniž by došlo k ohrožení těchto aspektů.
Byly posouzeny nedostatky různých existujících řešení:
- Systémový virtuální stroj
Časté spouštění a vypínání přináší nadměrnou režii
Nedostatek viditelnosti kódu pro zajištění bezpečnosti
Příliš abstraktní požadavky na výkon
- kontejner
Nedostatek viditelnosti kódu pro zajištění bezpečnosti
Neefektivní kvůli vysoké úrovni abstrakce
Časté operace přinášejí značnou režii
- Virtuální stroj na jazykové úrovni
Vyžaduje časté úpravy pro zajištění bezpečnosti
Vestavěné virtuální počítače, jako V8, jsou náročné na zdroje
Pomalá adaptace nového jazyka na bezpečnostní model
stále příliš abstraktní
- Instruction Set Architecture (ISA)
Obtížné efektivní sandbox
Předchozí projekty Google se z něj přesunuly do WASM
Nedostatek zralé implementace
Do roku 2018 nabral vývoj WASM na síle se zaměřením na běh na různých architekturách, serverech, vestavěném hardwaru a dokonce na podporu více jazyků. Na rozdíl od Javy je WASM navržen bez ohrožení bezpečnosti. Do roku 2019 byl představen model komponent pro vylepšení modulu WASM umožňující interoperabilitu mezi jazyky. To umožňuje řešení, jako je jednou napsat knihovnu HTTP a použít ji ve více jazycích.
K dnešnímu dni má WASM řadu schopností a je stále více přijímán v cloudových nativních scénářích, včetně blockchainu. Mezi jeho výhody patří:
vysoký výkon
Kompaktní binární velikost
Přenositelnost napříč platformami
Podporuje více jazyků, jako je C/C++, Rust, AssemblyScript atd.
Spustit v enginu JavaScript
Výkonný sandbox s limity paměti a procesoru
Extrémně rychlé doby spouštění, obvykle v milisekundách nebo méně
Komunita WASM pokračuje v práci na větší integraci a výkonu napříč jazyky.
Pochopení historického vývoje WASM nám poskytuje cenný kontext pro pochopení jeho současných a potenciálních rolí v různých prostředích, včetně blockchainových projektů, jako je Stylus. Toto pozadí nám poskytuje jemné porozumění při zkoumání problémů a obav souvisejících s implementací WASM v ekosystému blockchainu.
Otázky a odpovědi stylusem
Jazyková podpora
Vývoj WASM odhaluje, proč je Stylus vzrušujícím doplňkem ekosystému Arbitrum, ale také zdůrazňuje některá omezení a obavy. Jednou z obav je jazyková podpora. Zatímco Stylus rozšířil vývojářskou komunitu Arbitrum o jazyky jako C++ a Rust, zaostával za populárními jazyky jako JavaScript a Python.

I když existují předběžné projekty zaměřené na zavedení Pythonu a JavaScriptu do WASM, tyto snahy ještě nejsou připraveny na široké přijetí kvůli problémům s garbage collection a problémy s výkonem.
Jazyková kompatibilita
V současné době Stylus podporuje sady C/C++ a Rust SDK a hladce se integruje s nástrojovými řetězci pro tyto jazyky. Vývojáři mohou při vytváření chytrých kontraktů dokonce integrovat knihovny třetích stran, jako jsou nativní kryptografické implementace. Hlavním omezením něčeho takového jsou související náklady na plyn.
Zatímco Rust SDK je stále v plenkách, jak Rust, tak C SDK mají některé chybějící funkce. Sada C SDK například nepodporuje funkce exportované do ABI a modifikátory zatím nejsou podporovány v žádné sadě SDK.
V současné době neexistuje žádné místní testovací prostředí Stylus, ale vývojáři mohou spouštět testy přímo v sadě SDK. Pro nasazení chytrých kontraktů je v současnosti jedinou možností testnet, který zatím nepodporuje chytré ověřování kontraktů. V současné době probíhají snahy přinést různé tokeny ERC a **[Uniswap V2]** do ekosystému Stylus.
Dilema volby jazyka
Volba mezi jazyky specifickými pro doménu (DSL), vestavěnými DSL (eDSL) a univerzálními jazyky vyžaduje kompromis mezi ovládáním na nízké úrovni a abstrakcí na vysoké úrovni. Vývoj zcela nového DSL vyžaduje značné investice do toolchainu a rozvoje ekosystému. Naproti tomu eDSL jako podmnožina univerzálního jazyka umožňuje snadnější integraci se stávajícími nástroji a má kratší dobu učení. Například by bylo užitečné vytvořit eDSL v populárním jazyce, jako je JavaScript nebo Python.
Společný jazyk vyžaduje použití sady SDK, která zavádí další nástroje, zvyšuje upovídanost a činí kód méně expresivním, spolu s delšími voláními API a operacemi s objekty.
Nalezení správné rovnováhy mezi výběrem jazyka a vývojem eDSL může být klíčem k přilákání širší komunity vývojářů a zároveň poskytovat uživatelsky přívětivé nástroje. Podle aktuálních údajů se top komunita krypto vývojářů stále soustředí kolem Etherea. Platformy, které využívají Rust pro chytré smlouvy, jako jsou Polkadot, Cosmos a Solana, však také získávají na síle a rychle rostou mezi svými vývojářskými komunitami.


výkon
WASM výrazně zlepšuje rychlost provádění a snižuje velikost paketů. Zatímco Stylus ještě nebyl nasazen na mainnet, benchmarky z jiných sítí mohou sloužit jako užitečná reference. Pozorované doby provádění jsou 4–8krát rychlejší a kompilovaná velikost je snížena přibližně o 50 %.


Stylus má v současné době limit velikosti svých smluv, který je omezen na přibližně 128 kB v nekomprimovaném stavu. Díky tomuto omezení je přenos velkých chytrých kontraktů z jiných jazyků, jako je Solidity, náročný. V základně kódu stylusu je tento limit popsán níže:

Stojí za zmínku, že WASM vynakládá určitou režii při spouštění a vypínání. Pro nenáročné operace může být EVM ve skutečnosti nákladově efektivnější než WASM.
Interoperabilita s EVM
EVM a WASM sdílejí stejné úložné sloty a stavové stromy, což usnadňuje interoperabilitu stylusu s EVM. Toho je dosaženo prostřednictvím EVM API implementovaného ve WASM pomocí oblíbeného vzoru Host I/O. Úplný seznam podporovaných EVM API ukazuje, že interoperabilita je plně podporována.

Vlastní předkompilovaná smlouva
Tento aspekt je obzvláště vzrušující, protože představuje neprobádané území. Vlastní předkompilované smlouvy mají potenciál přinést další kryptografická primitiva v řetězci s nižšími náklady na provedení. Mohou také snížit náklady na odvození zavedením výpočtů tenzorů jako předkompilovaných smluv. Zdá se však, že neexistuje žádný existující kód související s vlastními předkompilovanými smlouvami. Přestože pro komponenty EVM existují předkompilované smlouvy, nelze je za provozu vyměnit.
Tato funkce může být stále ve vývoji a využívá možnosti WASM. EVM může volat funkce napsané ve WASM a poté je zkompilovat do strojového kódu.
Reentrantní funkce
Na rozdíl od CosmWasm (který přijímá model Actor bez opětovného vstupu), Stylus' Rust SDK ve výchozím nastavení vypíná opětovný vstup jako příznak funkce. Vývojáři mají možnost tuto funkci povolit ručně.
Aktivace opětovného vstupu bude vyžadovat určité úpravy API. Zejména vývojáři musí být opatrní, pokud jde o bezpečnostní opatření, jako je obnovování mezipaměti během hovorů.

Vhled
Stylus otevírá nové případy použití, které by byly příliš náročné na plyn při použití pouze EVM, jako je vysoce výkonné šifrování, hraní her a AI. Umožňuje také přizpůsobení předkompilovaných smluv, což umožňuje vývojářům přidat vlastní šifrování a další základní funkce bez čekání na aktualizace. V minulosti jsme viděli, že některé ekosystémy mimo Ethereum přijaly WASM, jako je Cosmos a Polkadot. Toto je poprvé, co WASM přijala komunita Ethereum. Celkově Stylus představuje významný vývoj ve vývoji inteligentních smluv a pomůže Ethereum a Arbitrum škálovat při zachování interoperability se všemi existujícími aplikacemi.
Integrace stylusu do sady Layer 2 SDK společnosti Arbitrum poskytuje vývojářům vrstvy 3 větší flexibilitu. Nyní mohou do řetězce přesunout intenzivní výpočty, které dříve překračovaly limity plynu, čímž se otevírají nové možnosti. Vývojáři se již neomezují pouze na Solidity, ale mohou si také vybrat Rust nebo C++, pokud tyto jazyky lépe vyhovují jejich potřebám a odbornosti. Vlastní předkompilované smlouvy umožňují bezproblémovou migraci preferovaných kryptografických, obslužných a dalších pomocných funkcí do řetězce pro optimální výkon. Psaní nízkoúrovňové logiky přímo v jazyce přizpůsobeném každému případu použití vede k plynulejšímu vývoji. Vývojáři se mohou zaměřit na základní funkčnost produktu, spíše než se uchylovat k náhradním řešením, aby se vyhnuli nákladům na plyn. Odstraněním jazykových a plynových omezení umožňuje Stylus tvůrcům třetí úrovně vytvořit nejúčinnější uživatelské prostředí od začátku pomocí správných nástrojů pro jejich doménu.
Stylus také demonstruje schopnost společnosti Arbitrum inovovat ve velkém měřítku a integrovat nové virtuální stroje. Ed Felten, spoluzakladatel a hlavní vědecký pracovník společnosti Arbitrum & Offchain Labs uvedl, že Arbitrum je vyvinuto na základě populárních nástrojů a programovacích jazyků v oboru. Mohou rychleji psát testy a vyvíjet nové funkce nad staršími systémy. OP šel dále na cestě ZKizace a postupně se posunul k myšlence hybridního Rollupu. Optimismus v současné době pracuje s Risc0 na použití Zeth ke generování důkazů o nulových znalostech pro OPRU. Při použití tohoto řešení nemusí Optimism provádět další úpravy OPRU. Pokud vás Zeth zajímá, můžete si přečíst, co jsem napsal před [Twitter].
Opravdu se těšíme na aplikace AI na Arbitrum. V současné době je provádění strojového učení v řetězci velmi náročné na plyn, takže vývoj je nákladný. Zero-knowledge ML může snížit náklady, ale také přináší značnou další složitost pro vývojáře. Pokud bychom mohli implementovat operace tenzorů jako vlastní předkompilované smlouvy prostřednictvím Stylus a provádět je nativně za zlomek nákladů, otevřelo by to nové možnosti pro vysoce výkonné strojové učení v řetězci. Tím, že umožňuje vývojářům rychle vytvářet a nasazovat algoritmy ML jako snadno integrovatelné předkompilované smlouvy v jazyce, který znají, jako je Python, může Arbitrum řídit další generaci inovací AI v DeFi, GameFi a dalších. Výkon a flexibilita stylusu nám umožní zaměřit se na inovativní architektury ML spíše než na optimalizaci plynu. Těšíme se, až uvidíme kreativitu komunity aplikovanou na toto vznikající paradigma.



