安全,一直是區塊鏈領域最重要的要素,自比特幣誕生以來,數字貨幣世界可謂是歷經風霜,先後發生過各種攻擊方式,而最嚴重的攻擊方式之一莫過於51%攻擊。
51%攻擊,總讓人有一種刀光劍影看小說的感覺,但其實很多人對這個詞的理解是不太準確的。下面,我們將為大家詳細介紹什麼是51%攻擊,一起來看看吧。
什麼是51% 攻擊?
51%攻擊,從字面理解就是攻擊者擁有超過全網算力的50%的算力資源,便可以發動51%算力攻擊。
若攻擊者擁有超全網50%的算力資源,就能通過攻擊修改自己的交易記錄、廢棄其餘礦工開采的區塊、阻止交易確認等不道德行為。
在比特幣網絡中,採用PoW共識機制來解決如何獲得記賬權的問題,採用“最長鏈共識”解決如何記賬的問題。 51%的攻擊,就是利用比特幣網絡採用PoW競爭記賬權和“最長鏈共識”的特點,使用算力優勢生成一條更長的鏈“回滾”已經發生的“交易行為”。
在理論上,如果掌握了50%以上的算力,就擁有了獲得記賬權的絕對優勢,可以更快地生成區塊,也擁有了篡改區塊鏈數據的權利。實際上,當惡意攻擊者持有比特幣全網佔比比較高的算力時,即使尚未達到51%的比例,也可以製造相應的攻擊,比較典型的就是雙花問題。
51%攻擊的通俗舉例
舉個簡單的例子,想必大家能更好的理解。
例如,攻擊者花費一筆虛擬貨幣購買了一件商品,通過51%攻擊使得該筆虛擬貨幣進行了2次花費,最終黑客既沒有花費虛擬貨幣,也得到了相應商品,具體攻擊流程如下:
-
黑客先向商家支付了10個虛擬貨幣。
-
同時,將這10個虛擬貨幣發送給了自己另一個賬戶。
-
當購買商品那筆交易被確認後,將會被打包區塊中,這10個虛擬貨幣到了商家的賬戶,商家將商品按照約定發送給黑客。
-
此時,攻擊者發起51%攻擊,將步驟(2)中轉到自己另一個賬戶的那筆交易打包進另一個非購買商品那條鏈上的區塊。
在步驟(4)的區塊之後重新組合一條鏈,由於黑客擁有超過全網其餘礦工的算力,那此黑客將能組合出一條最長的合法鏈,而礦工也將從這條鏈後面繼續挖礦,之前的區塊就將被丟棄,商家賬戶收不到那10個虛擬貨幣。
51%攻擊看似無所不能,但是它也有一定局限性,無法做到:修改其他人的交易記錄、阻止交易被發出去(交易會被發出,只是顯示0個確認而已)、改變每個區塊的礦工獎勵、憑空產生虛擬貨幣、把不屬於黑客的虛擬貨幣發送給自己或其他人等。
哪些項目遭受過 51% 攻擊
2020年8月,ETC共遭受到了3次51%攻擊。
8月1日,ETC遭受到第一次攻擊,此次攻擊導致3000多個區塊重組,攻擊者獲利超560萬美元;8月6日,ETC遭受到第二次攻擊,此次攻擊導致4000多個區塊重組,攻擊者獲利超170萬美元;8月30日,ETC遭受到第三次攻擊,此次攻擊導致7000多個區塊重組,攻擊者第三次獲利尚不明確。
2020年12月7日,Aeternity 遭受到51%攻擊,此次攻擊黑客共進行了3步操作。首先黑客在12月3日收集大量AE作為攻擊成本,總額高達2900萬;12月6日,攻擊者挖出了一條未公開的鏈,此鍊長於公鏈,並在較長鏈上向自己的賬戶轉入2752萬AE,隨後在公鏈將AE花掉;12月7日,攻擊者將較長鏈廣播出去,從而較長鏈得到了認可,攻擊者向自己轉入2752萬AE的交易被正常打包,使得資產再次回到自己賬戶中,而之前花費的AE失效。本次攻擊造成近400萬美元的損失。
出現51% 攻擊的可能性有多大?
由於區塊鏈由分佈式節點網絡維護,因此所有參與者都是在達成共識的過程中開展合作。這是區塊鏈的安全性一般較高的原因之一。網絡越大,防禦攻擊和數據損壞的能力就越強。
而關於工作量證明區塊鏈,礦工擁有的哈希率越高,為下一個區塊找到有效解決方案的機會就越大。因為挖礦涉及無數次哈希嘗試,而更高的計算能力意味著每秒可以嘗試更多次。一些早期礦工加入了比特幣網絡,為其發展和安全作出了貢獻。隨著比特幣作為一種貨幣的價格不斷上漲,許多新礦工進入該系統,意圖爭奪區塊獎勵(目前設定的獎勵為每區塊12.5 枚比特幣)。這種競爭的存在是比特幣安全的原因之一。如果不是為了誠實行事並努力獲得區塊獎勵,礦工就不會有動力投入大量資源。
因此,由於比特幣網絡的規模較大,51% 攻擊不太可能發生。一旦區塊鏈變得足夠大,單人或團體獲得足夠計算能力來壓倒所有其他參與者的可能性就會迅速下降到極低的水平。
此外,隨著鏈的增長,更改之前確認的區塊會變得越來越困難,因為這些區塊都是通過加密證明鏈接起來的。出於同樣的原因,一個區塊所獲確認越多,更改或撤銷其中交易的成本就越高。因此,一次成功的攻擊可能只能在短時間內修改最近幾個區塊的交易。
雖然獲得比其餘比特幣網絡更多的計算能力對攻擊者而言相當困難,但如果是規模較小的加密貨幣,挑戰性就小很多。與比特幣相比,小規模的公鏈擁有的可保護其區塊鏈的哈希算力相對較低。低到足以讓51% 攻擊切實發生。受到過多數攻擊的加密貨幣的幾個著名例子有Monacoin、Bitcoin Gold 和ZenCash。
寫在最後
任何新興技術都可能遇到各種風險和漏洞,這正是我們需要了解51%攻擊的原因。 51%攻擊就如同一把懸在加密社區頭頂的利劍,督促人們要警惕隨時可能出現的危險,這會壓迫社區的人不斷的去嘗試改變和創新,對算法的發展會起到一個促進作用,能夠適應的項目繼續存在,否則就會被市場所淘汰。