僅供教育參考,不構成投資建議;投資可能造成損失。
直接回答
當一方控制了足夠的共識權力,能夠穩定超越誠實網路並重組近期區塊鏈歷史時,就會發生 51% 攻擊。
在工作量證明(PoW)鏈上,這個術語通常指控制大多數活躍算力。攻擊者可以建立一條累計工作量大於誠實分支的競爭分支,並使節點改為採用該分支。「51%」是持續優勢的簡稱,並非適用於所有情形的開關:算力較少的攻擊者有時也可能憑機率重組確認較淺的區塊,而短暫擁有多數算力並不保證攻擊能夠獲利。
這個標籤不應機械地套用到權益證明(PoS)上。投票門檻、分叉選擇、最終性、怠惰懲罰和罰沒都因協議而異。例如,Ethereum 文件說明了約 33%、34%、51% 和 66% 質押占比會產生不同後果。關鍵始終是釐清所討論的共識規則和攻擊目標。
- 對抗方佔比
- 25%
- 距門檻餘量
- 25%
結果是教育用途的近似值。除非明確展示,否則未計入交易場所規則、稅費、延遲、預言機行為及其他協議參數。
運作原理
PoW 節點只接受有效區塊,並跟隨累計工作量最多的有效分支。擁有多數算力的攻擊者不能讓無效簽章變得有效,也不能在協議規則之外創造代幣。但攻擊者可以私下挖掘一條衝突但有效的分支,並在它超越公開分支後將其公布。
典型的雙花過程如下:
- 攻擊者在公開鏈上向商家或交易所付款,同時私下挖掘一條把同一批代幣花到別處的分支。
- 收款方等待確認,然後交付商品或允許提款。
- 如果私有分支累積了更多工作量,攻擊者就將其公布。節點重組到該分支,原付款會從被接受的歷史中消失。
每增加一次確認,誠實分支的領先幅度就更大。當攻擊者的算力低於誠實網路時,隨著領先幅度擴大,追趕成功的機率會降低;如果持續掌握多數算力,攻擊者長期來看能夠穩定超越誠實分支。確認可以降低風險,但無法形成絕對最終性。
同樣的控制權也可用於審查或延遲特定交易、重新排列近期交易以及干擾確認。它不能竊取由他人私鑰保護的代幣、花費不屬於攻擊者的代幣,也不能迫使全節點接受違反共識規則的區塊。
範例
假設一個用於說明的小型 PoW 網路擁有 1 TH/s 的誠實算力。攻擊者可以租用 1.2 TH/s,價格為每小時 $20,000,在租賃期間取得約 54.5% 的算力,占合計 2.2 TH/s。攻擊者向交易所存入價值 $200,000 的代幣,同時挖掘一條包含衝突支出的私有分支。
如果交易所在 10 個區塊後,也就是這條假設鏈上約 20 分鐘後記入該筆存款,攻擊者可能在公布私有分支前提取另一種資產。租用兩小時需要 $40,000,但這個數字並不是攻擊者的利潤。交易手續費、滑價、執行失敗、提款凍結、攻擊被發現以及被攻擊資產價格下跌,都可能使這次嘗試無利可圖。
如果交易所把要求提高到 200 個區塊,攻擊者必須維持競爭分支更長時間。按照假設的兩分鐘出塊間隔,確認時間約為 6 小時 40 分鐘。攻擊會變得更昂貴、更容易被發現,正常客戶也要等待更久。因此,確認策略是在結算速度和重組風險之間進行權衡。
風險與控制措施
最容易受到攻擊的是近期發生的高價值付款,因為它們可能在營運方作出反應前被轉換或提取。要改寫數千個區塊之前的歷史,就必須重新完成之後的全部工作並超越即時運行的鏈,因此實際攻擊通常集中於短暫但價值較高的時間窗口。
經濟安全性不只取決於代幣的市值。相關因素包括可租用算力、專用硬體供應、電力和協調成本、礦池集中度、區塊獎勵、市場流動性,以及收款方在確認後放行的價值。礦池集中是一個警示訊號,但礦池營運方不一定擁有礦工的設備;礦工可以把算力轉向其他地方。
收款方和基礎設施營運方可以透過以下方式降低風險:
- 根據交易價值和目前網路狀況設定確認要求;
- 監控競爭分支、異常算力變化和深度重組;
- 在重組風險上升時暫停存款或提款;以及
- 限制在一個確認窗口內可以離開的不可逆價值。
這些控制措施可以降低預期損失,但沒有任何一種措施能讓基於機率的 PoW 結算在數學上不可逆。
常見誤解
誤解 1:攻擊者必須恰好擁有 51.0%
不是。即使低於 50%,攻擊者仍可能憑機率追上,尤其是在落後幅度較小時,但隨著確認累積,成功機率會降低。高於 50% 時,持續控制算力會給攻擊者帶來預期的長期優勢。持續時間、網路狀況、成本和所選目標仍然重要。
誤解 2:多數算力可以偷走所有代幣
不是。共識權力影響選擇哪一段有效歷史;它不會洩露私鑰,也不能授權無效支出。多數攻擊者主要獲得的是撤銷自己近期付款、審查交易和重新排列近期區塊的能力。
誤解 3:固定的確認次數始終安全
不存在適用於每條鏈或每筆付款的固定次數。風險取決於攻擊者可取得的算力、誠實網路的安全預算、交易價值、偵測與回應時間,以及收到的資產能夠多快被提取或轉換。
相關主題
來源
- Bitcoin: A Peer-to-Peer Electronic Cash System - Bitcoin.org(查閱日期:2026-08-20)
- Block Chain - Bitcoin Developer Guide(查閱日期:2026-08-20)
- Proof-of-stake attack and defense - Ethereum.org(查閱日期:2026-08-20)