買比特幣 買比特幣
Ctrl+D 買比特幣
ads
首頁 > Filecoin > Info

POL:Polkadot系列(三)——如何實現共享安全性_DragonBite

Author:

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

本文作者

周蓉,江哲

來自趣鏈科技數據網格實驗室BitXHub團隊,主要負責區塊鏈賬本互操作技術相關研究工作。

導讀:本文是Polkadot系列文第三篇。

說到Polkadot,估計大家聽到它的最大的優點就是它給平行鏈提供的共享安全性,共享安全性保障了不因區塊鏈網絡分片而降低安全性。那么共享安全性到底是如何實現的呢?

本文主要從Polkadot為平行鏈提供的的有效性和可用性兩個保障幫你深度理解共享安全性。

文末福利:Polkadot系列文全覽

回顧

首先還是先來回顧一下前文提及過的Polkadot四種角色:

驗證人

它是中繼鏈全節點,中繼鏈會在驗證人池中通過隨機分組把驗證人指定給不同的平行鏈。驗證人會接受來自收集人打包的區塊并進行有效性驗證,然后結合共識算法對收集人提交的區塊進行確認。

收集人

它是平行鏈的全節點,負責收集和執行平行鏈的交易并產生候選區塊,將區塊和證明提交給驗證人,并通過收集交易獲得手續費。收集人類似于PoW共識區塊鏈當中的礦工。

提名人

Polkadot中數字貨幣DOT的持有人,它會選擇自己所信任的驗證人進行DOT質押,然后分享驗證人的收益。

知情人士:交易平臺Poloniex業務將完全并入Huobi:3月9日消息,據知情人士披露的 Huobi 全員信顯示,加密貨幣交易平臺 Poloniex 多部門將并入 Huobi,包括資產、市場&運營、產品設計、流動性、客服、合規等相關工作的員工將融入 Huobi 團隊。Poloniex Business Center 下設二級部門 Engineering 與 Infrastructure。

此前報道,Justin Sun 于 2022 年 6 月聯合波場聯合儲備收購加密貨幣交易平臺 Poloniex。此后,Justin Sun 于 2022 年 11 月斥資約 10 億美元通過百域資本收購 Huobi 約 60% 股權。[2023/3/10 12:52:53]

釣魚人

它也是平行鏈全節點,監控驗證人的非法行為,若驗證人作惡,釣魚者可以向其他驗證人舉報并獲得相應報。

有效性驗證

有效性驗證指的是區塊鏈系統對賬本狀態變更的合法性校驗,實現全網的共識。

一條普通的區塊鏈,比如以太坊,每出一個區塊,區塊會廣播到全網的以太坊節點,這些節點會對區塊中的交易進行驗證和執行,確保最后生成的狀態根等信息和區塊頭中的信息一致。在Polkadot中,對平行鏈的區塊共識需要進行以下三個級別的有效性驗證:

Thallo完成5000萬歐元鏈上交易,將在Polygon上推出“BaaS”服務:1月18日消息,Web3碳信用市場Thallo宣布,碳抵消生態系統IMPT已在其平臺完成了一筆高達5000萬歐元的鏈上碳信用采購交易,這筆交易將有助于在10年內抵消約1200萬噸碳,相當于全球近260萬人的碳足跡。

此外,Thallo還宣布在Polygon區塊鏈上推出“橋接即服務(Bridging-as-a-Service)”,允許Web3公司將碳信用額度直接集成到他們自己的基礎設施中。

金色財經此前報道,Thallo于去年11月完成250萬美元種子輪融資,Ripple等參投。(cryptonews)[2023/1/18 11:18:11]

第一級有效性驗證由平行鏈的驗證人實現,可以防止收集人作惡。

每隔一段時間,中繼鏈會通過隨機分組把驗證人池中的驗證人指定給不同的平行鏈,每個平行鏈會分配到多個驗證人。

平行鏈區塊上的收集人收集交易,產生區塊B以后,將區塊B、有效性證明和一些相關數據發送給當前平行鏈的驗證人。這些平行鏈的驗證人收到區塊和數據后,驗證區塊,如果區塊無效,忽略該塊;如果區塊有效,則將收到的內容分成多個部分,構造一棵默克爾樹,然后將每一份內容、默克爾證明以及區塊信息組合,進行簽名并分發給其他驗證人驗證。

第二級有效性驗證由釣魚人保證,可以防止平行鏈驗證人作惡以及平行鏈驗證人和收集人聯合作惡。

Polygon聯合創始人:印度需要一個單一的加密監管機構:4月22日消息,Polygon聯合創始人Sandeep Nailwal表示,印度需要一個單一的監管機構來監督所有與加密相關的事務。Nailwal稱:“財政部應該是這個工作組的負責人,應該向所有其他機構下達明確命令,禁止在本地處理任何加密案件。它應該只由中央加密工作組處理。”此外,Nailwal表示,盡管聯合創始人來自印度,但因為監管的不確定性使Polygon無法進入印度。(CoinDesk)[2022/4/22 14:41:15]

釣魚人一般都是平行鏈的全節點。它首先需要在中繼鏈上放置押金,然后持續從收集人節點收集區塊,并驗證有效性。如果區塊中包含了無效交易,釣魚人將提交報告。如果事實證明它的判斷是正確的,它將獲得豐厚的獎勵,但如果它判斷錯誤,它將失去自己的押金。

第三級有效性檢查是非平行鏈驗證人執行的。

這些驗證人選擇過程是非公開的,且驗證人數量由釣魚人給出的無效報告和收集人給出的不可用報告的數量確定。如果檢測到無效的平行鏈區塊,則為其簽名的驗證人將會受到懲罰,它的押金將會部分或全部扣除。

上面三個級別的有效性驗證中,釣魚人的有效性驗證比較好理解,因為它本身就是平行鏈的全節點,擁有平行鏈的所有狀態數據,只需將收到的區塊交易重新執行一遍,便可以得到新的狀態數據和狀態根來驗證區塊的有效性。

mStable在Polygon上啟動WMATIC/MTA/ETH激勵池:據官方消息,穩定幣聚合協議mStable宣布在Polygon上推出WMATIC/MTA/ETH激勵池,提供MTA、BAL和MATIC三重獎勵。此外,mStable最近在Polygon推出了針對mUSD儲蓄存款的流動性挖掘計劃,該計劃具有雙重MTA和MATIC獎勵,將運行3個月。[2021/7/27 1:17:01]

可是驗證人是中繼鏈的全節點,它如何做到能夠驗證平行鏈的區塊呢,難道它維護所有平行鏈的狀態數據?這顯然是不可能的。

下面就重點介紹一下

Polkadot驗證人到底是如何驗證平行鏈的區塊的

平行鏈接入Polkadot時,需要向中繼鏈注冊一段webassembly代碼,叫做STVF,驗證人將用STVF對平行鏈有效性進行驗證。

假設某個平行鏈PC上個已經確認的區塊是B

0,當前待出的區塊是B

1,上個區塊經由中繼鏈確認后,在中繼鏈上區塊R

0

B上記錄了B

0的相關信息,如該平行鏈執行完B

0以后的狀態根R

0。之后平行鏈收集人C打包了區塊B

1,得到該區塊的向其他平行鏈的跨鏈消息M,并生成有效性證明π以及一些元數據(PC.id,H(B

以太坊擴容解決方案Polygon和NFT市場UNXD宣布成立1000萬美元的基金:官方消息,以太坊擴容解決方案Polygon和數字奢侈品NFT市場UNXD宣布,成立1000萬美元的基金UNXD Culture Fund,資金由Polygon Studios提供,UNXD Culture Fund將與大型品牌和創作者合作,制作下一代NFT系列。Polygon Studios已承諾提供1億美元的基金,用于投資和擴展Polygon網絡上的Web3游戲和文化項目。

此前消息,Polygon推出新部門Polygon Studios,推進區塊鏈游戲和NFT工作。[2021/7/22 1:09:58]

0),H(R

0

B),R

in,R

out,...)。這里的R

in是區塊B

1執行之前的平行鏈的狀態根,R

out是執行以后的狀態根,H(B

0)表示平行鏈區塊B

0的哈希,H(R

0

B)表示中繼鏈區塊R

0

B的哈希。

生成有效性證明的過程實質就是執行區塊中的交易,將執行過程中讀寫的狀態數據記錄下來,并結合區塊執行前后的兩個狀態根生成證明。

如果使用*xz表示組成默克爾根x中的葉子z的SPV證明,那么區塊B有效性證明數據就可以如下表示:

π

B?=U{*R

inx|Breadsx}?∪?{*R

outx|Bwritesx}

舉個例子,假設平行鏈提交的區塊B中包含兩筆交易:

1.????A給B轉賬50

2.????C給D轉賬10

執行過程中需要讀寫A、B、C、D四個賬戶的狀態。假設區塊執行之前該平行鏈中這四個賬戶的余額都是100,那么有效性證明包含的便是下面兩張圖中標有顏色的這些數據,其中黃色部分是哈希值。

可以看到,不管平行鏈本身的狀態數據有多少,由于區塊的有效性證明數據都是由該區塊的交易涉及的狀態讀寫集的SPV組成,因此它的大小是有限的。

之后收集人C將區塊B

1、交易的有效性證明π、該平行鏈的出隊列中的消息集合M以及元數據一起發給其中一個驗證人,驗證人再將這些信息分發給這條平行鏈的其他驗證人。每個驗證人加載該平行鏈的STVF對收到的平行鏈區塊進行有效性驗證。

STVF的核心也是執行平行鏈區塊中的交易,過程中需要讀取證明數據中的讀集合,同時會產生寫集合,并最后生成的寫集合和證明數據中的內容進行比對;此外還可以通過收到的元數據中的信息進行一些其他的驗證,如根據H(R

0

B)查找到該區塊中保存的B

0的狀態根R

0,將R

0和收到的R

in進行比較。若這些信息都符合,則該區塊通過驗證。

最初收到平行鏈區塊的那個驗證人將生成一個CandidateReceipt,里面會記錄該平行鏈區塊B

1相關的信息,如平行鏈PC的id、收集人C的id、區塊B

1的哈希、區塊B

1執行前后的狀態根等,簽名并廣播給中繼鏈所有節點。當這個CandidateReceipt最終被中繼鏈出塊確認以后,平行鏈PC的區塊B也被最終確認了。

這種有效性驗證方法可以保證平行鏈單個區塊的狀態轉換是有效。如果平行鏈從第一個區塊開始,都由中繼鏈進行有效性驗證并確認區塊,那么可以保證平行鏈整條鏈的有效性。

可用性保障

可用性保障指的是區塊鏈系統在部分節點作惡的情況下,依然可以對業務系統提供可用服務保障。

在Polkadot中,假設這么一種場景:平行鏈收集人打包了區塊B并提交給了驗證人,驗證人收到了該區塊,通過了有效性驗證,并且區塊最終被中繼鏈確認了。

但是該收集人節點作惡,沒有把區塊廣播給平行鏈的其他節點,那么該平行鏈的其他節點無法得到該區塊,無法更新本地的狀態數據,該平行鏈也就無法出塊了。

為了防止這種情況發生,通過驗證以后,驗證人會將平行鏈區塊PC和有效性證明通過糾刪碼技術分成n個片段,并將這些片段廣播給全網的所有驗證人,每個驗證人獲得一個片段并會保存一段時間。

之后只需要得到n/3的片段,便可以恢復出原始數據。這種情況下,即使收集人節點作惡,平行鏈其他節點依然可以從中繼鏈的驗證人中獲得上個區塊的糾刪碼片段并恢復出區塊。

總結

通過上面對Polkadot有效性和可用性的介紹可以看到,中繼鏈提供了種種措施來保障平行鏈的安全:隨機分配的平行鏈驗證人進行區塊的驗證、釣魚人的監督、非平行鏈驗證人的再次驗證、中繼鏈對平行鏈區塊數據的備份……。

這種設計方式在保障整個區塊鏈系統橫向擴容分片的過程中不會降低某單一分片的安全性。對平行鏈來說,它享受了中繼鏈提供的安全性,僅需安心關注自己的區塊鏈業務即可,極大便利了區塊鏈業務的開發,降低了單一平行鏈對安全的額外投入。

參考文獻:

?????AvailabilityandValidity,

https://research.web3.foundation/en/latest/polkadot/Availability_and_Validity.html

???ThePathofaParachainBlock,

https://polkadot.network/the-path-of-a-parachain-block/

??J.Burdges,A.Cevallos,P.Czaban,R.Habermeier,S.Hosseini,F.Lama,H.K.Alper,X.Luo,F.Shirazi,A.Stewart,andG.Wood.Overviewofpolkadotanditsdesignconsiderations.arXivpreprintarXiv:2005.13456,2020.

Tags:POLDOTPolygonGONpolkawallet錢包polkadotted讀音Polygon Ecosystem IndexDragonBite

Filecoin
DEF:報告:熱門DeFi項目團隊都分布在哪些國家?_DEFLY價格

作者:StevenZheng 翻譯:李翰博 摘要: 許多DeFi項目實行漸進式的權力下放--一開始則由中心化的方式進行他們的工作。我們來看看這些實體組織的注冊地址和所在地地址.

1900/1/1 0:00:00
300:盤點區塊鏈達成“免信任性”的六種模型_杭州女子花300萬買比特幣yhhh

作者:?Vitalik 翻譯&校對:?閔敏?&?阿劍對于許多區塊鏈應用來說,免信任性?都是最重要的特征之一.

1900/1/1 0:00:00
LLE:您的中秋“大餅”已到賬,請注意查收!_Grantsville

月是故鄉明,餅是“大餅”靈。 對于鏈圈的小伙伴來說, 送TA再好吃的月餅, 不如贈TA“大餅”來的靈.

1900/1/1 0:00:00
DUN:回歸本質,比特幣為何在非洲實現了“理性”的繁榮?_加密貨幣和數字貨幣的區別是什么

FX168財經報社訊?據路透社報道,四個月前,尼日利亞的AbolajiOdunjo對自己在拉各斯繁華的街頭上的手機商鋪做出了根本改變:使用用比特幣向供應商付款.

1900/1/1 0:00:00
SHI:觀察|過山車行情之后,“SUSHI們”還需要經歷什么?_TUSHI

本文來源:金色財經,作者:TaylorWSUSHI的熱度有所褪落了,主要還是因為價格有所回落,短短3天,SUSHI的價格經歷了高峰和低谷的考驗.

1900/1/1 0:00:00
區塊鏈:鏈節點AMA丨Jay Hao:DeFi挖礦已出現階級固化,交易所入局帶來大眾級入口_區塊鏈的未來發展前景怎么樣

隨著AMM資金池模式興起,提供流動性成為了DeFi的一大新玩法。而當Compound推出流動性挖礦模式來分發其治理代幣COMP時,也許很多人都沒有預料到,強大的造富效應催生了一輪DeFi熱潮.

1900/1/1 0:00:00
ads