<p>By running a full node, you ensure that your bitcoin transactions are valid and received by the network, and that your bitcoins are 'playing by the rules you want' (you implicitly agree to the rules of the code by running the node). </p>

<p>So if you are not running a node, you are depending on other nodes in the network to relay this information to you.</p>

<p>The less nodes that exist, the easier it would be for a majority of nodes to coordinate and change some rules, and so users that are not running their own nodes may then unknowingly have the rules changed on them. </p>

CC BY-SA 3.0
2017-12-24T21:18:52.187Z
Could you please elaborate on how a majority of nodes could coordinate to change some rules? Its not clear to me how that would happen.
B T
CC BY-SA 3.0
2017-12-25T09:14:27.260Z
The network's nodes explicitly define the rules of bitcoin. There are a few different situations that could be considered (soft forks vs hard forks, percentage of nodes that enforce the change, etc), but for example: a majority of nodes could implement a soft fork change to make the rule set more strict in some way. So as a user, it is in your best interest to run a node, thereby 'voting' on the rules you want to play by, so to speak.
chytrik
CC BY-SA 3.0
2017-12-25T10:44:35.007Z
If a majority of nodes implement a soft fork, your full node wouldn't be able to stop them. So I'm not sure that's really a relevant example. Isn't it always possible for the network to be sybil attacked by an adversary creating a ton of full-nodes? It seems like even if you could only connect to miners any node can still verify those miners are playing by the rules they accept, even if there are no other full nodes out there. I'm struggling to understand the importance of full nodes in the network.
B T
CC BY-SA 3.0
2017-12-26T07:21:17.450Z
You're correct, if a majority implement the change, your node would not be able to stop them. However, my point is this: Consider a network with 1,000 users. If there are only three nodes on the whole network, then it would take only two nodes to force a change. If the network had 1,000 nodes, then ~501 would be needed to force a change. Obviously, a situation where two users can make a decision for the entire network is less preferable than a situation where 501 users must coordinate and agree. It really comes down to this: do you want to have a voice in the rules your money plays by? Or not?
chytrik
CC BY-SA 3.0
2017-12-26T07:29:10.127Z
Re: sybil attacks: you could spin up a million nodes, but if they have no significant economic activity, then it would be of no importance to the rest of the network whether or not your sybil nodes consider the 'old rules' blocks valid or not. So more accurately, the *economic majority* of nodes is what is important, though admittedly this is a more difficult thing to measure than the absolute number of nodes.
chytrik
CC BY-SA 3.0
2017-12-26T08:04:39.060Z
"If there are only three nodes.. then it would take only two nodes to force a change." - Are you talking about miners? Full nodes can't force any kind of change without miner consent. And in the case of miners, number of nodes doesn't matter, only percentage of hash power.
B T
CC BY-SA 3.0
2017-12-26T09:04:12.770Z
"Full nodes can't force any kind of change without miner consent." True, but if the majority of nodes start ignoring the miner's blocks as invalid, then the miners have incentive to play along with the rules enforced by the majority. The game theory becomes complicated, but ultimately it is important to understand: the job of the miner is not to define the rules. Rather, it is to secure the chain according to the rules of a given set of users (nodes). Miners are thus incentivized to secure the most economically popular chain. For more info on nodes enforcing rule changes: http://www.uasf.co/
chytrik
CC BY-SA 3.0
2017-12-26T23:35:39.993Z
"the miners have incentive to play along" - What incentive? Is the incentive that they're missing out on transactions that require the new rules? I think the consequences of what you're telling me are that it doesn't really matter whether or not you're running a full node or not, but it does matter what rules you're using to create transactions. Is this the case?
B T
CC BY-SA 3.0
2017-12-27T03:52:00.060Z
The miner's incentive is: if the majority of economic activity is ignoring the miner's blocks, then the miners would see more profit creating blocks that serve the economic majority.
chytrik
CC BY-SA 3.0
2017-12-27T04:04:53.980Z
Re: "..it doesn't matter whether you're running a full node or not, but it does matter what rules you're using to create transactions". For any transaction, a user must follow the network's rules to ensure the transaction is valid. By running a node, the user ensures that the network they are connected to is playing by the rules they want. If you are okay with someone else deciding what the rules are, then why not just use a system like Paypal? Bitcoin is about financial sovereignty, a **trustless** system of value.
chytrik
CC BY-SA 3.0
2017-12-27T04:13:29.457Z
In another situation (where miners are the only nodes, which seems to be an idea you are considering), a colluding majority of miners would be able to force any change they desire onto the system. We expect any rational individual to act in self-interest, so we would expect this collusion to enforce changes that give the miners involved an advantage over other miners. So by allowing miners to act as 'decision-makers' instead of 'network-securers', we should expect they will change the system in ways which increase their profits (most likely, at the expense of users).
chytrik
CC BY-SA 3.0
2017-12-27T07:39:12.037Z
"a user must follow the network's rules" - I don't think that's true. The user follows their own rules and connects to the network their desired rules dictate they connect to. How can a full node exercise power as part of the "economic majority" if they must follow "the network's" rules? Who is "the network" anyway except those nodes the user chooses to connect to?
B T
CC BY-SA 3.0
2017-12-27T07:39:25.843Z
Let us [continue this discussion in chat](http://chat.stackexchange.com/rooms/70844/discussion-between-b-t-and-chytrik).
B T
CC BY-SA 3.0
2017-12-24T08:35:02.407Z
2017-12-24T08:35:02.407Z
chytrik
<p>Let's say the only full-nodes in the network were the mining nodes. If you joined the network as a full-node, what problems or attacks could happen in such a scenario? Also, what problems or attacks could happen to SPV clients that aren't already likely in the current network environment? </p>

<p>At what point are these problems or attacks likely to start happening in terms of number or percentage of the network's full nodes run by independent people/entities?</p>

<full-node>
What scenario could a lack of bitcoin full-node cause problems in the network?
B T
# What scenario could a lack of bitcoin full-node cause problems in the network?

(Asked by: username_0 on 2017-12-23)

Let's say the only full-nodes in the network were the mining nodes. If you joined the network as a full-node, what problems or attacks could happen in such a scenario? Also, what problems or attacks could happen to SPV clients that aren't already likely in the current network environment?

At what point are these problems or attacks likely to start happening in terms of number or percentage of the network's full nodes run by independent people/entities?

**Tags:** full-node


---

## 1 answers

### Answer by username_1 on 2017-12-24. Score: 1

By running a full node, you ensure that your bitcoin transactions are valid and received by the network, and that your bitcoins are 'playing by the rules you want' (you implicitly agree to the rules of the code by running the node).

So if you are not running a node, you are depending on other nodes in the network to relay this information to you.

The less nodes that exist, the easier it would be for a majority of nodes to coordinate and change some rules, and so users that are not running their own nodes may then unknowingly have the rules changed on them.

> **Comments:**
> **username_0**: Could you please elaborate on how a majority of nodes could coordinate to change some rules? Its not clear to me how that would happen.  
> **username_1**: The network's nodes explicitly define the rules of bitcoin. There are a few different situations that could be considered (soft forks vs hard forks, percentage of nodes that enforce the change, etc), but for example: a majority of nodes could implement a soft fork change to make the rule set more strict in some way. So as a user, it is in your best interest to run a node, thereby 'voting' on the rules you want to play by, so to speak.  
> **username_0**: If a majority of nodes implement a soft fork, your full node wouldn't be able to stop them. So I'm not sure that's really a relevant example. Isn't it always possible for the network to be sybil attacked by an adversary creating a ton of full-nodes? It seems like even if you could only connect to miners any node can still verify those miners are playing by the rules they accept, even if there are no other full nodes out there. I'm struggling to understand the importance of full nodes in the network.  
> **username_1**: You're correct, if a majority implement the change, your node would not be able to stop them. However, my point is this: Consider a network with 1,000 users. If there are only three nodes on the whole network, then it would take only two nodes to force a change. If the network had 1,000 nodes, then ~501 would be needed to force a change. Obviously, a situation where two users can make a decision for the entire network is less preferable than a situation where 501 users must coordinate and agree. It really comes down to this: do you want to have a voice in the rules your money plays by? Or not?  
> **username_1**: Re: sybil attacks: you could spin up a million nodes, but if they have no significant economic activity, then it would be of no importance to the rest of the network whether or not your sybil nodes consider the 'old rules' blocks valid or not. So more accurately, the *economic majority* of nodes is what is important, though admittedly this is a more difficult thing to measure than the absolute number of nodes.  
> **username_0**: "If there are only three nodes.. then it would take only two nodes to force a change." - Are you talking about miners? Full nodes can't force any kind of change without miner consent. And in the case of miners, number of nodes doesn't matter, only percentage of hash power.  
> **username_1**: "Full nodes can't force any kind of change without miner consent." True, but if the majority of nodes start ignoring the miner's blocks as invalid, then the miners have incentive to play along with the rules enforced by the majority. The game theory becomes complicated, but ultimately it is important to understand: the job of the miner is not to define the rules. Rather, it is to secure the chain according to the rules of a given set of users (nodes). Miners are thus incentivized to secure the most economically popular chain. For more info on nodes enforcing rule changes: http://www.uasf.co/  
> **username_0**: "the miners have incentive to play along" - What incentive? Is the incentive that they're missing out on transactions that require the new rules? I think the consequences of what you're telling me are that it doesn't really matter whether or not you're running a full node or not, but it does matter what rules you're using to create transactions. Is this the case?  
> **username_1**: The miner's incentive is: if the majority of economic activity is ignoring the miner's blocks, then the miners would see more profit creating blocks that serve the economic majority.  
> **username_1**: Re: "..it doesn't matter whether you're running a full node or not, but it does matter what rules you're using to create transactions". For any transaction, a user must follow the network's rules to ensure the transaction is valid. By running a node, the user ensures that the network they are connected to is playing by the rules they want. If you are okay with someone else deciding what the rules are, then why not just use a system like Paypal? Bitcoin is about financial sovereignty, a **trustless** system of value.  
> **username_1**: In another situation (where miners are the only nodes, which seems to be an idea you are considering), a colluding majority of miners would be able to force any change they desire onto the system. We expect any rational individual to act in self-interest, so we would expect this collusion to enforce changes that give the miners involved an advantage over other miners. So by allowing miners to act as 'decision-makers' instead of 'network-securers', we should expect they will change the system in ways which increase their profits (most likely, at the expense of users).  
> **username_0**: "a user must follow the network's rules" - I don't think that's true. The user follows their own rules and connects to the network their desired rules dictate they connect to. How can a full node exercise power as part of the "economic majority" if they must follow "the network's" rules? Who is "the network" anyway except those nodes the user chooses to connect to?  
> **username_0**: Let us [continue this discussion in chat](http://chat.stackexchange.com/rooms/70844/discussion-between-b-t-and-username_1).  

---

