Skip to main content
£0.00 0

Basket

No products in the basket.

ASIC mining articles and advice

BIP 37 Bloom Filters Explained for Bitcoin Peer Connections

BIP 37 Bloom filters explained: review filtered-block relay, false positives, privacy leakage, resource risk and why modern clients moved away.

BIP 37 Bloom filters guide cover

This guide explains BIP 37 Bloom filters in plain English. It covers the problem behind the BIP, why it matters and whether the proposal is part of Bitcoin today.

TL;DR

  • What it is: BIP 37 Bloom filters allowed a lightweight Bitcoin client to ask a full peer for transactions and merkle-block proofs likely to match its wallet. Probabilistic false positives were intended to obscure the exact interest set while reducing bandwidth.
  • Why it matters: BIP 37 was an important lightweight-wallet milestone, but its server-side interest filters leak more information and consume more peer resources than the original intuition suggested. New systems should favour client-side compact filters or their own validating node, while legacy support is carefully bounded and tested.
  • Current position: BIP 37 Bloom filters allowed a lightweight Bitcoin client to ask a full peer for transactions and merkle-block proofs likely to match its wallet.

BIP 37 Bloom filters in simple English

BIP 37 Bloom filters: Remote filters require a full node to scan transaction data and maintain per-peer state. Attackers can choose costly filters or repeatedly update them.

Simple example

A node operator is checking BIP 37 Bloom filters. A client must not assume that a random modern Bitcoin peer offers BIP 37. False positives are expected.

Key terms in plain English

BIP:
Bitcoin Improvement Proposal: a document describing a proposed rule, standard or process. Its status must be checked separately.
Node:
A computer running Bitcoin software that checks data and communicates with other peers.

The lightweight-client problem

A client that does not download every block still needs evidence that relevant transactions were confirmed. Asking a peer for exact addresses or outpoints reveals the wallet immediately. BIP 37 lets the client upload a probabilistic filter and receive matching transactions plus partial merkle proofs, reducing data compared with full blocks while attempting to add cover traffic.

Bloom filter properties

A Bloom filter is a bit field updated by several hash functions. It can say that an element is definitely absent or possibly present. False positives are expected; false negatives should not occur when construction and updates are correct. Filter size, number of hash functions and tweak influence the false-positive rate and resource cost.

Filterload and filtered blocks

A client sends filterload to install its filter, can add elements with filteradd and clear state with filterclear. It requests filtered blocks and receives merkleblock messages containing the block header, partial merkle tree and matched transaction identifiers, followed by relevant transactions. The client must validate proof of work, header chain and merkle reconstruction.

BIP 37 Bloom filters technical diagram
Filterload and filtered blocks: the fields, validation boundary and operational evidence that implementations need to agree.

Why privacy was weaker than expected

Peers can combine filter contents, connection timing, requested history and later filter updates to infer wallet addresses and transaction graph. Low false-positive settings make matching more precise, while high rates increase bandwidth without guaranteeing anonymity. Connecting through several observers can spread rather than remove leakage when results are correlated.

Peer resource and abuse risk

Remote filters require a full node to scan transaction data and maintain per-peer state. Attackers can choose costly filters or repeatedly update them. Implementations added service flags, limits and eventually disabled serving by default in common configurations. A client must not assume that a random modern Bitcoin peer offers BIP 37.

Compact block filters as the newer model

BIP 157 and BIP 158 let servers provide deterministic compact filters for blocks. The client downloads filters and performs matching locally, so it does not upload its wallet interest set to each peer. It may then fetch relevant full blocks. This changes bandwidth and trust trade-offs but substantially improves query privacy.

How specialists test it

Developers test the proposal with made-up data on an isolated test network. They check normal cases and deliberately invalid cases. Different implementations should reach the same result before anyone relies on the proposal.

Frequently asked questions

What is the main point of BIP 37 Bloom filters?

BIP 37 Bloom filters: Remote filters require a full node to scan transaction data and maintain per-peer state.

For BIP 37 Bloom filters, what should a beginner know about the lightweight-client problem?

A client that does not download every block still needs evidence that relevant transactions were confirmed.

For BIP 37 Bloom filters, what should a beginner know about bloom filter properties?

A Bloom filter is a bit field updated by several hash functions.

For BIP 37 Bloom filters, what should a beginner know about filterload and filtered blocks?

A client sends filterload to install its filter, can add elements with filteradd and clear state with filterclear.

Conclusion

BIP 37 was an important lightweight-wallet milestone, but its server-side interest filters leak more information and consume more peer resources than the original intuition suggested. New systems should favour client-side compact filters or their own validating node, while legacy support is carefully bounded and tested.

Primary sources

Check the current specification status and the documentation for the exact implementation you operate before moving production funds or changing a mining node.

ASIC MINER PICKS

Recommended ASIC Mining Hardware

Compare three of our highest ranked ASIC miners currently available, with live product details and pricing.
Overall ranking
Equihash
·
ZEC
Overall rank#1of 100AvailableAll: #3 / 831
Bitmain Antminer Z15K 525KSol Equihash Zcash Miner
Bitmain
Pre-Order
Hashrate
525KSOL
Efficiency
4.73W/KSOL
Power
2483W
Earns/kWh
41.5p
Free Shipping
Price · delivered
£6,050.00
ex VAT
Est. per month
£751.05
Payback 8.1 Months
Overall ranking
Equihash
·
ZEC
Overall rank#2of 100AvailableAll: #4 / 831
Bitmain Antminer Z15 Pro 800KSol Equihash Zcash Miner
Bitmain
In stock
Hashrate
800KSOL
Efficiency
3.3W/KSOL
Power
2640W
Earns/kWh
59.4p
Price · delivered
£11,925.00
ex VAT
Est. per month
£1144.46
Payback 10.4 Months
Overall ranking
SHA-256
·
BTC
Overall rank#6of 100AvailableAll: #9 / 831
Bitmain Antminer S23e Hydro 2U 865Th SHA-256 Bitcoin Miner
Bitmain
Pre-Order
Hashrate
865TH
Efficiency
10W/TH
Power
8650W
Earns/kWh
13.2p
Free Shipping
Price · delivered
£9,382.50
ex VAT
Est. per month
£835.74
Payback 11.2 Months
Browse all ASIC miners
MORE MINING ADVICE

More ASIC Mining Articles

Read practical advice about choosing hardware, calculating electricity costs, setting up miners, hosting and maintenance.
MINER COMMUNITY

Join the ASIC Mining Discussion

Ask a question or share what has worked for you. Your experience may help another miner make a better decision.

Members can read and join the discussion

Log in to read comments from other miners. Create a free account if you would like to ask a question or share your experience.

Log in to read comments Register to join the discussion

Membership helps us protect the discussion from spam and keep answers useful.

ASIC MINING SUPPORT

Need Help Choosing an ASIC Miner?

Tell us what you want to mine, your electricity cost and where the machine will run. We can help you compare hardware, power requirements, hosting and repairs.
Contact our mining team
Browse ASIC miners