11

Bitnodes shows everyone running nodes.

Are these people incentivized to run nodes? If not, why not? If so, do node operators make some BTC from transaction fees, etc.?

15

Are these people incentivized to run nodes?

No. Their reasons for running a full node varies. Some of them want Bitcoin to succeed. Some of them are merchants and run a full node as part of their business. Some of them have spare computing power, and don't have a strong preference as to how it's used. It's worked out reasonably well so far.

If not, why not?

It's extremely challenging to prove that you're running a full node. This code pretends to be a full node, though it really just forwards requests it can't answer to other nodes.

If so, do node operators make some BTC from transaction fees, etc.?

No. Miners receive transaction fees, although it's not a substantial part of the overall block reward. (Most node operators are not miners.)

  • 1
    Good answer, but if you look deeper there are actually incentives (and you hint at them already) : if you run a (big) company/bank/moneytransfer/exchange that depends on Bitcoin, you'd be silly to not bear the negligible cost of running at least one full node as the cost is. Another incentive is that anyone with a stake in Bitcoin should want to help make the network as robust and smooth as possible for everyone: that positively affects the usefulness and price of BTC. Another reason is to check that miners are being honest and have voting power when there's a fork or simply a new version. – Jannes Mar 2 '15 at 13:28
  • No he's asking "incentivized". An incentive doesn't need to be money. "Subsidized" would be the word there. The more I think about it, the correct answer definitely needs to be along the lines of "Yes, but not in a directly monetary way." The incentives might be small, but that's fine, as long as they are big enough to persuade a decent amount of people/companies to run a full node. (For any definition of "decent amount".) – Jannes Mar 3 '15 at 8:56
  • @Jannes Here's a quote from the question. Are people incentivized with BTC to run nodes? – Nick ODell Mar 3 '15 at 15:28
  • Ah I see what you mean now. I read it as 'with/in the Bitcoin system'. Your interpretation makes more sense though, so your right. Although i don't think it hurts mentioning the non-monetary incentives, as it might lead readers to the wrong conclusion. This is also why David's answer is an important addition. – Jannes Mar 3 '15 at 21:09
10

Subsidized Full Nodes Are A Bad Idea

Nick answers your other questions well, but I wanted to provide a more complete answer for this question:

If they're not subsidized, why not?

Subsidizing full nodes is a bad idea. If the value of the subsidy is substantial, it will likely attract people trying to scam the subsidy program by creating nodes designed to receive the subsidy rather than help the network.

Parallels With Mining

Mining is subsidized, and from about 2010 to about 2013 (and even some afterwards), hackers frequently installed CPU mining software on hacked computers to claim the subsidy using other people's resources. It wasn't until CPU and GPU mining became useless – i.e. non-subsidized – that the hackers stopped.

Because full nodes provide the highest level of transaction security, we want them to be as accessible as possible to users – so we can't require specialized hardware or require users spend too much manual time setting them up. And because Bitcoin is decentralized, we also can't do things like validate identities or use other centralized tools for reducing fraud.

That means we can't offer a subsidy for running full nodes without also allowing hackers to claim that subsidy for running full nodes on other people's computers.

Parallels With SMTP

You might think that other people's hacked computers shouldn't be our problem, but it does become our problem. Either we stop people from abusing our system, or people who make security software will stop people from using our system. For years now, my home ISP has blocked port 25 (the Simple Mail Transport Protocol, SMTP) because it is used by many botnets to send spam. If it becomes common for botnets to run full nodes, we'll likely see Bitcoin's port 8333 blocked as well.

Conclusion

Rather than paying random people on the Internet to manage our network security for us, we should make it easier to run a full node so more people can enjoy the security and privacy benefits that come from running their own node.

(To this end, the Bitcoin Core developers are working on improvements such as the headers-first sync included in 0.10.0 and the upcoming auto pruning, which will reduce the disk space requirements for full nodes, as well as several other improvements.)

1

Bitnodes is incentivizing node operators:

Bitnodes Project Issues First Incentives For Node Operators

-2

I wanted to challenge the idea that we should not incentivise the running of nodes.

What I am not saying: I am not saying to write incentivising into the core.

I believe we do need to think about how node operation can be encouraged via financial incentive, this is because long term I believe that all things that provide value should be encouraged via micropayments.

Why?

Financial incentives create a feedback loop in which the market helps optimize. This creates more development and faster iterations and more collaboration on it.

How?

This could exist as a sidechain, alt-pegged coin, or even how p2pnodes work which is up to the node provider on how much the charge.

Conclusion

Just wanted to see more discussion on this! All of you have good points above, however, I see them as things we need to think about when thinking about how to provide incentive to running full nodes.

  • I don't find this answer useful because it only transitively responds to the question, but mainly discusses other answers instead. Also, it fails to address the main issue: The problem is to figure out who deserves an incentive, not how to distribute it. – Discussion is not something that works well on the Stackexchange platform, as answers shift about as they are up- and downvoted. Please only post answers to respond to the question. If you must discuss other answers, post comments on them. Instead define a new topic by asking a new question, e.g. "Should Bitcoin nodes be incentivized?". – Murch Dec 14 '15 at 21:06
  • Good point, on creating a new question. I have not discussed much dialog on stack exchange yet, so I do agree that it discusses other answers and should of been posted as a comment. However, as a comment it is useful as it provides contrast to your answer. – nkdejong Dec 18 '15 at 21:27
  • I found your discussion very helpful in explain why not, however, it seemed to shut the door on the option as making it a closed discussion. Until nodes are plentiful in bitcoin, the lack of nodes is still a problem. We need to encourage thinking of many options until the problem is solved. – nkdejong Dec 18 '15 at 21:38
  • nkdejong: Stackexchange was designed for Q&A, it doesn't work for discussions. If you want to discuss, you would probably prefer reddit or one of the numerous forums. – Murch Dec 19 '15 at 0:08

protected by Raghav Sood Oct 8 '18 at 3:18

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.