原文:https://github.com/paritytech/polkadot/blob/master/roadmap/parachains.md
翻譯:PolkaWorld
本文是平行鏈底層核心技術的路線圖——內容關于需要哪些協議、API和代碼路徑才能完全展示一個自給自足和安全的平行鏈。本文不會涵蓋平行鏈工具包需要公開哪些API才能使用平行鏈功能?——而是僅僅介紹這些功能的實現方式,以及它們提供給驗證功能的底層API。
類別
我們將使用以下類別來描述功能:
Runtime:中繼鏈的runtime代碼,用于指定共識關鍵狀態,并更新所有全節點必須維護或執行的狀態。
網絡:用于節點相互交流并在網絡中傳輸信息的協議。
節點:部分或所有鏈下節點必須維護或執行的狀態或更新。通常與網絡組件交互,并引用runtime狀態。
子項目和功能:
本節包含了不同的子項目和構成這些子項目的功能。
基礎架構/API
對等集管理
類別:網絡
分配給平行鏈的驗證者需要一種發現并連接到整理者的方法,以便獲得新鮮的平行鏈塊進行驗證。
整理者需要發現并連接到驗證者,以便提交平行鏈區塊。
漁民需要與驗證者和核對者交談,以獲取可用數據并分發報告。
有些連接是長期存在的,有些僅用于單個請求。
波卡DeFi平臺Acala已獲得Coinbase Ventures投資:據官方博客消息,波卡DeFi平臺Acala已獲得Coinbase Ventures投資。[2021/4/2 19:38:38]
對等集管理
類別:網絡
分配給平行鏈的驗證人需要一種發現并連接到收集人的方法,以便獲得新鮮的平行鏈區塊進行驗證。
收集人需要發現并連接到驗證人,以便提交平行鏈區塊。
釣魚人需要和驗證人和收集人交流,來獲取可用數據并分發報告。
有些連接是長期存在的,有些僅用于單個請求。
自定義libp2p子協議
波卡平行鏈涉及許多不同的網絡協議。理想情況下,我們可以將每個任務作為單獨的未來任務產生,并根據需要來通過通道與其他協議或節點代碼進行通信。這需要在Substrate和libp2p中進行更改。
分配
拍賣
類別:Runtime
平行鏈的拍賣和注冊。此功能已經實現,并且遵循ParachainAllocation—ResearchatW3F文檔。
平行鏈拍賣
類別:Runtime
平行線程是即付即用的平行鏈。這包括一個鏈上機制,用于解決收集人的拍賣并確保他們生成一個區塊。
平行線程的節點側部分的作用,是讓收集人實際投放出價,并被配置為在何種條件下投放出價。
波卡隱私基礎設施Phala Network公布項目進展:首次整合Phala Ink:波卡隱私基礎設施Phala Network公布項目進展,主要包括:
1. 首次整合Phala Ink,已開始將智能合約語言引入pRuntime。
2. 宣布與比特幣黃金(BTG)合作開發輕量級跨鏈橋。
3. 重構Secret Wallet以支持跨鏈使用。[2021/3/29 19:25:55]
驗證人分配
類別:Runtime
將驗證人分配給平行鏈。驗證人僅在短時間內分配給平行鏈。可調整的參數包括分配給每個平行鏈的時間長度和網絡知道驗證人分配的提前時間。
協議
見證循環
類別:網絡
一種黑箱網絡組件,用于在任意給定鏈的驗證人之間循環發送證明消息,以創建可在其上包含區塊的quorum。
可用性糾刪碼
類別:節點/網絡
對于每個潛在的、被視為平行鏈的區塊,對區塊的PoV和傳出消息執行擦除編碼。為中繼鏈區塊調用中繼鏈上的區塊數量,此平行鏈區塊被考慮包含在?n?中。擦除碼分為n個部分,其中任何?f+1?都可以恢復。第?i?個驗證人存儲第?i?個編碼并將其提供給任何詢問者。
PoV區塊獲取
類別:網絡
一種黑箱網絡組件,用于平行鏈上的驗證人或釣魚人,以獲取證明中哈希所引用的PoV區塊,以進行驗證。當獲取“當前”PoV區塊時,這應該很快。當獲取“舊的”PoV區塊時,應該有可能并且要借助于從可用性擦除編碼中恢復。
波卡生態概念板塊今日平均漲幅為2.40%:金色財經行情顯示,波卡生態概念板塊今日平均漲幅為2.40%。26個幣種中15個上漲,11個下跌,其中領漲幣種為:OAX(+19.00%)、MATH(+18.19%)、EDG(+16.56%)。領跌幣種為:POLY(-10.02%)、XOR(-8.09%)、CHI(-7.57%)。[2021/2/19 17:31:12]
平行線程拍賣投票
類別:節點/網絡
配置收集人在平行線程拍賣中投票的方式和時間。
收集循環
類別:節點/網絡
收集人節點的主要事件循環:
新的中繼鏈區塊B
同步新的平行鏈頭Pw.r.t.B
建立P的新子區塊
提交給驗證人
跨鏈消息傳遞
https://hackmd.io/ILoQltEISP697oMYe4HbrA?viewhttps://github.com/paritytech/polkadot/issues/597
平行鏈路線圖中最大的子項目——平行鏈之間如何發送消息。這涉及傳入消息的狀態機排序、用于獲取這些消息的協議以及用于持久保存消息的節點邏輯。
它的設計基于平行鏈之間由發送者和接收者組成的單向通道概念。在每個中繼鏈區塊,每條平行鏈有機會在其控制的每個通道上發送消息,它控制了發送部分的一半。它還將嘗試按順序在它控制的每個接收通道的一半上處理消息:在塊高“b”發送的消息,必須先于在塊高“b+1”發送的消息處理。對于在相同塊高發送的不同通道上的消息,將按照一些明確定義的順序進行處理。
Plasm Network已在波卡Rococo V1上部署首個平行鏈:1月13日,波卡Polkadot官方宣布,波卡二層擴容協議Plasm Network已在Rococo V1測試網上部署首個平行鏈。此前消息,波卡測試網Rococo V1已于1月11日開放平行鏈測試資格注冊。[2021/1/13 16:02:25]
這意味著,對于最近處理的消息在其接收的所有通道上的發送高度,接收段的最大高度差為1。接收段的最小已處理發送高度叫作“水印(watermark)”。在水印之前或水印高度的所有通道上發送到此段的所有消息均已處理。
終結CandidateReceipt格式
類別:Runtime/節點
CandidateReceipt?是對提交給runtime的parablock頭的包裝器。它包含對數據的加密承諾,這對于驗證或解釋parablock至關重要,包括見證數據和傳出消息數據的哈希。
CandidateReceipt?格式應根據上面提到的XCMP來終結——最重要的是,它應更改為保留以加密方式提交到每個開放通道狀態的?bitfield?和?message_root?域。
終結PovBlock格式
類別:Runtime/節點
PovBlock?或?Proof-of-Validity?區塊包含驗證parablock所需的所有數據。它將需要包含傳入的消息隊列以及潛在的傳出消息隊列。
CST更新程序
參與構建波卡Rococo V1平行鏈的首批項目目前為 Laminar、Acala等五個項目:據官方消息,截至目前,參與構建波卡測試網Rococo V1平行鏈的首批項目包括Laminar Protocol、Acala Network、Darwinia、Plasm以及Robonomics 。此前消息,波卡測試網Rococo V1已于1月11日開放平行鏈測試資格注冊。[2021/1/13 16:01:51]
類別:Runtime
基于中繼鏈區塊中提供的?CandidateReceipt?的通道狀態表的存儲定義和更新邏輯。
CST準入證明的生成和檢查
類別:節點
中繼鏈的全節點在CST中生成項目證明的工具,輕客戶端或被裁剪的節點檢查這些證明的工具。
MQC存儲和分發協議
類別:節點
每個通道的狀態都由消息隊列鏈描述,該隊列是一個哈希鏈,其中的鏈接由“(M,b,H)”定義:最近發送的消息、先前發送的消息所在的塊高度、以及先前鏈接的哈希值。
sending?平行鏈的全節點有責任維護MQC的所有鏈接,直到并包括?b?小于?receiving?平行鏈的水印的鏈接。
該para的完整節點將知道其通道的所有MQC頭,因為它們是通過執行該塊產生的。這將需要與Cumulus團隊在API上進行協作。
我們將需要一個網絡,平行鏈的收集人可以在該網絡中發現并獲取從所有通道傳入的MQC的相關部分。
通道注冊者和經濟學
類別:Runtime
平行鏈通過存放一筆存款來打開或關閉通道的runtime邏輯。平行線程可以打開的通道數量將受到限制。
paras用于runtime邏輯通過放下存款來打開和關閉通道。parathread可以打開的通道數量將受到限制。待關閉的通道應保持打開狀態,直到接收者的水印達到關閉所要求的區塊高度為止。
釣魚/Slashing
有效性/可用性報告處理程序
類別:Runtime
在Polkadot中,惡意的平行鏈組可以強制包含無效或不可用的平行鏈區塊。釣魚人的工作是監測這些區塊并將其報告給runtime。此項與報告處理程序有關。
關于可用性/有效性的W3F研究文章提供了爭議解決過程的整體視角:可用性和有效性-W3F研究。
未解決且需要采取的主要行為之一,是在爭端解決流程斷定出現錯誤時發生的“回滾”。當我們將平行鏈區塊標記為無效或不可用時,我們需要將所有平行鏈回滾到此狀態之前的某個點。我們還需要回滾中繼鏈的狀態,因為可能已經有一條消息從平行鏈發送到中繼鏈,現在需要回滾。最簡單的方法是通過延遲向上消息來回避該問題,但這將極大地影響平行鏈參與插槽拍賣、理事會投票等的用戶體驗。假設我們無法回避這一點,我們將必須找到一種方法來回滾中繼鏈的指定狀態。
雙重投票Slash處理程序
類別:Runtime
在見證過程中,驗證人只能為給定的中繼鏈區塊提交一個“候選”消息。如果在平行鏈區塊上發布“候選”消息,則不能在該平行鏈區塊上發布“有效”或“無效”投票,因為“候選”消息是隱性有效性投票。否則,在給定的平行鏈區塊上同時進行“有效”和“無效”投票是非法的。
Runtime處理程序需要兩個相互沖突的投票作為參數,并需要對違反者進行slash。
有效性/可用性釣魚
類別:節點
驗證者也可以根據VRF可用性和有效性-W3F研究自行選擇,并采用此代碼路徑。驗證人和釣魚人將選擇平行鏈區塊進行重新驗證。在這些步驟中:
嘗試恢復PoV區塊,并退回到糾刪碼。如果不可用,則發布報告。
嘗試驗證PoV區塊。如果無效,則發布報告。
雙重投票釣魚
類別:節點
在見證過程中觀察到雙重投票的節點應向鏈提交報告以觸發Slash。
階段
該路線圖分為多個階段,相對于上一個階段來說,每個階段代表另一組的交付成果或黑箱組件上的迭代。
階段0:MVP
最初的階段——這是無slashing或跨鏈消息傳遞的平行鏈。它根本上就是注冊和驗證正常運行的PoC。
基礎架構/API:
自定義libp2p子協議
對等集管理
任務:
拍賣
平行線程拍賣
驗證人分配
協議:
證明流通
可用性糾刪碼
PoV區塊獲取
收集循環
跨鏈消息傳遞:
終結?CandidateReceipt?格式
階段1:釣魚和Slashing
此階段標志著平行鏈安全性的進步。一旦完成,平行鏈就是成熟的加密經濟學上安全的匯總基元。此階段還包括有關XCMP的實現工作,但還沒有完全啟用。
協議
可用性糾刪碼
PoV區塊獲取
釣魚/Slashing
有效性/可用性報告處理程序
雙重投票Slash處理程序
有效性/可用性釣魚
雙重投票釣魚
跨鏈消息傳遞:
終結?PoVBlock?格式。
階段2:消息傳遞
此階段標志著跨鏈消息傳遞的交付。
包括XCMP部分剩下的幾乎所有內容。
停擺超過1個月后,Yam項目與社區一起完成了復活計劃。9月19日,「紅薯」又帶著新農田回來了。只是,僅僅1個月里,市場已經變了天.
1900/1/1 0:00:00今日加密貨幣市場再次出現大面積調整。coingecko數據顯示,DeFi板塊領跌,YFI、UNI、LEND等較大市值的DeFi代幣均出現大幅下跌,24小時跌幅在20%左右;受主流幣也出現不同程度.
1900/1/1 0:00:00比特幣是數字資產世界發展的大爆炸起源。比特幣是作為一種電子現金設計出來的,但是它并沒有同任何法幣或實體資產相掛鉤,完全是一個技術產品。支持比特幣流通的底層的網絡是全球性的.
1900/1/1 0:00:00北京時間9月11日晚上消息,SushiSwap的匿名創始人ChefNomi發推文稱對此前的套現行為感到后悔,此外他已向SushiSwap的財政部基金返還了約38000ETH,截至發稿時.
1900/1/1 0:00:009月16日19:30,巴比特《8問》大事件邀請了Filecoin太空競賽的佼佼者們來到直播間,回顧filecoin第一輪太空競賽、解讀第二輪太空競賽.
1900/1/1 0:00:00作者:MichaeldelCastillo譯者:核子可樂@區塊鏈大本營對于以紙幣印刷為核心業務的機構來說,惡性通貨膨脹無疑是生意最好的時候,而數字交易則是最大的敵人.
1900/1/1 0:00:00