BIP-158 compresses information that helps light clients find relevant blocks. Its probabilistic matching must not be confused with verification of the actual transaction.
What the primary record establishes
BIP-158 specifies compact block filters for the BIP-157 light-client protocol, using Golomb-Rice coding. The basic filter includes specified output scripts and scripts of spent previous outputs, with defined exclusions such as OP_RETURN outputs. Bitcoin BIP-158 — Compact Block Filters for Light Clients ↗
The design explicitly considers false positives and the bandwidth spent downloading blocks because of them. A positive filter match can therefore be a candidate requiring further inspection; it is not itself evidence that the wallet received a particular payment. Bitcoin BIP-158 — Compact Block Filters for Light Clients ↗
What the distinction changes
For a wallet interface, discovery and verification are different stages. A filter can guide what to fetch next. The application then needs the relevant block and transaction evidence before displaying a confirmed incoming transfer or changing spendable balance.
An illustrative filter hit followed by no relevant transaction is not automatically an attack or a lost payment. False positives are part of the specified construction. Conversely, a product should not use that possibility to avoid investigating inconsistencies in the actual data it receives.
What to check before drawing a conclusion
Keep the filter, block reference and transaction-level result distinguishable in diagnostic records. Validate against the relevant protocol and chain assumptions. A short data structure or a successful matching call does not replace the consensus and transaction checks required by the application.
WFN’s analysis concerns the boundary of the filter’s evidence. It does not certify a light-client implementation or assert a measured false-positive rate for a particular service. A payment claim needs the transaction record, not merely a discovery signal.
