目錄
1. 運用經濟學保障計算安全
基於中本共識的加密貨幣(如比特幣和以太坊)提供了稱為區塊鏈的確定性公開交易帳本。這項共識技術實現了基本的比特幣交易,而以太坊交易則透過智能合約執行更複雜的計算腳本。
匿名礦工在無中央權威的情況下決定交易有效性,但區塊鏈完整性取決於最小驗證負擔。儘管擁有史上最強大的計算資源,由於驗證者困境,比特幣和以太坊提供的驗證能力不超過典型智慧型手機。
1.1 外包計算
本系統實現對以太坊網路的安全外包計算,讓使用者能在維持區塊鏈安全性的同時,獲得複雜計算的正確答案。
1.2 實際影響
立即應用包括由以太坊智能合約運作的去中心化礦池、具可擴展交易吞吐量的加密貨幣,以及不相關加密貨幣系統間的免信任貨幣轉移。
1.3 智能合約
以太坊智能合約實現了取決於計算腳本評估的複雜金融和資料庫操作,為TrueBit的驗證系統奠定基礎。
2. TrueBit運作原理
TrueBit由位於爭議解決層之上的金融激勵層組成,該爭議解決層採用多功能的「驗證遊戲」形式。這種雙層架構能在維持安全保證的同時,在以太坊上實現可擴展計算。
2.1 系統特性
透過精心設計的經濟機制,系統提供計算完整性、活躍性與激勵相容性。
2.2 基本假設
TrueBit假設存在理性經濟行為者,且系統中至少存在一名誠實驗證者以維持安全性。
2.3 攻擊者模型
協議透過複雜的激勵結構,防禦各種攻擊向量,包括女巫攻擊、共謀池和經濟漏洞利用。
3. 爭議解決層
TrueBit的核心創新是驗證遊戲,能為計算結果實現高效的爭議解決。
3.1 瓶頸:驗證者困境
當礦工缺乏足夠激勵來驗證複雜計算時,就會發生驗證者困境,可能導致無效交易進入區塊鏈。這種情況體現在7月4日比特幣分叉和以太坊2016年的阻斷服務攻擊中。
3.2 解決方案:驗證遊戲
驗證遊戲使用互動式證明系統和二分協議,在最小化鏈上資源的同時,有效定位計算錯誤。
3.3 詳細協議
協議包含多輪挑戰,驗證者質疑解題者的計算結果,爭議透過逐步執行驗證來解決。
3.4 執行時間與安全性分析
系統實現了相對於計算大小的對數複雜度爭議解決,使其適用於大規模計算。
4. 激勵層
經濟層透過精心校準的獎勵和懲罰,確保誠實參與。
4.1 累積獎金
隨機累積獎金為驗證者提供經濟激勵,使其積極參與驗證過程。
4.2 交易稅
交易稅為激勵池提供資金,確保驗證生態系統的可持續運作。
4.3 保證金
來自解題者和驗證者的安全保證金創造了經濟權益,阻止惡意行為。
4.4 生成強制錯誤
系統故意引入強制錯誤,以測試驗證者的警覺性並確保積極參與。
4.5 解題者與驗證者選舉
參與者透過隨機抽樣機制選出,防止系統被操縱。
4.6 協議概覽
完整協議將爭議解決與經濟激勵整合為一個連貫的系統。
4.7 完整性檢查
多重驗證機制確保系統完整性並防止漏洞利用。
5. 防禦機制
TrueBit整合了針對各種攻擊向量的複雜防禦措施。
5.1 配對女巫攻擊
系統透過經濟障礙和身份驗證機制防止女巫攻擊。
5.2 三重防護
三種互補的防禦機制協同工作,提供穩健的安全保證。
5.3 共謀池
經濟抑制措施和隨機抽樣防止參與者之間共謀。
5.4 關於低垂果實
系統解決了通常利用驗證系統的常見攻擊向量。
5.5 現金等價問題
經濟機制確保激勵與系統安全保持一致。
6. 實作
TrueBit實作包括TrueBit虛擬機以及與以太坊智能合約的整合,實現無縫運作。
7. 應用場景
協議實現了眾多超越基本計算驗證的實際應用。
7.1 實用去中心化礦池
由智能合約運作的去中心化礦池消除了中心故障點。
7.2 Dogecoin-Ethereum橋接
加密貨幣系統間的免信任橋接實現無縫價值轉移。
7.3 可擴展交易吞吐量
TrueBit實現了交易容量顯著更高的加密貨幣。
7.4 邁向大數據系統
該架構支援區塊鏈網路上的大規模資料處理。
Original Analysis
TrueBit透過解決自去中心化系統誕生以來就存在的根本性驗證者困境,代表了區塊鏈可擴展性的重大進展。該協議創新的雙層架構——結合基於互動驗證遊戲的爭議解決層與經濟激勵層——創建了一個穩健的免信任計算框架,在保持安全性的同時大幅提升吞吐量。
與傳統區塊鏈擴展方法(如分片技術,在以太坊2.0中實作)或樂觀匯總等第二層解決方案相比,TrueBit採用了根本不同的方法,專注於計算驗證而非交易處理優化。這種區別至關重要:雖然像zk-Rollups(如Buterin等人的開創性工作中所述)這樣的解決方案依賴密碼學證明來確保有效性,但TrueBit使用經濟激勵和賽局理論機制來確保正確性。協議的強制錯誤機制尤其巧妙,因為它主動測試驗證系統的完整性,類似於持續整合系統在傳統計算中測試軟體可靠性的方式。
TrueBit驗證遊戲與理論計算機科學中的互動式證明系統相似,特別是Goldwasser、Micali和Rackoff在互動證明方面的工作,但關鍵在於增加了基於區塊鏈的經濟激勵。這種組合創造了作者所稱的「共識電腦」,能夠執行具有可驗證正確性的任意計算。系統的安全性依賴於至少存在一名誠實驗證者的假設——這與許多拜占庭容錯系統共享的假設,但在這裡透過新穎的經濟機制實現。
從實作角度來看,TrueBit透過逐步二分法解決爭議的方法既優雅又高效,將驗證複雜度從O(n)降低到O(log n),其中n為計算大小。這種對數縮放對於實際應用至關重要,因為它能在不產生過高成本的情況下驗證大型計算。協議的設計展示了對計算機科學基礎和經濟賽局理論的深刻理解,創建了一個技術上合理且經濟上可持續的系統。
展望未來,TrueBit的架構影響超越區塊鏈計算。核心原則可更廣泛應用於分散式系統,特別是在需要免信任驗證計算結果的情境中。正如以太坊基金會在第二層擴展研究中所指出的,像TrueBit這樣的解決方案代表了區塊鏈可擴展性的重要方向,與其他方法互補而非競爭。
Technical Details
數學基礎
驗證遊戲使用具有以下特性的互動式證明系統:
- 完備性:如果陳述為真,誠實驗證者將被說服
- 健全性:如果為假,除了極小概率外,任何證明者都無法說服誠實驗證者
爭議解決使用複雜度為$O(\\log n)$的二分協議,其中$n$為計算大小:
$$T_{verify} = O(\\log n) \\cdot T_{step}$$
激勵機制透過以下方式確保經濟安全:
$$E[reward_{honest}] > E[reward_{malicious}] + cost_{attack}$$
系統架構
TrueBit虛擬機(TVM)在確定性環境中執行計算,與以太坊的EVM相容,但針對驗證遊戲進行了優化。
Experimental Results
效能指標
驗證時間
與計算大小呈對數縮放
安全保證
透過激勵實現經濟安全
吞吐量提升
與原生以太坊相比
技術圖表
驗證遊戲流程:協議涉及解題者和驗證者之間的多輪挑戰-回應,爭議透過二分搜尋解決,直到識別出錯誤的計算步驟。每輪將問題大小減半,確保高效解決。
經濟激勵結構:系統在解題者獎勵、驗證者激勵和安全保證金之間保持平衡,以確保誠實參與,同時防止各種攻擊向量。
Code Examples
TrueBit任務創建
// 解題者提交任務
function submitTask(bytes memory code, bytes memory input) public payable {
require(msg.value >= MIN_DEPOSIT);
Task memory newTask = Task({
solver: msg.sender,
code: code,
input: input,
deposit: msg.value,
status: TaskStatus.Pending
});
tasks[taskCounter] = newTask;
emit TaskSubmitted(taskCounter, msg.sender);
taskCounter++;
}
// 驗證者挑戰結果
function challengeResult(uint taskId, bytes memory claimedOutput) public {
require(tasks[taskId].status == TaskStatus.Pending);
challenges[taskId] = Challenge({
verifier: msg.sender,
claimedOutput: claimedOutput,
round: 0
});
initiateVerificationGame(taskId);
}
驗證遊戲協議
// 用於爭議解決的二分協議
function performBisection(uint taskId, uint step) public {
Challenge storage challenge = challenges[taskId];
// 執行單一步驟並提供Merkle證明
(bytes32 stateHash, bytes32 proof) = executeStep(
tasks[taskId].code,
tasks[taskId].input,
step
);
// 提交步驟執行以供驗證
emit StepExecuted(taskId, step, stateHash, proof);
// 繼續二分直到錯誤被精確定位
if (challenge.round < MAX_ROUNDS) {
challenge.round++;
} else {
resolveFinalStep(taskId, step);
}
}
Future Applications
短期應用(1-2年)
- 去中心化雲端計算:複雜計算的免信任執行
- 跨鏈橋接:區塊鏈網路間的安全資產轉移
- 可擴展DeFi:區塊鏈上的複雜金融工具
中期應用(3-5年)
- AI模型驗證:機器學習模型的免信任執行與驗證
- 科學計算:透過可驗證計算實現可重現研究
- 企業區塊鏈:可擴展的私有區塊鏈解決方案
長期願景(5年以上)
- 世界電腦:真正的去中心化全球計算平台
- 可驗證網路服務:具有保證執行的免信任網路服務
- 自治組織:具有可驗證操作的複雜DAO
References
- Teutsch, J., & Reitwießner, C. (2017). A scalable verification solution for blockchains. arXiv:1908.04756
- Buterin, V., et al. (2021). Combining GHOST and Casper. Ethereum Foundation.
- Goldwasser, S., Micali, S., & Rackoff, C. (1989). The knowledge complexity of interactive proof systems. SIAM Journal on computing.
- Ethereum Foundation. (2020). Ethereum 2.0 Phase 1--Shard Chains.
- Luu, L., et al. (2016). A secure sharding protocol for open blockchains. ACM CCS.
- Ben-Sasson, E., et al. (2014). Zerocash: Decentralized anonymous payments from bitcoin. IEEE Security & Privacy.
- Szabo, N. (1997). Formalizing and securing relationships on public networks. First Monday.
- Nakamoto, S. (2008). Bitcoin: A peer-to-peer electronic cash system.
- Wood, G. (2014). Ethereum: A secure decentralised generalised transaction ledger.
- Buterin, V. (2013). Ethereum white paper: A next-generation smart contract and decentralized application platform.