區塊鏈51%算力攻擊並沒有那麼可怕

買賣虛擬貨幣

在比特幣和加密貨幣世界中,遇到很多從未見過的概念和表達,並且真正理解其含義的現象並不少見。在本文中,我將試圖揭開其中一個概念的神秘面紗,即著名的51%攻擊。

51%攻擊與其它概念密不可分,例如挖礦、共識機制、孤塊和雙花問題,如果讀者不熟悉這些名詞將會很難理解。在這裡為不限制我對51%攻擊的討論,我將進行簡要講解。

簡介

比特幣是基於分散式賬本的點對點支付系統,該賬本由網路所有參與者共享。分散式賬本就是一個記錄簿,網路權益持有者之間的所有交易往來都記錄在上面。這個賬本由一個個區塊連結而成,新的交易被記錄在新區塊上,新區塊被不斷被新增到現存鏈上,因此有了區塊鏈這個術語。

向現有的鏈新增新區塊(連同其上所載交易)需要高強度的計算工作,我們將這項工作稱為挖礦,由比特幣網路上被稱為“礦工”的指定節點執行。礦工的計算能力被稱為雜湊率,以每秒雜湊數(H/s)或若干倍的雜湊數來度量。所有的礦工都在互相競爭,誰贏了誰就可以把新區塊加到鏈上,並得到相應的獎勵。雜湊率越高贏得比賽的機會就越大。

由於比特幣賬本是分散式的,例如,網路上的每一個節點都有一份區塊鏈的副本,因此不同的參與者有必要就一套規則達成一致,使整個網路的支付系統可靠且一致。我們將這套規則稱為共識協議。

共識協議要解決的問題之一是如何處理不同的節點最終呈現出不同區塊鏈版本的場景。當兩個礦工幾乎同時各自延長區塊鏈時就會出現這種情況,導致出現兩個版本略有不同且相互競爭的賬本。這種不一致透過等待下一個礦工將新的區塊新增到兩條鏈中的任一條來解決。首先被延伸的鏈將贏得網路共識,另一條鏈從而將被丟棄。用一個通用說法來解釋就是,最長的鏈是國王。包含在被丟棄的鏈上的區塊(通常只有一個)被稱為孤塊。孤塊上包含的交易(除非也被新增到最長鏈)則會被返回記憶體池,這是一種不確定狀態,所有未被確認的交易都等待被選擇並打包進一個新區塊。

如果一筆交易(無論是否來自孤塊)在記憶體池等待時間過長(幾天),該交易都將被取消,資金會被返還到傳送者錢包。這將可能導致雙花問題,最終用於購買商品或服務的交易會被取消,並且買家在保留原先購買的商品或服務的同時收回其資金。

為了避免雙花問題,只有在將一定數量的新區塊新增在該筆交易相關的區塊之上後,此交易才會被確認。在比特幣中,新區塊數被設定為6個。

現在我們已經瞭解所有的概念和術語了,可以來最終討論51%攻擊了。

51%攻擊

51%攻擊並不是試圖破壞或干擾共識協議,相反,它遵循協議規則幫助攻擊者更改區塊鏈的內容從而受益。

為了解釋如何實施51%攻擊,我們需要考慮以下情形。一組超過整個比特幣網路51%算力的礦工決定將自己從其它部分中分離,同時在自己的部分中保持通訊。

描述1:一組超過整個比特幣網路51%算力的礦工決定將自己從其它鏈中分離,同時在自己的鏈中保持通訊。

在切斷與其它部分的連線後,該組礦工將照常進行挖礦工作,不同的是,他們將不會與另外一組礦工共享任何進度,也不會收到另一組礦工的進度更新。換句話說,雖然在分離時,兩組礦工擁有相同的賬本副本,但是在分離後,兩組將開始彼此獨立延伸其內部共享的副本。

現在,哪個區塊鏈版本將更快被延伸?由於分離的組(攻擊者)算力已經超過剩餘部分,因此,它能比剩餘組更快的延伸自己的鏈副本。給定一定的時間,兩個版本的鏈的長度之差將與兩組雜湊算力之差在統計上成正比。

描述2:由於分離的組(攻擊者)擁有更大算力,因此他們能比剩餘部分更快地延伸其版本鏈。

如果現在分離組的礦工重新加入剩餘組,則該鏈的兩個競爭版本將在整個網路中廣播,根據共識協議規則,節點將保留較長版本鏈並刪除較短版本。這就意味著,從分離之時到重聚之時,剩餘組所挖的較短鏈上的區塊將被孤立,區塊上的交易(至少一部分交易)將被返還至記憶體池。

描述3:如果與網路分離的礦工重新加入剩餘組,且他們的區塊鏈版本更長,其將贏得共識。

如果被返還到記憶體池的交易被用於購買商品,這種情況將開啟雙花的可能性大門。最重要的是,最初從網路中分離出來的一組礦工可以阻止那些被選擇並打包進新區塊的交易,因為他們仍然擁有超過全網51%的算力。如果這些交易在記憶體池中停留時間超過一定時間限制(比特幣為72小時),則交易取消,資金會返還給原始接收者(買方錢包)。這時,買方將保留資金並獲得用這些資金購買的商品。如果51%攻擊是有預謀和協同進行的,攻擊者可能會利用這一尚未解決的雙花問題,擁有他們最終並沒有支付的商品。

作者 | Ettore Murabito
來源 | Medium
翻譯 | 頭等倉(First.VIP)轉載請保留文末資訊。
原文:https://medium.com/swlh/the-51-attack-what-is-it-d295e70b9ac4
稿源(譯):https://first.vip/shareNews?id=2255&uid=1

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;