What increases a node's banscore? What factors contribute to the banscore? Does a node sending bad transactions increase its banscore? Does its using unnecessarily too much bandwidth also increase its banscore?
1 Answer
There are many facts that can increase a node's banscore. A node's banscore is updated in the Misbehaving function from main.cpp. Some of the reasons that trigger such update are:
- Sending invalid blocks.
- Sending duplicate version messages.
- Not sending first a version message (before other communication).
- Sending addr messages with more than 1000 addresses.
- Sending inv messages with more than 50000 elements.
- Sending header messages with more than 2000 elements.
- Sending too large bloom filters.
- ...
Regarding transactions, it seems that they also may increase the banscore:
// Punish peer that gave us an invalid orphan tx
-
That's good that they're punished for sending invalid transactions, that way there can't be any lazy nodes out there.– GeremiaJun 27, 2016 at 21:49
-
does broadcasting double spend transaction also increases the banscore ? thanks– user10603Sep 4, 2017 at 7:58
-
-
1Could continuously re-broadcasting a transaction that is already in all nodes' mempools increase banscore?– deezyMar 3, 2021 at 15:38
-
@deezy iiuc all nodes are continually re-broadcasting the transactions in their mempools, in order to make sure that their mempools line up with the rest of the network– tjr226May 3, 2021 at 16:11