diff options
author | fanquake <fanquake@gmail.com> | 2019-07-19 16:06:23 +0800 |
---|---|---|
committer | fanquake <fanquake@gmail.com> | 2019-07-19 17:33:56 +0800 |
commit | 59ce537a4994a8f49a9dbdf2b3cec0b08041260b (patch) | |
tree | 550b4a1c9ef2d10622bcd4ae9e2b71036a1206cc /src | |
parent | 89d7229c9c188703dc7e6aa5337a531e2277f547 (diff) | |
parent | bead32e31e399090af30b2ee3539995d4105a66d (diff) |
Merge #16152: Disable bloom filtering by default.
bead32e31e399090af30b2ee3539995d4105a66d Add release notes for DEFAULT_BLOOM change (Matt Corallo)
f27309f55c4fa2b115525d72abb280757a568709 Move DEFAULT_PEERBLOOMFILTERS from validation.h to net_processing.h (Matt Corallo)
5efcb772838e404ca5757818d5548efcb872724b Disable bloom filtering by default. (Matt Corallo)
Pull request description:
BIP 37 bloom filters have been well-known to be a significant DoS
target for some time. However, in order to provide continuity for
SPV clients relying on it, the NODE_BLOOM service flag was added,
and left as a default, to ensure sufficient nodes exist with such a
flag.
NODE_BLOOM is, at this point, well-established and, as long as
there exist 0.18 nodes with default config (which I'd anticipate
will be true for many years), will be available from some peers. By
that time, the continued slowdown of BIP 37-based filtering will
likely have rendered it useless (though this is already largely the
case). Further, BIP 37 was deliberately never updated to support
witness-based filtering as newer wallets are expected to migrate to
some yet-to-be-network-exposed filters.
ACKs for top commit:
jnewbery:
ACK bead32e31e399090af30b2ee3539995d4105a66d
kallewoof:
ACK bead32e31e399090af30b2ee3539995d4105a66d
Tree-SHA512: ecd901898e8efe1a7c82b471af0acc2373c2282ac633eb58d9aae7c35deda1999d0f79fb0485e6cecbda7246aeda00206cd82c7fa36866e2ac64705ba93f9390
Diffstat (limited to 'src')
-rw-r--r-- | src/net_processing.h | 1 | ||||
-rw-r--r-- | src/validation.h | 2 |
2 files changed, 1 insertions, 2 deletions
diff --git a/src/net_processing.h b/src/net_processing.h index 39c22d7118..dffc3f273f 100644 --- a/src/net_processing.h +++ b/src/net_processing.h @@ -19,6 +19,7 @@ static const unsigned int DEFAULT_MAX_ORPHAN_TRANSACTIONS = 100; static const unsigned int DEFAULT_BLOCK_RECONSTRUCTION_EXTRA_TXN = 100; /** Default for BIP61 (sending reject messages) */ static constexpr bool DEFAULT_ENABLE_BIP61{false}; +static const bool DEFAULT_PEERBLOOMFILTERS = false; class PeerLogicValidation final : public CValidationInterface, public NetEventsInterface { private: diff --git a/src/validation.h b/src/validation.h index a1b8029e01..7739d3de4a 100644 --- a/src/validation.h +++ b/src/validation.h @@ -126,8 +126,6 @@ static const unsigned int MAX_BLOCKS_TO_ANNOUNCE = 8; /** Maximum number of unconnecting headers announcements before DoS score */ static const int MAX_UNCONNECTING_HEADERS = 10; -static const bool DEFAULT_PEERBLOOMFILTERS = true; - /** Default for -stopatheight */ static const int DEFAULT_STOPATHEIGHT = 0; |