一個國度會有涉及各種事物的法律法規、規章制度以及辦事流程。在波卡網絡上,GRANDPA & BABE 是國度法律,XCMP 是國度商務交易程序,全民公投是這個國度的公共事務辦理規則。
上周我們重點講解了全民公投,這周來聊聊 GRANDPA & BABE,下周再詳細講解 XCMP。
一、網絡運行安全共識 GRANDPA & BABE
為什麼用混合共識,好處是什麼?
區塊鏈的網絡運行安全就是要保證網絡不掉線,能夠持續出塊向前且減少出現硬分叉的情況。即使出現分岔,數據回滾時可以有跡可循問題出在哪裡,這一點就需要在生成鏈的過程中有實時的標記反饋,可以反饋塊生產情況或是階段性的鏈有效性。
波卡的中繼鏈作為一個聯結各鏈的節點池,網絡運行的穩定性和平滑度就顯得尤為重要。為使中繼鏈的工作穩步向前發展,波卡採用的是混合共識機制,同時使用 GRANDPA 和 BABE。
混合共識保證了波卡網絡總能生成新塊且不易分岔或回滾,即網絡速度快,不會有延緩交易的風險,也不會存在卡住和回滾被攻擊的情況。在 GRANDPA 和 BABE 的法規之下,中繼鏈只需按照法規產出工作內容就可維護中繼鏈持續向前運行的穩定。
兩者結合保證了中繼鏈能持續不斷地產出合格的工作內容、合格的區塊以及合格的區塊串成的鏈。
二、BABE 和 GRANDPA 是如何作用的?1、BABE
作用:塊生成機制,以及決定新塊由哪個驗證者生成。
作用在於確認每一個塊的生成以推動網絡不斷出塊,鏈向前發展,簡單說就是保證網絡持續向前運行不卡頓。
補充說明:Slot 是一個時間單位,6秒,我們暫時稱 Slot 為「時段」。每個時段都會分配驗證者生成塊,有時一個時段有多個驗證者來生成塊,有時可能出現沒有驗證者的情況。
當一個時段有多個驗證者來生成塊時,每個驗證者都會生產一個塊然後廣播到網絡中,然後就像一場比賽一樣,塊最先到達網絡大部分區域的驗證者獲勝。當一個時段沒有驗證者生成塊時,波卡設置了 round-robin 循環模式來生成輔助塊。
所以一個時段會產生常規驗證者生成的主要塊和 round-robin 模式下生成的輔助塊。只是存在主要塊的時候,這些輔助塊會被忽略,不會被納入鏈上。 2、GRANDPA
作用:鏈生成機制。
作用在於階段性的快速確認這段時間內這一串塊(一段鏈)的有效性,可以保證了網絡不易回滾不易篡改,也保證了網絡處理速度;配合BABE也避免分岔。
GRANDPA 是在鏈生成上達成認同而不是在區塊上。只要在有2/3以上的驗證者證實鏈上包含某個特定的區塊,所有在這個區塊之前的區塊都一次性被確定了最終狀態。因為認定的是最重要且有代表性的區塊,這個區塊是對的,那麼通往這個區塊的所有區塊就都是對的。
所以即使在一個長時期的網絡分割後或者其他網絡故障後,也顯著加速了最終態的確定,確保了網絡的快速運行。
總的來說,將確定區塊生成和確定鏈階段性終態分開可以保證網絡的快速、持續、不易回滾和有跡可循。
BABE 和 GRANDPA 結合在一起,分岔選擇就很清晰明了。
如下圖,當出現分岔的時候,BABE 機制也會使分岔的鏈也繼續向前工作,BABE 只管不停出塊,不管鏈對還是不對。直到 GRANDPA 嵌入階段性的終態確認,就能確定誰是正確的鏈。
紅色:若分岔發生在 GRANDPA 終態確認之前,那麼沒有 GRANDPA 標識的鏈被刪除。
藍色:若分岔發生在 GRANDPA 終態確認之後,那麼有 BABE 機制會產生主塊和輔助塊,包含主塊最多的鏈被視為正確的鏈,其餘的刪除。
三、總結GRANDPA & BABE 混合共識保證了波卡網絡總能生成新塊且不分岔不回滾,也就是網絡速度快,不會延緩交易的風險,也不會存在卡住和回滾被攻擊的情況。
聲明:本文由入駐金色財經的作者撰寫,觀點僅代表作者本人,絕不代表金色財經贊同其觀點或證實其描述。
提示:投資有風險,入市須謹慎。本資訊不作為投資理財建議。