比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > Filecoin > Info

深入理解區塊鏈二層擴展方案Rollup_KRO

Author:

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

編者注:原標題為《深入理解區塊鏈二層擴展方案Rollup》

本文作者朱光宇,區塊鏈愛好者,前阿里巴巴JVM專家。現就職于Westar實驗室,從事智能合約編程語言及其執行引擎的研發。

背景

最近,以太坊創始人VitalikButerin在一篇題為“混合式二層協議的曙光”的文章里對Rollup方案大加贊賞,認為它為智能合約的可擴展性打開了大門。那么什么是Rollup?它包括哪些主流方案?這些方案各自有什么優缺點?它們未來發展前景怎么樣?為了找到這些問題的答案,筆者對相關項目做了一番調研,將收集到的信息整理成下面這篇文章。

Rollup的出現

最近兩年,以太坊二層擴容技術得到突飛猛進的發展。所謂二層技術,就是將一部分資金存儲在主鏈上的智能合約內作為,在保證足夠的安全性和不可篡改的前提下,把一部分交易放到主鏈之外進行,就好像鏈下多出來第二層網絡。二層方案里表現較突出的要數狀態通道和Plasma側鏈,但是這兩種方案距離被廣泛接受還有一段距離,其背后的原因歸根結底是數據的可用性問題。什么是數據可用性呢?假設你去賭場玩撲克,需要先到柜臺把現金兌換成籌碼,這可以理解成在鏈上創建狀態通道并存入押金。然后你開始玩撲克,這就是所謂的鏈下交易。在贏得一手大牌之后,你想要兌現籌碼走人,突然有人給你腦后來了一悶棍,醒來后桌上的籌碼不翼而飛。你記不起來牌局的細節,所以無法追回已經贏得的籌碼。這就是所謂的“數據不可用”。無論是狀態通道還是Plasma側鏈,完整的交易記錄和見證數據都只保存在鏈下,出現爭端時如果參與者沒有及時提供正確的交易和見證數據,交易的安全性就無法保證。就好像是玩撲克的人被打了一悶棍忘記了牌局細節,很難追回屬于自己的籌碼。即便是數據沒有丟失,面對不合作的對手,也要走非常復雜的仲裁流程。

中央財經大學:與中國銀行在數字人民幣領域深入開展合作:金色財經報道,中央財經大學近日與中國銀行簽署戰略合作協議,雙方將圍繞數字經濟、數字人民幣等方面開展研究,推動合作項目落地實施。根據協議,雙方還將進一步在銀校系統對接、數字人民幣等領域深入開展合作。(中央財經大學官方公眾號)[2021/10/5 17:24:39]

就在二層擴容技術舉步維艱的時候,一位開發者提出了一種名叫Rollup的新方案。與Plasma不同的是,它可以“打包”交易,將“打包”后的交易數據連同一個SNARK零知識證明發布在鏈上。打包的正確性可以通過SNARK證明,從而確保運營商不可能發布惡意或無效的交易。這就是后來被VitalikButerin稱之為ZKRollup的二層擴容方案。ZKRollup并非萬能,它遇到的最大問題是通用性。除非要證明的交易非常簡單,否則創建SNARK證明的成本會非常高。因此,一個名叫OptimisticRollup的折衷方案被提了出來。OptimisticRollup也是把交易數據都放到鏈上,但不是用SNARK做驗證,而是采用加密經濟學有效性博弈來實現有效性驗證。我們將在下面的章節詳細介紹這兩種Rollup方案的原理。

動態 | 中國電信翼支付將在區塊鏈核心應用等方面深入開展技術創新合作:金色財經報道,中國電信翼支付將深化\"5G+金融科技\"創新合作,在支付媒介創新、用戶精準營銷、智能授信、智慧風控、智能投顧、區塊鏈核心應用等方面,深入開展技術創新合作,探索\"5G+金融科技\"新模式。[2019/12/12]

工作原理

Rollup的核心思想是將“打包”后的交易數據區塊發布在鏈上,從而大大降低交易有效性驗證的難度。交易數據的上鏈和驗證是基于智能合約完成的。運營者收集到不同參與者提交的鏈下交易后,在鏈上執行Rollup智能合約提供的腳本,將打包后的交易數據區塊作為參數提交給合約,合約驗證數據有效后為每個參與者記賬。這相當于一次性執行了一批鏈下交易,但是在鏈上只執行了一個交易。

下圖是ZKRollup提交上鏈的打包數據。它包含一組壓縮后的交易數據、執行這批交易之前的記錄用戶狀態的merkle樹樹根,以及執行交易之后的新merkle樹樹根。除此之外還包含一個SNARK零知識證明,合約用它來驗證在Prev狀態上施加這批交易后結果就是New狀態。如果對零知識證明的工作原理感興趣,可以參考文章。

聲音 | 天津市委常委:區塊鏈等科技同經濟等深入協同,城市建設步入城市化3.0的時代:據環球網報道,以“科技賦能城市與區域治理創新”為主題的天津論壇2019于19日在天津拉開帷幕。天津市委常委、教委工委書記于立軍表示,智慧是城市的靈魂,是城市的精氣神,當前新一輪科技革命和產業變革不斷推進,特別是人工智能、區塊鏈和云科技同經濟、社會、文化、生態深入協同,城市建設步入了城市化3.0的時代。[2019/10/20]

生成SNARK的成本非常高,所以OptimisticRollup采用了不同的方法——“欺詐證明”來驗證交易有效性。這里的“欺詐證明”并非類似SNARK那樣的見證數據,它實際上指的是加密經濟學有效性博弈。也就是說,運營者發布新的狀態樹樹根時無需每次都接受Rollup智能合約的驗證,每個人都假設狀態轉換是正確的。如果有人發布了非法的狀態轉換,其它運營者或者參與者都可以挑戰非法交易并回滾不正確的區塊。為了實現“欺詐證明”,光有ZKRollup那樣的交易數據是不夠的,Tx數據需要包涵交易提交者的簽名,合約通過校驗簽名判斷交易是否合法。

安全性

Rollup的安全性來自于數據可用性和交易有效性。有了數據可用性和交易有效性,就能保證Rollup操作者永遠不能破壞狀態或竊取資金,即使操作者不配合,參與者也能方便的追回Rollup網絡上的資產。Rollup將交易數據發布到鏈上,就像“錨”一樣將Rollup網絡錨定到了以太坊主鏈上。就好比是賭場里裝上了攝像頭,即便是玩撲克的人被打了一悶棍,還是能通過視頻記錄證明自己確實贏了錢。

聲音 | 香港金融發展局董事:香港金融服務的質量將隨著區塊鏈等應用的深入進一步提升:據新華網報道,中共中央、國務院日前印發了《粵港澳大灣區發展規劃綱要》,大灣區共同家園投資有限公司總裁、香港金融發展局董事胡章宏表示,伴隨新的政策出臺,大灣區建設國際科技創新中心,香港打造一系列新的中心、平臺以及發展特色金融等目標的推進,香港金融體系的結構將愈發豐富。隨著區塊鏈等科技應用的深入以及金融科技等新業態的不斷培育,香港金融服務的質量和效率也將進一步提升。[2019/2/21]

對于交易有效性驗證,ZKRollup和OptimisticRollup采取了不同的方法。ZKRollup采用零知識證明來保證交易有效。它的安全性建立在密碼學基礎之上,智能合約僅在交易數據被證明為正確之后才會接受狀態轉換。每次狀態轉換都有一個零知識證明,這保證了鏈上總是對應著一個正確的二層狀態。OptimisticRollup采用基于加密經濟學有效性博弈的錯誤證明,它無需為每一次狀態轉換都提供證明,只在有人認為狀態轉換有誤的時候提供。所以它要求交易方必須在線,因為沉默將被視為同意。所以相比較ZKRollup,OptimisticRollup的安全性有所降低,它需要采取額外的措施來防止DDoS攻擊造成的默許。

北京市委書記蔡奇:深入研究區塊鏈技術及應用,打造產業集群:昨天上午,北京市召開網絡安全和信息化工作會議,北京市委書記蔡奇強調,堅持以信息化培育新動能推動新發展,使信息化成為首都發展的新動能、城市治理的新手段、公共服務的新方式,切實增強人民群眾的獲得感幸福感安全感。大力發展數字經濟,深入實施大數據和云計算發展行動計劃,深入研究區塊鏈技術及應用,打造產業集群。優化電子政務,推進全市統一的基礎公共云平臺建設,進一步打破信息壁壘、提升服務效率,讓百姓少跑腿、信息多跑路。[2018/5/26]

可擴展性

Rollup通過一次鏈上交易可以執行一大批打包后的鏈下交易,主鏈不需要通過執行每筆交易來驗證其有效性,而且交易數據是作為函數參數發布的,驗證完有效性后就會被丟棄,這樣就不會占據以太坊的存儲空間。因此Rollup可以大幅度提升以太坊的可擴展性。

但是這種提升并非沒有限制,雖然只有一次鏈上交易,但是它會受到交易數據本身gas成本的制約。以太坊數據的gas成本在伊斯坦布爾升級前是每字節68單位,而以太坊上每個地址就會占用20字節,所以用以太坊交易數據結構來表示鏈下交易gas費用會非常高,因此Rollup對交易數據進行了壓縮。

ZKRollup在智能合約里用merkle樹來記錄地址,這樣地址就可以表示成樹的索引值,地址數據的大小就從原本的20bytes減少到只有3bytes到4bytes。每筆交易就被壓縮成10幾個字節,再加上一個約100-300字節的SNARK,理論上可以將以太坊吞吐量從32TPS提升到約680TPS,伊斯坦布爾升級后可達到2000TPS。下圖是壓縮后ZKRollup每筆交易數據的格式:

OptimisticRollup的吞吐量理論上只有100TPS,主要原因是上文提到過的,為了支持欺詐證明OptimisticRollup的每筆交易數據需要包涵交易提交者的簽名。每條簽名的大小是64bytes,這大大增加了提交上鏈的交易數據的字節數,從而很快達到gas上限。為了減少交易數據的字節數,一種BLS聚合簽名機制被提了出來。如下圖所示,BLS聚合簽名機制是在操作員收集到所有交易后,將打包后的交易發送給每個交易提交者簽名,因為每個簽名都是針對相同的數據,所以可以被操作員聚合成一個BSL簽名。發送給鏈上合約的將是壓縮后的交易數據加上聚合后的BLS簽名,從而大幅減少了交易數據所消耗的gas。BLS簽名可以將OptimisticRollup的吞吐量從100TPS提升到450TPS,伊斯坦布爾升級后也可以達到2000TPS。

延遲

OptimisticRollup基于加密經濟學有效性博弈,只有過了1~2周的挑戰期才能確認交易生效。ZKRollup的延遲相對較小,如果一個打包區塊中有1000筆交易,在普通的服務器上大概需要20分鐘可以構造出一個證明。開發者們已經提出很多減少延遲的方法,比如采用GPU加速可以將零知識證明構造時間壓縮到1分鐘。還有一種叫做“即時交易收據”的方法兩種Rollup方案都適用。它主要借助經濟學博弈來完成,就是負責打包的操作員需抵押一部分安全保證金,如果某個交易沒有被打包到區塊中,這筆錢就會被沒收。理論上“即時交易收據”可以將交易確認時間壓縮到1秒以內,但是實現相對復雜,安全性有所降低。

通用性

通用性方面,OptimisticRollup明顯好于ZKRollup,當然它的設計目標就是支持任意智能合約。而ZKRollup目前僅適用于支付之類的特定交易,對于通用智能合約,由于創建零知識證明的成本非常高,部署起來困難較大。為了提高效率,開發者正在開發專門的零知識證明虛擬機,比如ZEXE。它在一定程度上可以縮短創建證明的時間,但是缺點是合約開發者需要大量的專業知識。MatterLabs團隊基于ZKRollup開發的新一代區塊鏈擴展方案ZKSync,設計開發了一款以委托的方式生成零知識證明的沙盒式虛擬機,開發者不需要深入了解零知識證明領域的技術細節就可以編寫出高效且安全的智能合約。

總結與展望

本文簡要介紹了區塊鏈擴容方案Rollup的工作原理,對比分析了兩種Rollup方案ZKRollup和OptimisticRollup在可擴展性、延遲、通用性、安全性上的優劣。

根據以上的對比分析,短期看來OptimisticRollup由于較好的通用性會受到開發者的青睞;但從長期來看,隨著零知識證明虛擬機的演進,ZKRollup會在通用性上不斷提高。它能否主宰智能合約可擴展性的未來呢?這個問題只能留給時間來回答了。

參考文章

1、《混合式二層協議的曙光》2、《零知識證明–zkSNARK入門》3、《有效性證明和錯誤證明》4、《ZKSync介紹》

Tags:ROLLROLKROMISTAITROLLSRoller InuKROM幣wisdomisthewealthofthewise

Filecoin
數據分析 | 8成以太坊持有者目前都在虧損,但以太坊牛市在望_ITA

IntoTheBlock表示,目前大量以太坊的持有者處于虧損狀態。不過根據多項指標估計,隨著以太坊即將迎來反彈,他們可能很快就會開始獲利.

1900/1/1 0:00:00
行情解析:大盤行情依然弱勢,拿住手中的子彈_BBK

作者|哈希派分析團隊 行情 | BBKX平臺ETF行情播報 BSV3S日內漲幅超7%:據BBKX.COM行情顯示,BBKX交易平臺ETF專區多個幣對小幅上漲,截至今日12:50(UTC+8).

1900/1/1 0:00:00
清華教授何平:比特幣缺乏黃金那樣的價值支撐,不是真正的數字黃金_區塊鏈

來源:一本區塊鏈 作者:棘輪比薩 美股四次熔斷、石油價格暴跌……最近一周多時間里,國際金融局勢極度動蕩。黃金,同樣在跌。而所謂的避險資產比特幣,在一天之內,就跌去了30%.

1900/1/1 0:00:00
法國央行第一副行長:數字世界的金融主權是什么?_BDC

翻譯/校對:龍白滔 注:法國銀行第一副行長DenisBeau先生于2020年3月3日在巴黎舉行的法國支付論壇第八屆年會上的上午閉幕主題演講.

1900/1/1 0:00:00
“減半”行情,原來是價格減半_SDT

事件 BTC閃崩,價格從7980美元直落至3800美元,跌幅達52%,價格減半,只用了一天,市場陷入恐慌。此前,因為“減半”預期和避險需求,BTC的價格一度從6696美元漲至10500美元.

1900/1/1 0:00:00
QKL123行情分析 | 比特幣礦工倉皇出逃,礦工瘋狂指標亟待反轉(0318)_USDT

摘要:今日大盤有所下行,交易量明顯下降,USDT場外溢價率繼續回落;近期還是受到全球資本市場影響,市場很難在短時間內走出低谷.

1900/1/1 0:00:00
ads