Unconfirmed-Transactions
使用緊湊塊過濾器的輕客戶端如何獲得相關的未確認交易?
我正在討論各種輕客戶端模型,我們進入了未經確認的交易。使用基於 BIP37 的布隆過濾器,輕客戶端將通過將其過濾器送出給全節點來訂閱來自全節點對等方的更新。BIP37 過濾器可以應用於記憶體池,並且一個完整的節點可以通知輕客戶端未確認的交易。
據我了解,緊湊塊過濾器(CBF)僅針對已確認的塊創建。這意味著基於 CBF 的輕客戶端只會在確認後聽到交易,除非他們有另一種機制來聽到未確認的交易。跟上記憶體池會產生大量流量。基於 CBF 的輕客戶端如何在沒有基於 BIP37 的錢包的所有缺點的情況下了解相關的未確認交易?
Neutrino / BIP157 中沒有針對未經確認的交易進行設計考慮,但這並不是對上下文的讓步。輕錢包實際上無法處理有關未確認交易的資訊,因為他們無法驗證任何有關其有效性的資訊。充其量只是暗示交易可能已經發生,但這甚至比發送到完全驗證錢包的正常未經確認的交易還要弱。
“SPV”錢包一直存在一個問題,即它們可能會被欺騙以顯示完全荒謬的虛假數據,尤其是對於 BIP37 來說,它完全有可能嗅探傳入的過濾器並動態生成支付給可能與之匹配的地址的交易數十億美元. 客戶端雖然很笨,但只能將它們展示給使用者,並希望使用者的常識佔上風。