bitcoin-dev-project / warnet

Monitor and analyze the emergent behaviors of Bitcoin networks
https://warnet.dev
MIT License
92 stars 35 forks source link

Attribution: who took down that node? #439

Closed mplsgrant closed 2 weeks ago

mplsgrant commented 2 months ago

When a user takes down another node, how do we give credit for that?

pinheadmz commented 2 months ago

Simplest is probably to assign victim nodes to each team or player

mplsgrant commented 2 months ago

Are we imagining a Red team and a Blue team? Because that would make the accounting easy: just assign points to the opposite team. But in a multi-team environment (royal rumble or Red, Blue, and Green) we will need to track who sent which messages through the network or follow log files to assign points.

pinheadmz commented 2 months ago

we can have as many teams as we want, just so long as we only assign each victim to one attacker

mplsgrant commented 2 months ago

@pinheadmz You had mentioned that there was some tracking that core does which we could leverage to determine who the attacker and who is the victim. What was that called again?

pinheadmz commented 2 months ago

https://github.com/bitcoin-dev-project/warnet/blob/main/docs/warcli.md#warcli-bitcoin-messages

adamjonas commented 2 months ago

Could we log the quantitative number of messages passed from one node to another? A rough way to do this could be to give points based on the most messages passed or assign points based on proportion of messages passed to a victim node.

pinheadmz commented 2 months ago

Could we log the quantitative number of messages

We could (getpeerinfo)

    "bytesrecv_per_msg": {
      "pong": 32,
      "verack": 24,
      "version": 147
    },

... but that might not be a good metric depending on the attack.

adamjonas commented 2 months ago

It's not a silver bullet but in the chaos of node attacks, this is better than nothing for attacker attribution though, no?