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執行的過程中,除了計算本身外,還存在一些內存訪問操作,我們需要把一些數據提前放在內存里,然后在執行計算的時候取出來。
新加坡紅十字會開始接受加密貨幣捐贈:金色財經報道,人道主義援助和社區服務慈善機構新加坡紅十字會將加密貨幣作為一種新接受的捐贈形式。該組織將接受比特幣、以太坊、USDT和USDC捐贈。
8月7日,新加坡紅十字會宣布與新加坡金融管理局Triple-A授權的首個加密支付網關合作,提供加密貨幣匿名捐贈選項。所有捐款將在一個工作日內兌換成法定貨幣并通過銀行轉賬結算。
今年7月,新加坡高等法院宣布加密貨幣為私有財產,其原則上與法定貨幣沒有區別,可以歸類為“行動中的事物”類別。[2023/8/7 21:30:03]
而由于大部分的VM都是讀寫內存,因此不得不約束這些內存訪問操作的正確性;對于內存訪問的約束本身并不復雜,但是由于內存訪問的次數很高,所以導致多項式的階數很高,使得內存相關的約束證明耗時比較可觀。
在ZK(E)VM的方案中,我們更應該把zk主要應用在對于計算本身的證明,對于EVM的其他行為,我們可以在VM層面去優化,以減少zk約束的規模。
Memory的設計
以EVM為例,EVM的內存是一塊很簡單的字節數組,可以存儲32字節或者1字節的數據,也可以讀取32字節的數據。
保時捷卡雷拉杯賽車懸掛薩爾瓦多旗幟推動比特幣采用:金色財經報道,薩爾瓦多車手Sebastian Melrose首次亮相保時捷卡雷拉杯賽車錦標賽。這位25歲的年輕人去年參加了一部受歡迎的Netflix電視劇,他駕駛著一輛比特幣品牌的911,車頂上掛著對加密貨幣友好的薩爾瓦多國旗。英國賽車隊Bitcoin Racing與Richardson Racing一起參加了保時捷卡雷拉杯,這不僅是為了在英國最大的賽車錦標賽之一中獲獎,也是為了推廣加密技術。雙人組聘請了該系列賽的新人,薩爾瓦多車手Sebastian Melrose,他上周末在多寧頓公園賽道首次亮相。[2023/5/1 14:36:38]
圖片來源:ethereum_evm_illustrated,page51
在EVM中,和Memory相關的指令有:
???MLOAD(x):從地址x處加載32字節的數據到調用棧(stack)
數據:DOGE鯨魚交易和交易量均飆升至8月的水平:金色財經報道,據Santiment的推特消息,時隔兩個月,DOGE重返0.072USDT關口,同時,DOGE鯨魚交易和交易量均飆升至8月的水平。此外,Santiment還指出,當memecoins脫鉤時,市場通常會出現兩極分化的情況。[2022/10/27 11:47:13]
???MSTORE(x,y):從地址x開始,寫入32字節的y
???MSTORE8(x,y):從地址x開始,寫入8字節的y(低位開始)
有興趣的讀者可以在EVMPlayground上感受下,上述內存操作帶來的內存和棧的變化。
Memory的約束
在OlaVM的5.3.5節,你可以看到關于Memory約束的設計原則(OlaVM內存相關的指令和EVM類似)。
在OlaVM中,RAM的所有操作組成一個獨立的table,table里的內容由memory和storage兩種類型組成。在這里,我們只關注對于memory的約束。
數據:Uniswap單日交易費用超以太坊網絡轉賬費用近3倍:7月26日消息,據Crypto Fees數據,Uniswap 7月25日產生交易費用為959.8萬美元,同期以太坊網絡轉賬費用為332.3萬美元。此外,Uniswap 7日平均費用為894.7萬美元,以太坊網絡轉賬費用為358.9萬美元。
據悉,2022年1月1日,以太坊的日轉賬費用是Uniswap的近10倍。[2022/7/26 2:38:10]
內存的操作類型大體可以分為三類:
??Init操作
??write操作
??read操作
觸發Init的場景有三種,分別是ctx的變換,type的變化,addr的變化;當任何一個場景觸發時,需要約束,操作類型為w(write),v(value)為0。
當上述三種場景沒有觸發時,則需要根據當前的操作類型來約束;
??如果是w(write)操作,需要約束clk是遞增的,寫入的值v是對的。
??如果是r(read)操作,需要約束clk是遞增的,讀取的值和上次寫入的值是相同的。
央行參加國際清算銀行發起的人民幣流動性安排:金色財經報道,據中國人民銀行官方公眾號,6月25日,中國人民銀行與國際清算銀行(BIS)簽署了參加人民幣流動性安排(RMBLA)的協議。人民幣流動性安排是由國際清算銀行發起并設計的一項金融制度性安排,旨在通過構建儲備資金池,在金融市場波動時為參加該安排的央行提供流動性支持。人民銀行積極參與了該安排的設計,其他首批參加方還有印度尼西亞中央銀行、馬來西亞中央銀行、香港金融管理局、新加坡金融管理局和智利中央銀行。[2022/6/26 1:31:36]
一些可能性的提升
??對于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:SINOLAMEMMORMedia Licensing TokenDolaimi UniversalSohi MemeMOR幣
就在最近,以太坊區塊鏈經歷了其整個開發生命周期中最重要的更新。盡管許多市場參與者預計,在合并之后,ETH的價格會飆升,但事情并沒有按計劃進行.
1900/1/1 0:00:00在過去7天里,瑞波幣的本地貨幣XRP代幣已成為最大的加密貨幣中的最大贏家之一。價格飆升是在與美國證券交易委員會正在進行的法律斗爭中出現的。然而,數據顯示鯨魚最近正在添加XRP代幣.
1900/1/1 0:00:00Aug.2022,VincyDataSource:FootprintAnalytics-OtherdeedForOthersideCollectionStats繼TheSandbox和Decen.
1900/1/1 0:00:00今日加密市場在美聯儲FOMC與利率決議前皮軟下跌,截止目前宣布加息75個基點的幾率高達84%,加息100個基點的幾率只有14%。75基點已經是意料之中,重點是利率決議對后面的經濟展望和點陣圖上.
1900/1/1 0:00:00BVB在2022下半年的登場,無異于平地起驚雷,讓人所料未及,它給了投資者向前展望的動力,讓更多人沿著時代的主線繼續向前延伸,也給同行進一步邏輯推理和想象力,試著通過BVB找出Web3的明線.
1900/1/1 0:00:00原文作者:JoelJohn原文編譯:深潮TechFlow熊市是考慮從事加密貨幣的好時機。在一個晝夜不停的行業中工作是有社會、精神和身體成本的.
1900/1/1 0:00:00