✍️ Gate 廣場「創作者認證激勵計劃」進行中!
我們歡迎優質創作者積極創作,申請認證
贏取豪華代幣獎池、Gate 精美周邊、流量曝光等超過 $10,000+ 豐厚獎勵!
立即報名 👉 https://www.gate.com/questionnaire/7159
📕 認證申請步驟:
1️⃣ App 首頁底部進入【廣場】 → 點擊右上角頭像進入個人主頁
2️⃣ 點擊頭像右下角【申請認證】進入認證頁面,等待審核
讓優質內容被更多人看到,一起共建創作者社區!
活動詳情:https://www.gate.com/announcements/article/47889
在比特幣挖礦機制中發現了一個零日漏洞 - ForkLog:加密貨幣、人工智能、奇點、未來
自從啟動以來,比特幣的挖礦算法中存在一個計算錯誤,這個錯誤允許以極高的速度挖掘區塊。研究員 Loïc Morel 如此透露。
根據發布內容,該故障與難度調整機制有關
每 2016 個區塊 (大約每兩週),節點會重新計算目標值,以確保每 10 分鐘產生一個區塊,無論礦工的計算能力如何。為了進行這個調整,節點會測量上一個周期的持續時間,並將其與目標值 (2016 x 600 = 1,209,600 秒) 比較,然後相應地調整難度。
如果用 t0 表示第一個區塊的時間戳,t2015 表示最後一個區塊的時間戳,節點會計算經過的時間為 T = t2015 — t0。這樣就得到了 2015 個間隔 (從 t0 到 t1 > 從 t1 到 t2 > … > 從 t2014 到 t2015)。
為了得到 2016 個間隔,應該使用另一個公式:T = t2015 — t-1,其中 t-1 是上一個周期最後一個區塊的時間戳。
這被稱為「偏移一個單位」的錯誤。這個漏洞導致誤差約為 0.05%,使難度略微偏高。
但真正的問題在於另一個方面。這個缺陷導致調整周期不重疊——上一個周期的最後一個區塊的時間戳在計算下一個周期時未被考慮。
時間操控
這個差距使得「時間扭曲攻擊」成為可能。其原理如下:
多次重複此過程,攻擊者理論上可以將挖礦難度降低到每秒產生六個區塊 (而不是每 10 分鐘一個)。
如果第一個和最後一個區塊在兩個連續周期中相符,攻擊將變得不可能。
如何修復這個錯誤?
Morel 指出,可以通過 BIP-0054 框架內的軟分叉來修復此問題。
該方案規定,新周期的第一個區塊的時間戳不得超過上一周期最後一個區塊的時間戳超過兩個小時。
這個限制恢復了周期之間的「某種連續性」,防止時間操控,並使「時間扭曲攻擊」變得不可行。
提醒一下,去年 2 月,Castle Island Ventures 的合夥人 Nick Carter 預測比特幣可能因量子威脅而出現「企業接管」。