14

There is now "Bloom filter" support in the network protocol for sending only relevant transactions to lightweight clients.

What are the privacy implications of the bloom filter? Does it leak any information about which keys I am interested in to the network?

Pieter Wuille
  • 98,249
  • 9
  • 183
  • 287
Thilo
  • 4,751
  • 5
  • 25
  • 37

2 Answers2

11

It inevitably leaks information, but Bloom filters have a (controllable) false-positive rate. So a wallet client that is very concerned with privacy could make the false positive rate high enough so it becomes hard to distinguish which transactions the client was interested in.

Pieter Wuille
  • 98,249
  • 9
  • 183
  • 287
6

I know it is an old question, but it deserves an updated answer.

Since the introduction of BIP37 (=SPV with bloom filters) a number of serious privacy vulnerabilities have been discovered. By using SPV + address bloom filters you are exposing all the addresses of your wallet with every Blockchain surveillance company.

The reason behind this near perfect privacy breach is the combination of network analysis and various clustering strategies.

I conducted some research on the topic, which you can check out here. This medium post includes every possible references on the topic to date, of which I'd like to highlight Nick Jonas's Privacy in BitcoinJ blog post/video presentation and research paper.

Solutions include using a full node, a full-SPV node or BIP157/BIP158 client side filtering.

nopara73
  • 796
  • 5
  • 21