HomePhabricator

net: Add option `-enablebip61` to configure sending of BIP61 notifications

Description

net: Add option -enablebip61 to configure sending of BIP61 notifications

Summary:
This commit adds a boolean option -enablebip61, defaulting to 1, that
can be used to disable the sending of BIP61 reject messages. This
functionality has been requested for various reasons:

  • security (DoS): reject messages can reveal internal state that can be used to target certain resources such as the mempool more easily.
  • bandwidth: a typical node sends lots of reject messages; this counts against upstream bandwidth. Also the reject messages tend to be larger than the message that was rejected.

On the other hand, reject messages can be useful while developing client
software (I found them indispensable while creating bitcoin-submittx),
as well as for our own test cases, so whatever the default becomes on the
long run, IMO the functionality should be retained as option. But that's
a discussion for later.

  • doc: Mention disabling BIP61 in bips.md

This is a backport of Core PR13134

Test Plan:

make check
./test/functional/test_runner.py

Reviewers: #bitcoin_abc, Fabien

Reviewed By: #bitcoin_abc, Fabien

Subscribers: Fabien

Differential Revision: https://reviews.bitcoinabc.org/D3722

Details

Provenance
Wladimir J. van der Laan <laanwj@gmail.com>Authored on May 1 2018, 13:05
deadalnixCommitted on Jul 25 2019, 10:33
deadalnixPushed on Jul 25 2019, 10:33
Reviewer
Restricted Project
Differential Revision
D3722: net: Add option `-enablebip61` to configure sending of BIP61 notifications
Parents
rABC5ed7e25e5614: Fix bitcoin-cli --version
Branches
Unknown
Tags
Unknown