交易排序中完美公平的不可行性
探討康多塞悖論如何揭示區塊鏈共識中完美公平的極限。
在分佈式系統的研究中,特別是在拜占庭共識和狀態機複製(SMR)方面,幾十年來主要集中於兩個目標:一致性和活躍性。一致性意味著所有節點對同一交易序列達成一致,而活躍性則確保系統持續添加新交易。然而,這些屬性並不能阻止壞人改變交易接收後的排序。
在公共區塊鏈中,傳統共識保證的這一缺口已成為一個嚴重問題。驗證者、區塊構建者或排序者可以利用他們在區塊排序中的特權角色來獲取財務利益,這種行為被稱為最大可提取價值(MEV)。這種操控包括有利的前置交易、後置交易和夾擊交易。由於交易執行順序決定了在去中心化金融(DeFi)應用中的有效性或盈利能力,因此交易排序的完整性對於維持公平和信任至關重要。
為了解決這一重要的安全缺口,交易順序公平性被提出作為第三個基本共識屬性。公平排序協議確保交易的最終順序取決於外部客觀因素,例如到達時間(或接收順序),並且對敵對重排序具有抵抗力。通過限制區塊提議者重新排序交易的權力,這些協議使區塊鏈更接近於透明、可預測和抗MEV的狀態。
康多塞悖論與理想公平的不可行性
最直觀且最強的公平觀念是接收順序公平性(ROF)。非正式定義為「先到先執行」,ROF規定如果足夠多的交易(tx)在大多數節點中早於另一筆交易(tx′)到達,那麼系統必須在執行時將tx排在tx′之前。
然而,除非假設所有節點能夠瞬時通信(即在瞬時同步的外部網絡中運行),否則實現這種普遍接受的「順序公平」在根本上是不可能的。這一不可能性源於社會選擇理論中的一個驚人聯繫,具體來說是康多塞悖論。
康多塞悖論說明,即使每個單獨的節點保持交易的傳遞內部排序,系統中的集體偏好也可能導致所謂的非傳遞循環。例如,可能存在大多數節點在A交易之前收到B交易,而大多數節點在B交易之前收到C交易,並且大多數節點在C交易之前收到A交易。因此,這三個大多數偏好形成了一個循環(A→B→C→A)。這意味著沒有一個單一且一致的交易排序能夠同時滿足所有大多數的偏好。
這一悖論顯示了在異步網絡中,甚至在共享公共時鐘的同步網絡中,完美實現接收順序公平的目標是不可行的,特別是當外部網絡延遲過長時。這一不可能性要求採用較弱的公平定義,例如批次順序公平性。
Hedera Hashgraph與中位時間戳的缺陷
Hedera採用Hashgraph共識算法,試圖近似強接收順序公平性(ROF)。它通過將每筆交易的最終時間戳計算為所有節點對該交易的本地時間戳的中位數來實現。
然而,這本質上容易受到操控。單個惡意節點可以故意扭曲其本地時間戳,反轉兩筆交易的最終排序,即使所有誠實參與者按正確的順序接收到它們。
考慮一個簡單的例子,五個共識節點(A、B、C、D和E),其中節點E行為不端。兩筆交易,tx₁和tx₂,廣播到網絡。所有誠實節點在tx₂之前收到tx₁,因此預期的最終順序應該是tx₁ → tx₂。
在這個例子中,對手將tx₁賦予較晚的時間戳(3),而tx₂賦予較早的時間戳(2)以扭曲中位數。
當協議計算中位數時:
* 對於tx₁,時間戳(1、1、4、4、3)的中位數為3。
* 對於tx₂,時間戳(2、2、5、5、2)的中位數為2。
因為tx₁的最終時間戳(3)大於tx₂(2),協議輸出tx₂ → tx₁,從而反轉了所有誠實節點觀察到的真實順序。
這個玩具例子展示了一個關鍵缺陷:中位數函數雖然看似中立,但實際上卻是造成不公平的原因,因為即使是單個不誠實的參與者也可以利用它來偏向最終交易排序。
因此,Hashgraph經常宣稱的「公平時間戳」實際上是一種出奇脆弱的公平觀念。Hashgraph共識未能保證接收順序公平性,而是依賴於授權的驗證者集,而不是基於加密保證。
實現實用保證
然而,為了繞過康多塞所展示的理論不可能性,實用的公平排序方案必須以某種方式放寬公平的定義。
Aequitas協議引入了區塊順序公平性(BOF)或批次順序公平性的標準。BOF規定,如果足夠多的節點在另一筆交易tx′之前收到交易tx,那麼tx必須在tx′之前或與tx′同時交付,這意味著沒有誠實節點可以在tx之後的區塊中交付tx′。這將規則從「必須在之前交付」(ROF的要求)放寬為「必須不晚於交付」。
考慮三個共識節點(A、B和C)和三筆交易:tx₁、tx₂和tx₃。如果至少有三個節點(多數)首先觀察到一筆交易,則該交易被視為「較早接收」。
如果我們應用多數投票來確定全局順序:
* tx₁ → tx₂(A和C同意)
* tx₂ → tx₃(A和B同意)
* tx₃ → tx₁(B和C同意)
這些偏好形成了一個循環:tx₁ → tx₂ → tx₃ → tx₁。在這種情況下,沒有單一的順序可以同時滿足每個人的觀點,這意味著嚴格的ROF是無法實現的。
BOF通過將所有衝突交易分組到同一批次或區塊中來解決這一問題,而不是強迫一個在另一個之前。協議簡單地輸出:
區塊B₁ = {tx₁、tx₂、tx₃}
這意味著,從協議的角度來看,所有三筆交易被視為同時發生。在區塊內,使用確定性的平局打破器(例如哈希值)決定它們的執行順序。這樣,BOF確保了每對交易的公平性,並保持最終交易日誌對所有人一致。每一筆交易的處理不遲於其前一筆交易。
這一小但重要的調整使協議能夠處理交易排序衝突的情況,通過將這些衝突交易分組到同一區塊或批次中。重要的是,這並不導致部分排序,因為每個節點仍必須就一個單一的線性交易序列達成一致。當沒有此類衝突發生時,協議仍然實現了更強的ROF屬性。
雖然Aequitas成功實現了BOF,但其面臨的重大限制是其通信複雜性非常高,並且只能保證弱活躍性。弱活躍性意味著,交易的交付僅在其所屬的整個康多塞循環完成後才能保證。如果循環「鏈接在一起」,這可能需要任意長的時間。
Themis協議被引入以強制執行相同的強BOF屬性,但通信複雜性有所改善。Themis通過三種技術實現這一點:批次解包、延遲排序和更強的內部批次保證。
在其標準形式中,Themis要求每個參與者與網絡中大多數其他節點交換消息。所需的通信量隨著網絡參與者數量的平方增長。然而,在其優化版本SNARK-Themis中,節點使用簡潔的加密證明來驗證公平性,而無需直接與每個其他參與者通信。這減少了通信負擔,使其僅隨著參與者數量線性增長,這使得Themis即使在大型網絡中也能高效擴展。
假設五個節點(A–E)參與共識,接收到三筆交易:tx₁、tx₂和tx₃。由於網絡延遲,它們的本地順序不同:
如同Aequitas,這些偏好形成了一個康多塞循環。但Themis不會等待整個循環解決,而是使用一種稱為批次解包的方法。它識別所有屬於循環的交易,並將它們分組為一個集合,稱為強連通組件(SCC)。在這種情況下,所有三筆交易都屬於同一SCC,Themis將其輸出為正在進行的批次,標記為批次B₁ = {tx₁、tx₂、tx₃}。
通過這樣做,Themis允許網絡在Batch B₁的內部順序仍在最終確定的同時繼續處理新交易。這確保系統保持活躍,避免停滯。
總結:
交易排序中完美公平的概念看似簡單。誰的交易最先到達網絡,誰就應該最先被處理。然而,正如康多塞悖論所示,這一理想在現實的分佈式系統中無法成立。不同的節點以不同的順序看到交易,當這些觀點衝突時,沒有任何協議能夠在不妥協的情況下建立一個單一的、普遍「正確」的序列。
Hedera的Hashgraph試圖用中位時間戳來近似這一理想,但該方法更多依賴於信任而非證明。單個不誠實的參與者可以扭曲中位數,翻轉交易順序,揭示「公平時間戳」並不真正公平。
像Aequitas和Themis這樣的協議推進了討論,承認了可以實現和不能實現的目標。它們不再追求不可能,而是以某種方式重新定義公平,仍然在真實網絡條件下保持順序的完整性。所出現的不是對公平的拒絕,而是其演變。這一演變清晰地劃定了感知公平與可證明公平之間的界限。它表明,去中心化系統中的真正交易順序完整性不能依賴於聲譽、驗證者信任或授權控制,而必須來自於嵌入在協議中的加密驗證。
這篇文章不包含投資建議或推薦。每一項投資和交易行為都涉及風險,讀者在做出決定時應進行自己的研究。
這篇文章僅供一般信息用途,並不意圖被視為法律或投資建議。文中表達的觀點、想法和意見僅代表作者本人,並不一定反映或代表Cointelegraph的觀點和意見。
以上文章由特價GPT API KEY所翻譯及撰寫。而圖片則由FLUX根據內容自動生成。

