BloomFilter is a probabilistic filter which SPV clients provide so that we can filter the transactions we send them.

Synopsis

Declared in <common/bloom.h>

class CBloomFilter;

Description

This allows for significantly more efficient transaction and block downloads.

Because bloom filters are probabilistic, a SPV node can increase the false‐ positive rate, making us send it transactions which aren't actually its, allowing clients to trade more bandwidth for more privacy by obfuscating which keys are controlled by them.

Member Functions

Name

Description

CBloomFilter [constructor]

Constructors

IsRelevantAndUpdate

Also adds any outputs which match the filter to the filter (to match their spending txes)

IsWithinSizeConstraints

True if the size is <= MAX_BLOOM_FILTER_SIZE and the number of hash functions is <= MAX_HASH_FUNCS (catch a filter which was just deserialized which was too big)

contains

contains overloads

insert

insert overloads

Created with MrDocs