BIP 158
BIP 158, part of BIP-157/158, introduces a method for nodes to generate small filters that let lightweight clients check if relevant transactions are in a block. These filters, often called “Neutrino filters,” avoid the privacy leaks of Bloom filters used in older SPV approaches.
Lightweight wallets can download these compact filters from nodes, then figure out locally which blocks contain their transactions without revealing their addresses or keys. This approach reduces bandwidth while significantly improving user privacy, marking a big leap in SPV technology compared to BIP 37’s Bloom-based filters.