來源:Scaling Ethereum Efficiently;編譯:Starknet 中文社區
概要
有效性證明 Rollup 以安全和去中心化的方式增加以太坊吞吐量,也是最具潛力的方式;zkEVM 和 Cairo VM(CVM)是有效性證明 Rollup 中所使用到的兩種虛擬機 (VM) 類型。
zkEVM 專注于以太坊兼容性,但犧牲了性能和可擴展性。
Starknet 采用的 Cairo VM 將性能和可擴展性置于兼容性之上。
Rollup 是今年關于擴展以太坊的熱門話題。在各種類型 Rollup 中,我們相信有效性證明 Rollup(以下簡稱 VR,或稱為 zk-rollup),是以安全和去中心化的方式增加以太坊吞吐量,最有希望的擴容方案。這種擴容方案的核心是采用有效性證明進行可驗證計算。下面來了解其運行原理:
和在以太坊主網上處理每筆交易不同,運營者將交易放到鏈下環境執行。鏈下環境就是 L2,即在以太坊之上運行的操作層。
在大批量交易處理完成后,L2 運營者將結果返回至以太坊狀態中,同時還有一個有效性證明用于驗證鏈下執行的完整性。該證明保證同一批次中的所有交易都有效,并由鏈上驗證合約自主驗證。該操作允許以太坊將結果應用于其狀態。
Zebedee的社交應用程序ZBD集成去中心化社交協議Nostr:6月8日消息,數字支付處理商 Zebedee 其社交應用程序 ZBD 集成 Jack Dorsey 旗下去中心化社交協議 Nostr,Zebedee 的用戶將能無縫地將 ZBD 應用程序集成至 Nostr 上現在可用的數十種應用程序中的任何一種。
ZBD 是一款社交應用程序,用戶可玩游戲賺取比特幣,創作者可通過創建內容賺取比特幣。[2023/6/8 21:24:41]
有效性證明 Rollup
請注意:有效性證明 Rollup 常被錯稱為零知識證明 Rollup (zkRollup),這并不準確。大部分有效性證明 Rollup 不采用零知識證明,也不用于確保隱私。因此,術語「有效性證明 Rollup」更準確。
在繼續深入前,我們需要回答第一個問題:什么是虛擬機(VM)?簡而言之,虛擬機是一個可以運行程序的環境,比如 Mac 上運行 Windows 操作系統。VM 在對某些輸入執行計算后,在狀態之間進行轉換。以太坊虛擬機(EVM)就是運行以太坊智能合約的 VM。
零知識虛擬機(zkVM)是程序執行環境,與程序輸出一起生成可輕松驗證的有效性證明。有效性證明用于證明程序已正確執行。當使用「zkEVM」一詞時,通常是指運行以太坊虛擬機(EVM)并能夠證明 EVM 執行的 Rollup。這個術語可能會造成誤會,因為 EVM 本身無法生成這些證明;相反,證明是由一個單獨的證明器機制產生,該機制將 EVM 的執行結果作為其起點。此外,上述證明都是與有效性相關,而與隱私無關。因此,準確來說不能稱為零知識證明。而為了保持一致性,在本文中仍使用傳統術語「zkEVM」。
報告:ASIC融資債務使比特幣礦工在2022年負債惡化:金色財經報道,根據Hashrate Index最近的一份報告,比特幣礦工在2022年面臨償還債務的困難,尤其是當他們有高息設備融資貸款時。報道稱,估計私人和公共礦工資產負債表上的ASIC融資債務價值在2-40億美元之間。據分析,2020年執行了6筆ASIC融資交易,價值4784萬美元,而2021年完成了26筆交易,價值66225萬美元。自2020年以來,越來越多的設備融資方進入市場,導致2022年的平均利率為10.46%,低于2020年的12.77%和2021年的12.82%。[2023/1/23 11:26:12]
盡管所有有效性證明 Rollup 都旨在采用有效性證明來擴展以太坊,而不同方案在 VM 執行鏈下交易方面做出了不同選擇。許多有效性證明 Rollup 選擇復制 EVM 設計(因此稱為「zkEVM rollup」),嘗試在 L2 rollup 上復制以太坊。Starknet 采用的是 Cairo VM(CVM),是專為優化有效性證明效率而設計的全新 VM。
上述兩種方式各有利弊和取舍,但 zkEVM 犧牲性能以求以太坊兼容性,而 Cairo VM 將性能置于兼容性之上,優先考慮可擴展能力。
zkEVM 是一種有效性證明 Rollup,旨在 L2 區塊鏈上完全引入以太坊體驗。目的是將以太坊開發者環境復制到 Rollup 中。借助 zkEVM,開發者編寫或移植智能合約到擴容方案時,無需調整代碼或棄用原本的 EVM 工具(以及智能合約)。
兩個休眠5年的以太坊地址在13小時前轉出約2.3萬枚ETH:金色財經報道,Lookonchain監測數據顯示,有兩個休眠了5年的地址在13小時前向未知地址共轉出22983枚ETH,價值約2734萬美元。[2022/12/19 21:53:08]
這種方式有一個關鍵缺陷,即降低了有效性證明的擴展能力。由于重心放在與以太坊兼容,導致 zkEVM 速度更慢且資源密集度更高。與 CVM 不同,EVM 在設計時沒有考慮證明效率。因此限制了在提高效率和可擴展性的優化使用,最終影響系統的整體性能。
zkEVM 方式的核心挑戰在于 EVM 根深蒂固的原始藍圖,起初的設計并不是為了在有效性證明環境中運行。因此,努力都放在實現以太坊功能上,就無法釋放有效性證明的全部潛力,導致效率不盡人意。這種低效率最終拖了系統整體性能的后腿。EVM 與有效性證明的兼容性受到以下因素的阻礙:
EVM 采用基于堆棧的模型,而有效性證明更高效地用于基于寄存器的模型。EVM 基于堆棧的性質使其本質上更難證明其執行的正確性,并為其本地工具鏈提供直接支持。
以太坊存儲布局重度依賴于 Keccak 和大型 Merkle Patricia 樹,這兩者都是非有效性證明友好型,帶來巨大證明負擔。例如,Keccak 對于 x86 架構非常快速(通常用于運行 EVM),但需要 9 萬個步驟來證明(需要特殊內置)。而 Pedersen(零知識友好型哈希函數)只需要 32 個步驟。即使采用遞歸壓縮,zkEVM 中使用 Keccak 消耗證明器資源仍舊很高,成本最終還是得由用戶承擔。
Binance目前暫停提現,或因錢包維護:8月17日消息,據 Binance app 內提現界面顯示,目前 Binance 提現服務因錢包維護原因暫停,預計將很快恢復。[2022/8/17 12:30:58]
因此,各類 zkEVM 旨在為以太坊工具提供不同程度的支持,但 zkEVM 與以太坊兼容性越高,性能也就越低。(有關更多 zkEVM 類型的信息,請參閱文章結尾處)
zkEVM 解決方案在「讓 EVM 適用于有效性證明 Rollup」方面投入了大量開發時間,將兼容性置于長遠性能和可擴展性之上。還有另一個選項:采用全新的專用虛擬機,并新增一個額外層用于支持以太坊工具。這就是 Starknet 采取的措施,Starknet 于 2021 年 11 月推出了一個無需許可的有效性證明 Rollup。Starknet 是首個在完全可組合性網絡中,實現通用智能合約平臺的有效性證明 Rollup。
Starknet 采用 Cairo-VM(CVM),并創造同名高級語言 Cairo。Cairo-VM 是為高效生成程序執行的有效性證明而設計。
通過 Cairo(VM 和編程語言)可實現:
市場消息:澳大利亞方面表示加密貨幣不像外國貨幣那樣被征稅:6月22日,市場消息:澳大利亞方面表示,加密貨幣不像外國貨幣那樣被征稅。(金十)[2022/6/22 6:03:57]
優化有效性證明,每條指令都有一個有效代數表達式
用于編寫可證明程序的現代類 Rust 語言
高級 Cairo 語言和 Cairo 匯編(VM 指令)之間的中間表達式(Sierra),可以高效執行 Cairo 代碼
開發一種全新語言可以根據特定需求定制,可以包含以前所不具備的功能,滿足新需要。
為了創建某些計算的有效性證明,首先必須將該計算表達為描述計算的一系列數學約束。這個過程非常復雜,難點在于優化計算以提高效率,而且需要特定工具。
Cairo 語言設計之初就是為了簡化這一任務,以便 StarkEx 能輕松增添功能和復雜的商業邏輯。將 Cairo 程序編譯成代數機器代碼,即一串數字,由單個固定的 VM 執行。有了 Cairo,生成描述計算的數學約束這個復雜過程(對于有效性證明來說非常棘手)得以抽象化,進而以一組固定的約束條件(總共不到50個約束)來表示。這樣,開發者無需理解底層數學和基礎設施,僅需用熟悉的語法編寫代碼,就能利用有效性證明擴展應用程序。
Starknet 致力于創新,這點在代碼多元化處理方法上展現得淋漓盡致。Cairo 采用 STARK 技術實現最佳擴展功能,不僅限于使用 Cairo 本地環境編寫合約。開發者還可以選擇最適合的方式:
在 Cairo 本地編碼:Cairo 1.0 受 Rust 啟發,更加符合開發者使用習慣且更加安全,編寫程序邏輯變得更加容易且不易出錯。
Solidity 兼容性:Solidity 開發者可以編寫支持 Cairo VM 的代碼。這種方式提供了與以太坊相似的開發者體驗,并支持 Solidity 智能合約遷移至 Starknet。遷移實現方式有兩種:
轉譯:轉譯是將一種編程語言的源代碼轉換成另一種語言的過程。Nethermind 團隊構建了 Warp 轉譯器,用于將 Solidity 代碼轉譯為 Cairo。Warp 讓 Solidity 智能合約可移植至 Starknet,使其有效成為第四類 zkEVM。目前已用于轉譯和部署 Uniswap 合約,只需極小的改動即可實現。
Starknet 上的 zkEVM:Cairo VM 能用于證明另一個 VM 的執行。Kakarot 是采用 Cairo 編寫的 zkEVM,可用于在 Starknet 上運行以太坊智能合約。Cairo VM 和 zkEVM 并不是競爭關系,與其在兩者之間做出選擇,不如采用兩者兼得的方式!
盡管 Cairo 問世時間不長,但根據 TVL 排名,Cairo 是第四受歡迎的智能合約編程語言,估值超 3.5 億美元。
zkEVM 旨在將以太坊開發者環境復制到 Rollup 中,并允許開發者使用熟悉的以太坊工具。但這種方式限制了有效性證明的潛力,且資源密集。
專為有效性證明設計的 Cairo VM 不受到 EVM 的限制。Cairo VM 支持 Cairo 1.0。Cairo 1.0 受 Rust 語言啟發,更加符合開發者使用習慣且更加安全,形成強大的工具,旨在利用 STARK 證明高效擴展以太坊。
看到 Cairo 每周都在發展,Kakarot zkEVM 和 Warp 這種開發者選擇越來越多,令人興奮。隨著 Starknet dApp 投入生產,展現出 Cairo 的強大力量,我們堅信未來 Cairo 會催生出前所未見的優秀項目。
上文概述了 SATRK 擴展的三種路徑,毫無疑問未來幾個月還會有更多創新誕生。開發者現在對擴展區塊鏈有了前所未有的掌控權。
Vitalik 將 zkEVM 主要分為四個類型:
第一類完全等效以太坊:不改變以太坊生態系統的任何部分。
第二類完全等效 EVM:能和現有 dApp 兼容,并對以太坊的設計做出部分調整以加快證明生成。
第三類大致等效 EVM:支持大部分 EVM 操作碼,移除部分 zkEVM 難以實現的功能(如預編譯和哈希函數)。
第四類等效高級語言:用 Solidity/Vyper 編寫智能合約代碼,并將其轉譯成有效性證明友好型語言。
StarkNet 中文
個人專欄
閱讀更多
金色早8點
Odaily星球日報
金色財經
Block unicorn
DAOrayaki
曼昆區塊鏈法律
比特幣 (Bitcoin),簡稱 BTC,是一個基于區塊鏈去中心化共識并且應用點對點網絡通信的開源加密貨幣系統,由分布在全球各地的計算機網絡和節點共同維護.
1900/1/1 0:00:001620 年,一艘名為五月花號(Mayflower)的英國船只駛離英格蘭,五月花號帶著102名乘客和大約30名船員駛向美國,他們離開英格蘭的原因是認為英格蘭教會不僅抵制改革而且過于腐敗.
1900/1/1 0:00:00Forkast News 6 月 6 日刊登 Safeheron 技術 VP Kane Wang 的專欄文章,探討 Ledger Recover 陷入爭議困局的背后原因.
1900/1/1 0:00:006月13日,Uniswap發布了Uniswap V4版本代碼草案,引起業界陣陣波瀾,認為是當前熊市里為數不多的重要創新,或將引發DEX與CEX終局之爭.
1900/1/1 0:00:00自 2009 年比特幣誕生以來,圍繞加密行業的討論一直活躍,主要集中在“Money Crypto”。這包括以太坊(ETH)、萊特幣(LTC)等價格的波動,以及FTX等 CEX 的監管和法律問題.
1900/1/1 0:00:00作者:霧海,PANews自從比特幣鏈上協議 Ordinals 被推出,隨后被開發者 domo 提出的 brc 20 概念引爆.
1900/1/1 0:00:00