📢 Gate廣場 #NERO发帖挑战# 秀觀點贏大獎活動火熱開啓!
Gate NERO生態周來襲!發帖秀出NERO項目洞察和活動實用攻略,瓜分30,000NERO!
💰️ 15位優質發帖用戶 * 2,000枚NERO每人
如何參與:
1️⃣ 調研NERO項目
對NERO的基本面、社區治理、發展目標、代幣經濟模型等方面進行研究,分享你對項目的深度研究。
2️⃣ 參與並分享真實體驗
參與NERO生態周相關活動,並曬出你的參與截圖、收益圖或實用教程。可以是收益展示、簡明易懂的新手攻略、小竅門,也可以是行情點位分析,內容詳實優先。
3️⃣ 鼓勵帶新互動
如果你的帖子吸引到他人參與活動,或者有好友評論“已參與/已交易”,將大幅提升你的獲獎概率!
NERO熱門活動(帖文需附以下活動連結):
NERO Chain (NERO) 生態周:Gate 已上線 NERO 現貨交易,爲回饋平台用戶,HODLer Airdrop、Launchpool、CandyDrop、餘幣寶已上線 NERO,邀您體驗。參與攻略見公告:https://www.gate.com/announcements/article/46284
高質量帖子Tips:
教程越詳細、圖片越直觀、互動量越高,獲獎幾率越大!
市場見解獨到、真實參與經歷、有帶新互動者,評選將優先考慮。
帖子需原創,字數不少於250字,且需獲得至少3條有效互動
比特幣將修復時間扭曲攻擊漏洞 提升網路安全性
比特幣修復漏洞:時間扭曲攻擊問題將得到解決
2025年3月26日,一位比特幣開發者提出了一項新的改進提案,旨在修復比特幣協議中存在已久的幾個漏洞和弱點。這個被稱爲"大共識清理"的軟分叉提案,除了解決重復交易問題外,還將修復一個更爲嚴重的漏洞 - "時間扭曲攻擊"。
比特幣區塊時間戳保護機制
在探討時間扭曲攻擊之前,我們先回顧一下當前的時間操縱保護規則:
中位過去時間(MPT)規則:區塊時間戳必須晚於最近十一個區塊的中位時間。
未來區塊時間規則:區塊時間戳不能比節點對等體的中位時間提前超過2小時。節點時間與本地系統時鍾的最大允許差異爲90分鍾。
MPT規則防止區塊時間戳過於回溯,而未來區塊規則則防止時間戳過於超前。值得注意的是,無法實施類似未來區塊規則來防止過去的時間戳,因爲這可能影響初始區塊鏈同步。時間扭曲攻擊正是通過僞造遠遠回溯的時間戳來實現的。
中本聰的計算誤差
比特幣的難度調整周期包含2016個區塊,以10分鍾區塊目標計算,約爲兩周時間。爲計算挖礦難度調整,協議計算2016區塊窗口中首末兩個區塊的時間戳差。這個窗口實際包含2015個區塊間隔(2016減1)。因此,正確的目標時間應爲60秒 × 10分鍾 × 2015個間隔 = 1,209,000秒。
然而,比特幣協議使用了2016這個數字來計算目標。60秒 × 10分鍾 × 2016 = 1,209,600秒。這是一個"差一"錯誤,很可能是中本聰混淆了區塊與區塊間隔的概念。
這個錯誤導致目標時間比應有的長0.05%。實際上,比特幣的目標間隔時間不是10分鍾,而是10分鍾零0.3秒。這個微小的誤差並不重要,事實上自比特幣誕生以來,平均區塊間隔一直是9分鍾36秒,明顯少於10分鍾。這是因爲自2009年以來,平均算力一直在增加。
時間扭曲攻擊
時間扭曲攻擊約於2011年首次被發現,利用了中本聰在難度計算中的錯誤。在這種攻擊中,假設挖礦完全中心化,礦工可以設置協議允許的任意時間戳。攻擊者會將大多數區塊的時間戳設置爲比前一個區塊僅提前一秒,使區塊鏈在時間上緩慢前進,同時遵守MTP規則。
爲了盡可能慢地推進時間,礦工可以連續六個區塊保持相同時間戳,然後在下一個區塊中將時間增加一秒,如此循環。這意味着區塊時間戳每六個區塊才向前移動一秒。
這種攻擊會使區塊鏈越來越落後於真實時間,難度會增加,使挖礦變得更加困難。然而,爲增強攻擊效果,在每個難度調整周期的最後一個區塊中,礦工將時間戳設置爲真實世界時間。下一個區塊(即新難度調整窗口的第一個區塊)隨後被設置回過去,比前一個難度調整窗口的倒數第二個區塊提前一秒。這仍符合MTP規則,因爲單個異常不會影響11個區塊的中位數。
進行這種攻擊時,第一個週期後的難度不會受到影響。然而,在攻擊開始後的第二個調整周期之後,難度將開始向下調整。隨後礦工可以以極快的速度創建區塊,可能產生大量比特幣,然後出售獲利。
攻擊可行性與解決方案
雖然理論上這種攻擊可能造成毀滅性後果,但實施起來存在一些挑戰。執行攻擊可能需要控制大部分算力。如果有誠實的礦工輸入真實時間戳,攻擊難度會大大增加。MTP規則和誠實礦工的時間戳可能會限制惡意礦工操縱時間戳的程度。此外,如果誠實的礦工產生任何難度調整窗口的第一個區塊,該週期的攻擊將無法奏效。
另一個可能使攻擊更難執行的因素是,它對所有人都是可見的。任何人都能看到時間戳的異常,在難度向下調整之前必須操縱四周的時間戳,這可能給我們時間推出緊急軟分叉修復。
爲解決這個漏洞,開發者提出了一個相對簡單的解決方案。新的提案要求新難度週期的第一個區塊的時間不早於前一周期最後一個區塊之前的特定分鍾數。目前討論的時間範圍從10分鍾到2小時不等。在最新的大共識清理提案中,這個時間被設定爲2小時。
這個2小時的限制僅約爲難度調整周期目標時間的0.6%,因此大大限制了操縱難度向下的能力。這一修改既能有效防止時間扭曲攻擊,又能最大限度地降低意外產生無效區塊的風險,同時與現有的未來區塊時間戳規則保持一致。
通過實施這一改進,比特幣網路將能夠更好地抵御潛在的時間扭曲攻擊,進一步增強其安全性和穩定性。