diff options
| author | Suhas Daftuar <[email protected]> | 2019-03-09 12:55:06 -0500 |
|---|---|---|
| committer | Suhas Daftuar <[email protected]> | 2019-09-04 14:58:36 -0400 |
| commit | 3a5e885306ea954d7eccdc11502e91a51dab8ec6 (patch) | |
| tree | d0fa4fd1f947425ca84bf0c4b6f93a033c58c75d /src/httpserver.h | |
| parent | Add comment explaining intended use of m_tx_relay (diff) | |
| download | discoin-3a5e885306ea954d7eccdc11502e91a51dab8ec6.tar.xz discoin-3a5e885306ea954d7eccdc11502e91a51dab8ec6.zip | |
Add 2 outbound block-relay-only connections
Transaction relay is primarily optimized for balancing redundancy/robustness
with bandwidth minimization -- as a result transaction relay leaks information
that adversaries can use to infer the network topology.
Network topology is better kept private for (at least) two reasons:
(a) Knowledge of the network graph can make it easier to find the source IP of
a given transaction.
(b) Knowledge of the network graph could be used to split a target node or
nodes from the honest network (eg by knowing which peers to attack in order to
achieve a network split).
We can eliminate the risks of (b) by separating block relay from transaction
relay; inferring network connectivity from the relay of blocks/block headers is
much more expensive for an adversary.
After this commit, bitcoind will make 2 additional outbound connections that
are only used for block relay. (In the future, we might consider rotating our
transaction-relay peers to help limit the effects of (a).)
Diffstat (limited to 'src/httpserver.h')
0 files changed, 0 insertions, 0 deletions