什麼是毒塊攻擊?

買賣虛擬貨幣
本文將解釋與鏈上網路擴容、區塊傳播和其它主題相關的技術概念。2009年,世界上的第一個比特幣節點誕生了。在這裡,節點指的是執行了可以為比特幣網路提供服務的專門軟體的計算機。隨後交易將會被儲存到區塊中並向網路廣而告之,這個區塊隨後將會被傳播到網路上的所有節點。由於使用者對比特幣的需求不斷增加,一個區塊可能無法儘快傳播到各個節點。
透過緻密區塊來擺脫傳播困境並解決其它的新問題比特幣核心開發人員已經認識到了上述問題,並研究出了被稱作緻密區塊的解決方案。這個方案非常簡單。緻密區塊方案僅公告交易的識別符號列表,而不是在比特幣網路上公告每一筆交易。由於幾乎所有的交易都會被每個節點所儲存,因此接收到公告資訊的節點可以找到已經識別的交易並據此構建區塊,然後再安全地驗證區塊的有效性。如果缺少任何交易,該節點還可以從關聯節點申請這些交易的資料。緻密區塊可以減少對頻寬的要求,但它會引入了一個可能的新步驟——申請缺失的交易的資料。由於申請缺失的新交易的資料需要雙向溝通,因此它可能會造成延遲。Bitcoin Unlimited已經計劃降低對申請缺失交易的資料的需求了。舉個例子,如果區塊需要某個節點的資料,那麼包含所有已知交易的布隆過濾器就會傳送申請。這樣一來,傳送資料的節點就可以預測到申請資料的節點缺失了哪一筆交易並將交易的識別符號列表發回給後者。這樣的操作也稱Xtreme thinblocks或Xthin傳播。毒塊攻擊延緩區塊傳播
上述協議和之前的另一篇文章中提及的Graphene協議都依賴於可傳播交易資訊的節點,並以此提高區塊傳播的效率。但如果交易資料不可用,那麼這些協議最終將無法提高區塊傳播的效率。實際上,礦工可以選擇將區塊中的交易儲存到尚未向網路廣而告之的區塊,即所謂的毒塊。它不僅會使區塊傳播無法加速,而且,失敗的區塊傳播加速還會延遲實用資訊的共享。因此,毒塊將會導致網路上的卡頓,有些節點可能已經更新了建立時間更早的某些區塊的資訊,而有些區塊還需要繼續跟進。在這種情況下,毒塊更有可能成為孤塊並被網路所忽略。毒塊只能由礦工建立。不過,在考慮到經濟激勵的情況下,礦工一般都不願意建立毒塊。換句話說,網路有著足夠的靈活性來抵制毒塊並維持網路的正常執行。

免責聲明:

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

推荐阅读

;