加入PolkaWorld社區,共建Web3.0!
這篇文章是由Polkadot聯合創始人Robert發布的關于Polkadot分片和經濟安全的技術文章,原文篇幅較長,PolkaWorld將分四篇翻譯和發布!本篇是該文章的第一部分!請查閱!
這篇文章是關于支撐Polkadot的技術。Polkadot是具有異構分片的分片區塊鏈。在這種情況下,分片意味著將工作拆分到多個子區塊鏈上,稱為平行鏈。異構意味著每個區塊鏈都有自己的狀態轉換功能,該功能專為特定用例而構建。不同類型的交易會有不同的歸屬地,這使得特定場景的鏈可以最有效地為其用戶服務。Polkadot為所有平行鏈提供安全和消息傳遞功能。
這篇文章主要是為對區塊鏈共識有一定了解的技術讀者寫的。我希望它對除了開發者以外的人有用,并為大家提供對基礎層區塊鏈面臨的問題和挑戰以及Polkadot如何解決這些問題的見解。我不會詳細介紹我們的解決方案的每一個細微差別,但我會深入描述我們考慮的事物類型以及如何保證我們的目標實現。
Polkadot之前的鏈
對區塊鏈的簡化理解只涉及一條單鏈,從這條鏈的創世區塊延伸到其盡頭。對于許多人來說,這是唯一重要的鏈概念,它代表了所有已經發生并已被網絡同意的狀態轉換。任何區塊鏈共識系統的最終目標都是為觀察者提供這一事實來源。然而,這條單鏈,我們可以稱為最終鏈或規范鏈,只是可能存在的許多可能的競爭鏈中最后剩下的幸存者。區塊鏈共識算法的作用是從許多可能的鏈開始,最終只確定其中一個。
數據:當前Polygon生態總市值為2184.46億美元:金色財經消息,據CoinGecko最新數據顯示,當前Polygon生態總市值為2184.46億美元(截至發稿時為218,446,616,665美元),24小時交易額為79,235,722,994美元。[2022/6/20 4:39:29]
區塊生產者可以產生下一個區塊,但一次可能有多個獲勝者。在工作量證明中,礦工通過找到一種方法來生成一個新塊,當該塊hash到一個低于某個困難目標的唯一隨機數,從而獲得在給定塊之上的生產塊的權利。在充分競爭的環境中,礦工可能需要大量嘗試才能找到滿足此條件的區塊。作為參考,在撰寫本文時,比特幣網絡的累積哈希率為每秒162Exahashes,這意味著比特幣礦工總每秒要嘗試162萬億次來獲得貢獻下一個區塊的權利,難度目標設定為平均每10分鐘只有一個哈希值低于目標值。請注意,多個礦工可以大致同時找到一個解決方案,該解決方案在區塊鏈中引入了一個小分叉。未來的礦工將不得不選擇在哪些區塊上進行開采,這可能會導致分叉變長。規則是遵循最長的鏈,對于從過去的區塊開始的攻擊者來說,追趕并壓倒更長的鏈變得越來越困難。因此,在最長鏈中足夠深的塊可以被認為是概率上最終的塊。
Ouroboros系列權益證明協議使用稱為可驗證隨機函數(VRF)的加密技術,通過將時間劃分為離散的插槽并將每個驗證人從已注冊和質押的驗證人集合中分配出來來模擬工作證明每個slot產生一個可驗證的隨機值的機會,如果低于閾值,則作為允許驗證人創建新塊的憑證。與工作量證明一樣,多個驗證人可能會產生一個低于閾值的VRF值并同時創建塊,從而導致分叉。驗證人不會激勵故意引入分叉,他們會受到slash懲罰來扣除他們的鏈上的質押。這些協議還提供了最長鏈分叉選擇規則下的概率確定性。
HydraDX贏得Polkadot網絡第9次平行鏈插槽拍賣:2月11日消息 ,北京時間2022年2月10日23:35,Polkadot網絡第9次平行鏈插槽Auction結束,HydraDX以鎖定2462543 DOT贏得了Auction。
由于Polkadot的第二輪插槽Auction是每兩周進行一次,所以接下來的第10次Auction將在北京時間2022年2月18日凌晨3點開啟。目前在所有活躍的Crowdloan活動中,Interlay收集的DOT最多,排在后面的還有Equilibrium、Nodle、Litentry、Phala和Darwinia。
第二批Auction的所有6個獲勝者都將在2022年3月11日接入Polkadot中繼鏈并上線主網。[2022/2/11 9:44:52]
與工作量證明中的礦工不同,Ouroboros式網絡中的驗證人只需要運行一次計算就有機會創建一個塊,而不像礦工必須做的大量哈希值。這允許驗證人將大部分時間花在構建帶有交易的區塊上,并隨后允許區塊鏈包含更有價值的計算。
Polkadot的中繼鏈使用一種稱為BABE的協議,它是OuroborosPraos的演變。BABE對Praos的具體改進是BABE避免了依賴中心化NTP服務器讓驗證人知道當前時間。
Deri Protocol發現Future Main BSC和Future Main Polygon池中存在bug,目前已將池凍結:1月5日消息,去中心化衍生品協議Deri Protocol公告表示,注意到Future Main BSC和Future Main Polygon池中存在bug,作為保護用戶資金的預防措施,這兩個池已被凍結。Deri Protocol正在修復該bug。[2022/1/5 8:26:35]
雖然概率確定性很好,但等待一個塊在最長鏈中達到一定深度是一種效率低下的機制,因為它旨在適應預期的最壞情況,即網絡處于一定程度的網絡壓力和攻擊之下。可能大多數網絡已經就哪些區塊是規范鏈的一部分達成了一致。事實上,在幾乎所有情況下,網絡都能夠在一個區塊達到最長鏈的最小深度之前就已經達成共識。為此,我們引入了確定性小工具和絕對確定性的概念。最終性小工具是在概率性最終區塊鏈之上運行的二級共識協議,它證明了網絡將認為哪些區塊是最終區塊的更快協議。這些共識協議引入了進一步的經濟安全屬性:在不slash懲罰至少1/3+驗證人集合總權益的情況下,確定性小工具永遠不會最終確定2個競爭塊。
Polkadot的中繼鏈使用稱為GRANDPA的確定性小工具。它可以在任何特定長度的子鏈上實現近乎瞬時的最終確定性,并且通過讓驗證人反復對他們認為位于最長鏈頭部的塊進行反復投票來粗略地發揮作用。GRANDPA目前在Polkadot和Kusama網絡上運行,在撰寫本文時擁有900個驗證人的Kusama上,它可以在3秒內實現新區塊的最終確定性。
Entropyfi上線Polygon Mumbai測試網:去中心化預測市場Entropyfi宣布在Polygon Mumbai測試網上線,并即將上線Polygon主網,通過Polygon,Entropyfi用戶可以以更低的交易成本與平臺進行交互。[2021/8/27 22:41:28]
BABE和GRANDPA的結合允許Polkadot僅使用來自單個驗證人的輸入來樂觀地增長鏈,這很快,并通過獲得絕大多數驗證人的簽名在后臺完成。這種屬性的組合意味著在良好的網絡條件下,Polkadot實現了高吞吐量和低延遲,而在糟糕的網絡條件下,中繼鏈實現了高吞吐量和高延遲,因為GRANDPA將轉向跟蹤BABE的最終性。
分片:通過子集選擇進行擴展
讓我們回到分片。分片的目標是通過以交易的形式在許多稱為分片的鏈上拆分工作來提高吞吐量。分片由頂級區塊鏈引用和保護。在Polkadot中,頂級區塊鏈稱為中繼鏈,分片是平行鏈。中繼鏈上出現的大多數數據都是包含對新平行鏈區塊的引用的交易,這使得處理中繼鏈本身的任何分叉變得便宜。請注意,我在這里區分了中繼鏈的任意分叉和最終的中繼鏈。我們在這里的大部分工作是確保中繼鏈的最終部分僅包含對有效平行鏈塊的引用。
基于Polygon的DEX QuickSwap流動性已超1億美元:3月4日消息,自2021年初以來,基于Polygon的DEX QuickSwap已經吸引了超過1.05億美元的流動性,過去兩周鎖倉量大幅增長了7500萬美元。QuickSwap在過去24小時內的交易量達到3850萬美元,位居Layer 2去中心化交易所第一位,Loopring路印以840萬美元的日交易量排名第二,其次是ZKSwap(250萬美元)。(Cointelegraph)[2021/3/4 18:14:31]
此圖或類似圖在互聯網上廣泛分布。它們展示了驗證人如何被分成組并分配給平行鏈,并從收集人那里獲得平行鏈區塊提案。在這篇文章中,我對許多更細微的概念進行了視覺解釋。
如果每個驗證人只需要檢查一些提交的平行鏈塊,而不是全部,分片就只是對可擴展性的改進。如果有10條平行鏈,并且每個驗證人必須檢查所有10條鏈中的所有區塊,我們不妨將所有交易放在一個區塊鏈上,然后收工。訣竅是找到一種方法,讓每個驗證人在保持經濟安全的同時盡可能少地做驗證工作:提倡不良平行鏈區塊的驗證人在經濟上不會受到激勵。更具體地說,在他們所有質押被懲罰之前,將一個壞的平行鏈區塊包含在最終的中繼鏈中,一組對抗性的驗證人應該不可能串通一氣。驗證人,實際上是驗證人的一小部分,可以串通以獲得中繼鏈的未最終分叉所引用的不良平行鏈塊,但我們保證這些分叉在最終確定之前被忽略,并且違規者被懲罰。
當引用它們的中繼鏈塊最終確定時,平行鏈塊被最終確定。
當引用它們的中繼鏈塊最終確定時,平行鏈塊被最終確定
讓我們對我們要防御的對手做出一些具體的假設:
攻擊者最多可以控制所有驗證人的1/3,并且可以控制所有這些驗證人的行為完全符合預期。
攻擊者可以查看誠實驗證人人與其控制的驗證人之間的所有網絡消息
攻擊者可以隨時拒絕最多X%的驗證人,阻止他們發送或接收消息。
在攻擊者開始拒絕任何驗證人之前需要一個固定的延遲
在這篇文章中,我不會為該協議設置正式的安全證明,但這些約束應該可以讓我們深入了解我們打算防御的攻擊類型。
事實上,我們平行鏈共識的基本單元實際上并不是平行鏈,而是我們稱之為可用性內核或簡稱內核的東西。這些類似于CPU內核:它們并行運行,并在離散的slot中安排工作。每個平行鏈都有自己的專用內核,這意味著它總是被調度到一個特定的內核上。但是,我們也可以將多個鏈多路復用到一個內核上。唯一的區別是調度算法。
內核服務是中繼鏈吞吐量的有效描述。內核直接對應于驗證人需要做的工作量。每個內核最多可以在每個中繼鏈塊處理一個平行鏈塊,在峰值。
在任何分片區塊鏈系統中,只有一些驗證人檢查每個平行鏈塊,數據可用性是確保檢查平行鏈塊所需的數據可以恢復以進行欺詐檢測的關鍵組成部分。可用性內核由中繼鏈管理,并跟蹤哪些平行鏈塊正在等待數據可用性。可用性內核的主要目的是作為調度原語,并在數據可用性比平時慢時提供背壓。
可用性內核的邏輯如下所示。當內核準備好接受新的平行鏈塊時,內核是空的,此時它們被占用。然后,數據要么變得可用,要么可用性過程超時。那時,內核再次變空。
將平行鏈共識劃分為5個不同的協議是有幫助的,這些協議在中繼鏈共識中交織在一起。
收集
支持
可用性
審批檢查
爭議Disputes
Collation收集是創建平行鏈塊的過程。收集人構建一個平行鏈塊并將其發送給驗證人。
Backing支持是由一小組中繼鏈驗證人最初檢查平行鏈塊并在中繼鏈上注冊的過程。支持的主要副產品是,如果后來的協議失敗,它要求驗證人將自己置于危險之中。
Availability可用性是支持驗證人分發檢查平行鏈塊所需的數據片段并確保以后可以檢查的過程。
ApprovalChecking批準檢查是隨機驗證人恢復數據并執行平行鏈區塊的過程。他們根據是否認為平行鏈區塊有效來批準或發起爭議。
Disputes爭議是解決驗證人對平行鏈區塊的沖突意見、忽略不良平行鏈區塊并懲罰違規者的過程。爭議僅作為故障保險存在,預計不會經常觸發。
請注意,驗證人可能同時參與這些協議中的每一個,并且通常是它們的多個實例化。例如,驗證人可能在參與支持較新區塊和對更舊區塊爭議的同時,參與對管道更下游的平行鏈區塊的批準投票。
這種內部并行性也反映了實現的架構:這些協議中的每一個都被實現為一個獨立的子系統,并且所有子系統都并行運行。每個節點總是在做一些事情。
原文鏈接:https://polkadot.network/blog/polkadot-v1-0-sharding-and-economic-security/
翻譯:PolkaWorld社區
1月18日,據官方消息,風投公司AnimocaBrands宣布其在最新一輪的融資中,以50億美元的估值籌集了3.58億美元.
1900/1/1 0:00:00有關中央企業,有關會計師事務所,有關銀行業金融機構:為貫徹落實《國務院辦公廳關于進一步規范財務審計秩序促進注冊會計師行業健康發展的意見》要求,進一步規范銀行函證業務,提升審計質量和效率.
1900/1/1 0:00:00背景 繼2020年波卡主網上線后,2021年對于波卡來說也是不平凡的一年。11月11日,波卡平行鏈首次Auction開啟;12月18日,波卡首批5個平行鏈全部接入波卡中繼鏈,以平行鏈的方式開始出.
1900/1/1 0:00:00最近很多人批評web3的點在于,它實際上并不是去中心化的,因為這里混合了一些中心化服務,例如OpenSea等NFT市場,以及Alchemy等數據可用性服務.
1900/1/1 0:00:00Chainalysis一份新的報告顯示,2021年加密貨幣洗錢金額為86億美元。這標志著比2020年增長了25%,但仍遠低于2019年的高水平。2019年,加密貨幣洗錢金額為109億美元.
1900/1/1 0:00:00本文系Bankless聯合創始人DavidHoffman采訪以太坊和Crypto匿名研究者Polynya的對話實錄.
1900/1/1 0:00:00