Why Run a Full Node

by Pieter Wuille

2015/7/29 - Reddit

One of Bitcoin's strengths - the most important in my opinion even - is the low degree of trust you need in others. If you use a full node for your incoming transactions, you know that there was no cheating anytime in the history of your coins:

... with one exception: because there is a need to pick a winner in presence of multiple competing valid versions of the ledger, (a majority of) miners have the authority to pick the version of the block chain that wins. This means their power is limited to choosing the order in which otherwise valid transactions occur, up to and including the right to delay them indefinitely. But they cannot make invalid transaction look valid to a full node.

If you are not running a full node, the amount of trust you're placing in others increases.

So I hope you now see the importance of full nodes in this model. If you run a full node somewhere on the network, and nobody looks at the transactions it validates, it is indeed contributing to the network, but it is not helping with the reduction of trust.

Look at it another way: if only a few large players in the Bitcoin ecosystem were running full nodes, it only requires a malicious intent, or an attack/threat against them, to change the system's rules, as nobody else is validating.

Doing transactions in the Bitcoin ecosystem helps the Bitcoin currency. Running a full node helps the network. Using a full node helps you and the ecosystem reduce the need for trust.