選擇語言

比特幣基於算力嘅雙重支付攻擊分析

對比特幣雙重支付攻擊背後嘅隨機過程進行定量分析,重點關注攻擊概率、確認等待時間同經濟影響。
computingpowercoin.com | PDF Size: 0.1 MB
評分: 4.5/5
您的評分
您已經為此文檔評過分
PDF文檔封面 - 比特幣基於算力嘅雙重支付攻擊分析

目錄

1. 引言

比特幣嘅安全模型核心在於防止雙重支付——即係惡意地將同一枚數碼貨幣使用兩次。本文基於攻擊者嘅算力,對雙重支付攻擊進行定量嘅隨機分析。本文闡明並擴展咗中本聰原始白皮書中提出嘅基礎統計模型,從定性理解轉向精確嘅概率框架。

2. 區塊鏈同分支選擇

比特幣區塊鏈係一個由區塊組成嘅樹狀結構,每個區塊都引用其前一個區塊。網絡共識會選擇最長鏈(或者累積工作量證明最多嘅鏈)作為有效歷史。當新區塊延伸某個分支令其變得更長時,暫時嘅分歧(分叉)就會得到解決。呢個機制就係雙重支付攻擊嘅戰場,攻擊者會秘密構建一條替代鏈。

3. 追趕遊戲

呢部分模擬核心攻擊場景:一個擁有全網算力比例q嘅攻擊者,喺落後z個區塊嘅情況下,試圖超越誠實鏈(算力為p = 1 - q)。呢個過程被建模為一個二項隨機遊走。攻擊者從落後z個區塊嘅劣勢下最終追平嘅概率推導如下:

$P = \begin{cases} 1 & \text{if } q \ge p \\ (q/p)^z & \text{if } q < p \end{cases}$

呢個優雅嘅結果表明,對於算力低於50%(q < 0.5)嘅攻擊者,其成功概率會隨確認數z呈指數級下降。

4. 等待確認

分析轉向商戶嘅視角:喺認為一筆交易安全之前,應該等待幾多個確認(n)?本文計算咗商戶睇到n個確認後,攻擊者仍然可能成功嘅概率。呢涉及計算攻擊者喺誠實網絡搵到n個區塊之前,搵到n+1個區塊嘅概率,並考慮持續進行嘅競賽。得出嘅概率為建議嘅確認深度提供咗基礎。

5. 圖表與分析

本文提供圖形分析,繪製咗針對唔同攻擊者算力(q),雙重支付成功概率相對於商戶確認數(n)嘅變化圖。可視化嘅關鍵洞見包括:

呢啲圖表對於風險評估同制定實際嘅確認政策至關重要。

6. 雙重支付嘅經濟學

本文引入一個經濟模型,將攻擊框架為一個賭注可變嘅賭徒破產問題。攻擊者嘅潛在回報係佢試圖雙重支付嘅交易價值。分析考慮咗攻擊對攻擊者嘅期望值,結論係除非被盜物品嘅價值相對於區塊獎勵極高,否則一個理性嘅、算力q < 0.5嘅攻擊者會發現誠實挖礦比嘗試雙重支付更有利可圖。呢點符合博弈論安全原則。

7. 結論

呢項分析為理解雙重支付風險提供咗嚴謹嘅數學基礎。佢證實咗,只要收款方等待足夠數量嘅確認,比特幣協議對於算力低於全網50%嘅攻擊者進行嘅雙重支付具有高度嘅穩健性。呢項工作量化咗確認時間同風險承受能力之間嘅安全權衡。

8. 核心洞見與分析師觀點

核心洞見: Rosenfeld嘅工作唔單止係數學;佢係首個針對比特幣結算層嘅嚴謹風險定價模型。佢將中本聰直觀嘅「最長鏈規則」轉化為可量化嘅安全SLA(服務水平協議),其中確認深度n係為咗特定最終性概率1-P而支付嘅溢價。呢個係所有現代加密貨幣交易所安全政策嘅基石。

邏輯流程: 天才之處在於將攻擊框架為一個二項隨機遊走——一個經典嘅隨機過程。通過將區塊發現建模為泊松過程,Rosenfeld將混亂、並行嘅挖礦競賽簡化為一個可解決嘅一維賭徒破產問題。從第3節(追趕概率)到第4節(商戶等待時間)嘅飛躍至關重要;佢連接咗攻擊者嘅能力同防禦者嘅政策

優點與缺陷:
優點: 模型嘅簡單性就係佢嘅優點。封閉形式解 $P = (q/p)^z$ 非常強大且易於解釋。第6節嘅經濟分析具有前瞻性,預示咗今日喺ACM金融科技進展會議 (AFT)等場合見到嘅嚴謹區塊鏈博弈論研究。
關鍵缺陷: 模型假設一個擁有固定q靜態對手。佢未能考慮戰略性、波動嘅算力——例如攻擊者喺短時間內針對性地租用大量雲挖礦能力(一種「金手指攻擊」),呢種威脅喺後續研究如Eyal同Sirer嘅「礦池」論文中被強調。佢亦忽略咗網絡延遲同自私挖礦策略,呢啲策略可以有效提高攻擊者嘅有效q

可行建議: 1. 對於交易所: 唔好使用一刀切嘅確認數。動態使用Rosenfeld嘅公式。對於100美元存款,3個確認可能足夠。對於1000萬美元提款,你需要幾十個確認,或者更好嘅係,轉移到具有最終性小工具增強嘅鏈上。 2. 對於協議設計者: 本文係支持權益證明 (PoS)嘅經典論據。工作量證明中嘅指數級安全成本((q/p)^z)喺經濟上係殘酷嘅。如以太坊Casper喺其研究規範中所記載,PoS系統試圖用可罰沒嘅密碼學最終性取代呢種概率性最終性,從根本上改變攻擊計算。 3. 對於商戶: 真正嘅要點係,對於小額即時支付(例如咖啡),等待任何確認都唔切實際。呢個經濟現實直接推動咗鏈下支付通道(閃電網絡)嘅發展,佢通過將交易移出基礎層,完全避開咗Rosenfeld嘅問題。

9. 技術細節與數學框架

核心模型將區塊發現視為獨立試驗。設p為誠實鏈搵到下一個區塊嘅概率,攻擊者嘅概率為q = 1-p。系統狀態係攻擊者嘅赤字z。攻擊者從赤字z最終達到持平嘅概率p_z滿足從賭徒破產問題推導出嘅遞歸關係:

$p_z = q \cdot p_{z-1} + p \cdot p_{z+1}$

邊界條件為p_0 = 1(持平即成功)同p_\infty = 0。解呢個方程得到封閉形式解 $p_z = (q/p)^z$(當q < p時)。

對於商戶有n個確認嘅場景,攻擊者成功嘅概率係佢從落後n個區塊開始,能夠構建一條比誠實鏈更長嘅鏈嘅概率。呢個通過對商戶廣播交易時所有可能嘅領先情況求和來計算。

10. 分析框架:示例案例

場景: 一個加密貨幣交易所收到一筆大額存款。佢必須決定喺將金額記入用戶賬戶之前,需要幾多個確認。

  1. 定義參數:
    • 攻擊者估計算力份額:q = 0.2(20%)。呢個可以基於公開礦池數據。
    • 風險價值(存款金額): V = $500,000。
    • 交易所嘅風險承受能力: 可接受嘅雙重支付概率:$\epsilon = 0.001$(0.1%)。
  2. 應用Rosenfeld模型: 我哋需要搵到最小嘅n,使得攻擊概率 $P(n, q) \le \epsilon$。使用公式 $P \approx \sum_{k=0}^{\infty} \frac{\lambda^k e^{-\lambda}}{k!} \cdot (q/p)^{n+1-k}$(其中 $k \le n+1$,$\lambda = n(q/p)$),或者查閱預先計算嘅圖表/表格。
  3. 計算/結果: 對於q=0.2\epsilon=0.001,所需確認數n大約係9
  4. 政策決定: 交易所將該資產嘅確認要求設定為9個區塊。對於10分鐘嘅區塊時間,呢意味住存款有90分鐘嘅持有期,平衡咗安全性同用戶體驗。

11. 未來應用與研究方向

12. 參考文獻

  1. Nakamoto, S. (2008). Bitcoin: A Peer-to-Peer Electronic Cash System.
  2. Rosenfeld, M. (2014). Analysis of Hashrate-Based Double-Spending. arXiv:1402.2009.
  3. Eyal, I., & Sirer, E. G. (2014). Majority is not Enough: Bitcoin Mining is Vulnerable. International Conference on Financial Cryptography and Data Security.
  4. Buterin, V., & Griffith, V. (2017). Casper the Friendly Finality Gadget. arXiv:1710.09437.
  5. Gervais, A., Karame, G. O., Wüst, K., Glykantzis, V., Ritzdorf, H., & Capkun, S. (2016). On the Security and Performance of Proof of Work Blockchains. ACM SIGSAC Conference on Computer and Communications Security.