最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

你知道區(qū)塊鏈的熱門主力方案Rollup是什么嗎?

2021-09-28 14:32 作者:起碼按摩  | 我要投稿

最近,以太坊創(chuàng)始人Vitalik Buterin在一篇題為“混合式二層協(xié)議的曙光” 的文章里對(duì)Rollup方案大加贊賞,認(rèn)為它為智能合約的可擴(kuò)展性打開了大門。

那么什么是Rollup?它包括哪些主流方案?這些方案各自有什么優(yōu)缺點(diǎn)?它們未來(lái)發(fā)展的前景如何?

Rollup的出現(xiàn)

最近幾年,以太坊二層(Layer-2)擴(kuò)容技術(shù)得到了迅猛發(fā)展。

所謂二層,就是將一部分資金存儲(chǔ)在主鏈智能合約里,在保證足夠安全的前提下,把一部分交易放到主鏈之外進(jìn)行,就好像鏈下多出來(lái)了一層網(wǎng)絡(luò)。

在二層方案里表現(xiàn)比較突出的就是狀態(tài)通道和 Plasma側(cè)鏈。雖然這兩種方案誕生時(shí)間很早,但是發(fā)展的卻比較緩慢。其背后的原因歸根結(jié)底是數(shù)據(jù)的可用性問題。

就在二層擴(kuò)容技術(shù)舉步維艱的時(shí)候,一種名叫 Rollup的新方案被提了出來(lái)。

但是與狀態(tài)通道和Plasma不同的是,它可以“打包”交易,并將“打包”后的交易數(shù)據(jù)連同一個(gè)SNARK零知識(shí)證明發(fā)布到鏈上。

打包的正確性可以通過(guò)零知識(shí)證明來(lái)見證,負(fù)責(zé)“打包”的操作者不可能發(fā)布惡意或無(wú)效的交易。這就是后來(lái)被Vitalik Buterin稱之為ZK Rollup 的二層擴(kuò)容方案。

ZK Rollup并非萬(wàn)能,它遇到的最大問題就是通用性。除非要證明的交易非常簡(jiǎn)單,否則創(chuàng)建SNARK證明的成本會(huì)非常高。

因此,一種名叫Optimistic Rollup的折中方案被提了出來(lái)。

Optimistic Rollup同樣也是把交易數(shù)據(jù)都放到鏈上,但不是用SNARK做見證,而是采用“加密經(jīng)濟(jì)學(xué)有效性博弈”來(lái)實(shí)現(xiàn)有效性驗(yàn)證。

作為一種提高區(qū)塊鏈吞吐量的技術(shù),Rollup可以在有效提高網(wǎng)絡(luò)吞吐量的同時(shí),避免對(duì)協(xié)議層進(jìn)行大量的更改,部署Rollup也不需要對(duì)網(wǎng)絡(luò)發(fā)起硬分叉升級(jí)。

目前已經(jīng)有許多以太坊上的項(xiàng)目(如Celer,ANON等)采用了Rollup協(xié)議來(lái)提高Dapp的吞吐量和用戶體驗(yàn)。

Rollup是如何工作的?

鏈上有一個(gè)智能合約,它維護(hù)狀態(tài)根:rollup狀態(tài)的Merkle根(意思是,“余額”內(nèi)的帳戶余額,合同代碼等)。

任何人都能夠以高度壓縮的形式發(fā)布批處理,交易集合以及先前的狀態(tài)根和新的狀態(tài)根(處理交易后的Merkle根)。

合同檢查批處理中的先前狀態(tài)根是否與其當(dāng)前狀態(tài)根相匹配;如果是這樣,它將狀態(tài)根切換到新的狀態(tài)根。

為了支持存款和提款,我們?cè)黾恿耸馆斎牖蜉敵鎏幱趓ollup狀態(tài)“之外”的交易的功能。

如果批次具有來(lái)自外部的輸入,則提交該批次的事務(wù)也需要將這些資產(chǎn)轉(zhuǎn)移到rollup合同中。

如果某個(gè)批次有外部輸出,則在處理該批次時(shí),智能合約會(huì)啟動(dòng)這些提款。

就是這樣!除了一個(gè)主要細(xì)節(jié):如何知道批次中的狀態(tài)后根是正確的?

如果某人可以提交具有任何后期狀態(tài)根源的批次而沒有任何后果,那么他們可以將rollup中的所有Token轉(zhuǎn)移給自己。

這個(gè)問題很關(guān)鍵,因?yàn)橛袃蓚€(gè)非常不同的解決方案系列,而這兩個(gè)解決方案系列就導(dǎo)致了兩種rollup方式。

Optimistic Rollup與ZK Rollup

Rollup的兩種類型分別是Optimistic rollup和ZK Rollup。

Optimistic Rollup

Optimistic rollup,使用欺詐證明—rollup合同會(huì)跟蹤其整個(gè)狀態(tài)根歷史以及每個(gè)批次的哈希值。

如果有人發(fā)現(xiàn)某個(gè)批次的狀態(tài)后根不正確,則發(fā)布需要鏈的證明,以證明該批次的計(jì)算不正確。合同將驗(yàn)證證明,并還原該批次及其之后的所有批次。

ZK rollup

ZK rollup,使用有效性證明—每個(gè)批次都包含一個(gè)稱為ZK-SNARK的加密證明(例如,使用PLONK協(xié)議),這證明后狀態(tài)根是執(zhí)行批次的正確結(jié)果。

無(wú)論計(jì)算量有多大,都可以在鏈上非常迅速地驗(yàn)證證明。

總的來(lái)說(shuō),我個(gè)人認(rèn)為,在短期內(nèi),對(duì)于通用EVM計(jì)算而言,樂觀可能會(huì)勝出;而對(duì)于簡(jiǎn)單付款,交易和其他特定于應(yīng)用的用例,ZK可能會(huì)勝出。

隨著ZK-SNARK技術(shù)的改進(jìn),中長(zhǎng)期ZK將在所有用例中勝出。

Rollup工作細(xì)節(jié)

在Optimistic Rollup中,首先我們需要設(shè)立一個(gè)可信任的節(jié)點(diǎn),這個(gè)節(jié)點(diǎn)負(fù)責(zé)收集所有的交易信息、驗(yàn)證然后打包.

打包后的信息集合將帶上該節(jié)點(diǎn)的簽名發(fā)送到區(qū)塊鏈網(wǎng)絡(luò)中。

當(dāng)一個(gè)可信節(jié)點(diǎn)設(shè)置成功后,該節(jié)點(diǎn)將成為Rollup節(jié)點(diǎn),這個(gè)節(jié)點(diǎn)需要同全節(jié)點(diǎn)一樣,下載整個(gè)區(qū)塊數(shù)據(jù)并實(shí)時(shí)更新區(qū)塊狀態(tài)。

我們?nèi)耘f以之前那個(gè)公司為例,假設(shè)目前有2000筆交易正在等待執(zhí)行,公司的員工會(huì)將2000筆交易發(fā)給Rollup節(jié)點(diǎn)。

之后,Rollup節(jié)點(diǎn)需要根據(jù)已有的狀態(tài)和區(qū)塊數(shù)據(jù),對(duì)交易進(jìn)行驗(yàn)證,并保存以下數(shù)據(jù)集(交易內(nèi)容,交易前狀態(tài),交易后狀態(tài))。

當(dāng)Rollup節(jié)點(diǎn)對(duì)所有交易完成了驗(yàn)證與執(zhí)行并生成數(shù)據(jù)集后,節(jié)點(diǎn)需要對(duì)這個(gè)數(shù)據(jù)集進(jìn)行簽名,即Sig Rollup節(jié)點(diǎn)(交易內(nèi)容,交易前狀態(tài),交易后狀態(tài))。

最后將簽名與數(shù)據(jù)集整合到一筆交易中,這個(gè)交易被稱作斷言Assertion,發(fā)送到區(qū)塊鏈網(wǎng)絡(luò)等待其他節(jié)點(diǎn)驗(yàn)證即可。

需要注意的是,網(wǎng)絡(luò)中的其他節(jié)點(diǎn)并不會(huì)驗(yàn)證Rollup節(jié)點(diǎn)發(fā)來(lái)的數(shù)據(jù)集,僅僅只驗(yàn)證其簽名,驗(yàn)證完畢后將根據(jù)數(shù)據(jù)集更新區(qū)塊鏈網(wǎng)絡(luò)狀態(tài)。

正如它的名稱“Optimistic Rollup”,實(shí)際上所有的Rollup協(xié)議由于將交易驗(yàn)證從鏈上轉(zhuǎn)移到了鏈下,因此都是一種基于“樂觀”的假設(shè)—假設(shè)大多數(shù)情況下Rollup節(jié)點(diǎn)不會(huì)作惡。

但光有樂觀假設(shè)是不足的,節(jié)點(diǎn)總會(huì)因?yàn)楦鞣N各樣的原因出現(xiàn)問題。

為了避免這些節(jié)點(diǎn)惡意行為,提高作惡成本,Optimistic Rollup中還有如下機(jī)制:

一方面,Rollup節(jié)點(diǎn)需要向網(wǎng)絡(luò)質(zhì)押一定額度的Token,這些Token有一定的解鎖時(shí)間,并會(huì)在Rollup節(jié)點(diǎn)做出惡意行為時(shí)被罰沒。

另一方面,Rollup節(jié)點(diǎn)所提交斷言不會(huì)被網(wǎng)絡(luò)立即認(rèn)可,所以存在一定時(shí)間的窗口期(一般是1周)。

如果其他節(jié)點(diǎn)認(rèn)為該Rollup節(jié)點(diǎn)提交的斷言存在惡意行為,節(jié)點(diǎn)可以質(zhì)押一定押金并對(duì)該斷言發(fā)起挑戰(zhàn)。

并且區(qū)塊鏈中的出塊/驗(yàn)證節(jié)點(diǎn)會(huì)對(duì)該斷言中的所有內(nèi)容(包括數(shù)據(jù)集)進(jìn)行重新驗(yàn)證、執(zhí)行,比對(duì)交易狀態(tài)的差距。

如果的確存在惡意行為,那么Rollup節(jié)點(diǎn)的押金會(huì)被罰沒,則發(fā)起挑戰(zhàn)的節(jié)點(diǎn)則會(huì)獲得一定獎(jiǎng)勵(lì)。如果不存在惡意行為,則發(fā)起挑戰(zhàn)節(jié)點(diǎn)的押金會(huì)被罰沒。

另外,在窗口期結(jié)束時(shí)沒有其他節(jié)點(diǎn)對(duì)斷言發(fā)起挑戰(zhàn)的話,斷言中的狀態(tài)信息將會(huì)被系數(shù)更新至區(qū)塊鏈狀態(tài)中。

Optimistic Rollup可以將多個(gè)交易信息經(jīng)可信第三方聚合為單筆信息,由于交易中的狀態(tài)變更情況是由鏈下節(jié)點(diǎn)驗(yàn)證而非鏈上節(jié)點(diǎn)驗(yàn)證。

因此降低了區(qū)塊鏈上節(jié)點(diǎn)的驗(yàn)證難度(僅需要驗(yàn)證Rollup節(jié)點(diǎn)所提交的簽名,并更新由該節(jié)點(diǎn)提交的狀態(tài)信息即可)。

數(shù)據(jù)集雖然看起來(lái)并沒有較單個(gè)交易的疊加更小,但數(shù)據(jù)集因?yàn)椴粫?huì)受鏈上節(jié)點(diǎn)的驗(yàn)證,故不需要為其支付高昂的手續(xù)費(fèi)。

依靠這種Layer2處理方案,可以很容易的提高區(qū)塊鏈的有效吞吐量。

ZK rollup是如何工作的?

一個(gè)簡(jiǎn)單的以太坊交易需要約110個(gè)字節(jié)。但是,Rollup上的ETH傳輸僅占用約12個(gè)字節(jié)。

ZK特有的一個(gè)重要壓縮技巧是,如果事務(wù)的一部分僅用于驗(yàn)證,而與計(jì)算狀態(tài)更新無(wú)關(guān),則可以將該部分留在鏈下。

這不會(huì)完全在樂觀的狀態(tài)下完成,因?yàn)槿绻院笮枰谄墼p證明中檢查數(shù)據(jù),則仍需要將數(shù)據(jù)包含在鏈上。

而在ZK中,SNARK證明批次的正確性已證明任何數(shù)據(jù)提供了驗(yàn)證所需的信息。

還有一個(gè)重要的例子是隱私保護(hù),在樂觀的狀態(tài)下,每筆交易中用于隱私的約500字節(jié)需要進(jìn)行保留,而在ZK中,覆蓋整個(gè)批次的ZK-SNARK已經(jīng)沒有了。

這些壓縮技巧是Rollup可伸縮性的關(guān)鍵。沒有它們,Rollup可能只會(huì)使基礎(chǔ)鏈的可伸縮性提高約10倍,而采用壓縮技巧時(shí),縮放系數(shù)幾乎可以超過(guò)100倍所有應(yīng)用程序。

鏈金分析

Rollup的基本概念現(xiàn)在已經(jīng)得到了很好的理解,但我們可以肯定它們?cè)诟旧鲜强尚星野踩?,并且已?jīng)將多個(gè)Rollup部署到了主網(wǎng)上。

但仍有很多Rollup設(shè)計(jì)領(lǐng)域尚未得到很好的探索,充分利用以太坊的可伸縮性,將以太坊生態(tài)系統(tǒng)的大部分完全整合到Rollup中還將面臨很多挑戰(zhàn)。

Rollup是一種強(qiáng)大的新的2層伸縮范例,在短期和中期的未來(lái)(以及可能也是長(zhǎng)期的)中,有望成為以太坊伸縮的基石。


你知道區(qū)塊鏈的熱門主力方案Rollup是什么嗎?的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
依安县| 中方县| 普陀区| 体育| 叶城县| 竹北市| 民勤县| 易门县| 观塘区| 进贤县| 阿拉善盟| 图木舒克市| 衢州市| 兴文县| 涟水县| 渭源县| 梅州市| 陆河县| 汝州市| 霍邱县| 扶余县| 珲春市| 皮山县| 阜宁县| 吉木乃县| 张家口市| 闽清县| 江川县| 罗江县| 临湘市| 桦南县| 盱眙县| 定边县| 焉耆| 扎兰屯市| 大兴区| 房产| 新邵县| 健康| 桂东县| 遵义县|