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

Sin7y團隊解讀:關于在 ZKEVM 中移除內存限制的一些想法_RIT

Author:

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

ZKEVM是一個具有可編程性,以ZK技術為基礎的虛擬機,它可以為虛擬機執行的所有操作生成一個零知識證明,用來證明虛擬機執行操作的正確性。有關ZKEVM的幾種實現方案介紹及優劣對比,可以參考V神的文章:ThedifferenttypesofZK-EVMs;如果你想了解更多的設計細節,你也可以閱讀PSE的ZKEVM方案(native-level):privacy-scaling-explorations/zkevm-specs?Polygon的ZKEVM設計(bytecode-level):?PolygonzkEVMDocumentation;Sin7y的ZKEVM設計(language-level):OlaVM:AnEthereumcompatibleZKVM。

無論是哪種方案,都需要用zk去約束VM的所有的行為,這些行為包括:

?執行合約計算邏輯

??執行內存訪問

??執行哈希計算

??執行世界狀態更新

??...

眾所周知,zk在計算壓縮領域,具有極大的應用的前景;無論原始的計算多么復雜,其驗證過程都十分高效,這是所有zk算法的基本技能。因此,對于VM執行過程中的計算部分,zk可以很好的發揮作用;而在VM執行的過程中,除了計算本身外,還存在一些內存訪問操作,我們需要把一些數據提前放在內存里,然后在執行計算的時候取出來。

歐易Web3錢包已支持AA賬戶抽象:金色財經報道,歐易發布公告宣布已于2023年08月02日支持賬戶抽象,可以一鍵創建智能合約賬戶。未來,歐易Web3錢包還將持續基于EIP-4337,持續為賬戶抽象技術添磚加瓦,陸續將推出社交恢復以及其他特色功能。[2023/8/2 16:13:53]

而由于大部分的VM都是讀寫內存,因此不得不約束這些內存訪問操作的正確性;對于內存訪問的約束本身并不復雜,但是由于內存訪問的次數很高,所以導致多項式的階數很高,使得內存相關的約束證明耗時比較可觀。

在ZK(E)VM的方案中,我們更應該把zk主要應用在對于計算本身的證明,對于EVM的其他行為,我們可以在VM層面去優化,以減少zk約束的規模。

Memory的設計

以EVM為例,EVM的內存是一塊很簡單的字節數組,可以存儲32字節或者1字節的數據,也可以讀取32字節的數據。

FOMC會議后拋售壓力威脅比特幣支撐位:金色財經報道,在FOMC會議紀要發布后,比特幣遭遇了意外的拋售壓力激增。雖然大多數官員同意維持當前利率,但也有少數官員建議小幅上調25個基點。展望2023年,委員會大多數成員預計將進一步加息。結果,比特幣的價格從6月份的高點31,400美元跌至約30,700美元。這種下行壓力不僅限于比特幣,全球加密貨幣市場估值也同樣下降,從1.23萬億美元縮水逾1000億美元。

根據著名數據分析公司CoinCodex最近的估計,盡管小幅下跌,比特幣的價格仍高于30,533美元的直接支撐位,預計更強的支撐位為29,546美元。[2023/7/7 22:22:29]

圖片來源:ethereum_evm_illustrated,page51

在EVM中,和Memory相關的指令有:

???MLOAD(x):從地址x處加載32字節的數據到調用棧(stack)

???MSTORE(x,y):從地址x開始,寫入32字節的y

???MSTORE8(x,y):從地址x開始,寫入8字節的y(低位開始)

日本任命此前專門處理加密貨幣等問題的Kuritato Teruhisa為日本金融廳負責人:金色財經報道,據日經新聞報道,日本政府計劃提拔Kuritato Teruhisa為日本金融廳負責人,取代現任的Junichi Nakajima。Kuritato Teruhisa現年59歲,現任日本金融廳下轄專門處理加密貨幣及金融科技問題的戰略發展和管理局局長。[2023/6/27 22:02:43]

有興趣的讀者可以在EVMPlayground上感受下,上述內存操作帶來的內存和棧的變化。

Memory的約束

在OlaVM的5.3.5節,你可以看到關于Memory約束的設計原則(OlaVM內存相關的指令和EVM類似)。

在OlaVM中,RAM的所有操作組成一個獨立的table,table里的內容由memory和storage兩種類型組成。在這里,我們只關注對于memory的約束。

Web3教育公司Upstream推出“Learn and Earn”DAO課程:金色財經報道,Web3 教育公司 Upstream 宣布將很快發布My First DAO ,這是一門在線課程,教學生構建去中心化自治組織 (?DAO?)所需的工具。My First DAO 將使用“learn and earn”模式,這意味著它將獎勵參與該計劃的學生。學生必須鑄造一個“DAOphin”,這是一種以海豚為主題的NFT,由流行Goblintown系列背后的藝術家Process Gray設計。

在 24 周結束時,學生將能夠燃燒他們的DAOphin NFT以獲得具有內置稀有特征的生成藝術等價物。學生可以通過參加課程來增加獲得具有稀有特征的 NFT 的機會。[2023/5/23 15:19:57]

內存的操作類型大體可以分為三類:

??Init操作

??write操作

??read操作

觸發Init的場景有三種,分別是ctx的變換,type的變化,addr的變化;當任何一個場景觸發時,需要約束,操作類型為w(write),v(value)為0。

數據:以太坊信標鏈質押量突破1500萬枚ETH:10月14日消息,據以太坊官方網站數據顯示,當前以太坊信標鏈質押量已突破1500萬枚ETH,截至目前達到15,000,373枚,驗證者總量為443,062個。按照當前ETH價格計算,當前以太坊信標鏈質押ETH總價值約為18,841,518,514.11美元。[2022/10/14 14:26:56]

當上述三種場景沒有觸發時,則需要根據當前的操作類型來約束;

??如果是w(write)操作,需要約束clk是遞增的,寫入的值v是對的。

??如果是r(read)操作,需要約束clk是遞增的,讀取的值和上次寫入的值是相同的。

一些可能性的提升

??對于Init操作,需要約束一個內存地址的初始化的值為0么?

我認為沒有必要對初始化的操作進行約束;實際上,對于任何地址,你可以約束它的第一次訪問必須是write操作,而不是read操作;而如果是write-once內存模型,這個限制將天然存在,因此,如果虛擬機的內存模型改為write-once模型,將減少對內存的訪問約束。

??對于read操作,能否避免對應的約束,即避免校驗讀取的值和上次寫入的值一致?

由于VM本身定義的memory類型的讀寫內存,無法保證,VM在讀取這個內存地址的值之前,這個地址的值沒有被修改,因此需要增加一個相等性校驗,如下圖所示:

由此可以看出,產生這個約束的核心原因,內存模型是讀寫內存,地址的值存在被改寫的可能,因此,如果嘗試使用只讀內存,那么就不需要在memory的約束去實現上述的一致性約束。

注意:這可能會增加虛擬機的實現難度,因為這是一個不常用的內存模型;并且,我們應該不會首先在這個虛擬機上面去定義一個高級DSL,因為這個語言對Dapp開發者會有些不友好,需要在編譯器層面去消除,使得這些不友好,對開發者不可見。

所以,如果采用上述內存模型,內存模塊的約束,將只剩下針對write操作的約束,即使用copyconstraints來保證寫入的值是對的即可。無須約束:

??讀取的值等于寫入的值,因為內存只能被寫一次

??讀的clk大于寫的clk,因為只能先寫再讀

??內存的初始化值為0

參考

1.ThedifferenttypesofZK-EVMs:

https://vitalik.ca/general/2022/08/04/zkevm.html

2.privacy-scaling-explorations/zkevm-specs:

https://github.com/privacy-scaling-explorations/zkevm-specs

3.PolygonzkEVMDocumentation:

https://docs.hermez.io/zkEVM/Overview/Overview/

4.OlaVM:AnEthereumcompatibleZKVM:

https://olavm.org/whitepaper/OlaVM-07-25.pdf

5.EVM:

https://ethereum.github.io/yellowpaper/paper.pdf

6.ethereum_evm_illustrated,page51:

https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf

7.EVMPlayground:

https://www.evm.codes/playground

8.OlaVM:

https://olavm.org/whitepaper/OlaVM-07-25.pdf

關于我們

Sin7y成立于2021年,由頂尖的區塊鏈開發者和密碼學工程師組成。我們既是項目孵化器也是區塊鏈技術研究團隊,探索EVM、Layer2、跨鏈、隱私計算、自主支付解決方案等最重要和最前沿的技術。

微信公眾號:Sin7y

GitHub:Sin7y

Twitter:@Sin7y_Labs

Medium:Sin7y

Mirror:Sin7y

HackMD:Sin7y

HackerNoon:Sin7y

Email:contact@sin7y.org

來源:金色財經

Tags:RITETHSINOLASuper Algorithmic TokenLETHSINS價格solanium幣前景

中幣交易所
再次來襲 金色數藏碎片合成創世VIP公告_VIP

親愛的藏友們: 大家好! 碎片盲盒開了嗎?指定碎片拿到了嗎?你是否驚喜地發現,「金」「色」「數」「藏」已經在不知不覺中歡聚于你的賬戶?!幣安發言人:對其考慮關閉美國分支機構以保護全球公司的報道不.

1900/1/1 0:00:00
以太坊高空策略出發勝利展望 今日繼續戰勝_DID

大家上午好,昨晚靠近午夜錄播視頻解說以太坊行情走勢看點,逢阻力附近一帶范圍內空頭下跌,行情目前也算是跌勢到1363附近示弱,行情還會進一步震蕩下探;今日以太坊思路;第一:上方阻力稍微改變些.

1900/1/1 0:00:00
HyperPay錢包加密托管服務商HyperBC正式加入MPC聯盟_HYP

日前,據官方消息,HyperPay錢包加密托管服務商HyperBC正式加入MPC聯盟,該聯盟最初由Sepior、UnboundTech和ZenGo于2019年共同創立.

1900/1/1 0:00:00
今日以太坊勝利抵達目標 晚上看消息_AVI

今日日間白天以太坊制高點漲幅1345位置附近止步下跌回落,跌勢在下方1316附近開始反彈,那么我們上午的空頭思路進展方向是正確的;現在此時時間段處于行情調整震蕩修復需要更多的時間性等待.

1900/1/1 0:00:00
卡爾達諾(ADA)價格通過 Vasil 硬分叉達到 1 美元_APP

編輯切換為居中 添加圖片注釋,不超過140字加密市場見證了2022年的兩大事件——以太坊合并和卡爾達諾的VasilHardfork.

1900/1/1 0:00:00
淺談「動態仲裁」能否解決DAO投票冷漠問題_DAO

原文作者:el4d.eth動態仲裁是一種即將到來的治理變革,它減少了沖突和安全之間的權衡空間,具體方法是反對票越多,提案就越難通過。 介紹 NounsDAO正在進行治理方式變更.

1900/1/1 0:00:00
ads