I wonder if these large pools/ nodes can be geo-located? If they can be located then there is a danger of physical attack on nodes( considering if they really want to disrupt the network), another thing, is there a trustworthy source to get the IPs of these networked nodes and only connect to them?
An individual might not be able to , but everything is geo-located if big countries decide it . I'm not certain if there's a list of trusted IP's , but definitely mining pools share each other their IP's , it's for their best economic interest to being interconnected .
Only "full nodes" might face that kind of attack and it doesn't matter as they cannot change the blockchain .
I mean, totally false. It surely matters. Full nodes verifying the integrity of the blockchain is what's Bitcoin all about. Their incapability to change the blockchain (in terms of orders of transactions, as with miners) is irrelevant. The whole point is full nodes verifying the difficultywise-longest chain produced by honest nodes, without trusting third parties. An eclipse attack is pretty much trying to forbid you from figuring out there's a more-worked chain to verify.
Miners are immune to that kind. People who merely want to verify their transactions are not.
Correct and the group of people you are mentioning here are often users of light weight clients. The most fatal attack is a double-spend and that is what most people have in their heads when they hear the word "attack", but likewise an eclipse attack can as well be used to disrupt network communication and thereby delay or censor transactions.
The issue with lightweight clients like Electrum or the Neutrino protocol or even the Lightning network is that they are dependent on communication with honest nodes. If those communication channels are cut off and infiltrated with malicious sybil attacks, there is all kinds of shenanigans an attacker could do. It's not necessarily the double-spend someone loses it all problem. But it could be the case for lightweight and second layer solutions. Communication with "honest nodes" is key to security of funds, aka for funds to stay with the rightful owner.
To BHC , thanks to Dump3er quote as you are ignored now like your "friend" .
Let's consider an example of the attack in a massive scale . Let's say that i flood the network with a massive amount of sybil nodes ( 90% ) . In that way the probability of your "full node" to be connected only to malicious nodes is very high . So your "validation" has nothing to do with the real ledger which is produced by the mining nodes . You can understand that mining nodes are unaffected by that kind of attack as they give a shit about your node .
Bitcoin isn't a democratic network where everyone can change the consensus by running a "full node" . That's why it's called PoW and not PoMN( Most nodes ) . Bitcoin provided a solution to the problem of byzantine generals , not byzantine soldiers . Troops have a by far low number of generals than soldiers . Imagine a troop where every soldier would have to decide if the attack ordered should be executed . Do you think that there be a consensus ? That's what you (and most here ) don't get , that you are part of the consensus but just acknowledge it . It's like i use a bucket to take water from a river and by throwing it back i believe that i'm contributing to it's flow . But as i said to you many times , you only look bitcoin from the coding side , you can't extend your thought to the philosophical aspects behind it .
To Dump3er . The problem with current model that btc uses is that there's no economic incentive for non mining nodes to be honest . If you could use a service of a honest node that gains money by earning a small amount (less than a cent ) each time you use their explorer to see if the transaction you're interested is double spent , would you use it ? Of course , with the current fee market created by the 1 MB limit that's not possible . If you could create such a node that earns you money everyday would you be interested to give fake results for a double spend that doesn't affect you at all and you don't get any profit from it , while on the other hand you would lose the profit from the service you are providing ?
SPV's was the solution satoshi provided for massive scale . At some point we shall see if that model can work . If it works no one will want to use the current banking/credit system . Companies will earn insane amounts from fees in the long term as visa/MC has at least 1% fee + 10 cents per transaction .
The only source of truth? Bitcoin isn't centralized.
Define centralised and decentralised . I can provide examples of a 5 nodes network that's decentralised and a 10k nodes network that's centralised . Decantralisation comes not from the number of nodes but from the incentive nodes have to not collude .
Malicious node would be banned quickly, so anyone who want to run full nodes for non-malicious purpose (e.g. perform full verification, need whole blockchain data) also have incentive to be honest.
How do you know in a network flooded by malicious nodes which one is the malicious ? How do you know which one is honest ? If the truth in the network is the one provided by the malicious actor isn't the real truth false ?
Who are the only CERTAIN trusted/honest nodes in the network and why? Mining nodes because no one wants to kill the golden goose just to earn a double spend .
I already know that. Although FWIW one mining pool may have multiple full nodes.
Not just multiple , multiple HONEST nodes that many for profit nodes can connect .