區塊鏈分佈式帳本的架構安全

當前大多數分佈式帳本技術 (以下簡稱DLT) 都使用區塊鏈作為其資料存儲架構。 不過,這不是唯一的解方。我們也可以使用有向無環圖 (DAG)來作為替代方案 。

什麼是有向無環圖

區塊鏈技術是使用”有向圖”。 區塊鏈中的每個區塊都是一個節點,每個區塊都使用雜湊值(hash value)連接到前一個區塊。 區塊鏈中使用的有向圖類型(一串連接起來的清單)是最簡單的有向圖類型,但不是 DLT 的唯一解方。

基於有向無環圖的分佈式帳本方案被設計為一種tree而不是linked list(一串連接起來的清單)。 區塊鏈通過將交易收集到區塊中並將它們附加到前一個區塊來加長整個鏈; 有向無環圖通過允許交易連接到tree中的任何枝葉節點來加長。

有向無環圖中的交易

在區塊鏈中,網路中的節點(電腦)負責驗證交易更新分佈式帳本。而這需要將交易收集到區塊中

在 IOTA 的Tangle 中,每筆交易都會由另外兩筆交易來驗證。使用weighted random walk來選擇要驗證的交易。

這個演算法從整本帳本的第一筆交易開始,然後一路往下驗證它的交易。移動到哪個交易的選擇是隨機性的,其中每個選項由驗證它的交易數量加權。重複這個過程,直到到達枝葉節點,整個演算法會選擇另外兩筆交易來驗證此筆交易並且這個過程會運作兩次。

然後該枝葉節點驗證這些交易的整個歷史。一旦交易完成驗證和運行小量的PoW,它就可以發送到網路的其餘節點,並立即被視為分佈式帳本的(未被確認的)部分。

由於分佈式帳本在不斷變化,任何人都不可能知道它的全部確切狀態。確定交易是否正式成為分佈式帳本的一部分是概率性的。這個概率是通過多次執行前面描述的weighted random walk並確定結果枝葉節點是否(直接或間接)驗證相關的交易來計算的。如果一個交易被比例較多的多數枝葉節點驗證,它可能是可信的。

有向無環圖的效益與缺點

有向無環圖是可以設計來成為區塊鏈的另一個替代方案,並幫助解決區塊鏈技術面臨的一些問題。 使用有向無環圖的DLT 的一些主要效益是:

真正的去中心化

  • 區塊鏈靠的是網路中的節點來驗證交易,某種程度來說區塊鏈的共識是取決於稀缺資源之上,不論PoW或PoS都一樣。其實都有點中心化的味道。越有錢的人越能控制整個區塊鏈。
  • 有向無環圖讓使用者在建立交易時就執行交易驗證。新的交易是被前一個交易紀錄所驗證的,像IOTA的tangle。這樣可以傾向去中心化。

Overhead

  • 區塊鏈中的 PoW 運算是競爭的,因為每個人都在競相尋找答案。
  • 有向無環圖中的 PoW 運算是累積的.每筆交易都有一個有向無環圖,偽造 有向無環圖意味著偽造所有驗證交易。

可擴充性

  • 區塊鏈使用linked list,這意味著交易資料的成長是線性的,意味量能是有限的。
  • 有向無環圖是tree model, 所以交易資料的成長是指數性,理論上量能是無限的。

速度

  • 區塊鏈將交易作為一個區塊加到帳本中,這會產生交易延遲
  • DAG 會立即將交易加到帳本中並馬上執行交易驗證,而且每筆交易紀錄到帳本是獨立的。 隨著交易量的增加,延遲會減少

而有向無環圖也有其缺點如下:

雙重花費

有向無環圖也無法解決區塊鏈原始的雙重花費問題。首先攻擊者會產生兩筆有衝突的交易,攻擊者先提交第一筆交易進到有向無環圖帳本然後取得核可,然後等待這筆交易完成。接下來攻擊者會提交第二筆交易,然後同時產生大量的交易紀錄來支援第二筆假交易。根據區塊鏈的最長鏈規則,假交易紀錄就成了正式的版本。

網路同步

  • 區塊鏈是在每個區塊上達成共識。 一筆交易可以在後續的幾個區塊產生後被信任。
  • 有向無環圖交易在是在每筆交易上進行驗證。 交易共識是基於有向無環圖如何成長的概率。因為是概率性的,所以有些新的交易未經驗證就發佈到網路之中。而這些新的交易的信任度必須再被後來更新的交易來增加權重。而使用weighted random walk的方式來驗證交易則有遺失有效交易的風險,只有當交易的權重達到不太可能被帳本“放棄”的程度時,交易才會被信任。

--

--

運用"雲端服務"加速企業的數位轉型願景
運用"雲端服務"加速企業的數位轉型願景

Written by 運用"雲端服務"加速企業的數位轉型願景

我們協助您駕馭名為"雲端運算"的怪獸,馴服它為您所用。諮詢請來信jason.kao@suros.com.tw. https://facebook.com/jason.kao.for.cloud

No responses yet