有向無環圖(DAG)是一種不含循環路徑的有向圖結構,在區塊鏈技術領域中作為傳統鏈式架構的替代方案而備受關注。與傳統區塊鏈依時間順序線性排列不同,DAG可讓多個節點同時在網路中新增交易,形成多向擴展的網路。每個節點可指向多個前置節點。這種架構讓交易處理不再受限於單一區塊容量,大幅提升系統吞吐量,並降低交易確認時間與手續費,特別適合高頻微交易的場域。
有向無環圖原為數學領域圖論中的特殊結構,其特色是所有邊具方向且不存在任何從某頂點出發最終回到自身的路徑(即無環)。此概念廣泛應用於電腦科學,包括表達依賴關係與任務排程等問題。
在區塊鏈領域,DAG技術約於2015年開始應用,當時比特幣、以太坊等傳統區塊鏈面臨可擴展性瓶頸。IOTA於2016年推出的Tangle(糾結)是最早將DAG引入分散式帳本的項目之一,隨後Byteball(現稱Obyte)、Nano等亦陸續採用DAG架構設計各自的分散式帳本系統。
DAG技術在區塊鏈發展的主因在於解決傳統區塊鏈吞吐量限制、交易延遲及高手續費等問題,同時維持去中心化與安全性。隨著物聯網與微支付需求日增,由於DAG架構能高效處理微交易,因此市場對其關注度不斷提升。
在區塊鏈系統中,有向無環圖的運作邏輯與傳統區塊鏈截然不同:
於DAG架構下,每筆新交易需直接或間接驗證先前多筆交易,形成互相引用的網路。新交易會挑選並驗證尚未充分確認的未確認交易(通常稱為「tips」),並將其作為參考點加入圖中。此機制使交易確認成為協作過程,網路參與者共同推動整體共識。
DAG系統多以權重累積判斷交易有效性。交易被後續更多交易直接或間接引用時,其權重隨之提升,確認度增加。一旦權重超過預設門檻,該筆交易即視為「已確認」。
不同DAG項目有各自獨特實作方式:
IOTA的Tangle以「馬可夫鏈-蒙地卡羅演算法(Markov Chain Monte Carlo)」挑選需驗證的交易,並以「累積權重」機制維護網路安全。
Nano採用「區塊晶格」(Block-lattice)架構,每個賬戶擁有獨立鏈,交易分為「發送」與「接收」兩種型態,形成特殊的DAG結構。
Conflux採用「樹狀圖」(Tree-Graph)DAG架構,結合工作量證明(Proof of Work)與GHOST協議(GHOST Protocol)以解決可能衝突。
儘管DAG技術展現解決傳統區塊鏈擴展性問題的潛力,仍面臨一系列獨特風險及挑戰:
安全性考驗:DAG系統於低交易量時易遭攻擊,攻擊者可於網路活動量少時累積足夠算力影響共識流程。部分DAG項目(如早期IOTA)曾依靠中央協調器防止攻擊,因而引發中心化爭議。
驗證複雜度:DAG架構下,確認交易最終性及解決衝突更為複雜。交易間引用關係可能極其繁複,驗證整體DAG狀態一致性需更高複雜度演算法。
達成共識的困難:DAG系統需確認全網狀態與交易順序,較傳統區塊鏈更具挑戰,尤其遇到衝突交易時。各項目採行多種方案因應,但尚無完美解決方式。
成熟度問題:相較於已歷經十餘年驗證的傳統區塊鏈技術,DAG系統尚屬新興,缺乏長期大規模應用驗證,理論上的安全性仍待實證。
技術門檻高:DAG系統的設計與理解比傳統區塊鏈更為複雜,對開發者、審核者及一般用戶而言,技術門檻較高。
有向無環圖技術推動了區塊鏈架構的重要演化,為區塊鏈三難困境(去中心化、安全性、可擴展性)提供新解方。雖然DAG技術仍處發展初期,面臨多重挑戰,其於高吞吐量及微交易場域的獨特優勢,已使其成為區塊鏈技術版圖中具重要性的組成部分,亦可能成為未來分散式帳本技術的主流演進路徑之一。
分享