比特幣生態火熱,鏈上交易堵塞問題如何解決?
星球君的朋友们
2023-11-07 12:00
本文约1992字,阅读全文需要约8分钟
比特幣生態玩家必看指南

原文作者:pepper 花椒(X:@off_thetarget)

編按: 11 月7 日,幣安宣布將上線Ordinals(ORDI),重新點燃了Ordinals 的賽道熱情。比特幣生態再次備受社群關注,鏈上手續費也持續飆升。隨著越來越多玩家湧入比特幣生態,鏈上交易堵塞也成為了潛在的問題。 X KOL pepper 花椒(X:@off_thetarget)發文詳解了BTC 鏈上交易堵塞問題以及相關解決方案,Odaily整理如下:

BTC 生態又火起來了,鏈上手續費飆升,隨著大批的ETH 小伙伴的加入,BTC 鏈上交易“堵住了”一直是個問題。

什麼是「堵塞」交易?它們是如何引起的?

「卡住」交易是指在一段時間內未被確認的交易,交易停滯通常是由於交易費率低造成的。然而,其他事情也可能導致交易停滯,例如未經確認的交易支出、交易中存在灰塵輸出或另一筆交易的雙重支出。

如果一筆交易存在雙花交易並且雙花確認,那麼該交易將永遠“卡住”,因為它永遠無法確認。

我該怎麼做才能確認我卡住的交易?

有幾個選項可用於確認卡住的交易:

對於交易的接收者和發送者:

✦等待交易確認✦等待網絡「忘記」該交易✦請礦工幫你確認

對於交易的發送方:

✦嘗試進行費用替換雙花交易✦如果有找零輸出,可以嘗試「Child-Pays-For-Parent 兒童為家長付款」交易

對於交易的接收者:

✦嘗試「子女為父母付款」交易

等待確認

如果無法執行任何其他選項,也不敢這樣做,可以簡單地等待並希望交易最終得到確認。

為了確保網絡不斷收到交易提醒,可以定期重播交易。大多數錢包會自動重新廣播,因此只需打開錢包即可重新廣播即可。

等待網路「忘記」交易

如果交易長時間未確認,並且沒有人重新廣播該交易,那麼它最終可能會被比特幣網絡上的大多數節點“忘記”。

發生這種情況是由於節點重新啟動、內存池到期時間或內存池驅逐(因為最低中繼費用增加)。此過程通常需要幾天(通常為3 天)。一旦交易被“遺忘”,你可能不會在錢包中看到它,也可能不會在大多數區塊瀏覽器中看到交易。一旦交易被“忘記”,只需再次發送比特幣即可,但需要支付更高的交易費用。

請注意,某些錢包會在錢包打開時不斷重新廣播交易,因此必須使用RBF 部分中的說明參考從錢包中刪除交易,或者關閉錢包並保持關閉幾天,具體可以參考RBF 部分。

向礦工尋求協助

礦池和礦工會提供一些服務,允許在其內存池中確定交易的優先級,以便更快地選擇將其包含在區塊中。

例如,可以嘗試使用https://viabtc.com/tools/txaccelerator/…來「加速」交易。

(ViaBTC 的加速我沒有使用過,僅僅列出作為參考)

另請注意,如果您嘗試進行費用替換交易,原始交易和RBF 交易都將被視為雙花,礦工可能不會幫助任何標記為雙花的交易。

嘗試進行費用替換(RBF) 雙花交易

什麼是RBF 交易

費用替換交易是與您的卡住交易幾乎相同但支付更高交易費用的交易。由於原始交易很可能不使用選擇加入RBF,因此我們將建立的RBF 交易將被視為雙花並標記為雙花。該交易使用Full-RBF,因此可能仍需要更長的時間來確認,因為它在技術上是雙重支出。

RBF 交易類型的區別

Replace-By-Fee 交易有3 種不同類型,First-Seen-Safe(FSS) RBF、Full RBF 和Opt-in RBF。

FSS RBF 要求RBF 交易包含與其替換的交易相同的輸出並消耗相同的輸入。

Full RBF 意味著該交易只是另一筆交易的雙重支出,但支付的交易費用比它所取代的交易更高

Opt in RBF 表示RBF 交易只能取代已選擇加入允許自身被取代的交易。

可以參考https://github.com/bitcoin/bips/blob/master/bip-0125.mediawiki…

如何進行完整RBF 交易

進行完整RBF 交易完全取決於你所使用的錢包。有些錢包支援進行完整RBF 交易所需的高級功能,而其他錢包則不支援。

一般來說,流程是從錢包中刪除未確認的交易,然後重新發送比特幣,但交易費用較高。

進行Full RBF 交易,交易應包含建立交易時的建議費率

比特幣核心RBF 教程

只需進入交易列表,右鍵單擊被卡住的交易,然後選擇“放棄交易”選項。

如果該選項呈灰色,則必須前往Bitcoin Core datadir 並刪除mempool.dat 檔案。

然後使用-walletbroadcast= 0 選項重新啟動Bitcoin Core,然後就應該能夠使用「放棄交易」。

如果上面的都不行,請使用-zapwallettxes 選項啟動Bitcoin Core,以清除錢包中所有未確認的交易。

一旦交易被放棄或從錢包中清除,只需轉到「發送」標籤並再次發送比特幣,但請確保包含足夠的交易費用。

不支援RBF 的錢包

大多數錢包不支援RGF,具體可以參考每個錢包的doc 文件。

如果不確定錢包是否能做CPFP 或RBF,可參考

如果你是發起比特幣交易的人,而且有一個收到足夠錢來支付父交易和子交易手續費的找零地址,你也可以進行"子交易付費"(CPFP)交易。如果沒有或金錢不夠,只有收款方可以進行CPFP。

Electrum 錢包支援RBF,你可以把交易轉移到其他支援RBF 的錢包。建立交易時,你可以選擇啟用RBF->在歷史記錄選項卡里->交易會被標記為可替換的。右鍵點擊可替換的交易時,你可以增加手續費(具體的圖標和描述我記不太清楚了,因為我只試過一次)。

因為你是用未確認的輸入來實現RBF,幾乎任何可以匯出私鑰/擴展私鑰(xprv)的錢包都應該能夠執行RBF。這包括http://Blockchain.info、Multibit、Android上的Bitcoin 錢包等錢包。當然,這個過程會變得很麻煩,因為你必須先取得掛起交易中使用的地址的私鑰,然後匯入到Bitcoin Core 裡,然後產生原始交易、簽名並廣播。

關於“等待互聯網“遺忘”交易”,也許你應該加個警告,有些錢包(例如Bitcoin Core)會繼續廣播交易,除非你放棄它或清除錢包交易。

原文連結

星球君的朋友们
作者文库