Misbehaving Nodes
Take note that for both types of broadcasting, mechanisms are in place to punish misbehaving peers who take up bandwidth and computing resources by sending false information. If a peer gets a banscore above the -banscore=<n>
threshold (100 by default), they will be banned for the number of seconds defined by -bantime=<n>
, which is 86,400 by default (24 hours).
Type | Misbehavior | Ban Score | Description |
---|---|---|---|
Net | GetBlockTxn Index Error | 100 | Peer relayed a getblocktxn message with out-of-bound indices |
Net | Bloom Filter Service | 100 | Bloom filter message received from peer that has bloom filter commands disabled by default (protocol version > 70201) (filterload message, filteradd message, or filterclear message) |
Net | Block Rejected | 1 | Peer rejected the block it requested from us |
Net | Duplicate Version | 1 | Duplicate version message received |
Net | Wrong Devnet | 100 | Peer responded with the wrong devnet version (version message) |
Net | Wrong Devnet | 1 | Peer connected using the wrong devnet version (version message) |
Net | No Version | 1 | Received a message prior to receiving a version message |
Net | No Verack | 1 | After sending version message, received a message other than a verack message back first |
Net | Address List Size | 20 | More than 1000 addresses received (addr message) |
Net | Inventory List | 20 | More than MAX_INV_SZ (50000) inventories received (inv message) |
Net | Get Data Size | 20 | More than MAX_INV_SZ (50000) inventories requested (getdata message) |
Net | Orphan Transaction | Varies | Peer relayed an invalid orphan transaction. Ban score varies from 0-100 based on the specific reason (values set by AcceptToMemoryPoolWorker() ) |
Net | Bad Transaction | Varies | Transaction rejected from the mempool |
Net | Invalid Header | Varies | Invalid block header received from peer (cmpctblock message) |
Net | Invalid CompactBlock | 100 | Invalid compact block /non-matching block transactions received from peer (cmpctblock message) |
Net | Header List Size | 20 | More than MAX_HEADERS_RESULTS (2000) headers received (headers message) |
Net | Header List Sequence | 20 | Non-continous headers sequence received (headers message) |
Net | Invalid Block | Varies | Invalid block header received from peer |
Net | Bloom Filter Size | 100 | Maximum script element size (520) exceeded (filterload message or filteradd message) |
Net | MN List Diff | 1 | Failed to get masternode list diff (getmnlistd message) |
Net | Unrequested MN List Diff | 100 | Peer provided an unrequested masternode list diff (mnlistdiff message) |
InstantSend | Invalid Lock Message | 100 | Invalid TXID or inputs in lock message (islock message) |
InstantSend | Verify Error | 20 | Peer relayed a message that failed to verify |
LLMQ ChainLock | Invalid | 10 | Invalid ChainLock message (clsig message) |
LLMQ Commitment | Null QcTx | 100 | Peer relayed a block with a null commitment |
LLMQ Commitment | Invalid LLMQ Type | 100 | Peer relayed a block containing an invalid LLMQ Type |
LLMQ Commitment | Invalid Height | 100 | Peer relayed a block that is not the first block in the DKG interval |
LLMQ Commitment | Invalid Commitment | 100 | Peer relayed a block with an invalid quorum commitment |
LLMQ DKG | Empty Message | 100 | Peer relayed a message with no payload |
LLMQ DKG | Invalid LLMQ Type | 100 | Peer relayed a message for an incorrect LLMQ Type |
LLMQ DKG | Invalid Message | 100 | Peer relayed a message that could not be deserialized |
LLMQ DKG | Preverify Failed | 100 | Peer relayed a message that could not be pre-verified |
LLMQ DKG | Signature | 100 | Peer relayed a message with an invalid signature |
LLMQ DKG | Full Verify Failed | 100 | Peer relayed a message that failed full verification |
LLMQ Signing | Too Many Messages | 100 | Maximum message count exceed in qsigsesann message, qsigsinv message, qgetsigs message, or qbsigs message |
LLMQ Signing | Signature | 100 | Peer relayed a message with an invalid recovered signature or signature share |
Masternode Authentication | Duplicate Message | 100 | Only 1 message allowed (mnauth message) |
Masternode Authentication | Invalid Services | 100 | Peer not advertising NODE_NETWORK or NODE_BLOOM services (mnauth message) |
Masternode Authentication | Empty Hash | 100 | Peer relayed a message with a null ProRegTx hash (mnauth message) |
Masternode Authentication | Signature | 100 | Peer relayed a message with an invalid signature (mnauth message) |
Masternode Authentication | Invalid MN | 10 | Peer not in the valid masternode list (mnauth message) |
Masternode Authentication | Invalid Signature | 10 | Signature verification failed (mnauth message) |
Governance | Sync | 20 | Requesting a governance sync too frequently (govsync message with empty hash) |
Governance | Invalid Object | 20 | Peer relayed an invalid governance object (govobj message) |
Governance | Invalid Vote | 20 | Peer relayed an invalid/invalid old vote(govobjvote message) |
Governance | Unsupported Vote Signal | 20 | Vote signal outside the accepted range (see govobjvote message) |
CoinJoin | Signature | 10 | Peer relayed a message with an invalid signature (dsq message) |
Spork | Invalid Time | 100 | Peer relayed a spork with a timestamp too far in the future (spork message) |
Spork | Signature | 100 | Peer relayed a spork with an invalid signature (spork message) |
Updated over 3 years ago
What’s Next