發生什麼:把過濾政策交給營運者寫規則
Delving Bitcoin 用戶 bkeroack 於 2026-10-20(UTC)發文表示,他設計了一套交易過濾規則語言,並實作在 satd 中。satd 是以 Rust 撰寫、主打與 Bitcoin Core 相容的比特幣全節點,GitHub 最新正式版本為 2026-10-21 發布的 v0.6.3,採 MIT 授權。
按貼文說法,營運者可在節點設定中指定一個規則文字檔,每條規則對符合條件的交易做出「允許」或「隔離」判斷,並可選擇停止轉發、或不納入自己組裝的區塊模板;修改檔案後送出 SIGHUP 即可重新載入。貼文示範兩條規則:輸入見證中含 ordinals 標記且見證大於 1kb 的銘文,以及輸出 OP_RETURN 合計超過 80 位元組的交易。
不是新上線:0.4.0 已推出,本次是公開徵求意見
依 satd 0.4.0 版本說明,這套規則語言(policyfile= 設定)早在 2026-07-06 就以選用功能推出,未設定時節點行為與以往相同。10 月 20 日的貼文是向協議開發社群介紹設計並提出開放問題:是否需要更深入的交易解碼、是否支援受限的正規表示式,以及除了閃電網路之外還有哪些交易類型需要防護。
設計重點:成本有上限、隔離而非丟棄
作者說明這套語言刻意設計為成本有上限、非圖靈完備,以免規則本身拖垮節點。命中規則的交易不直接丟棄,而是放進另有容量預算的隔離區(手冊列出 quarantinemempool 預設 50MB);若父交易被隔離,子交易也一併隔離,使 CPFP 關係不會斷裂,處理 BIP 152 緊湊區塊時也不必再向對等節點補抓這些交易。
手冊另指出,若規則可能擋下閃電網路強制關閉、懲罰交易等時效性交易,節點預設拒絕載入,除非設定 allowdangerousfilters=1;營運者也可用 sat-cli policylint 離線檢查規則,並查看被隔離交易後來仍被確認的數量與放棄的手續費估計。
限制:開發者自己列出的反方論點
手冊直言,過濾不改變共識:只要仍有礦工接受,有效交易終會被確認。但它列出三項網路層風險:若熱門規則集被大量複製貼上而誤中強制關閉交易,可能在無聲中削弱閃電網路的執行;政策調整從需要軟體發布變成改設定檔,少了審查摩擦;被過濾的交易轉向礦池直送管道,可能讓權力集中到大型礦工。手冊也承認,從其他節點角度看,停止轉發的隔離節點與直接拒絕的節點無從分辨,閃電網路防護只能擋下已知樣態,不是保證。
AI 觀點分析與推論
AI 觀點:真正的變化是政策調整的速度,而不是過濾能力
我傾向認為,這套工具不會讓過濾在網路層變得更有效:手冊自己也寫明,只要仍有礦工接受,有效交易終會上鏈,而且隔離的過濾能力與直接拒絕一樣強、不更強。satd 真正改變的是政策成本,原本要改程式或換實作,現在改一個文字檔就能完成,而且有隔離區與統計,讓營運者看見自己選擇的代價。
受益者是想精細管理自家節點、或想「照常轉發但不自己挖」的小型礦工;風險承擔者則是閃電網路使用者,因為手冊自己承認防護只能涵蓋已知交易形狀。若未來出現被大量轉貼的 satd 規則集,或閃電網路實作開始回報強制關閉傳播異常,我會調高對網路層風險的判斷;反之,若 satd 使用者仍是小眾,這更像一個政策工具的設計範例,而非會改變網路的力量。




