以太坊交易所 以太坊交易所
Ctrl+D 以太坊交易所
ads

金色觀察|Vitalik詳解5種類型的ZK-EVM_ROL:CoinControllerCash

Author:

Time:1900/1/1 0:00:00

文/Vitalik

感謝PSE、Polygon Hermez、Zksync、Scroll、Matter Labs和Starkware團隊的討論和審稿。

最近有許多“ZK-EVM”項目發布了公告。Polygon開源了他們的ZK-EVM項目,ZKSync發布了他們的ZKSync 2.0 計劃,相對較新的Scroll最近也宣布了他們的ZK-EVM。Privacy and Scaling Explorations團隊、Nicolas Liochon等人的團隊也在不斷努力,從EVM到Starkware的ZK友好語言Cairo的alpha編譯器,當然還有一些我不知道。

所有這些項目的核心目標都是相同的:使用ZK-SNARK技術來制作類似以太坊交易執行的加密證明,或者更容易驗證以太坊鏈本身,或者構建 (接近)相當于以太坊提供的,但更具可擴展性的ZK-rollup。但是這些項目之間存在細微的差異,以及它們在實用性和速度之間做出的權衡。

這篇文章將嘗試分類不同“類型”ZK-EVM的EVM等效性,以及嘗試實現每種類型的好處和成本。

1型ZK-EVM力求完全且毫不妥協地與以太坊等效。他們不會改變以太坊系統的任何部分來更容易生成證明。它們不會取代哈希、狀態樹、交易樹、預編譯或任何其他共識邏輯,無論多么外圍。

金色熱搜榜:UTK居于榜首:根據金色財經排行榜數據顯示,過去24小時內,UTK搜索量高居榜首。具體前五名單如下:UTK、LXT、XRP、ADA、XMR。[2020/12/13 15:04:47]

其目標是能夠像今天一樣驗證以太坊區塊,或者至少驗證執行層端(因此,不包括信標鏈共識邏輯,但包括所有交易執行以及智能合約和賬戶邏輯) .

1型ZK-EVM是我們最終需要的,使以太坊第1層本身更具可擴展性。從長遠來看,在2型或3型ZK-EVM中測試的對以太坊的修改可能會被引入到以太坊本身,但這種重新架構也有其自身的復雜性。

1型ZK-EVM也是Rollup的理想選擇,因為它們允許Rollup重用大量基礎架構。例如,以太坊執行客戶端可以按原樣使用來生成和處理rollup區塊(或者至少,它們可以在實現提款后使用,并且可以重新使用該功能來支持將ETH存入rollup中),因此工具例如區塊瀏覽器、區塊生產等非常容易重用。

以太坊最初并不是圍繞ZK友好性設計的,因此以太坊協議的許多部分需要大量計算才能進行 ZK證明。1型ZK-EVM旨在精確復制以太坊,因此它無法緩解這些低效率。目前,以太坊區塊的證明需要很多小時才能產生。這可以通過巧妙的大規模并行化證明者工程或從長遠來看通過 ZK-SNARK ASIC來緩解。

Privacy and Scaling Explorations團隊ZK -EVM正在構建1型ZK-EVM。

金色午報 | 5月15日午間重要動態一覽:7:00-12:00關鍵詞:Libra協會、區塊鏈應用、Filecoin、谷歌

1.包括淡馬錫在內的三個風投公司加入Libra協會。

2.《能源石化交易行業區塊鏈應用白皮書》正式發布。

3.中國移動等企業將探索航運區塊鏈等相關場景應用。

4.全國人大代表:人民法院要更好地運用區塊鏈等前沿技術。

5.民生銀行貴陽分行:注意防范打著區塊鏈旗號的非法集資。

6.Filecoin測試網第二階段啟動 主網預計最早7月上線。

7.主力成交復盤:幣安1024枚BTC主力賣出引發瀑布。

8.谷歌Chrome瀏覽器宣布將屏蔽內置挖礦程序的高耗能廣告。

9.威脅曝光明星法律隱私的黑客將贖金支付方式改為門羅幣。

10.比特幣出現調整,日內最低跌至9250美元,最高報9877美元。[2020/5/15]

類型2 ZK-EVM力求完全等同于EVM,但不完全等同于以太坊。也就是說,它們“從內部”看起來與以太坊一模一樣,但它們在外部存在一些差異,特別是在區塊結構和狀態樹等數據結構方面。

目標是與現有應用程序完全兼容,但對以太坊進行一些小的修改,以使開發更容易并更快地生成證明。

2型ZK-EVM對保存諸如以太坊狀態之類的數據結構進行更改。幸運的是,這些是EVM本身無法直接訪問的結構,因此在以太坊上運行的應用程序幾乎總是可以在2型ZK-EVM Rollup上運行。你將無法按原樣使用以太坊執行客戶端,但可以通過一些修改來使用它們,并且仍然可以使用EVM調試工具和大多數其他開發人員基礎設施。

金色財經挖礦數據播報 | BSV今日全網算力下降24.16%:金色財經報道,據蜘蛛礦池數據顯示:

ETH全網算力173.975TH/s,挖礦難度2159.11T,目前區塊高度9854463,理論收益0.00795558/100MH/天。

BTC全網算力111.288EH/s,挖礦難度14.72T,目前區塊高度625531,理論收益0.00001708/T/天。

BSV全網算力1.770EH/s,挖礦難度0.22T,目前區塊高度630214,理論收益0.00050861/T/天。

BCH全網算力1.804EH/s,挖礦難度0.26T,目前區塊高度630396,理論收益0.00049899/T/天。[2020/4/12]

有少數例外。對于驗證以太坊歷史區塊的Merkle證明以驗證有關歷史交易、收據或狀態的聲明的應用程序出現了一種不兼容(例如,橋有時會這樣做)。用不同的哈希函數替換Keccak的 ZK-EVM會破壞這些證明。但是,我通常建議不要以這種方式構建應用程序,因為未來的以太坊更改(例如Verkle樹)甚至會在以太坊本身上破壞此類應用程序。更好的選擇是讓以太坊本身添加面向未來的歷史訪問預編譯。

2型ZK-EVM提供比1型更快的證明時間,主要是通過刪除依賴于不必要的復雜和ZK不友好密碼學部分的以太坊堆棧。特別是,他們可能會改變以太坊的Keccak和基于RLP的Merkle Patricia 樹,可能還會改變區塊和收據結構。2型ZK-EVM可能會使用不同的哈希函數,例如Poseidon。另一個自然的修改是修改狀態樹以存儲代碼哈希和keccak,從而無需驗證哈希來處理EXTCODEHASH和EXTCODECOPY操作碼。

金色晚報 | 火幣區塊鏈產業聯盟在海南落地 華爾街之狼全球數字貨幣交易大賽吸引了全球數百只參賽隊伍:交通銀行通過區塊鏈發行證券產品,總規模達93億元;日本投資加密貨幣的散戶占比達歷史最高;三星將開發10納米的采礦芯片。更多晚報內容,請查看圖片。[2018/9/28]

這些修改顯著提高了證明者的時間,但它們并不能解決所有問題。必須按原樣證明EVM的緩慢性以及EVM固有的所有低效率和ZK不友好性仍然存在。一個簡單的例子是內存:因為 anMLOAD可以讀取任何32個字節,包括“未對齊”的區塊(開始和結束不是32的倍數),所以不能簡單地將MLOAD解釋為讀取一個區塊;相反,它可能需要讀取兩個連續的區塊并執行位操作來組合結果。

Scroll的ZK-EVM項目正朝著Type 2 ZK-EVM方向發展,Polygon Hermez也是如此。也就是說,這兩個項目都還沒有完成。特別是,許多更復雜的預編譯還沒有實現。因此,目前這兩個項目都被更好地考慮為Type 3。

顯著改善證明者時間最壞情況的一種方法是大大增加EVM中很難進行ZK證明的特定操作的 gas成本。這可能涉及預編譯、KECCAK操作碼,以及調用合約或訪問內存或存儲或恢復的可能特定模式。

更改gas成本可能會降低開發人員工具的兼容性并破壞一些應用程序,但通常認為它比“更深”的EVM更改風險更小。開發人員應該注意不要在交易中超過一個區塊容量的gas,永遠不要使用硬編碼的gas量進行調用(這已經是開發人員很長時間以來的標準建議)。

金色獨家 Stan Larimer:“強波動性”不是加密市場“特質”:金色財經獨家專訪,日前Stan Larimer在談加密貨幣市場波動性時指出:任何一種資產形式都有價格波動,之所以人們認為加密市場的價格波動更劇烈,是由于其市場尚小且還不成熟,入局的門檻也低一些。加之這個產業有非常多的流言蜚語與眾多容易受流言影響的不成熟投資者,以上所有因素造成了如今加密市場的強波動性。

但是,我們不能因為以上這些原因就把“強波動性”定義為加密市場特質,我們知道:比特幣很長一段時間不太值錢,現在市場份額十分可觀,并且價格也相對穩定了;單個幣種有可能經歷大的波動,但并不是系統性的;有些幣種本來就是錨定美元和固定資產的,他本來就是一種“穩定幣”。以上幾點就可以看出,把加密市場一概而論為強波動市場是不對的。[2018/6/18]

管理資源約束的另一種方法是簡單地對每個操作可以調用的次數設置硬限制。這在電路中更容易實現,但在EVM安全假設下的表現要差得多。我將這種方法稱為Type 3而不是Type 2.5。

3型ZK-EVM幾乎與EVM等效,但在精確等效性方面做出了一些犧牲,以進一步縮短驗證者時間并使EVM更易于開發。

3型ZK-EVM可能會刪除一些在ZK-EVM實現中極難實現的功能。預編譯通常位于此處列表的頂部。此外,3型ZK-EVM有時在處理合約代碼、內存或堆棧方面也存在細微差別。

3型ZK-EVM的目標是與大多數應用程序兼容,并且只需要對其余部分進行最少的重寫。也就是說,將有一些應用程序需要重寫,因為它們使用3型ZK-EVM刪除的預編譯,或者因為對VM 不同處理的邊緣情況的微妙依賴。

Scroll和Polygon在其當前形式中都是3型ZK-EVM,盡管它們有望隨著時間的推移提高兼容性。Polygon有一個獨特的設計,他們正在ZK驗證他們自己的稱為zkASM的內部語言,并且他們使用zkASM實現來解釋ZK-EVM代碼。盡管有這個實現細節,但我仍將其稱為真正的Type 3 ZK-EVM;它仍然可以驗證EVM代碼,它只是使用一些不同的內部邏輯來完成它。

今天,沒有ZK-EVM團隊想成為Type 3;Type 3只是一個過渡階段,直到完成添加預編譯的復雜工作并且項目可以移動到Type 2.5。然而,在未來,Type 1或Type 2 ZK-EVM可能會自愿成為Type 3 ZK-EVM,方法是添加新的ZK-SNARK友好型預編譯,為開發人員提供低驗證時間和 gas成本的功能。

4型ZK-EVM系統通過獲取以高級語言(例如Solidity、Vyper或兩者都編譯到的中間體)編寫的智能合約源代碼并將其編譯為明確設計為ZK-SNARK友好的某種語言來工作。

通過不對每個EVM執行步驟的所有不同部分進行ZK證明,并且直接從更高級別的代碼開始,可以避免很多開銷。

我只是在這篇文章中用一句話描述了這一優勢(與下面的一個大項目符號列表相比,兼容性相關的劣勢),但這不應該被解釋為價值判斷!直接從高級語言編譯確實可以大大降低成本并通過更容易成為證明者來幫助去中心化。

一個用Vyper或Solidity編寫的“正常”應用程序可以被編譯下來,它會“正常工作”,但有一些重要的方式使很多應用程序不“正常”:

合約在4型ZK-EVM系統中的地址可能與它們在EVM中的地址不同,因為CREATE2合約地址取決于確切的字節碼。這破壞了依賴尚未部署的“反事實合約”( counterfactual contracts)、ERC-4337 錢包、EIP-2470 singletons和許多其他應用程序的應用程序。

手寫的EVM字節碼(Handwritten EVM bytecode)更難使用。許多應用程序在某些部分使用手寫EVM字節碼以提高效率。4型ZK-EVM系統可能不支持它,盡管有一些方法可以實現有限的EVM字節碼支持來滿足這些用例,而無需努力成為一個完整的3型ZK-EVM。

很多調試基礎設施不能被繼承,因為這樣的基礎設施運行在EVM字節碼上。也就是說,通過從“傳統”高級或中級語言(例如LLVM)更多地訪問調試基礎架構,可以緩解這一缺點。

開發人員應該注意這些問題。

ZKSync是一個4型ZK-EVM系統,盡管隨著時間的推移它可能會增加對EVM字節碼的兼容性。Nethermind的Warp項目正在構建一個從Solidity到Starkware的Cairo的編譯器,它將把 StarkNet變成事實上的4型ZK-EVM系統。

一些類型并不比其他類型明確地“更好”或“更差”。相反,它們權衡空間上的不同點:編號較小的類型與現有基礎架構的兼容性更高,但速度較慢,編號較高的類型與現有基礎架構的兼容性較差,但速度更快。一般來說,探索所有這些類型的空間是健康的。

此外,ZK-EVM項目可以輕松地從較高編號的類型開始,并隨著時間的推移跳轉到較低編號的類型(反之亦然)。例如:

ZK-EVM可以從類型3開始,決定不包含一些特別難以ZK證明的功能。之后,他們可以隨著時間的推移添加這些功能,并轉向類型2。

ZK-EVM可以從類型2開始,后來成為混合類型2/類型1的ZK-EVM,通過提供在完全以太坊兼容模式下運行的可能性或使用可以更快證明的修改狀態樹的可能性。Scroll正在考慮朝這個方向發展

通過添加處理EVM代碼的能力,從類型4開始的系統可能會隨著時間的推移變成類型3(盡管仍然鼓勵開發人員直接從高級語言編譯以減少費用和驗證時間)

如果以太坊本身采用其修改以變得更加ZK友好,那么類型2或類型3ZK-EVM可以成為類型1 ZK-EVM。

1型或2型ZK-EVM可以通過添加預編譯來驗證ZK-SNARK友好語言中的代碼,從而成為3型 ZK-EVM。這將使開發人員在以太坊兼容性和速度之間做出選擇。這將是類型3,因為它打破了完美的EVM等效性,但出于實際目的和目的,它將具有類型1和2的很多好處。主要缺點可能是某些開發人員工具無法理解ZK-EVM的自定義預編譯,盡管這可以修復:開發人員工具可以通過支持包含預編譯的EVM代碼等效實現的配置格式來添加通用預編譯支持。

就我個人而言,我希望隨著時間的推移,通過ZK-EVM的改進和以太坊本身的改進相結合,使其對ZK-SNARK更加友好,一切都將成為 類型1。在這樣的未來,我們將有多個ZK-EVM實現,它們既可用于ZK Rollup,也可用于驗證以太坊鏈本身。從理論上講,以太坊不需要為L1 使用單一的ZK-EVM實現進行標準化;不同的客戶端可以使用不同的證明,因此我們繼續從代碼冗余中受益。

但是,要實現這樣的未來,還需要相當長的時間。與此同時,我們將在擴展以太坊和基于以太坊的ZK-rollup的不同路徑中看到許多創新。

Tags:以太坊ROLROLLTYP以太坊價格美元實時roll幣能出坐騎嗎CoinControllerCashNiftyPays

比特幣交易
歷史重演?詳解以太坊2.0與硬分叉_以太坊:NER

“The Merge”正在到來以太坊2.0的升級自Vitalik Buterin在2013年發布“下一代智能合約和去中心化應用平臺”——以太坊白皮書以來就一直熱議不斷,在經歷過數次跳票后.

1900/1/1 0:00:00
視頻 | 零基礎學K線(一):教你識K線_馬斯克:馬斯克飛行汽車

金色財經聯合歐易OKEx推出《零基礎學K線》系列課程,第一期《教你識K線》正式上線。因RTFKT發布相關視頻,AnimusEgg系列地板價拉升至0.5ETH:7月3日消息,RTFKT在社交媒體發.

1900/1/1 0:00:00
看懂審計報告(四):發現這么多風險和漏洞 不知道怎么處理?_UPS:Yea Finance

UpSwing Finance項目遭到閃電貸攻擊:金色財經消息,據CertiK監測,UpSwing Finance (UPStkn) 項目遭到閃電貸攻擊.

1900/1/1 0:00:00
一年來NFT交易市場正在悄然演變的十五條觀察和猜想_NFT:PEN

本文簡要梳理了目前的 NFT 市場、交易協議、社群治理、聚合器及公鏈生態等十五個方面。如果耐心看完,你會理解我本文的關鍵意圖,NFT 市場可能或者正在發生的變化.

1900/1/1 0:00:00
晚間必讀5篇 | 還原Nomad被攻擊始末_BTC:stETH價格

8月2日7時,加密KOL @0xfoobar發推稱,跨鏈互操作性協議Nomad橋正在被黑客攻擊,WETH和WBTC正以每次百萬美元的頻次轉出,合約中仍有1.26億美元可能存在風險.

1900/1/1 0:00:00
Bitcoiner分兩種:FOMO與HODLer 你是哪種?_比特幣:HOD

經濟學家 Alex Kruger 曾說:“對比特幣而言,價格崩盤是一種特色,不是 Bug ”。的確,加密資產的漲漲跌跌是其持有者早就習以為常的事,不僅習慣了其漲跌,也習慣了因其每一次漲跌而匆忙去.

1900/1/1 0:00:00
ads