summaryrefslogtreecommitdiff
path: root/bip-0111.mediawiki
diff options
context:
space:
mode:
authorAndy Chase <asperous2@gmail.com>2015-08-26 01:15:19 -0700
committerAndy Chase <asperous2@gmail.com>2015-08-26 01:17:18 -0700
commit94db3f90c39b38ff04adb9ca43ff577340283eef (patch)
tree6bed98a775998ddb287c9bf28385efc44eea810f /bip-0111.mediawiki
parentb1d5a37f589c6bbb39701481cb00fa949148237b (diff)
downloadbips-94db3f90c39b38ff04adb9ca43ff577340283eef.tar.xz
bip-111 convert formatting to mediawiki
Diffstat (limited to 'bip-0111.mediawiki')
-rw-r--r--bip-0111.mediawiki45
1 files changed, 19 insertions, 26 deletions
diff --git a/bip-0111.mediawiki b/bip-0111.mediawiki
index 52bec36..af9e394 100644
--- a/bip-0111.mediawiki
+++ b/bip-0111.mediawiki
@@ -1,11 +1,13 @@
-BIP: 111
-Title: NODE_BLOOM service bit
-Author: Matt Corallo <bip@bluematt.me>, Peter Todd <pete@petertodd.org>
-Type: Standards Track (draft)
-Created: 20-08-2015
+<pre>
+ BIP: 111
+ Title: NODE_BLOOM service bit
+ Author: Matt Corallo <bip@bluematt.me>, Peter Todd <pete@petertodd.org>
+ Status: Draft
+ Type: Standards Track
+ Created: 2015-08-20
+</pre>
-Abstract
-========
+== Abstract ==
This BIP extends BIP 37, Connection Bloom filtering, by defining a
service bit to allow peers to advertise that they support bloom filters
@@ -14,24 +16,24 @@ identify old nodes which allow bloom filtering of the connection despite
lacking the new service bit.
-Motivation
-==========
+== Motivation ==
BIP 37 did not specify a service bit for the bloom filter service, thus
implicitly assuming that all nodes that serve peers data support it.
However, the connection filtering algorithm proposed in BIP 37, and
implemented in several clients today, has been shown to provide little
-to no privacy[1], as well as being a large DoS risk on some nodes[2].
+to no privacy<ref>http://eprint.iacr.org/2014/763</ref>, as well as being a large DoS risk on some nodes<ref>[http://lists.linuxfoundation.org/pipermail/bitcoin-dev/2013-July/003044.html] is one example where the issues were found, though others independently discovered issues as well. Sample DoS exploit code available at https://github.com/petertodd/bloom-io-attack.</ref>.
Thus, allowing node operators to disable connection bloom filtering is a
much-needed feature.
-Specification
-=============
+== Specification ==
The following protocol bit is added:
+<pre>
NODE_BLOOM = (1 << 2)
+</pre>
Nodes which support bloom filters should set that protocol bit.
Otherwise it should remain unset. In addition the protocol version is
@@ -57,8 +59,7 @@ services required; current implementations simply check only that
NODE_NETWORK is set.
-Design rational
-===============
+== Design rational ==
A service bit was chosen as applying a bloom filter is a service.
@@ -70,23 +71,15 @@ sufficient NODE_BLOOM nodes available and SPV clients have upgraded,
allowing node operators to fully close the bloom-related DoS vectors.
-Reference Implementation
-========================
+== Reference Implementation ==
https://github.com/bitcoin/bitcoin/pull/6579
-Copyright
-=========
+== Copyright ==
This document is placed in the public domain.
-References
-==========
-
-[1] http://eprint.iacr.org/2014/763
-[2] http://lists.linuxfoundation.org/pipermail/bitcoin-dev/2013-July/003044.html
-is one example where the issues were found, though others
-independently discovered issues as well. Sample DoS exploit code
-available at https://github.com/petertodd/bloom-io-attack.
+== References ==
+<references>