Definition: A Bloom filter is a probabilistic data structure which allows to test if an element is a member of a set.
Phase 0: Filter Setup –> The filter is initialized with n buckets and filled with a 0. Additionally, the hash-functions used are defined.
Phase 1: Element addition –> The content of the element that should be added is hashed and the buckets corresponding to the output(s) of the hashfunction(s) are set to 1.
Phase 2: Element Validation –> Search if an element is contained in the filter. Therefore, the element’s content is hashed and it gets checked wether the corresponding buckets to the output are all containing a 1 (boolean: true).
Risk: Occurence of false positives. –> It may happen, that the output of an element to be validated hashes to buckets which are all set to 1 even though these 1s were set by other elements. The validation would then return a true even though the element is not contained.