Gate 廣場|2/27 今日話題: #BTC能否重返7万美元?
🎁 帶話題發帖,抽 5 位幸運兒送出 $2,500 仓位體驗券!
Jane Street 被起訴後,持續多日的“10 點砸盤”疑似消失。BTC 目前在 $67,000 附近震盪,這波反彈能否順勢衝回 $70,000?
💬 本期熱議:
1️⃣ 你認為訴訟與“10 點拋壓”消失有關嗎?市場操縱阻力是否減弱?
2️⃣ 衝擊 $70K 的關鍵壓力區在哪?
3️⃣ 你會在當前價位分批布局,還是等待放量突破再進場?
分享觀點,瓜分好禮 👉️ https://www.gate.com/post
📅 2/27 16:00 - 3/1 12:00 (UTC+8)
比特幣交易可塑性:理解協議漏洞
想像一下你向某人發送比特幣,卻發現交易似乎無限期卡住。資金尚未到帳,支付系統也沒有任何交易ID的記錄。這種情況揭示了比特幣架構中一個微妙但可能嚴重的問題:交易可塑性(transaction malleability)。這個現象允許在區塊鏈確認之前,交易的唯一識別碼(TXID)被修改,造成操作上的困擾與安全風險,這些問題曾困擾著交易所與用戶。
交易可塑性定義:TXID 如何被改變
交易可塑性發生在一筆交易的數位指紋——交易ID(TXID)——可以在交易完成區塊鏈確認前被更改。關鍵是,這個修改並不影響交易的基本資料:發送者、接收者或金額都保持不變。真正被改變的是用來識別交易的哈希值,也就是那個獨一無二的標識符。
這個漏洞的技術根源在於比特幣的簽名機制。當一筆交易被數位簽名時,簽名本身並未涵蓋所有交易資料。特別是,scriptSig欄位(包含解鎖腳本)未被簽名保護。這個漏洞留下了空隙:第三方可以微妙地修改某些交易組件,而不使交易失效,從而改變其哈希值,也就是TXID。
實務上,這對支付處理商與交易所來說尤其麻煩。如果系統依賴TXID來驗證交易,一個被修改的ID可能會讓系統誤以為支付未完成——即使比特幣已成功在鏈上轉移。
根本原因:為何交易可塑性仍然存在
交易可塑性並非偶然,它源自比特幣交易構建與驗證方式的特定設計特性。
數位簽名覆蓋範圍不足:比特幣的數位簽名方案,雖然能確保交易的真實性,但故意不涵蓋整個交易內容。這使得scriptSig與其他欄位可以在不破壞簽名有效性的情況下被修改。
彈性的欄位編碼:比特幣的交易格式允許某些資料有多種有效的表示方式。腳本與簽名可以用不同的編碼方式(壓縮或非壓縮、多種編碼方案)來表示,但功能上相同。改變編碼會改變二進位表示,進而改變哈希值,但不影響交易的有效性。
預確認漏洞窗口:在交易被封入區塊鏈之前,它會在網路中以未確認狀態流通。在這段時間內,轉發節點與其他網路參與者理論上可以攔截並修改這些可塑的部分,因為這些改動不會破壞交易的基本完整性。
攻擊手法:交易可塑性利用的類型
多年来,攻擊者以創意方式利用交易可塑性:
資料操控攻擊:駭客修改非關鍵的交易組件,造成交易狀態混亂,同時保持交易本身有效。雖然不會直接竊取資金,但會干擾交易所運作與破壞網路信任。
重複發票方案:攻擊者創造合法交易ID或發票的完美複製品,誘騙用戶或商家重複付款。攻擊者聲稱第一次付款失敗,受害者不知情地再次支付。
手續費抽取:透過修改交易手續費資訊,攻擊者可能降低或重定向手續費到自己控制的地址。雖然較為理論,但此漏洞揭示了交易構建彈性中的弱點。
TXID 交換:改變交易ID,使收款方誤以為付款未成功,促使他們重新發送資金。這種操控會造成交易失敗的假象,誘使重複付款。
偽雙重支付:雖然真正的雙重支付需突破比特幣的共識機制,但交易可塑性能促成混淆攻擊,讓修改後的交易看似獨立的另一筆交易。收款方可能誤接受兩個版本,認為是獨立的付款。
實例分析:Mt. Gox 案
交易可塑性最臭名昭著的案例是東京的交易所Mt. Gox,曾處理全球約70%的比特幣交易。
2014年,Mt. Gox遭遇嚴重安全漏洞。攻擊者利用交易可塑性修改交易,成功提取約85萬比特幣(當時約值4.5億美元)。攻擊手法是在交易完成前修改交易內容,然後重新提交到網路。這些被修改的交易因ID不同,系統無法匹配原始出金交易,導致交易所誤以為提款失敗。結果,Mt. Gox再次發送相同的比特幣,實際上已經被盜,最終導致資金枯竭與破產。
這不僅是財務損失,更暴露了比特幣設計與Mt. Gox操作安全的根本漏洞。交易所無法追蹤資金,因TXID變動而崩潰,整個行業因此開始重視交易安全與網路漏洞。
安全影響:後果與網路風險
交易可塑性對比特幣生態系統產生多方面影響:
交易所運作壓力:可塑性可能導致交易確認延遲。依賴TXID匹配的交易所與支付系統,ID變更會造成未被識別的交易與結算延遲,形成擴展瓶頸。當交易處理變慢,整個網路的容量也會受到限制。
用戶體驗下降:用戶發起交易後,確認時間延長,且缺乏與原始TXID相符的進度更新,造成不確定感,削弱信心。
詐騙風險:可塑性為詐騙提供途徑。攻擊者可修改交易,使其看似未被處理,誘使發送者重發付款。在更糟情況下,資金可能在TXID差異下被雙重花費。雖然比特幣的共識機制提供雙重支付的基本保護,但交易可塑性造成的操作混亂,可能在攻擊被偵測前暫時繞過這些保護。
信任崩潰:多次事件或公開的交易可塑性攻擊事件,可能削弱用戶對比特幣的信任,尤其是對於不熟悉技術細節的機構與一般用戶。
技術解決方案:從SegWit到下一代修正
比特幣社群已認識到交易可塑性是優先解決的漏洞,並推出多項技術方案。
Segregated Witness(SegWit):最具影響力的解決方案。SegWit重構交易存儲與簽名方式,將簽名資料(witness)與交易本體分離。這樣一來,TXID的計算不再包含簽名資料,徹底消除交易可塑性攻擊的主要途徑。此架構改造不僅提供了堅實的防護,也帶來交易大小縮減與擴展性提升的好處。
Schnorr簽名:一種新興的簽名技術,能在不依賴單獨數位ID的情況下驗證交易,進一步限制交易操控的可能性。
進階腳本模型:如Merkelized Abstract Syntax Trees(MAST),提供更複雜的交易腳本,降低可塑性攻擊的向量,同時降低交易費用並提升網路擴展性。
錢包與節點改進:除了協議層面,開發者也優化錢包軟體與節點實作,以更好處理未確認交易,減少對TXID的依賴,降低因可塑性引起的混淆。
結論
交易可塑性是一個微妙但重要的區塊鏈漏洞。雖然現代實作——特別是啟用SegWit的比特幣交易——已大幅降低此風險,但理解其原理仍對交易所、開發者與用戶自我保護至關重要。從Mt. Gox事件到今日的強化措施,彰顯了加密社群從漏洞中學習並強化基礎協議的能力。對於比特幣的參與者——無論是投資者或運營者——了解交易可塑性及其解決方案,有助於更智慧、更有韌性的參與網路。