Eths 是 Layer2 嗎?一文了解 Ethscriptions Virtual Machine 及其定位
作者:Arrow 雜談 ,Sleipnir Research
「 Ethscriptions 是一種協議,其目的是允許用戶以更低的成本在以太坊 L1 上共享信息並執行計算,它繞過了使用智能合約存儲和執行來實現這一點,將確定性協議規則應用於以太坊調用數據來計算狀態。」
我第一次了解到 eths 是今年八月中,那時這已經不是一個新興的概念了,各種銘文滿天飛,很多人只是將其當作 BRC -20 的仿盤。
而且當時的推特上絕對沒有現在對此概念的熱情,直到今天看到各位老師來聊 eths 是不是 Layer2 才有了興趣。
晚上在各個媒體上找了找,好像也沒有對 Ethscriptions Virtual Machine ( ESC - VM ) 概念的科普,所以就寫一篇文章來看看這是個什麼東西,盡量不涉及技術,簡單明瞭的把事兒說明白。
Layer2
簡單的幾句話先過一下 Layer2 ,這個概念大家應該比較清楚,之前有一段時間我也系列的寫了 OP Rollup 、 ZK Rollup 等主流的 Layer2 擴容解決方案, OP Stack 作為發鏈 Chain SaaS 工具的主題文章。在這裡很多基礎問題我們都不再贅述。
Layer2 核心要解決的問題就是擴容、降低交易成本。
因為鏈上超額的節點要爭搶有限的區塊空間。隨著以太坊生態的高速發展,就需要完成更多的執行和計算,導致鏈上交易非常擁堵, Gas 費動輒炒到天上。
想要實現 L2 的方案有很多,也在不斷更新。早期的狀態通道、 Plasma 、 Validium 、現在流行的 Optimistic - Rollup 、 Zk - Rollup 等。
Rollup 方案是在鏈下進行交易計算和具體狀態變更,在鏈上處理交易和交易批處理後的最終狀態摘要並進行驗證,這樣就能有效緩解以太坊上面的擁堵了。
但當時我們還沒有將 eths 作為一種 Layer2 方案,甚至沒有作為預備方案來討論,這是因為 eths 在當時只是被當作一種以太坊的銘文協議,並沒有什麼非常特別之處。
而在之後的更新升級中,一個改進 Ethscriptions 協議的建議: ESIP -4: The Ethscriptions Virtual Machine 從根本上改變了很多。
Ethscriptions ( ETHS )
Ethscriptions 是一種協議,其目的是允許用戶以更低的成本在以太坊 L1 上共享信息並執行計算。
它繞過了使用智能合約存儲和執行來實現這一點,將確定性協議規則應用於以太坊調用數據來計算狀態。
這種方式更便宜,這是因為其使用以太坊交易調用數據,而不是智能合約在鏈上存儲數據,自然而然的降低了成本,同時也省去了類似 OP 的樂觀證明機制、 ZK 的有效證明機制驗證成本。
當然, Ethscriptions 的內容已經很多了,我們重點來聊 The Ethscriptions Virtual Machine 。
ESIP -4: The Ethscriptions Virtual Machine
Ethscriptions 虛擬機,這是一個改進 eths 的草案 ESIP -4 的核心內容,也正是該提案對 ETHS 的功能性拓展,才讓其脫離了銘文炒作的概念,在炒作價值之外具有了功能實用性。
我們按照白皮書中的一句話可以明確其發開的目的:
ESC - VM 的目標不是取代智能合約或 L2 ,而是在去中心化時首要考慮如何提供低成本的計算能力。
在 ESIP -4 的草案中,引入了 Ethscriptions 虛擬機( ESC - VM )的概念,這是一個建立在 Ethscriptions 之上的新協議。
ESC - VM 使 ethscriptions 能夠作為一種計算機指令,增強了 Ethscriptions 協議的功能,這些計算機指令允許用戶與稱為 Dumb Contracts (啞合約)的特殊程序進行交互。
在之前的 ETHS 銘文中,對各種圖片的「刻錄」是利用了以太坊「調用數據」,即「 Calldata 」功能。
Calldata 指在對智能合約的調用中提供的數據。這也是比使用合約存儲更便宜的核心點。
而在 ESIP -4 的啞合約中,可以執行命令:部署(創建新合約)、調用(調用現有合約的狀態更改函數),這個過程也是通過銘文方式存儲,交易以 calldata 字段存儲在鏈上,從而繞過了 EVM 執行和存儲成本。
ESC - VM 為啞合約提供類似於 E VM 的環境,使啞合約功能能夠與智能合約的功能並行,說白了就是 ESC - VM 基本上就可以認為是 E VM 。
在這個過程中,因為繞過了 EVM 執行和存儲成本,所以啞合約比智能合約便宜得多,可以很大程度降低成本,這不就把 Layer2 的核心目的給解決了嗎。
但是區別肯定還是很大的,我們再來看一看 ESC - VM 和現有 Layer2 的區別。
ESC - VM 和現有 Layer2 的區別( Is the ESC - VM an L2 ?)
在 ESIP -4 的白皮書當中,其實很明確的就提到了這一點,並且給出了理由。
The ESC VM is not an L2 . One way to underst an d th is is to c on sider the two not i on s of c on sensus that ex is t on E the reum:
(1) Consensus over what transactions are in cluded in each block and in what order .關於哪些交易被包含在每個區塊中以及以什麼順序的共識。
(2) C on sensus over the aggregate impact (1) has on the state of the EVM .關於(1)對 EVM 狀態的總體影響的共識。
Ethscriptions 的主要思想是:
通過專注於(1)來構建一個完全去中心化的系統,因為區塊鏈的狀態明確且確定地指定了 EVM 的狀態。僅憑區塊鏈本身,任何人都可以獨立並確切地驗證 EVM 的狀態。
另一方面,驗證(1)的「真實性」是不可能的,因為這是一個非確定性的過程,沒有「正確答案」。將(1)和(2)結合在以太坊協議中是理想的。
然而,對於大多數應用程序來說,這種組合過於昂貴。 Ethscriptions 犧牲了以太坊協議的一部分(2),並構建了工具以使確定性狀態的計算變得方便。
相比之下, L2 採取了相反的方法。由於 L2 狀態是在區塊鏈的上下文中管理的,因此比 Ethscriptions 生態系統的狀態更方便進行驗證。
然而, L2 的驗證是有條件的。它說給定 X 交易包含在一個排序為 Y 的區塊中,我們就可以推斷區塊鏈的狀態應該更改為 Z 。但是在 L2 系統中,沒有辦法驗證 X 和 Y 是否正確。
在一般情況下,只有當使它們公平與運營 L2 的組織的目標相一致時, X 和 Y 才會公正。運營 L2 的公司承擔著對股東利益高於 L2 用戶利益的信託責任。在極端情況下,如果 L2 不再符合公司的利益, L2 將會被關閉。
Ethscriptions 代表的理念是:
在非確定性問題(如區塊包含和交易排序)上沒有形成去中心化共識的情況下,區塊鏈永遠無法被認為是安全的。使用 ESC - VM 的目標是將去中心化和安全性與接近 E VM 功能的功能相結合。
存在的問題
目前來看, Dumb Contract 是有一些問題亟待解決。
①啞合約功能不能直接支付,需要橋接;
② ESIP -4 不允許任意創建啞合約。啞合約可以在不信任的情況下部署和執行,但代碼本身與 ESIP 流程中的其餘 Ethscriptions 協議規則一起定義;
③ 0x8699 老師提到的一個非常重要的問題: eths 極度依賴 indexer ,但機制裡沒有給 indexer 足夠的重視,鑑於這個問題可以單獨深度的寫一篇文章,就不再在這裡多聊。
參考: ①ESIP-4: The Ethscriptions Virtual Machine:https //docs.ethscriptions.com/esips/esip-4-the-ethscriptions-virtual-machine… ②@ethan0x8699 https://twitter.com/ethan0x8699/status/1717421307619688501… ③@cryptocupideth https://twitter.com/cryptocupideth/status/1717191327543443633… ④@0xNing0x https://twitter.com/0xNing0x/status/1717186567130030476… ⑤@wangfeng0128 https://twitter.com/wangfeng0128/status/1717188580471406858… ⑥世鏈財經: https://panewslab.com/zh/articledetails/3x3fi5984w57.html… ⑦Arunkumar Krishnakumar https://cointelegraph.com/authors/arunkumar-krishnakumar… ⑧Arrow 關於 Layer2 的以往文章精選: https://twitter.com/ArrowCrypto_eth/highlights