買以太坊 買以太坊
Ctrl+D 買以太坊
ads
首頁 > 波場 > Info

ASH:詳解 Rollup 的兩種驗證狀態:欺詐證明和非交互式欺詐證明_HASH

Author:

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

原文標題:《真正理解Layer2》

原文作者:web3探索者

Layer2的核心目標是提升區塊鏈處理速度,原因是無法在一層中同時滿足安全性、處理速度、去中心化。

L2有三種模式:狀態通道、plasma、rollup。三者因為各自的缺陷沒有成為主角,所以本文我們只介紹rollup機制,其他模式有興趣可以自行查閱。

一、Rollup

Rollup的核心思路是在L1上保存能夠驗證交易過程的憑證,而將交易過程(計算過程)還有狀態存儲運行在L2中。

何為交易過程的憑證,我們知道交易執行的過程就是由1個狀態轉移到另外1個狀態的過程,如果L1知道了一組交易前的狀態和一組交易后的狀態還有這一組交易,自然可以驗證這組交易對應的狀態轉移是否正確。

如上圖所示,發布者將交易前狀態樹的根hash交易后狀態樹的根hash以及交易發布到L1上,L1智能合約確認交易前狀態樹根hash是否和存儲的根hash一致。交易前的根hash一致說明起始狀態正確,那么本次交易過程是否正確如何驗證呢?最安全的做法肯定是我們每次都在L1上重新執行L2的交易樹,進行狀態轉移,但這樣L2失去了意義,還是會面臨不可能三角中處理速度的問題。

數據:當前已申領WLD代幣數量突破1000萬枚:金色財經報道,據Dune Analytics數據顯示,已申領的WLD代幣數量已突破1000萬枚,本文撰寫時達到10,857,112枚,申領地址數為434,292個,此外當前持有WLD代幣的Optimism錢包數量已超過40萬個。[2023/8/5 16:19:35]

如何去驗證狀態轉移是否正確也引出了2種不同的Layer2Rollup機制。

第一種是欺詐證明,即默認相信存入的狀態是正確的,等待其他參與者提出欺詐證明挑戰,每一次L2發布到L1時的節點都要繳納一定的保障金,當欺詐被證明后?回滾到前一狀態,發布者保證金會被全部扣除,部分給到挑戰者,部分直接銷毀。如何證明欺詐,根據和L1交互程度的不同,分為交互式欺詐證明和非交互式欺詐證明,下面會詳細解釋。

第二種是零知識證明,每次存入狀態都需要給出證明,證明會在L1進行驗證,如果驗證根hash值是正確的,代表發布者的發布無誤,這里的證明用到了零知識證明相關研究。

欺詐證明

剛剛上面說到欺詐證明本著默認相信的原則。當沒有挑戰的時候,流程較為簡單,即將狀態樹的根hash交易信息存入L1中。核心在于有挑戰者發起挑戰時,如何證明交易前狀態樹的根hash經過這一組交易可以變為新的狀態根hash。這里有2種思路。

數據:7000 萬 USDT 從 Tether 金庫轉至 Bitfinex:12月15日消息,Whale Alert 數據顯示,北京時間 10:44:51,7000 萬枚 USDT 從 Tether 金庫轉至加密交易所 Bitfinex。[2022/12/15 21:46:26]

1.非交互式欺詐證明,即在L1上將這組交易重新執行一遍,看看執行過后的狀態樹根hash值和傳入的根是否一致即可。

2.交互式欺詐證明,由挑戰者和發布者在L2上進行多輪挑戰,最終挑戰者鎖定具體哪條指令具有欺詐性,由L1進行裁決。L1只需要執行存在爭議的最小指令即可。

非交互式欺詐證明

我們將以Optimism為例說明交互式欺詐。

欺詐證明過程解析:

非交換式欺詐,欺詐證明實現較為簡單,將L2中執行的交易在L1中再完整執行一次,以確定狀態根的hash是否一致來判斷欺詐行為。

如上圖所示,發布者發布信息到L1上,攜帶交易信息和新舊整體根hash,L1中的智能合約收到后會默認變更state為新的根hash,這時挑戰者提出挑戰,挑戰者需要提供符合舊根hash的merkle狀態樹,L1智能合約通過舊的狀態樹執行完整的交易流程得到根hash和發布者提供的新根hash比較,不相等則說明有欺詐行為。

疑似孫宇晨的地址從幣安提取3200萬枚USDT,并換成USDC轉入Circle:金色財經報道,據Lookonchain監測,9小時前,疑似孫宇晨的地址(“0x9f84”開頭)從幣安撤回3200萬枚USDT,隨后兌換為USDC,并轉移至Circle。據了解,該地址和孫宇晨使用相同的Circle存款地址。[2022/12/7 21:27:58]

重新執行就會遇到一個問題,區塊相關的屬性會因為執行環境不同而發生變化。

如上圖所示block.timestamp會獲取當前區塊的時間戳,但由于合約執行的環境不同得到的時間戳大概率是不一樣的。我們看看Optimism是如何設計OVM來解決這一問題的。

OVM

為了解決在L2和L1運行智能合約時所處環境不一致的問題,Optimism使用了虛擬化技術的方式,讓智能合約直接獲取一些狀態變為經過OVM封裝后調用。

上面的那個例子,將不能直接調用block.timestamp,改為調用ovm封裝的1個方法ovm_getTimestamp(非真實隨意命名)。

交互式欺詐證明

我們將以Arbitrum為例說明交互式欺詐。

Arbitrum欺詐證明過程解析:

數字人民幣試點已擴大至北京全域:金色財經報道,數字人民幣試點已擴大到北京全域,累計落地40余萬個場景。 人民銀行營業管理部黨委委員、副主任劉玉苓介紹,北京在全國率先開展金融科技創新監管試點,在創新應用數量、技術應用場景及申請主體多元化方面保持領先優勢。(北京日報)[2022/9/23 7:16:17]

其實之前智能合約一文開頭講過智能合約執行的過程就是推進狀態變化的過程我們再次回顧狀態機的概念:

如圖所示,無論上L1上的狀態樹還是L2上的狀態樹,都是由一系列的交易(智能合約的執行也是一次交易的調用),推動狀態轉換的,而由于智能合約,交易又可以拆分為更小的步驟指令。所以就變成了下面的樣子:

我們的問題轉化為證明狀態樹從狀態A經過N個指令變成了狀態B,那么這個證明過程是否是可分解的呢?我們用分治的方式不難想到二分法,將1個大問題拆兩個子問題,問題就變為證明狀態A經過前N/2個指令變成狀態X和狀態X經過后N/2個指令變成狀態B。逐步二分最終定位到存在問題的指令,交由L1執行驗證即可。

讓我們完整描述整個運行過程,假設X是發布者發布從狀態A經過N條指令轉移到狀態B,Y是挑戰者。

Y向X提出挑戰,要求給出經過N/2條指令處的狀態,X給出狀態后,Y會自行驗證是否正確。如果驗證正確,則代表前N/2指令執行無問題,問題在后N/2,如果驗證錯誤,則代表前N/2條指令執行就有問題。Y繼續向X詢問存在問題的指令區間N/2處狀態,循環往復,直至找到有問題的指令(這里不是指令有問題,是執行指令前的狀態無法通過執行指令得到執行指令后的狀態)。

由Coinbase發起的Travel Rule通用解決方案技術聯盟成員已增加到36家:5月24日消息,由Coinbase發起的Travel Rule通用解決方案技術(TRUST)聯盟成員現已增加到36家,包括Amber Group、Anchorage、Balance、Binance US、BitGo、bitFlyer、Bittrex、BlockFi、BlocPal、Cake DeFi、Circle、Coinbase、Coinhako、Coinsmart、Coinsquare、Crypto.com、Custodia、Fidelity Digital Asset、Gemini、Kraken、Netcoins、Nexo、Paxos、Robinhood、sFOX、Shakepay、Standard Custody & Trust、Symbridge、Tetra Trust、TradeStation、Unbanked、VirgoCX、Voyager、Wealthsimple、Zero Hash 和 Zodia Custody。

TRUST專注于為全球虛擬資產服務提供商(VASP)提供合規服務,包括安全保障措施。[2022/5/24 3:39:00]

在實際應用中Arbitrum不是使用二分的方式,而是使用了K分,即每次將N個指令分為N/K組去尋找欺詐指令,效率更高。

AVM

Arbitrum設計AVM和EVM不同的核心點在于:AVM不僅僅要支持EVM完全兼容的執行邏輯,還要支持交互式欺詐證明的證明邏輯。

證明過程中,要保證當前程序計數器中指令的正確性。這時采取了類似區塊鏈的做法,PC(當前的程序計數器位置)不僅存儲操作碼,而且存儲PC+1處的hash值,這樣就可以在指令執行過程中驗證驗證每個指令是否正確。

由上述對比來看交互式欺詐證明除了實現難度較高外,主要特性都優于非交互式欺詐證明。具有代表性非交互式欺詐證明使用者Optimism也準備切換到交互式欺詐證明。可以預見未來交互式欺詐證明將會是欺詐證明的主流。

欺詐證明大都存在1個問題較長的提款周期,這是因為需要足夠多的時間,讓挑戰者提出挑戰。受益于密碼學的較新研究成果,zk-rollup將解決這一問題。

二、ZK-Rollup

零知識證明的含義

零知識即在參與者解出問題結果但不告知驗證者結果的情況下,讓驗證者相信參與者解出的問題結果是正確的。我們舉2個比較有名的例子。

著名的阿里巴巴

很久很久以前,有一個藏著財寶的山洞,阿里巴巴因為知道開啟山洞石門的咒語,而被強盜抓住。如果說出咒語,失去利用價值也是一死;如果堅持不說,強盜也會殺死他。兩難的阿里巴巴卻想了一個好辦法,他讓強盜隨機下指令:“你們只需離我一箭之遙,用弓箭指著我,你們舉起右手我就念咒語打開石門,舉起左手我就念咒語關上石門,如果我做不到或伺機逃跑,你們就用弓箭射死我。”重復多次后,強盜始終無法獲知咒語,卻可以相信阿里巴巴擁有咒語的事實,阿里巴巴也保住了性命。

數獨問題

有一組9*9的數獨,A已經解出答案,A在不透露答案的前提下想讓B相信A已經成功解出。

解決方法是:讓B隨機挑選1行或1列,A將這一行或一列取出打亂展示給B,包含了1~9,重復多次B就會相信A得出正確答案。

ZK-SNARK是如何解決問題的

目前ZK機制較為成熟的是zk-SNARK所以后面指的zk算法都以zk-SNARK為例。

ZK-SNARK工作流程分為2步:

1.通過將問題轉換為電路再轉化為多項式,即從真實的零知識證明問題轉化為數學的零知識證明問題

2.驗證這個多項式零知識證明?隨機給出1些檢查點都可以得出符合條件的解,則驗證成功。

關于zk證明我們后面會單獨再來一篇文章來介紹,因為zk證明不僅僅會運用在以太坊擴容,更多會運用在隱私保護領域,比如較為熱門的DID。

我們以starkware為例介紹zk-rollup的機制,starkware流程圖如下圖所示。

當發布者發布交易到L1上時,需要將交易以及L2上狀態打包交給一個證明生成服務,證明生成服務經過大量運算,生成這次發布的證明。證明服務將證明發送給L1的驗證服務。同時發布者將狀態根hash值提交到L1,L1中接收到根hash值會詢問L1上的驗證服務,驗證服務根據證明驗證根hash值是否正確,如果正確L1會將狀態根切換成新的hash值。

在這個過程中本來驗證狀態樹的根hash是需要前一次完整狀態樹執行這次發布的所有交易得到新的交易樹,從而計算新的根hash值,最終根據發布者提供的根hash值和新的hash值進行比較判斷發布是否合法。由于引入了zk證明,我們不需要知道具體的狀態和交易就可以判斷hash值是否正確。這就是zk證明在以太坊擴容的應用。

ZK證明的發展

SNARK(零知識簡明非交互式知識證明)和STARK(零知識可擴展透明證明)對比:

相比SNARK而言,STARK發展還處于早期,但就安全性和抗量子性較好的表現,有望在接下來取得更大的發展。

三、結尾

本文我們介紹主要介紹了rollups這種主流layer2技術,rollups中根據何時去驗證L2提交的狀態是正確的時機分為了欺詐證明和zkrollups,欺詐證明又根據挑戰者是否需要和發布者交互分為了非交互式欺詐證明和交互式欺詐證明,經過對比發現無論是運行成本還是EVM兼容性,交互式欺詐證明都處于優勢。而zk這一密碼學較新的研究成果給我們帶來了新的方向zkrollups得以更快地驗證發布者的發布。并且zk還為隱私保護等其他方向帶來了新的可能。

Tags:ASHHASHROLLROLBASHTANKHASH價格roll幣能出坐騎嗎ROLS

波場
BAN:Bankless:2022年值得關注的10大潛在空投機會_Adbank

來源:Bankless 編譯:DeFi之道 自?Uniswap?在2020年9月開啟空投運動以來,空投一直是最賺錢的機會之一.

1900/1/1 0:00:00
馬斯克:美媒:加密貨幣使得俄羅斯更容易規避制裁_區塊鏈

鏈捕手消息,據美國有線電視新聞網報道,隨著烏克蘭局勢的惡化,美國及其盟友正對俄羅斯的銀行和“國內寡頭”實施愈發嚴厲的金融制裁.

1900/1/1 0:00:00
EVMOS:主網正式上線后,Evmos上都有哪些生態項目了?_evmos幣在哪交易

整理:胡韜,鏈捕手 作為Cosmos生態的EVM網絡,Evmos是近期最受關注的項目之一,它將通過IBC與以太坊主網、EVM兼容環境和其他BFT鏈互操作.

1900/1/1 0:00:00
USD:盤點 4 個有潛力的 DeFi 收益優化協議_USDC

研究員:Kelvin.K#0006,SnapFingersDAO響指研究所從Compound到Uniswap再到YearnFinance,從以太坊鏈到幣安鏈再到各大公鏈和Layer2.

1900/1/1 0:00:00
UNT:詳解DeFi風險管理工具Gauntlet:如何通過風險參數化降低DeFi風險并提高資本效率?_DEF

作者:北辰,鏈茶館 金融是在不斷跟風險打交道,信用風險、流動性風險、投資組合風險、交易風險……在傳統金融市場,這些風險隱藏在無數個大機構的背后,交給大機構的成百上千人的專業團隊打理.

1900/1/1 0:00:00
COIN:Gitcoin CEO詳解為何GitcoinDAO會成為加密世界的王國_Fund Token Coin

原文作者:KevinOwocki文章來源:DAOrayaki 文章導讀: 群體思維 三大需要優化的問題 生態系統影響 互聯互通 去中心化 如何實現三大優化 網絡效應 活動 治理 DAO工作流 路.

1900/1/1 0:00:00
ads